本文概述
纯分段不是很流行, 也没有在许多操作系统中使用。但是, 可以将分段与分页结合使用, 以从两种技术中获得最佳功能。
在分段式分页中, 主存储器分为可变大小的段, 然后进一步分成固定大小的页。
- 页面小于段。
- 每个段都有一个页表, 这意味着每个程序都有多个页表。
- 逻辑地址表示为段号(基地址), 页码和页偏移量。
段号→指向适当的段号。
页码→指向细分中的确切页面
页面偏移量→用作页面框架内的偏移量
每个页面表包含有关该段的每个页面的各种信息。细分表包含有关每个细分的信息。每个段表条目都指向一个页面表条目, 每个页面表条目都映射到一个段内的页面之一。
逻辑地址到物理地址的转换
CPU生成一个逻辑地址, 该地址分为两部分:段号和段偏移量。段偏移量必须小于段限制。偏移量进一步分为页码和页面偏移量。为了在页表中映射确切的页码, 将页码添加到页表库中。
具有页面偏移量的实际帧号被映射到主存储器, 以在进程的特定段的页面中获得所需的单词。
分段分页的优点
- 它减少了内存使用。
- 页表的大小受段大小的限制。
- 段表只有一个条目对应一个实际的段。
- 外部碎片不存在。
- 它简化了内存分配。
分段分页的缺点
- 内部碎片将在那里。
- 与分页相比, 复杂度级别要高得多。
- 页表需要连续存储在内存中。
评论前必须登录!
注册