情報科学部Faculty of Computer and Information Sciences
COT311KA-CS-242(計算基盤 / Computing technologies 300)オペレーティングシステムOperating Systems
山田 浩史Hiroshi YAMADA
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2023 |
授業コードClass code | J0526 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期授業/Spring |
曜日・時限Day/Period | 金5/Fri.5 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | 3~4 |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | ○ |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) |
(1) 受講希望者 (受講検討中の者も含む) は、情報科学部学部Googleフォーム(https://forms.gle/ECvwxVe2NcxmrbTK9)で初回講義前までに希望申請をしてください。(※以下URLのご案内があるGoogleフォームとは異なるのでご注意ください。) (2) 以下のURLと教育開発支援機構事務局の案内に従って、履修希望の申請を行ってください。 https://www.hoseikyoiku.jp/risyu/index.html (3) 履修取消については、ご自身の所属学部の履修取消期間内に必ず同時に履修削除を行ってください。 |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
選択・必修Optional/Compulsory | |
カテゴリー(2022年度以降入学者)Category (2022~) | |
カテゴリー(2021年度以前入学者)Category (~2021) | |
カテゴリーCategory |
専門教育科目 専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
【Course outline】
This course introduces basics of operating systems, such as their concepts, designs, and implementation. The operating system is a fundamental software layer that controls applications and underlying hardware. It abstracts bare-metal hardware and provides intelligent interfaces to applications.
【Learning Objectives】
You will learn basics of 1). concept of the operating system, 2). its abstraction of the hardware such as CPU, memory, and storages, 3). its policies and mechanisms for assigning hardware resources to applications. See the Curriculum maps.
【Grading Criteria/Policy】
Paper test(100%).
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
オペレーティングシステム(OS)の基本概念と実装技術,およびその内部構造についての基礎知識を学ぶ.OS は,裸のままでは扱いにくいハードウェアを抽象化し,より扱いやすい仮想的なコンピュータをユーザに見せるソフトウェアである.Linux や Windows 8 がその代表格である.OS はハードウェアとアプリケーションを繋ぐ要のような役割を担っており,コンピュータが動作する仕組みを知るには OS の理解が必須である.
到達目標Goal
OS の概念,実装技術,および内部構造についての基礎知識を身につけることを目標とする.また,OS の理解を通じて,コンピュータの動作原理についての理解も深める.
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
情報科学部ディプロマポリシーのうち「DP2」と「DP4-1」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
OS の基本概念を講義していく.具体的には,プロセスやスレッド,スケジューリング,同期,仮想記憶,割り込み処理,ファイルシステムといった内容について講義を行う.また,進捗を見つつ,理解を深めるために適宜プログラミング演習を行ってレポートを課す.授業で課した課題(小テストやレポート)等を取り上げ、授業内で全体に対してフィードバックを行う。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
なし / No
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:オンライン/online
※各回の授業形態は予定です。教員の指示に従ってください。
1[オンライン/online]:イントロダクション
OS の基本概念について学ぶ.
2[オンライン/online]:I/O デバイスと割り込み
I/O デバイスや割り込みを OS がどのように制御するかについて学ぶ.
3[オンライン/online]:ファイルシステム(1)
OS のディスク管理方法について学ぶ.ファイルという考え方やファイルの管理方法について学ぶ.
4[オンライン/online]:ファイルシステム(2)
前回の続き.
5[オンライン/online]:システムコールと保護
システムコールの基本概念、OSによって達成される保護について学ぶ
6[オンライン/online]:プロセスとスレッド
プロセスとスレッドの基本概念,違いについて学ぶ.
7[オンライン/online]:演習(1)
これまでの講義で扱った内容の理解を深めるプログラミング演習を行う.
8[オンライン/online]:スケジューリング
OS の CPU 管理方法について学ぶ.スケジューリングの基本概念について学ぶ.
9[オンライン/online]:相互排除と同期(1)
相互排除の基礎を学ぶ.クリティカルセクション,ロック等の考え方を学ぶ
10[オンライン/online]:相互排除と同期(2)
前回の続き.
11[オンライン/online]:演習(2)
これまでの講義で扱った内容の理解を深めるプログラミング演習を行う.
12[オンライン/online]:仮想記憶(1)
OS のメモリ管理方法について学ぶ.仮想/物理アドレス,ページング,スワッピングについて学ぶ
13[オンライン/online]:仮想記憶(2)
前回の続き.
14[オンライン/online]:演習(3)
これまでの講義で扱った内容の理解を深めるプログラミング演習を行う.
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
演習時に課されたレポートを行う.本授業の準備・復習時間は、計4時間を標準とする.
テキスト(教科書)Textbooks
資料を配布する.
参考書References
河野健二著,オペレーティングシステムの仕組み,朝倉書店
Abraham Silberschatz著,Operating System Concepts 9th Edition.
詳解 Linuxカーネル 第3版,オライリージャパン
成績評価の方法と基準Grading criteria
試験 100 %で評価する.
学生の意見等からの気づきChanges following student comments
演習課題の解説分量を増やすようにする.
その他の重要事項Others
C 言語を用いたプログラミングをこなせること,および計算機アーキテクチャの基礎知識を必須とする.