セグメントメモリ管理

セグメントメモリ管理

Tanenbaumの「最新のオペレーティングシステム」で分割に関するセクションを読んだが、いくつかの質問が残っている。

オペレーティングシステムは空きメモリ領域をどのように管理しますか?たとえば、私のプログラムに別のセグメントが必要なので、OSはメモリ割り当てを試みますが、セグメントのどの部分が利用可能かをどうやって知ることができますか?一種のメモリマップを生成するために各GDTおよびLDTエントリを照会しますか?

説明してくれてありがとう!

ベストアンサー1

短い答えは次のとおりです。分割はもはや広く使われていません。

中間の長さに対する答えは、セグメントが有限でセグメントの数が有限であるということです。ここでページ付けを使用します。いくつかの類似点がありますが、ページ/セグメントごとの機能が少ないため、リソースの制限が少なくなります。

x86ベースのLinuxは、それ自体(カーネル)を分離するためにセグメントを使用していると聞きました。

おすすめ記事