OS考研chapter3内存管理

2024-05-03 23:04
文章标签 内存 管理 考研 os chapter3

本文主要是介绍OS考研chapter3内存管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、基础知识点补充

1.内存、内存地址概念与联系

2.按byte编址 vs 按字编码

二、进程运行的基本原理

1.指令的工作原理

2.逻辑地址 vs 物理地址

3.从写程序到程序运行

(1)编辑源代码

(2)编译

(3)链接

1)方式

2)生成装入模块,链接之后生成完整的逻辑地址

(4)装入

1)干嘛

2)方式

三、功能  

1.内存空间的分配与回收

(1)连续分配  181

1)单一连续分配

2)固定分区分配

3)动态分区分配(可变分区分配)

4)动态分区分配算法

i)首适应算法 First Fit

ii)最佳适应算法 Best Fit

iii)最坏适应算法 Worst Fit

iv)临近适应算法 Next Fit

(2)非连续分配

1)基本分页存储管理 183

i)thought

ii)concept

iii)页表、逻辑地质结构

iv)实现地址转换

v)基本地址变换机构

vi)具有快表的地址变换机构

vii)基本表 vs 有快表

viii)两级页表

2)基本分段存储管理

3)段页式存储管理 190

2.内存空间的扩充(实现虚拟性)

(1)覆盖

(2)交换

(3)distinguish

3.地址转换

4.存储保护

四、进程的内存映像 179

五、虚拟内存  212

1.基本概念

1)传统存储管理的特征方式

2)局部性原理

3)虚拟内存的定义和特性

4)实现虚拟内存技术

2.请求分页管理方式

1)页表机制

2)中断机构

3)地址变换机构

3.页面置换算法

1)目标

2)分类

4.页面分配策略

六、页面分配策略 215

1.驻留集

2.页面分配、置换策略

3.何时调入页面

4.从何处调页

5.抖动(颠簸)现象 220

6.工作集

七、内存映射文件

1.特性

2.advantage


一、基础知识点补充

1.内存、内存地址概念与联系

2.按byte编址 vs 按字编码

二、进程运行的基本原理

1.指令的工作原理

操作码+若干参数

2.逻辑地址 vs 物理地址

相对地址 vs 绝对地址

3.从写程序到程序运行

(1)编辑源代码

(2)编译

源代码文件生成目标模块

高级语言->机器语言

(3)链接

1)方式
2)生成装入模块,链接之后生成完整的逻辑地址

(4)装入

1)干嘛

将装入模块装入内存,之后形成物理地址

2)方式

绝对装入、可重定位装入、动态运行时装入

三、功能  

1.内存空间的分配与回收

(1)连续分配  181

1)单一连续分配

单进程、advan、disa、内外部碎片

2)固定分区分配

先分配后运行程序

分配方式(固定大小、可变大小)

内外部碎片

3)动态分区分配(可变分区分配)

先运行后分配

外部碎片用“紧凑”解决

回收内存

4)动态分区分配算法
i)首适应算法 First Fit
ii)最佳适应算法 Best Fit
iii)最坏适应算法 Worst Fit
iv)临近适应算法 Next Fit

(2)非连续分配

1)基本分页存储管理 183

i)thought
ii)concept
iii)页表、逻辑地质结构
iv)实现地址转换
v)基本地址变换机构
vi)具有快表的地址变换机构
vii)基本表 vs 有快表
viii)两级页表
2)基本分段存储管理

3)段页式存储管理 190

2.内存空间的扩充(实现虚拟性)

(1)覆盖

(2)交换

(3)distinguish

3.地址转换

4.存储保护

四、进程的内存映像 179

五、虚拟内存  212

1.基本概念

1)传统存储管理的特征方式

2)局部性原理

3)虚拟内存的定义和特性

4)实现虚拟内存技术

2.请求分页管理方式

1)页表机制

2)中断机构

3)地址变换机构

3.页面置换算法

1)目标

2)分类

4.页面分配策略

六、页面分配策略 215

1.驻留集

2.页面分配、置换策略

3.何时调入页面

4.从何处调页

5.抖动(颠簸)现象 220

6.工作集

七、内存映射文件

1.特性

2.advantage

这篇关于OS考研chapter3内存管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/957844

相关文章

在Spring Boot中浅尝内存泄漏的实战记录

《在SpringBoot中浅尝内存泄漏的实战记录》本文给大家分享在SpringBoot中浅尝内存泄漏的实战记录,结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录使用静态集合持有对象引用,阻止GC回收关键点:可执行代码:验证:1,运行程序(启动时添加JVM参数限制堆大小):2,访问 htt

python uv包管理小结

《pythonuv包管理小结》uv是一个高性能的Python包管理工具,它不仅能够高效地处理包管理和依赖解析,还提供了对Python版本管理的支持,本文主要介绍了pythonuv包管理小结,具有一... 目录安装 uv使用 uv 管理 python 版本安装指定版本的 Python查看已安装的 Python

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Redis实现RBAC权限管理

《Redis实现RBAC权限管理》本文主要介绍了Redis实现RBAC权限管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1. 什么是 RBAC?2. 为什么使用 Redis 实现 RBAC?3. 设计 RBAC 数据结构

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

Golang基于内存的键值存储缓存库go-cache

《Golang基于内存的键值存储缓存库go-cache》go-cache是一个内存中的key:valuestore/cache库,适用于单机应用程序,本文主要介绍了Golang基于内存的键值存储缓存库... 目录文档安装方法示例1示例2使用注意点优点缺点go-cache 和 Redis 缓存对比1)功能特性

Go使用pprof进行CPU,内存和阻塞情况分析

《Go使用pprof进行CPU,内存和阻塞情况分析》Go语言提供了强大的pprof工具,用于分析CPU、内存、Goroutine阻塞等性能问题,帮助开发者优化程序,提高运行效率,下面我们就来深入了解下... 目录1. pprof 介绍2. 快速上手:启用 pprof3. CPU Profiling:分析 C

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N