|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 空 : [そら] 【名詞】 1. sky 2. the heavens ・ 空間 : [くうかん] 【名詞】 1. space 2. room 3. airspace ・ 間 : [けん, ま] 【名詞】 1. space 2. room 3. time 4. pause
情報処理において、アドレス空間 (Address Space) とは、メモリアドレスが意味を成すコンテキストを定義したもの。あるいは、一連のメモリアドレスによってアクセス可能なメモリ空間を意味する。 メモリアドレスはコンピュータのメモリ内の物理的位置を識別するものであり、住所とある意味で類似している。アドレスはデータが格納されている位置を指すが、それはちょうど人間の住所がその人の居住地を指すのと同じである。人間の住所とのアナロジーで言えば、「アドレス空間」とは、町や市や国といったある範囲の地域に対応すると考えることができる。2つのアドレスが数値的に同じでも、それぞれ異なるアドレス空間内のアドレスであれば、異なる位置を指していると言える。これは2つの市に「××町○丁目△-□」という住所が存在したとき、それらが別の場所を指すのと同じことである。 アドレス空間の例: *主記憶装置(物理メモリ) *仮想メモリ *I/O ポート空間 *IPアドレス *××町○丁目(番地 △-□ がアドレスに相当) *○○○市××町(○丁目△-□ がアドレスに相当) 仮想記憶方式のオペレーティングシステムは仮想メモリをカーネル空間とユーザ空間に分離する。カーネル空間はカーネルやデバイスドライバ走行のために厳密に確保される。カーネル空間とユーザー空間の区別はオペレーティングシステムやCPUアーキテクチャによって異なる。ユーザー空間を持たない実装もある(MS-DOS,NetWare3)。一般的な実装例として、ひとつの連続した仮想アドレス空間の特定のアドレスを境にして、ユーザー空間とカーネル空間を分離している場合が多い(Windows系OS,UNIX系OS)。 == カーネル空間 == カーネル空間または「カーネル仮想アドレス空間」はオペレーティングシステムのカーネルが存在する仮想メモリ領域である。Linuxにおいては、全カーネルスレッドが存在しているアドレス空間である。仮想記憶方式によって、仮想アドレスのある範囲を占めている場合と、多重仮想記憶のひとつの仮想空間をカーネル空間として使用する場合がある。前者の場合、ユーザープロセスがその範囲のアドレスにアクセスしようとすると例外が発生する。逆にカーネルからはユーザープロセスの占めているユーザ空間もアクセス可能だが、あくまでも仮想なので物理メモリがマップされていないことがあり、注意を必要とする。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「アドレス空間」の詳細全文を読む スポンサード リンク
|