基本分页存储方式

基本分页存储方式

使用kafka的过程对kafka的存储产生了疑惑,又引出了对分页存储的疑惑,对此,对今日分页存储的理解做简要记录

为什么要分页存储

在内存的分配过程中,连续分配方式容易产生大量的碎片,虽然可以通过“紧凑”对其进行整理,但是这样需要大量的开销。
因此,如果能够在进程的内存分配的时候,将连续的逻辑内存打散分配在多个可以不相连的物理内存上,那么将会利用到原来被浪费的大块碎片,降低不可利用碎片的最大大小(降至页面的大小,因为如果碎片的大小超过页面的大小,那么将可以被利用),提升内存利用率。根据这种思想,产生了离散分配方式,如果离散分配的基本单位是页,则称之为分页存储管理方式;如果不具备页面对换功能,那么就是基本分页存储管理方式。

基本概念

页面
分页存储管理方式将进程的连续的逻辑地址空间分割为若干个大小相等 的地址片,称之为页或者页面。并将其进行编号,如第0页、第1页。在逻辑上,这些页中的各个地址拼接起来是连续的,但是他们对应的物理块地址是可以不连续的。对应的物理块也相应的被命名为第0块、第1块等。在进程分配内存时,进程的若干个页分别被装入对应的物理块,由于最后一页经常装不满,所以形成了无法被利用的页内碎片

采用分页存储管理方式的目的就是更多的利用内存碎片,因此,页面的大小相对来说是小于正常进程所需的地址空间大小。那么页面多大是比较合适的呢?页面如果过于小,虽然可以使得内存中不可利用碎片的最大大小降低,提升内存空间的利用率,但是也会导致进程占用过多的页面,使得页表过长,降低页面的换进换出的效率。同样,如果页面过大,虽然提升了页面换进换出的效率,但是也会使得内存碎片增大。所以,根据经验,页面的大小最好选择512B~8KB左右。

页表
页表就是进程中维护的一段地址空间,其中存储了页面和物理块的映射关系,在讨论

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值