考研408 | 【操作系统】 内存管理
内存的基础
内存和内存的作用:
几个常用的数量单位:
指令的工作原理:
问题:如何将指令中的逻辑地址转换为物理地址?

解决办法:装入的三种方式
1.绝对装入
2.可重定位装入 
3.动态重定位 

从写程序到程序运行
链接的三种方式:
总结: 
内存管理的概念
内存管理:
1.内存空间的分配与回收
2.内存空间的扩展 
3.地址转换 
4.内存保护 
总结: 
覆盖与交换
覆盖技术:

交换技术:

总结: 
连续分配管理方式
单一连续分配:
固定分区分配: 

动态分区分配: 


动态分区分配算法:

1.首次适应算法
2.最佳适应算法 
3.最坏适应算法 
4.邻近适应算法
总结:
回收:




总结:
基本的分页存储
分页存储:
重要的数据结构--页表

问题1:每个页表项占多少字节?


问题2:如何实现地址的转换?





逻辑地址结构: 
总结: 
基本地址变化机构 



题目:

页表项大小: 
总结: 
具有快表的地址变换机构
快表:

思考:能否把整个页表都放在TLB中?
答:不能,因为造价成本高
快表工作过程:

引入快表后,地址的变换过程: 
例题: 
快表和慢表同时查找: 
局部性原理:
总结: 
两级页表
单级页表存在的问题:

解决单级页表的问题: 

两级页表的原理、地址结构:


实现地址变换: 
几个细节:

总结:
基本分段存储管理
分段:

段表: 
地址变换: 

分段、分页管理的对比:



总结: 
段页式管理方式
分页、分段的优缺点分析:

分段+分页=段页式管理:
段页式管理的逻辑地址结构: 
段表、页表:
段页式管理过程:
总结: 
虚拟内存的基本概念
传统存储管理方式的特征、缺点:
局部性原理:
虚拟内存的定义和特征: 
实现虚拟内存技术: 
总结: 
请求分页管理方式

页表机制: 
缺页中断机构:

地址变换机构: 
请求分页管理由逻辑地址转换为物理地址过程: 


总结:
页面置换算法

最佳置换算法(OPT): 

先进先出置换算法(FIFO): 


最近最久未使用置换算法(LRU): 
时钟置换算法(CLOCK): 




改进型的时钟置换算法: 

总结:
页面分配策略
驻留集:

页面分配、置换策略:



何时调入页面:
从何处调入页面:
1:

2:


3:

抖动(颠簸)现象: 
工作集:
总结: 
内存映射文件

传统的文件访问方式:
内存映射文件(Memory-Mapped Files): 

总结:
相关文章:
考研408 | 【操作系统】 内存管理
内存的基础 内存和内存的作用: 几个常用的数量单位: 指令的工作原理: 问题:如何将指令中的逻辑地址转换为物理地址? 解决办法:装入的三种方式 1.绝对装入 2.可重定位装入 3.动态重定位 从写程序到程…...
C# 工厂模式
一、概述 工厂模式(Factory Pattern)是一种创建型设计模式,它提供了一种创建对象的最佳方式。在C#中,工厂模式通过定义一个公共接口或抽象类来创建对象,而具体的对象创建则由工厂类来实现。 工厂模式主要包含三个角色…...
在云服务器上安装Jenkins
说明:Jenkins是一个部署项目的平台,通过Jenkins可以省去从项目开发–>部署项目之间的所有流程,做到代码提交即上线。本文介绍在云服务CentOS上安装Jenkins。 前提 安装Jenkins之前,先要在云服务上安装JDK、Maven、Git&#x…...
一文了解SpringBoot中的IOC
目录 1.什么是IOC 2.IOC容器 3.创建IOC容器 4.装配Bean到IOC容器 5.依赖注入 1.什么是IOC IOC:Inversion of Control 控制反转 Sping中我们把一个个对象称为Bean,以前我们实例一个对象的时候,都会直接New一个 而在Spring中࿰…...
docker-compose管理创建LNMP服务并运行Wordpress网站平台
文章目录 一.项目环境1. 环境描述2.项目需求 二.部署过程1.安装Docker2.安装Docker加速器3.Docker-Compose安装部署4.准备依赖文件、配置nginx5.配置mysql6.配置php7.编写docker-compose.yml8.验证 三.容器快照,然后将Docker镜像打包成tar包备…...
【宝藏系列】一文带你梳理 Linux 的五种 IO 模型
【宝藏系列】一文带你梳理 Linux 的五种 IO 模型 文章目录 【宝藏系列】一文带你梳理 Linux 的五种 IO 模型👨🏫前言1️⃣用户态和核心态1️⃣1️⃣用户态和核心态的切换 2️⃣进程切换3️⃣进程阻塞4️⃣文件描述符(fd, File Descriptor)5️⃣缓存I/O…...
【Python】模块、包
模块 Python模块(Module),是一个Python文件,以.py结尾。模块能定义函数,类和变量,模块里也能保护可执行的代码。 不同模块,同名的功能,如果都被导入,那么后者会覆盖前者…...
CMAKE_CUDA_ARCHITECTURES针对Jetson Xavier或者Orin的设置
不同jetson设备对应不同的CMAKE_CUDA_ARCHITECTURES的设置,如下: # TX1, Nano ------ 53 # TX2 ------ 62 # AGX Xavier, NX Xavier ------ 72 # AGX Orin, NX Orin ----…...
sqlite3.OperationalError: unable to open database file解决方法
执行superset时,提示该错误:sqlite3.OperationalError: unable to open database file 由于superset里使用django设置sqlite3数据库。 应该属于django设置sqlite3数据库的问题: OperationalError: unable to open database file 原因 1&a…...
SSL核心概念 SSL类型级别
SSL:SSL(Secure Sockets Layer)即安全套接层,及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。 H…...
器件介绍TMP1826NGRR、TMP1826DGKR、TMP1827NGRR、TMP1075NDRLR数字温度传感器
一、TMP1826 具有 2Kb EEPROM 的 1-Wire、0.2C 精度温度传感器 器件介绍 TMP1826 是一款高精度、1-Wire 兼容的数字输出温度传感器,具有集成的 2Kb EEPROM 和 –55C 至150C 的宽工作温度范围。TMP1826 在 10C 至45C 的温度范围内提供 0.1C(典型值&#…...
抖店必须绑定抖音账号吗?聊6个抖店不为人知的小细节,别外传
我是王路飞。 现在做抖店,比如绑定一个抖音账号吗? 了解过抖店的朋友都知道,之前开通抖音小店,是需要绑定一个抖音号作为店铺的官方账号的。 而且属于硬性规定,必须要绑定,否则店铺无法正常运营。 但是…...
如何搭建智能家居系统并通过内网穿透实现远程控制家中设备
文章目录 前言1. 安装Home Assistant2. 配置Home Assistant3. 安装cpolar内网穿透3.1 windows系统3.2 Linux系统3.3 macOS系统 4. 映射Home Assistant端口5. 公网访问Home Assistant6. 固定公网地址6.1 保留一个固定二级子域名6.2 配置固定二级子域名 前言 Home Assistant&…...
【趣味随笔】手机参数你真的看懂了吗?
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...
微信小程序开发教学系列(4)- 数据绑定与事件处理
4. 数据绑定与事件处理 在微信小程序中,数据绑定和事件处理是非常重要的部分。数据绑定可以将数据和页面元素进行关联,实现数据的动态渲染;事件处理则是响应用户的操作,实现交互功能。本章节将详细介绍数据绑定和事件处理的基本原…...
C++避坑——most vexing parse问题
1."坑"的问题是什么? 先看一段代码: class Functor { public:void operator()(){std::cout << "我是线程的初始函数" << std::endl;} };int main() {std::thread t(Functor());// 强制高速编译器这是一个构造函数!t.j…...
利用lammps模拟蓝宝石在水润滑环境下的抛光
一 问题描述 蓝宝石(Al2O3)由于其独特的晶体结构,优异的物理化学特性,被广泛应用于航空航天等领域。高精尖的应用领域要求蓝宝石具有纳米级的表面粗糙度以及严格可控的亚表面缺陷。影响超精密加工最终性能的因素主要集中在工件表…...
3.BGP状态机和路由注入方式
BGP状态机 BGP路由的生成 不同于IGP路由协议,BGP自身并不会发现并计算产生路由,BGP将GP路由表中的路由注入到BGP路由表中,并通过Update报文传递给BGP对等体。 BGP注入路由的方式有两种: Networkimport-route与IGP协议相同,BGP支持根据已有的路由条目进行聚合,生成聚合路由…...
微信开发之一键创建微信群聊的技术实现
创建微信群 本接口为敏感接口,请查阅调用规范手册创建后,手机上不会显示该群,往该群主动发条消息手机即可显示。 请求URL: http://域名地址/createChatroom 请求方式: POST 请求头Headers: Content-T…...
设计模式二十:观察者模式(Observer Pattern)
定义了一种一对多的依赖关系,允许多个观察者(也称为订阅者)对象同时监听一个主题对象,当主题对象发生变化时,所有依赖于它的观察者都会收到通知并自动更新。 观察者模式的使用场景 观察者模式在许多场景中都可以发挥…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
