[操作系统]内存非连续分配方式

基本分页存储方式

1)把内存分为一个个小分区,再按照分区大小把进程拆分成一个个的小部分,比如每个分区4kb,每个分区就是一个页框/页帧/页存块/物理块,页框号从0开始

2)将进程也分成和页框大小相等的一个个区域,称为页/页面,每个页面也有个编号,页号也是从0开始的

3)将进程分页然后离散的分配到内存的页框里面

知道逻辑地址的内存单元如何想得到存储单元内存物理地址

1)算出逻辑地址的页号

2)页号对应页面在内存中的起始地址

3)逻辑地址在页面中的偏移量

4)物理地址=物理页面起始地址+偏移量

 

逻辑地址页号=逻辑地址/页面长度

页内偏移量=逻辑地址%页面长度

 

页表

页表存储进程进程的每个页面在物理内存中存放的位置,记录了映射关系

1)一个进程一个页表

2)进程每一页对应一个页表项

3)每个页表项,由“页号”和“块号”组成

 

基本分段存储方式

段页式存储方式

 

连续分配方式:为用户进程分配必须是一个连续的内存

非连续分配方式:分散的进程可以分配为一个分散的内存

 

posted @   唯一客服系统开发笔记  阅读(249)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-12-30 [PHP] PHP7已经删除了preg_replace的e修饰符
2017-12-30 [日常] 2017年2月工作总结
2017-12-30 [日常] 2017年1月工作总结
点击右上角即可分享
微信分享提示
1
chat with us