入出力管理

入出力管理
オペレーティングシステム
12/20/07
入出力装置の大分類


ディスク
 ブロック単位に入出力
 固定長データが多い
 ブロックデバイス
端末(ディスプレイ,キーボード)
 文字単位に入出力
 任意長のストリーム
 キャラクタデバイス,ストリームデバイス
入出力管理の目的




多種多様な入出力装置
制御するプログラムが異なる
装置を変更すると,利用者のプログラムも変更
 無理!
利用者のプログラムからは,同じような手順で利
用できるようにする
 統一された操作モデル
 装置の変更の影響を受けない
デバイス ドライバ
デバイスドライバ(1)



入出力装置を制御するプログラム
 入出力装置ごとに異なる
入出力装置の追加
 対応するデバイスドライバをオペレーティング
システムに追加
利用者のプログラムは変更なし
デバイスドライバ(2)


入出力の効率化を図る
例 ディスク装置へのアクセス
 ヘッドのシーク時間を最小化するような
順序に,アクセスの順序を変更
入出力の効率化
入出力の効率化(1)

入出力装置の動作は,CPUよりも遅い

いろいろな工夫
入力の場合,その時点で
入出力の効率化(2)
必要入力データだけでなく,



ブロッキング
将来必要になるかも知れな
いデータも読み込む
(先読み)
大量の小さなデータは,まとめて大きなデータと
して入出力を行う
例 磁気テープ装置
 テープの速度が一定になるまで待つ
 テープ自体(メディア)の効率的利用
入出力の効率化(3)



バッファリング
このような働きをするも
のをバッファと呼ぶ
 割込み参照
利用者のプログラムの出力データ
 メモリに書き込む
 別のプログラムが,メモリから出力装置に送る
入力データ
 必要になるより前に,メモリに読み込む
入出力の効率化(4)



キャッシング
プログラムが入出力したデータ
 装置に送るだけでなく,メモリにも格納しておく
 再度,そのデータを入力する必要が生じたと
きは,メモリのデータを用いる
 ディスクの入出力(ディスクキャッシュ)
本来は,CPU内の高速メモリと主記憶の間で用
いられていたことに対する用語
入出力の効率化(5)





ファイルへの書き込
みが終了すれば,
出力も終了
(場合により,プログ
ラムは終了)
スプーリング
本来はバッチ(一括)処理
遅い入出力装置の
制御をスプーラに任せる
出力データは装置に送るのではなく,ファイルと
して書き出す
スプーラと呼ばれる独立したプログラムが,それ
を装置に送る
入力データもあらかじめ読み込み,ファイルとし
ておく
接続規格
パソコンの入出力装置の接続方法
IDE

最大4台の内蔵ディスクを接続

CD ROMなども可能

共通仕様 ATA(AT Attachment interface)
SCSI

“スカジー”と読む

汎用接続規格

最大8台までの機器をディジーチェーンで接続
 実際は7台
 接続ケーブルの末端にターミネータをつける
パラレル インターフェイス


複数のビットを並行して(同時に)転送
プリンタで利用される(されていた)
 出力データだけでない
USB




汎用接続規格
最大127台まで
電源を入れたままで接続・切離し可
 ホットプラグ
低速・中速機器
 USB2.0で高速機器をサポート
IEEE 1394 (1)

IEEEは“アイ トリプル イー”と読む

いろいろな規格がある


IEEE802.11a/b/g 無線LAN
SCSIの後継規格


FireWire (アップル)
i.LINK (ソニー)
IEEE 1394 (2)

デジタル機器同士だけで接続可
 パソコン不要
 DV端子

最大63台

ホットプラグ
演習問題
省 略