2017-08-12 9 views
0

ページフレームを4KBにすると、16ビットの仮想アドレスと32KBの物理メモリが与えられるのはなぜですか?なぜマッピング0-4K、4K-8Kなどですか? 16ビットのアドレスが与えられた場合、なぜ64KBのプログラムを書くことができますか?オペレーティングシステムのページフレーム

私が知る限り、4KB = 4 * 1024バイト= 4 * 1024 * 8ビット= 32768ビット。 どういうわけかチェックアウトしていませんか?

Like Tannenbaumは0〜4Kのアドレスをとりますが、これは意味をなさない4KBのページフレームと思われますか?ありがとう。

ありがとうございました。

+0

16ビットアドレスは個々のビットを参照しません(アーキテクチャが何らかの理由で1ビットのバイトを持たない場合を除き)。これはバイトを参照します。したがって、65536バイト(64KB)を処理できます。 – struthersneil

答えて

1

私はあなたの混乱を理解していますが、16ビットを指定すると、2^16異なるアドレスを指定できます。これらのアドレスはそれぞれサイズが1バイトです。

仮想空間が2ビットのシステムを考えてみましょう。

___________ 
00 | 1 byte | 
01 | 1 byte | 
10 | 1 byte | 
11 | 1 byte | 
    ----------- 

サイズバイトごとに2^2の異なるアドレスがあります。だからあなたの合計仮想空間は4バイトではなく、4ビットです。

関連する問題