操作系统原理之内存管理(四)
程序员文章站
2023-01-22 12:20:40
内存管理的⽬标:实现内存分配和回收,提高内存空间的利用率和内存的访问速度 一、存储器的层次结构 数据存储的局部性原理: 局部性:在⼀段较短时间内,程序的执⾏仅限于某个部分,相应地它所访问的存储空间也局限于某个区域 分类: 时间局部性:某条指令⼀旦执⾏,不久 后该指令可能再次执⾏ 空间局部性:⼀旦程序 ......
内存管理的⽬标:实现内存分配和回收,提高内存空间的利用率和内存的访问速度
一、存储器的层次结构
数据存储的局部性原理:
局部性:在⼀段较短时间内,程序的执⾏仅限于某个部分,相应地它所访问的存储空间也局限于某个区域
分类:
- 时间局部性:某条指令⼀旦执⾏,不久 后该指令可能再次执⾏
- 空间局部性:⼀旦程序访问了某个单元,不久 后附近的存储单元也将被访问
二、 程序的链接和装入
⾼级语⾔程序 -》 编译、链接 -》 可执⾏程序
程序的链接:将编译后的⽬标模块装配成⼀个可执⾏程序
- 静态链接 程序运⾏前完成链接操作(程序运⾏前,⽤链接程序将⽬标模块链接成⼀个完整的装⼊模块。) 优:运⾏速度快
- 链接程序的任务 1、对逻辑地址进⾏修改 2、变换外部调⽤符号
- 动态链接 程序执⾏时进⾏链接操作(可将某些⽬标模块的链接推迟到这些模块中的函数被调⽤执⾏时才进⾏) 优:节省了空间
程序的装⼊
绝对装⼊⽅式:编译时产⽣物理地址的⽬标代码
3 连续分配存储管理方式
4 基本分页存储管理方式
5 基于分页的虚拟存储系统
6 分段存储管理
7 linux的伙伴系统
上一篇: 2019-09-18 关键字匹配文件名--搜索文件
下一篇: 吃白芸豆能减肥吗?那白芸豆怎么吃呢?
推荐阅读
-
abp(net core)+easyui+efcore实现仓储管理系统——EasyUI之货物管理四 (二十二)
-
C#多线程学习之(四)使用线程池进行多线程的自动管理
-
操作系统原理之内存管理(第四章第二部分)
-
IOS开发(40)之objective-C 的内存管理之-引用计数
-
【原创】(十三)Linux内存管理之vma/malloc/mmap
-
Python深入之python内存管理机制(重点)
-
IOS开发(77)之iOS高级内存管理:比较__unsafe_unretain、__strong、__weak、__autoreleasing
-
abp(net core)+easyui+efcore实现仓储管理系统——ABP WebAPI与EasyUI结合增删改查之四(三十)
-
操作系统原理之操作系统简介(第一章)
-
【原创】(十四)Linux内存管理之page fault处理