オペレーティングシステム論
2001年度後期 月曜日1限 金曜日1限
講師:杉野 栄二
【授業の方針】
オペレーティングシステムの歴史は、コンピューターを「上手に」利用してゆこうとした先人たちの歴史である。本講義では、オペレーティングシステムの諸機能が必要とされた理由、その機能を実現するための技術として「なぜそれが選ばれたのか」を考えてゆく。
【授業の概要】
オペレーティングシステムは、コンピューターに命を与え、その個性を決めるソフトウェアであり利用者とコンピューターとの間を仲介する仕事をする。したがって、より良いオペレーティングシステムは、その存在を利用者に意識させないものである。 しかし たとえ意識されなくても、我々が利用するコンピューターには、必ずオペレーティングシステムがあり、その上で一般のソフトウェアが動作している。
出来上がったソフトウェアを使うだけであるならば、オペレーティングシステムを意識することはほとんど無いが、ソフトウェア開発を行なうものにとっては、必ずその理解が要求される。また、オペレーティングシステムは優れたソフトウェア技術の宝庫であり、将来オペレーティングシステムを開発しようとする者だけでなく、一般のソフトウェア開発者にとっても大いに参考になる技術が含まれている。分散・並列システムにおけるソフトウェア開発も、現実のものとなりつつあることから、本講義では分散オペレーティングシステムについても学ぶ。
【授業の計画】
第1〜3回:入門
・オペレーティングシステムとは何か、その歴史と概観
(バッチシステム、TSS、多重プログラミング)
第4〜9回:プロセス
・プロセスとは何か(プロセスの構造、プロセス間通信、同期)
・1台のコンピューターで複数プロセスを、公平に動かすには
(コンテキストスイッチ、スケジューリング)
・複数プロセスが一つのことをしようとすると(排他制御、デッドロック)
第10〜14回:メモリ
・プロセスの作業領域を公平に与えるには(メモリ管理)、
・プロセスの作業領域を拡大するには(仮想記憶、ページング)
第15〜17回:ファイル
・データを保存するには(ファイルシステム、ディレクトリ)
・大事なデータを保護するには(信頼性、セキュリティ)
第18〜19回:入出力
コンピューターと対話するには(I/OハードウェアとI/O構造)
第20〜22回:実際のオペレーティングシステム
UNIX等
第23〜28回:分散オペレーティングシステム
・分散システムどは何か(クライアント・サーバー、RPC、排他制御)
・分散ファイルシステム
第29〜30回:実際の分散オペレーティングシステム
←授業選択画面に戻る
←鈴木研究室ホームへ