オペレーティングシステム

April 24, 2018 | Author: Anonymous | Category: N/A
Share Embed


Short Description

Download オペレーティングシステム...

Description

オペレーティングシステムJ/K (入出力管理)

2005年10月24日 酒居敬一([email protected]) http://www.info.kochi-tech.ac.jp/k1sakai/Lecture/OS/2005/

記憶階層 (0次記憶、短期記憶) CPU内部のレジスタ

一次記憶(長期記憶) 主記憶(通常はRAM)のこと 電力の供給を絶てば、記録内容は失われる

二次記憶(外部記憶) HDDやフロッピーなど 電力の供給がなくても、記録し続けるしくみがある 大容量とか可搬であるとか利点をもつが、一般に低速

一次記憶 一般にRAMとしてDRAMが使われる DRAMは大容量だがアクセス速度が遅い RAMの中ではコストパフォーマンスがよい 通常、お金は有限なのです… ただし、リフレッシュが必要

小容量だがアクセス速度の速いSRAMもある 記憶の参照は局所性がみられることが多い DRAMに高速SRAMを組み合わせるのが一般的 このときの高速SRAMはキャッシュと呼ばれている CPUはせっかちさんだからね…

二次記憶 2つ以上の状態間で遷移でき、状態維持にエネル ギーを消費しないものを利用して記録する 磁化を利用する HDDやフロッピーやDAT(磁界を変調して書く、磁界を読む) 光磁気ディスクやMD(磁界を変調して書く、カー効果で読む)

電荷を利用する フラッシュROM(電荷を注入して書く、閾値の変化で読む)

結晶構造を利用する CD-RW(加熱による相変化で書く、相変化を読む)

入出力命令で装置上のデータを読み書きする CPUがメモリを参照するのとは少し違う

入出力機器 • バイト単位で入力と出力できる装置 – 読み書きする位置が設定(シーク)できるもの • シーク可能デバイス – DAT – HDD » シークが比較的速いので二次記憶装置として使われる

• ランダムにアクセスできるが、アクセス位置を示すポインタ は装置側に存在する(メモリと異なる点)

– 読み書きする位置が設定できないもの • シーク不可能デバイス – キーボード – プリンタ – スキャナ

• 狭い意味での入出力装置

制御方法 • 入出力制御専用の命令:I/O命令 – メモリのようにキャッシュしない これは、メモリのようにキャッシュ制御できないから

• I/O空間(メモリ空間に置かれている場合もある) – メモリのように空間内にすべて展開しない – I/Oポートという、ポートを通じて制御する – ポート(Port: 本来の意味は港)に対して入出力する

サスペンドとハイバネーション • サスペンド – CPUは動作停止。内部情報の保持のため電力供給。 – メモリ(通常はDRAM)はリフレッシュ動作のみ継続。 – 周辺デバイスは内部状態をメモリ等に退避して電力供 給を停止。

• ハイバネーション – すべてのデバイスは動作停止。電力供給も停止。 – 二次記憶装置などに内部状態を退避。

• レジューム – CPU/メモリ/周辺デバイスの状態を復帰して、実行再 開

記憶割付けに関して • 要求時ロードとページ置き換え – 実記憶を超えた容量の仮想記憶が割付け可能 – プログラムやデータは参照される瞬間だけ実記憶に存 在していればよい(そのように維持されればよい)。

• 1次記憶(主記憶、RAM)と2次記憶(HDD)の関係 – 1次記憶は2次記憶のキャッシュ • 記憶の実態は2次記憶装置上にある

– 2次記憶は1次記憶が不足したときの退避領域

• スラッシング – ページインとページアウトが激しく起きている状態 – 実記憶容量より仮想記憶容量が大きく、参照の局所性 が期待できないときに起こることが多い。

直接同期制御 • プロセッサがハードウェアを直接操作 • ハードウェアの状態変化と操作が同期 • 状態変化を検出する方法→ポーリング – ポーリングは時間精度がよい – プロセッサは検出にかかりっきり

直接非同期制御 • プロセッサがハードウェアを直接操作 • ハードウェアの状態変化とプロセッサの動作 が非同期 – つまり、状態変化を別の手段で知る – たとえば、割り込み • プロセッサはその間別のことができる

間接制御 • バスマスタ転送 – DMA • 主記憶を対象にデータを転送

– バス使用権を持っているもの→バスマスタ • それ以外はバスマスタによってデータが転送される • バスマスタになりえるもの→プロセッサ、ディスクI/Fなど

• I/Oプロセッサ – 例: ネットワーク通信ボード, RAIDボード – プロセッサの高速化により、減りつつある

入出力管理 • キャラクタデバイス – 入出力動作で1バイトのデータが入出力できる – キーボード、マウス、HDD – 基本的にシーケンシャルアクセス

• ブロックデバイス – ファイルシステムが構築できる – HDD、フロッピー、CDROM – 基本的にランダムアクセス

論理デバイス • 直接ハードウェアを操作させると問題がある – プロセスはOSの上に複数存在する、一方で、 デバイスは限られた数しかない。 – デバイスドライバが間に入る。 – ハードウェア構成は同一であるとは限らないが、 同一のインターフェースで使用できるようにしたい – OSが使用するデバイスは、一般のプロセスから アクセスされては困る。

時間管理 • プロセスがプロセッサを占有する時間 – システムタイマ

• デバイスがバスを占有する時間 – レイテンシタイマ

• 何らかのタイマデバイスにより時間を計っている

時刻管理 • バッチジョブの投入 • UNIXではcronというコマンドで定期的な ジョブを投入できる。 • ファイルのタイムスタンプにも利用。 • メイルなどでも時刻を必要とする。 • タイマデバイスを利用してカウントしている。

View more...

Comments

Copyright © 2017 HUGEPDF Inc.