オペレーティングシステム

1. URL
2. 担当教員
3. 講義目的
4. 到達目標
5. 授業方法
6. 参考書
7. 成績評価
8. スケジュール
9. 大崎が担当する科目に共通の連絡事項・アドバイス
10. 1. オペレーティングシステムの概要
11. 2. CPU の原理
12. 3. プロセスとスレッド
13. 4. プロセス間通信
14. 5. スケジューリング (1)
15. 6. スケジューリング (2)
16. 7. 前半の総復習
17. 8. メモリ管理 (1)
18. 9. メモリ管理(2)
19. 10. 入出力 (外部 I/O)
20. 11. 入出力 (ユーザインターフェース)
21. 12. ファイルシステム
22. 12. 後半の総復習

10. 入出力 (外部 I/O)

授業の流れ・チーム分けの方針・態度目標

2024-06-14 のものと同じ。

https://lsnl.jp/~ohsaki/lecture/os/2024/#18-1

内容目標

- CPU とデバイスコントローラの通信において、ポートマップド I/O とメモリマップド I/O の長所と短所を理解し、他人に説明できるようになる。

- ミニ CPU を用いて割り込みの原理を理解するとともに、ミニ CPU における割り込みの動作をシミュレートできるようになる。

- 割り込みにおける割り込みハンドラの処理時間と最大割り込み頻度の関係を定量的に議論できるようになる。

- ラウンドロビンスケジューリングにおけるプロセス切り替えのオーバヘッドと CPU の利用効率の関係を定量的に議論できるようになる。

課題

資料: ミニ CPU による割り込みの理解
https://lsnl.jp/~ohsaki/lecture/os/2024/priv/mini-cpu-interrupt.pdf

課題 1

CPU とデバイスコントローラの通信において、 ポートマップド I/O と比較した時の、 メモリマップド I/O の長所と短所を述べよ。

課題 2

資料「ミニ CPU による割り込みの理解」中の「CPU 係と割り込み係によるシミュレーション」を二人ペアとなって実行せよ。 CPU 係と割り込み係の両方を、 それぞれ一回ずつ以上シミュレートすること。

課題 3

ミニ CPU において、 一命令の実行に要する時間をすべて等しくΔ [s] とする。 「ミニ CPU による割り込みの理解」中の「ミニ CPU による割り込みの例」の割り込みハンドラを、 一秒間に最大何回呼び出すことが可能か。

課題 4

ミニ CPU において、 一命令の実行に要する時間をすべて等しくΔ [s] とする。 ラウンドロビンスケジューリングを用いたプリエンプティブマルチタスキングにおいて、 プロセスの切り替えを行うプログラム (割り込みハンドラを含むすべての割り込み処理) の命令数を N とする。 クォンタムの大きさを T [s] とした時の CPU の実効利用率 (CPU がプロセス実行に利用される割合) を答えよ。 ただし、 各プロセスが実行中に I/O 待ちになることはないとする。

略解

課題 1

長所: I/O のための専用の機械語命令が必要ない。 C 言語のような高級言語でデバイスを操作するプログラムが書ける。 メモリ保護機能を使える (例: アクセス制限がかけられる)。

短所: 特定のアドレス範囲のキャッシュを無効にする必要がある (複雑なキャッシュ機構が必要となる)。 メモリバスが複数ある場合に複雑な制御が必要となる。

課題 2

割り込まれた瞬間の PC の値を保存するのも、 すべて「CPU 係」の役割であることに注意せよ。 「割り込み係」は単に自由なタイミングで声をかけるのみである。

課題 3

割り込み発生から、 割り込まれた時の PC に戻るまでの処理が 12 命令 (割り込まれた瞬間の PC の値の保存に 1 命令とカウントしている) である。 1 回の割り込みに要する時間が 12 Δ [s] であるから、 一秒間に最大

  1
-----
12 Δ

回の呼び出しが可能である。

課題 4

1 回のプロセス切り替えに要する時間が N Δ [s] である。 T [s] ごとのクォンタムごとに N Δ [s] だけの CPU 時間をプロセス切り替えに消費するから、 CPU の実効利用率は

    T
---------
 T + N Δ

である。

レポート課題 2024-06-21

「レポート課題 2024-04-12」と同じ。

https://lsnl.jp/~ohsaki/lecture/os/2024/#10-10

質問

- スポーツとAIを掛け合わした内容のニュースや情報ってどのようなサイトを見たり読んだりするのがいいですか? オススメなどがあれば教えてください。

私の専門外なのでわかりません。もし私が「スポーツとAIを掛け合わした内容のニュー
スや情報」を知りたいと思ったら、

informatics sports
https://duckduckgo.com/?t=h_&hps=1&start=1&q=informatics+sports&ia=web

などで検索して、サーベイ論文や学会を探すと思います。上記の検索結果だと、サーベイ論文っぽい

Sport Informatics: A Historical Review
https://www.researchgate.net/publication/354043431_Sport_Informatics_A_Historical_Review

Advances in Sports Informatics Research
https://www.researchgate.net/publication/282273722_Advances_in_Sports_Informatics_Research

Sports Information Systems: A systematic review
https://www.researchgate.net/publication/351503014_Sports_Information_Systems_A_systematic_review

あたりから始めて、いろんな文献をチェックすると思います。

要望

- CTFでチームの画面に飛んでも、総合点ランキングやホームページに戻れるボタンが欲しいと思いました。

各ページの末尾に、総得点ランキングへのリンクを追加しました。

競技中に総得点ランキングが見られる
→ 他のチームの正解状況を見て、どこを解けばよいかの戦略が立てられる?

競技中に総得点ランキングが見られない
→ 競技が終わるまでワクワク感が保てる

で、トータルで考えると、見える/見えないのどちらが良いのでしょうね。

コメント

- 講義ありがとうございました。

- 講義ありがとうございました。

[<18. 9. メモリ管理(2)] [>20. 11. 入出力 (ユーザインターフェース)]