シラバス参照

授業科目名 情報システム学 
授業科目名(英字) Information Systems 
必修・選択
選択 
開講セメスター
学部5 
ナンバリングコード BCA-1S-301 
単位数
担当教員

光澤 敦

副担当教員
実務経験のある教員等による授業科目に該当



授業の目標
コンピュータシステムの基盤ソフトウェアであるオペレーティングシステムについて理解する。 
到達目標
(1)システムコールを用いて簡易なシェルを作成できる。
(2)オペレーティングシステムの開発環境を、WSLとQEMUを用いて構築できる。
(3)オペレーティングシステムに、新しいスケジューリングアルゴリズムを追加できる。
(4)仮想記憶について説明できる。 
身につく能力 <全学ディプロマ・ポリシー>

 ○【知識・理解・技術】
  1.各専門分野の知識・技術を習得し、活用する力を身につけている

  【教養・基礎的能力】
  2.幅広い教養と、外国語能力、情報活用能力、コミュニケーション能力などの基礎的能力を身につけている

  【態度・志向性】
  3.多様な価値観を有する人々と倫理観・責任感をもって協働することができる

  【態度・志向性】
  4.時代の変化に主体的に対応するため継続的に学び、自律的に行動することができる

  【問題発見・解決能力】
  5.専門の知識・技術及び基礎的能力を統合し活用して、問題を発見し解決する能力を身につけている

  【グローカル・創造的思考力】
  6.地域的・国際的視点をあわせもち、また、新たな価値を想像する力を身につけている 
授業の概要
 オペレーティングシステムの機能を解説するとともに、講義中にテキストにあるコマンドを実行する実習を行い、さらにシステムコールを用いてシェルのプログラムを作成することで、具体的かつ定着率の高い講義を目指す。また、情報システムにおけるアーキテクチャ、オペレーティングシステム、プログラミング言語の相互関係について、理解できるようにする。 
授業の計画
第1週 ガイダンス、演習環境設定、プログラム課題(shell)、オペレーティングシステム概論

第2週 CPUの仮想化: プロセス, プロセスAPI ※課題提出(shell)

第3週 CPUの仮想化: ファイルディスクリプタとパイプ、制限された直接実行

第4週 CPUの仮想化: CPUスケジューリング、MLFS, 宝くじスケジューラ、Linux CFS

第5週 演習環境設定(WSL)、演習環境設定(XV6-RISCV) 、プログラム課題(syscall) ※課題提出(shell)

第6週 プログラム課題(スケジューラ)演習

第7週 メモリの仮想化: アドレス空間、メモリAPI

第8週 メモリの仮想化: アドレス変換、セグメンテーション

第9週 メモリの仮想化: Free-Space Management、ページング基礎

第10週 メモリの仮想化: TLB、高度なページテーブル、プログラム課題(仮想記憶) ※課題提出(スケジューラ)

第11週 学外講師による特別講義(株式会社テラスカイ)

第12週 永続性: I/Oデバイス

第13週 永続性: ハードディスク

第14週 永続性: ファイルとディレクトリ

第15週 永続性: ファイルシステム ※課題提出(仮想記憶)

第16週 定期試験

尚、学外講師の特別講義の日程は変更になる場合がある。



  
授業時間外学修の指示
・参考書『プログラミング言語C』の第8章「UNIXシステム・インタフェース」は第3回講義の前に読むこと。その際には、掲載されているプログラムをきちんと理解すること。思った以上の時間がかかるので、第3回講義の2週間以上前から始めること。
・テキストにあるコマンドの実行やプログラムの作成は、講義中の時間だけでは全く不十分であるので、授業時間外にも積極的に実施すこと。 
成績評価の方法
プログラム課題        45%
(定期試験期間中)定期試験  55% 
テキスト・参考書等
【テキスト】
・Remzi H. Arpaci-Dusseau著,Andrea C. Arpaci-Dusseau著,"Operating Systems: Three Easy Pieces". 無償で公開されている(https://pages.cs.wisc.edu/~remzi/OSTEP/)。 
履修上の留意点
・講義中にPCを用いた実習を行うため、PCを持参すること。
・講義資料(テキストに沿った日本語資料)、レポート課題、プログラム課題を、manabaにアップロードする。
・レポート課題は、manabaを用いて提出する。
・プログラム課題は情報工学科 情報ネットワーク研究室内のサーバ上で提出する。提出締切日を第1回講義資料に記載する(第1回講義資料のこの部分は適宜変更するので注意すること)。
・C言語のプログラムを理解・作成できることを前提とする。
・システムアーキテクチャを履修済みであることが望ましい。 
資料
備考
特になし 


PAGE TOP