【av68676164(p54)】段式和段页式虚拟存储
段式存储管理
进程分段
把进程按逻辑意义划分为多个段,每段有段名,长度不定,进程由多段组成
例:一个具有代码段、数据段和堆栈段的进程
段式内存管理系统的内存分配
- 以段为的单位装入,每段分配连续的内存
- 到那时段和段之间不要求响铃
段式系统的虚拟地址
段式虚拟地址VA包含段号S和段内偏移W
VA:(S, W)
段式地址的映射基址
段表(SMT,Segment Memory Table)
记录每段在内存中映射的位置
段号S:段的编号(唯一的)
段长L:该段的长度
基地址B:该段在内存中的首地址
段式地址映射过程
由逻辑地址VA分离出(S, W)
查询段表
- 检索段号S, 查询该段及地址B和长度L
物理地址MA = B + W
段表的扩充
基本字段:段号,长度,基址
扩展字段:中断位,访问位,修改位,R/W/X
段的共享
- 共享段在内存中只有一份存储
- 共享段被多个进程映射到各自段表
- 需要共享的模块可以设置为段都的段
段式系统的缺点
- 段需要连续的存储空间
- 段的最大尺寸收到内存大小的限制
- 在辅存中管理可变尺寸的段的比较困难
段式系统vs页式系统
地址空间的区别
- 页式系统:一维地址空间
- 段式系统:二位地址空间
段与页的区别
- 段长可变,页面大小固定
- 段的划分有意义,页面无意义
- 段方便共享,页面不方便共享
- 段用户可见,页面用户不可见
- 段偏移有一处,页面偏移无溢出
段页式存储管理
在段式存储管理中结合页式存储管理计时
在段中划分页面
段页式系统的地址构成:段号 页号 页内偏移
- 逻辑地址:段号S,页号P和页内偏移W
- 内存按页划分,按页装入
段页式地址的映射机构
同时采用段表和页表实现地址映射
- 系统为每个进程建立一个段表
- 系统为每个段建立一个页表
- 段表给出每段的页表及地址以及页表长度(段长)
- 页表给出每页对应的页框
【av68676164(p54)】段式和段页式虚拟存储的更多相关文章
- Linux段式管理与页式管理
内存管理有2种机制:1.段式管理:2.页式管理 在80386CPU中增加了2个寄存器:1.全局性的段描述表寄存器GDTR 2.局部性的段描述表寄存器LDTR 段寄存器的高13位用于在全局或局部描述表项 ...
- linux内核源码——内存管理:段页式内存及swap
os的内存管理大概可以分成两块:1.段页式管理(虚存)2.swap in 和 swap out 段页式管理 段式管理的图像:运行时重定位 多级页表的管理图像 块表加速 用户(程序员)希望用段,物理内 ...
- [转载]linux段页式内存管理技术
原始博客地址: http://blog.csdn.net/qq_26626709/article/details/52742470 一.概述 1.虚拟地址空间 内存是通过指针寻址的,因而CPU的字长决 ...
- 【Linux】浅谈段页式内存管理
让我们来回顾一下历史,在早期的计算机中,程序是直接运行在物理内存上的.换句话说,就是程序在运行的过程中访问的都是物理地址.如果这个系统只运行一个程序,那么只要这个程序所需的内存不要超过该机器的物理内存 ...
- linux 段页式内存管理
http://blog.chinaunix.net/uid-24227137-id-3723898.html 页是信息的物理单位,分页是为了实现离散分配方式,以消减内存的外零头,提高内存的利用率从:或 ...
- 操作系统之cache、伙伴系统、内存碎片、段式页式存储管理
存储管理是操作系统非常重要的功能之一,本文主要介绍操作系统存储管理的基础知识,包括缓存相关知识.连续内存分配.伙伴系统.非连续内存分配.内存碎片等,并结合linux系统对这些知识进行简单的验证.文章内 ...
- 寄存器,cache、伙伴系统、内存碎片、段式页式存储管理
cache.伙伴系统.内存碎片.段式页式存储管理 目录 分层的存储管理 cache 局部性原理 置换算法 写回策略 linux环境下的cache 连续内存分配与内存碎片 内部碎片与外部碎片 动态分区分 ...
- 【转帖】linux内存管理原理深入理解段式页式
linux内存管理原理深入理解段式页式 https://blog.csdn.net/h674174380/article/details/75453750 其实一直没弄明白 linux 到底是 段页式 ...
- Vue单页式应用(Hash模式下)实现微信分享
前端微信分享的基本步骤: 一.绑定域名: 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名".这个不多说,微信开发 ...
随机推荐
- 数据可视化之PowerQuery篇(六)PowerQuery技巧:批量合并Excel表的指定列
本文来源于一个星友的问题,他有上百个Excel表格,格式并不完全一样,列的位置顺序也不同,但每个表都有几个共同列,这种情况下,能不能通过Power Query把这些表格共同的列批量合并呢? 当然是可以 ...
- 02-flask项目创建及debug模式的开启
一.flask文件的创建 打开pycharm,选择flask文件,选择相关配置,需要配置的有虚拟环境,flask文件名.如下图所示: 新建的flask文件如下所示: static:用来存放静态文件,包 ...
- 没想到 Google 排名第一的编程语言,为什么会这么火?
没想到吧,Python 又拿第一了! 在 Google 公布的编程语言流行指数中,Python 依旧是全球范围内最受欢迎的技术语言! 01 为什么 Python 会这么火? 核心还是因为企业需要用 ...
- CCNA-Part4 -网络层 - IP 协议了解一下
网络层主要提供寻址,路由的功能.而 IP 协议就是为了实现该功能而设计的. IP 协议 IP 协议的特性 工作在网络层 面向无连接的协议 具有单独处理包的能力 分层的地址 不可靠,尽力而为的传送 独立 ...
- Bash 脚本编程
概述 Bash (GNU Bourne-Again Shell) 是许多Linux发行版的默认Shell. shell语法 变量 定义:your_name="hellohhy" 使 ...
- JQuery对下拉列表Select的一些操作
1.假如select中存在选项,需要清空的情况: $("#search").find("option").remove(); $("#search&q ...
- 高阶Pandas知识图谱-《利用Python进行数据分析》
所有内容整理自<利用Python进行数据分析>,使用MindMaster Pro 7.3制作,emmx格式,源文件已经上传Github,需要的同学转左上角自行下载或者右击保存图片. 其他章 ...
- 【JVM之内存与垃圾回收篇】StringTable
StringTable String的基本特性 String:字符串,使用一对 "" 引起来表示 String s1 = "Nemo"; // 字面量的定义方式 ...
- Qt-绘制图表
1 简介 使用Qt的charts模块来绘制图表,案例来自Qt自带的demo. charts模块简介:Qt Chars模块提供了一系列容易使用的图表组件.需要使用charts组件时,需要导入Qt Ch ...
- 宿主机连接docker中的mysql
宿主机连接docker中的mysql dokcer安装mysql docker run \ --name mysql \ -v $PWD/mysql:/var/lib/mysql \ -p 330 ...