差分

移動先: 案内検索

カーネルの構造と機能

12 バイト追加, 2008年11月6日 (木) 16:02
/* 記憶管理 */
過去のUNIX System Vの互換のために用意しているのではないかと思えてなりません。
</ref>
 
=== 記憶管理 ===
記憶管理はプロセスが使っているメモリ空間の割り当ての管理です。メモリ空間といってもプロセス自体はハードウェアのメモリを直接意識していません。カーネル側がプロセスに割り当てた仮想的に扱う記憶空間を管理しているため、プロセスは実際に搭載しているハードウェアのメモリの容量よりも大きな記憶空間を利用することができます。記憶管理はプロセスが使っているメモリ空間の割り当ての管理です。メモリ空間といってもプロセス自体はハードウェアのメモリを直接意識していません。カーネル側がプロセスに割り当てた仮想的に扱う記憶空間を管理しているため、プロセスは実際に搭載しているハードウェアのメモリの容量よりも大きな記憶空間を利用することができます。
記憶参照時に記憶領域としては存在しているがハードウェアのメモリ上に存在していない場合は、実行できるようにハードウェア上に読み込みます。この時、記憶領域として扱う単位のことをページといいます。その入れ換えとして実行に不必要のない記憶領域はハードウェア上のメモリから他のデバイス記憶参照時に記憶領域としては存在しているがハードウェアのメモリ上に存在していない場合は、実行できるようにハードウェア上に読み込みます。この時、記憶領域として扱う単位のことをページといいます。その入れ換えとして実行に不必要のない記憶領域はハードウェア上のメモリから他のデバイス(主にハードディスク)へ退逃します。この入れ換えのことをLinuxではスワップといっています。へ退逃します。この入れ換えのことをLinuxではスワップといっています。
;補足: 本来のスワップの意味はプロセスが利用してい記憶空間をまるごと入れ替えることを指します。このあたりの用語は実際に使っている用語と歴史的経緯から使っている用語と混乱していますので理解時に注意してください。本来のスワップの意味はプロセスが利用してい記憶空間をまるごと入れ替えることを指します。このあたりの用語は今日的意味で使っている用語と歴史的経緯から使い続けられている用語と混乱していますので注意が必要です。
mmapはファイルやデバイスを記憶領域にマップする機能を提供します。たとえばファイルをmmapすると、記憶領域をアクセスするのと同じ方法でファイルへのアクセスします。別の言い方をすると、記憶領域もファイルも同じ扱いになります。mmap はファイルやデバイスを記憶領域にマップする機能を提供します。たとえばファイルをmmapすると、記憶領域をアクセスするのと同じ方法でファイルへのアクセスします。別の言い方をすると、記憶領域もファイルも同じ扱いになります。
シェアードメモリはプロセス間で同じ記憶空間を共有するメカニズムです。
 
 
=== ネットワーク ===
匿名利用者