オペレーティングシステム (7) 鈴木健一 東北工業大学情報通信工学科 http://www.ca.rsc.tohtech.ac.jp/~suzuki/lecture/os.html Dec. 1, 2015 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 1 / 36 IPA 修了試験に関する連絡 12 月 20 日 (日) 9:30∼12:00 八木山キャンパス 937 教室 9 時 20 分までに入室すること 鉛筆またはシャープペンシル (HB か F),消しゴム,学生証 第 2 回試験 (1 月 24 日) については,掲示等で連絡する. 補習 (担当: 渋谷正行先生) 12 月 2 日 (水) 16:20∼18:00 12 月 9 日 (水) 16:20∼18:00 12 月 16 日 (水) 16:20∼18:00 12 月 19 日 (土) 8:30∼16:00 鈴木健一 (東北工大) 八木山キャンパス 925 教室 八木山キャンパス 925 教室 八木山キャンパス 925 教室 八木山キャンパス 925 教室 オペレーティングシステム (7) Dec. 1, 2015 2 / 36 期末試験についての連絡 15 週目に実施予定 1 月 19 日 (火) 1 講時 131 教室 (予定.掲示に注意) 1, 2 組合同実施 持ち込み不可,再試験は実施しない. 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 3 / 36 仮想記憶 主記憶の時間多重化により プロセスが使用できる主記憶容量の制限をなくす 結果的に,各プロセスが独立したメモリ空間も持つことに 仮想アドレス: プロセスから仮想的に利用できる, 記憶容量に制限のないアドレス (論理アドレスと同意) 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 4 / 36 仮想記憶実現のための操作 スワップイン 実行中のプロセスが, 必要となる領域を二次記憶から主記憶に転送する操作 スワップアウト スワップイン時に必要となる空き領域を確保するために, しばらく使わないと予想される領域を 主記憶から二次記憶に転送する操作 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 5 / 36 ページング メモリページ スワップイン,スワップアウトを行なうときの単位サイズ ← 小さすぎると,スワップイン/アウトが頻繁に発生 ← 大きすぎると,無駄な部分をメモリに置いてしまう 現在の OS では 4KB ∼ 16KB が主流 メモリページを使ったページ管理 = ページング 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 6 / 36 ページングの実際 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 7 / 36 ページングの実際 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 8 / 36 ページングの実際 仮想アドレス空間 0x0000 0x0FFF 0x1000 0x1FFF 0x2000 0x2FFF 0x3000 0x3FFF 0x4000 0x4FFF 0x5000 0x5FFF 0x6000 0x6FFF 0x7000 00 01 02 03 物理アドレス空間 0x0000 0x0FFF 0x1000 0x1FFF 0x2000 0x2FFF 0x3000 00 01 02 03 0x3FFF 04 05 06 07 12 ページサイズ: 4KB =2 B のとき 下位12ビットを除いたものが ページ番号になる ページ番号 = (アドレス AND 0xF000) >> 12 右シフト ページオフセット = アドレス AND 0x0FFF 0x7FFF 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 9 / 36 アドレス変換 プロセスがメモリを使うには ほんもののメモリ (物理メモリ) の上でのアドレス (物理アドレス) を 知る必要 → メモリ関数 ページングによる仮想記憶では ページ毎に,どの仮想ページがどの物理ページに対応しているかの表 → ページテーブル (アドレス変換表) 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 10 / 36 アドレス変換の例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 11 / 36 アドレス変換の例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 12 / 36 アドレス変換の例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 13 / 36 ページテーブル アドレス変換情報 仮想ページ番号,物理ページ番号 主記憶上にあるか,ないか → V フラグ (Virtual memory flag) アクセス条件 → P フラグ (Permission flag) 読み出し可,書き込み可,など 主記憶上で,変更されたか,されていないか → C フラグ (Change flag) 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 14 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 15 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 16 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 17 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 18 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 19 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 20 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 21 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 22 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 23 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 24 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 25 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 26 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 27 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 28 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 29 / 36 スワップイン/アウトの例 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 30 / 36 V フラグ 仮想ページが主記憶上にあるかどうかを示す ある場合には,そのままアクセス可能 ない場合には,スワップインが必要 主記憶上にないページへのアクセス → ページフォルト例外を発生 → そのプロセスは中断される → 必要であれば,スワップアウト → スワップイン 二次記憶は主記憶に対し 1000 倍以上低速 →スワップ操作はできるだけ避けたい 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 31 / 36 C フラグ そのページがスワップインされた後で,変更 (書き込み) を受けたか 変更されていれば, スワップアウトのときに,そのページを二次記憶へ の書き戻す必要あり 変更されていなければ, スワップアウトのときの書き戻しを省略できる 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 32 / 36 P フラグ ページ毎のアクセス制御 読み出し 書き込み 実行 これにより,セグメンテーションと同様の効果を得ることができる 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 33 / 36 まとめ (1) 主記憶管理 ユーザ (プロセス) に独立した論理アドレス空間を提供 論理アドレス空間の要件 → サイズ無限大 → プロセスごとに固有 → プロセス間で共有可能 → 複数の 1 次元アドレス (プログラム部,データ部等の分離) 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 34 / 36 まとめ (2) 仮想記憶: 主記憶の空間多重化と時間多重化 ページング 主記憶再配置の仕組み 仮想アドレスの上位桁 (仮想ページ番号) を 物理アドレスの上位桁 (物理ページ番号) に変換 フラグメンテーションも大きく改善 ページテーブル アドレス変換情報 ページ毎のフラグ (V フラグ,P フラグ,C フラグ) 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 35 / 36 修了試験向け演習 ページング方式の仮想記憶において,主記憶に存在しないページをア クセスした場合の処理や状態の順番として,適切なものはどれか.こ こで,主記憶には現在,空きのページ枠はないものとする. ア 置換え対象ページの決定→ページイン→ ページフォールト→ページアウト イ 置換え対象ページの決定→ページフォールト→ ページアウト→ページイン ウ ページフォールト→置換え対象ページの決定→ ページアウト→ページイン エ ページフォールト→置換え対象ページの決定→ ページイン→ページアウト 鈴木健一 (東北工大) オペレーティングシステム (7) Dec. 1, 2015 36 / 36
© Copyright 2025 ExpyDoc