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

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. 後半の総復習

2. CPU の原理

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

2024-04-12 のものと同じ。

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

内容目標

- 簡単なプログラムに対して、ミニ CPU の動作をトレースできるようになる。

- ミニ CPU の動作を手作業でトレースすることにより、CPU の原理を理解する。

- ミニ CPU とオペレーティングシステムの動作をシミュレートすることにより、プリエンプティブ・マルチタスキングの原理を理解する。

課題

資料: 「ミニ CPU」によるコンピュータおよびオペレーティングシステムの動作の理解
https://lsnl.jp/~ohsaki/lecture/os/2024/priv/mini-cpu.pdf

課題 1

資料中の E1 (12 + 34 = 46) の動作をトレースせよ。 各ステップにおける、 4 枚のカード (PC、 A、 B、 C) の値と、 ノート 5 行目の値の変化を書き出せ。

課題 2

資料中の E2 (1〜3 の和の計算) の動作をトレースせよ。 各ステップにおける、 4 枚のカード (PC、 A、 B、 C) の値と、 ノート 10 行目の値の変化を書き出せ。

課題 3

資料中の E3 (1〜4 の積の計算) の動作をトレースせよ。 各ステップにおける、 4 枚のカード (PC、 A、 B、 C) の値と、 ノート 10 行目の値の変化を書き出せ。

課題 4

資料中の E4 (1〜5 の積の計算) におけるプリエンプティブ・マルチタスキングの動作を、 「ミニ CPU 係」と「オペレーティングシステム係」の 2 人がペアになってシミュレートせよ。

ミニ CPU 係の役割: 現在のカードセットを使って、 ミニ CPU の動作をひたすら実行する。 オペレーティングシステム係の指示に従ってカードセットを切り替える。 ただし、 カードセットを切り替えられるのはステップ 1 (PC カードに書かれている行番号の「指示」をノートから読み込む) の直前のみである。 つまり、 ステップ 1〜3 はまとめて一気に実行する (途中で切り替えられることはないアトミックな処理である)。

オペレーティングシステム係の役割: 自由なタイミング (例えば 10 秒ごと) で、 ミニ CPU に対して「はい、 カードセットを切り替えてください」と指示する。

略解

課題 1

| PC |  A |  B | C | 5行目の値 |
|----+----+----+---+-----------|
|  0 |  0 |  0 | 0 |         0 |
|  1 | 12 |  0 | 0 |         0 |
|  2 | 12 | 34 | 0 |         0 |
|  3 | 46 | 34 | 0 |         0 |
|  4 | 46 | 34 | 0 |        46 |
|  4 | 46 | 34 | 0 |        46 |
|  4 | 46 | 34 | 0 |        46 |
|  4 | 46 | 34 | 0 |        46 |
|  4 | 46 | 34 | 0 |        46 |
|  4 | 46 | 34 | 0 |        46 |

課題 2

| PC |  A | B | C | 10行目の値 |
|----+----+---+---+------------|
|  0 |  0 | 0 | 0 |          0 |
|  1 |  0 | 0 | 0 |          0 |
|  2 |  0 | 1 | 0 |          0 |
|  3 |  1 | 1 | 0 |          0 |
|  4 |  1 | 1 | 0 |          0 |
|  5 |  1 | 1 | 0 |          0 |
|  6 |  1 | 2 | 0 |          0 |
|  2 |  1 | 2 | 0 |          0 |
|  3 |  3 | 2 | 0 |          0 |
|  4 |  3 | 2 | 0 |          0 |
|  5 |  3 | 2 | 0 |          0 |
|  6 |  3 | 3 | 0 |          0 |
|  2 |  3 | 3 | 0 |          0 |
|  3 |  6 | 3 | 0 |          0 |
|  4 |  6 | 3 | 0 |          0 |
|  7 |  6 | 3 | 0 |          0 |
|  8 |  6 | 3 | 0 |          6 |
|  8 |  6 | 3 | 0 |          6 |
|  8 |  6 | 3 | 0 |          6 |
|  8 |  6 | 3 | 0 |          6 |

課題 3

| PC |  A | B | C | 10行目の値 |
|----+----+---+---+------------|
|  0 |  0 | 0 | 0 |          0 |
|  1 |  1 | 0 | 0 |          0 |
|  2 |  1 | 1 | 0 |          0 |
|  3 |  1 | 1 | 0 |          0 |
|  4 |  1 | 1 | 0 |          0 |
|  5 |  1 | 1 | 0 |          0 |
|  6 |  1 | 2 | 0 |          0 |
|  2 |  1 | 2 | 0 |          0 |
|  3 |  2 | 2 | 0 |          0 |
|  4 |  2 | 2 | 0 |          0 |
|  5 |  2 | 2 | 0 |          0 |
|  6 |  2 | 3 | 0 |          0 |
|  2 |  2 | 3 | 0 |          0 |
|  3 |  6 | 3 | 0 |          0 |
|  4 |  6 | 3 | 0 |          0 |
|  5 |  6 | 3 | 0 |          0 |
|  6 |  6 | 4 | 0 |          0 |
|  2 |  6 | 4 | 0 |          0 |
|  3 | 24 | 4 | 0 |          0 |
|  4 | 24 | 4 | 0 |          0 |
|  7 | 24 | 4 | 0 |          0 |
|  8 | 24 | 4 | 0 |         24 |
|  8 | 24 | 4 | 0 |         24 |
|  8 | 24 | 4 | 0 |         24 |
|  8 | 24 | 4 | 0 |         24 |

課題 4

省略

参考図書

独習アセンブラ 新版
https://www.shoeisha.co.jp/book/detail/9784798170299

レポート課題 2024-04-19

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

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

質問

なし

要望

- レポート課題の存在を今回の講義中に知ったため、前回のレポート課題を提出できていません。リフレクションシートとレポートを同一のものと思っていたため、知りませんでした。私がしっかりと講義資料を読んでいなかったのが悪いのですが、1回目の講義で右も左も分からなかったため、ご理解いただきたいです。全ての科目において100点を目指していたため、とても悔しいです。とても図々しいお願いだと分かっていますが、再提出できるチャンスがほしいです。自分が提出したリフレクションシートやレポート課題の履歴が残るようにしてほしいです。また、提出した課題の点数や評価基準を表示してほしいです。

「提出物の期限に遅れたけど、お願いしたら何とかなった」という間違った強化学習
をしてほしくないので、期限を過ぎたものは受理しません。ただし、4/12、4/19 分
については以下を見てください。

提出物は控えがメールで届きますので、それを見てください。平常レポート 50% で
成績評価します (個々の内訳は開示しません)。

- 他の授業も知りたいと言うことで他の授業に出席していたため、OSの第一回目の授業(履修登録期間)に参加できていないのですが成績の面ではどのような扱いになるのでしょうか?

履修登録が確定するまでの授業 (4/12、4/19) については、提出物に期限を 5/1(水)
5:05pm に延長します。この 2 回分に限り、授業に欠席していた場合でも、講義ビデ
オを視聴して実習し、リフレクションシートを提出すれば出席扱いにします。

- 今までに紹介した本をもう一度紹介して欲しい。

どの本のことですか?

コメント

- ペアワークが多い分、話し合う時間が多いという良い点もありつつ、分からなかったらずっと詰まったままになるのではと思った。

以下のページを読んでください。

アクティブラーニング型学習のポイント
https://lsnl.jp/~ohsaki/lecture/os/2024/#12

ペアワークではありません & もしそうなったら「態度目標」が達成できていないこ
とを意味します。

- 突き詰めたアクティブラーニングは確かに効果的だと思うが、この講義では余計に非効率になっているように思えてあまり好きではない。課題の字数制限がしんどい。項目別に分けられているが被る内容のものも多く枷でしかない。

まず、以下のページを読んで理解してください。

アクティブラーニング型学習のポイント
https://lsnl.jp/~ohsaki/lecture/os/2024/#12

その上で、「長時間に及ぶ自習を強制しないでほしい」と考えるなら、その理由を教
えてください。事実にもとづく理性的なクレームであれば私も真剣に対応します。

各項目は設問が違うので、同じ内容になりません (もしなるとしたら、設問に正しく
答えていません)。

- 先生が自身でプログラミングされているものを使っているのをみて自分もそのようなことをしたいと思いました。

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

- これからも楽しみながら学習していこうと思います。

[<10. 1. オペレーティングシステムの概要] [>12. 3. プロセスとスレッド]