![]() ![]() |
講義概要/Course Information |
科目基礎情報/General Information |
授業科目名 /Course title (Japanese) |
オペレーティングシステム | ||
---|---|---|---|
英文授業科目名 /Course title (English) |
Operating system | ||
科目番号 /Code |
COM504e | ||
開講年度 /Academic year |
2021年度 | 開講年次 /Year offered |
3 |
開講学期 /Semester(s) offered |
前学期 | 開講コース・課程 /Faculty offering the course |
情報理工学域 |
授業の方法 /Teaching method |
講義 | 単位数 /Credits |
2 |
科目区分 /Category |
専門科目 | ||
開講類・専攻 /Cluster/Department |
Ⅱ類 | ||
担当教員名 /Lecturer(s) |
菅原 健 | ||
居室 /Office |
西3-218 | ||
公開E-mail |
sugawara@uec.ac.jp | ||
授業関連Webページ /Course website |
Google classroom: gtvou3t | ||
更新日 /Last update |
2021/03/09 13:33:50 | 更新状況 /Update status |
公開中 /now open to public |
講義情報/Course Description |
主題および 達成目標(2,000文字以内) /Themes and goals(up to 2,000 letters) |
・主題は,OSにおける重要な概念,OSの実装技術,OSの内部構造についての基礎知識 を学ぶことである. ・達成目標として,OSにおける重要な概念,OSの実装技術,OSの内部構造を理解し, 説明できるようになることを目指す. |
---|---|
前もって履修 しておくべき科目(1,000文字以内) /Prerequisites(up to 1,000 letters) |
特になし |
前もって履修しておくこ とが望ましい科目(1,000文字以内) /Recommended prerequisites and preparation(up to 1,000 letters) |
計算機アーキテクチャ |
教科書等(1,000文字以内) /Course textbooks and materials(up to 1,000 letters) |
講義中にスライドを配布する.以下は参考書. 書籍としてまとまった情報を読みたい学生には,以下の書籍を推薦する: 河野健二,「オペレーティングシステムの仕組み」,朝倉書店. また,講義で学ぶコンセプトがどのように実装されるかを知りたい学生には,以下を推薦する: Russ Cox, Frans Kaashoek, and Robert Morris, "xv6: シンプルで Unix 風な教育用オペレーティングシステム," https://www.sugawara-lab.jp/lecture.html |
授業内容と その進め方(2,000文字以内) /Course outline and weekly schedule(up to 2,000 letters) |
第01回: ガイダンス 第02回: 低レイヤプログラミング 第03回: プログラムが実行されるまで 第04回: システムプログラミング 第05回: ハードウェアの制御 第06回: システムコール 第07回: ファイルシステム 第08回: プロセス 第09回: 仮想記憶 第10回: ページング 第11回: CPU スケジューリング 第12回: スレッド 第13回: 並行プログラミングと競合 第14回: 相互排除 第15回: セキュリティ |
実務経験を活かした 授業内容 (実務経験内容も含む) /Course content utilizing practical experience |
セキュリティエンジニアとして勤務した経験を基に,実務のどのような場面でOSの知識が役立つか説明する. |
授業時間外の学習 (予習・復習等)(1,000文字以内) /Preparation and review outside class(up to 1,000 letters) |
レポート課題を解くための調べ物は自分で行う必要がある. |
成績評価方法 および評価基準 (最低達成基準を含む) (1,000文字以内) /Evaluation and grading (up to 1,000 letters) |
毎回行う小レポートと,期中に3回実施する大レポートにより評価する. 試験は行わない. ・小レポート: 40% ・大レポート3回: 60% ・評価基準:以下の項目を理解し,説明できることを最低達成基準とする. (1) OSをサポートするハードウェア機能 (2) プロセスと,プロセス間を分離するための仕組み (3) OSとユーザプログラムのインタフェース |
オフィスアワー: 授業相談(1,000文字以内) /Office hours(up to 1,000 letters) |
特に設けない.メールもしくは Google Classroom で質問を受け付ける. |
学生へのメッセージ(1,000文字以内) /Message for students(up to 1,000 letters) |
OSの最も重要なミッションの1つは,ハードウェアの違いを抽象化することで,使いやすい環境をユーザや開発者に提供することにあります.そのため,単にコンピュータを使ったり,アプリケーションプログラムを作ったりする場合,OSのこと意識することは ありません.では,なぜOSを学ぶのでしょうか?コンピュータに関する深い理解が得られることと,その知識を背景に,一層踏み込んだ利用・開発ができるようになることが理由だと私は考えます.特に,大量のデータ処理,小型・省電力な組込機器実装,情報セキュ リティなどの分野では,OSの知識が必須となることも少なくありません.この授業では ,OSの中でも特に,時代を経て洗練されてきたエッセンスの部分を講義します.それらは,Windows,Linux,Android,iOSといった,近代的なOSでも利用されている基本的で重要な技術です. |
その他 /Others |
無し |
キーワード /Keywords |
オペレーティングシステム |