内容紹介
コンピュータの根源ともいえるOS(オペレーティングシステム)を基礎から応用までを学べる教科書!
OS(オペレーティングシステム)はコンピュータを動かす根源となるシステムで、様々なソフトウェアを動かすためになくてはならないものです。
さらにコンピュータを学ぶ上でも避けては通れない分野で、本書はOSを学ぶ上での教科書・参考書です。OSの歴史から、技術の基礎・応用分野までを網羅し、現代のネットワークを絡めたOSの視点からも学べるようになっています。各章ごとに演習問題もありますので復習学習にも役立つようになっています。
学生だけでなく、基礎を学び直したい技術者も読める内容にもなっています。
このような方におすすめ
・情報分野で、特にハードウェア部門の専門を目指す学生
・ハードウェアの基礎の仕組みを再学習することを考えている技術者
目次
主要目次
第1章 序論
第2章 ハードウェアとの接点
第3章 入出力制御とファイル管理
第4章 プロセス管理
第5章 プロセス間通信
第6章 メモリ管理
第7章 仮想記憶制御方式
第8章 OSの構成法と仮想計算機
第9章 TCP/IPの通信処理
第10章 ネットワークプログラミング
付録
詳細目次
第1章 序論
1-1 オペレーティングシステムの役割
1-1-1 使いやすさの提供
1-1-2 信頼性
1-1-3 性能保証
1-2 プログラムはどのようにして動くのか
1-2-1 コンピュータ利用の手順
1-2-2 プログラムの実行手順
1-2-3 セッション管理
1-3 機能マシンとしての資源管理機能
1-3-1 機能マシンの考え方
1-3-2 資源管理機能の概要
1-4 演習問題
第2章ハードウェアとの接点
2-1 割込みとOS
2-1-1 OSと割込みの接点
2-1-2 生産性向上のための割込み
2-1-3 割込み種別とOSの処理概要
2-1-4 OSの制御機構
2-1-5 多重プログラミングを容易にする割込み機構
2-1-6 OSの機能呼出し
2-2 主記憶装置
2-2-1 利用可能となった大容量記憶
2-2-3 記憶保護とその機構
2-3 入出力装置
2-3-1 共通課題の解決
2-3-2 対話形式のプログラム例
2-3-3 入出力の構成例
2-3-4 入出力管理・制御のソフトウェア階層
2-3-5 入出力待ち行列管理
2-3-6 磁気ディスクの機構とアクセス
2-4 演習問題
第3章 入出力制御とファイル管理
3-1 基本的な考え方
3-1-1 OSにおける入出力機能
3-1-2 装置独立をめざして
3-1-3 広義のファイル
3-2 アクセス性能を高める基本技術
3-2-1 ブロッキング
3-2-2 アクセスギャップを埋めるバッファリング
3-2-3 キャッシング
3-3 ファイルシステムの信頼性
3-3-1 ファイルの矛盾とその要因
3-3-2 矛盾を回避する方式
3-4 ファイルシステムの概念
3-4-1 論理化したインターフェースの提供
3-4-2 順編成ファイル
3-4-3 直接編成ファイル
3-4-4 ファイルアクセスの高速化
3-4-5 同期・非同期入出力
3-5 具体的なファイルシステム
3-5-1 ファイルシステムの比較
3-5-2 ファイル格納
3-6 UNIXファイルシステム
3-6-1 ファイルの分類
3-6-2 ファイルシステムの構成
3-6-3 指定されたファイルへたどりつく
3-6-4 ファイルシステムコールの実際
3-6-5 関連システムコールとライブラリ関数
3-5 演習問題
第4章 プロセス管理
4-1 基本的な考え方
4-1-1 プロセスとは何か
4-1-2 プロセススイッチ
4-1-3 プロセスに関する各種の概念
4-1-4 性能向上を目的とする並列処理
4-1-5 信頼性向上を目的とする並列処理
4-1-6 多重プロセッシングを生かすマルチタスキング
4-2 プロセス生成機能
4-2-1 プロセス生成
4-2-2 子プロセスの終了待ち
4-2-3 プロセス識別子を知る
4-2-4 自プロセスを終了させる
4-2-5 別のプログラムを実行する
4-2-6 OS自身の並列処理:デーモンプロセス
4-3 プロセススケジューリング
4-3-1 プロセスの状態と遷移
4-3-2 スケジューリング方式
4-4 プロセス管理情報,タイマ機能
4-4-1 プロセス管理テーブル
4-4-2 タイマ機能
4-5 演習問題
第5章 プロセス間通信
5-1 基本的な考え方
5-1-1 プロセス間通信の必要性
5-1-2 共有資源
5-1-3 クリティカルセクション
5-2 排他制御
5-2-1 排他制御によるプロセス状態の遷移
5-2-2 OSの排他制御方式
5-2-3 アトミックオペレーション:atomic(LOCK)
5-2-4 セマフォ
5-2-5 生産者と消費者問題
5-2-6 デッドロック問題
5-2-7 デッドロックの回避
5-3 プロセス間通信の具体例
5-3-1 コマンドインタープリタの並列処理
5-3-2 パイプ
5-3-3 パイプを作る:pipe
5-3-4 双方向パイプ
5-3-5 ファイル記述子のコピー:dup
5-4 シグナル
5-4-1 シグナルの目的
5-4-2 シグナル受信と送信
5-4-3 シグナルの仕様
5-4-4 関連システムコール
5-5 演習問題
第6章メモリ管理
6-1 基本的な考え方
6-1-1 多重度の向上をめざして
6-1-2 パーティション
6-1-3 3種の未参照メモリの課題
6-2 プロセスへのメモリ割付
6-2-1 静的分割方式
6-2-2 動的分割方式
6-2-3 大容量記憶への願望
6-3 ページング機構
6-3-1 メモリ割当ての制約
6-3-2 ページ化されたメモリの発明
6-3-3 アドレス変換機構
6-3-4 ページングの利点と欠点
6-4 仮想記憶方式
6-4-1 仮想記憶の原理
6-4-2 オンデマンドページングの処理
6-4-3 オンデマンドページングの効果
6-4-4 ページングとスワッピング
6-4-5 仮想記憶利用上の注意点
6-5 演習問題
第7章 仮想記憶制御方式
7-1 基本的な考え方
7-1-1 プログラムのメモリ参照動作と性能
7-1-2 ワーキングセットと局所参照性
7-2 ページリプレースメント
7-2-1 代表的なアルゴリズム
7-2-2 ハードウェア機構とページング処理
7-2-3 実現方式の概要
7-3 仮想記憶の構成法
7-3-1 単一仮想記憶
7-3-2 多重仮想記憶
7-4 システムプログラムとメモリ管理
7-4-1 動的メモリ割付け
7-4-2 仮想記憶制御インターフェース
7-4-3 メモリの共用機構
7-5 演習問題
第8章 OSの構成法と仮想計算機
8-1 OSの構成方式
8-1-1 単一構成
8-1-2 マイクロカーネル
8-1-3 ハイブリッド型構成法
8-2 仮想計算機
8-2-1 基本的な考え方
8-2-2 動作原理
8-2-3 仮想計算機の問題点と解決例
8-2-4 仮想計算機の例
8-2-5 VMマイグレーション
8-3 演習問題
第9章 TCP/IPの通信処理
9-1 基本的な考え方
9-1-1 通信とコンピュータの結合
9-1-2 パケット通信の発明
9-1-3 蓄積交換方式
9-2 ネットワークアーキテクチャ
9-2-1 OSI基本参照モデル
9-2-2 ネットワークを介したプロセス間通信
9-2-3 プロトコルのカプセル化
9-3 IPの概要
9-3-1 IPアドレス
9-3-2 ARPとRARP
9-3-3 IP処理の概要
9-3-4 IP関連サービス
9-3-5 通信制御メッセージ:ICMP
9-4 TCPの概要(RFC793)
9-4-1 仮想回線の実現
9-4-2 TCPセグメント形式
9-4-3 プロセス間通信路:ポート
9-4-4 TCP通信の開始手続き
9-4-5 肯定的応答:ACK
9-4-6 ウインドウ制御による効率的送受信
9-4-7 コネクションを切断
9-5 コネクションレス通信UDPの概要(RFC768)
9-6 演習問題
第10章 ネットワークプログラミング
10-1 基本的な考え方
10-1-1 ソケットの概念
10-1-2 ソケットのAPI
10-2 ソケットプログラミングの実際
10-2-1 サーバの処理方式
10-2-2 TCPによるクライアント・サーバ処理
10-2-3 多重プロセスの並列処理型サーバ
10-2-4 UDPによるクライアント・サーバ処理
10-2-5 ソケット関連の関数例
10-3 演習問題
付録
続きを見る