概念
Virtual Address(VA):虚拟地址,实际上不存在,是对物理地址的抽象,CPU通过虚拟地址访问内存。
Physical Addrss(PA):物理地址,内存真实的地址。
Memory mangagement unit(MMU):地址转换单元,将虚拟地址转换成物理地址.
虚拟内存重要特性
1.虚拟内存存放在磁盘中,缓存在物理内存中。虚拟内存使得每个进程好像可以独占物理内存一样,这样简化了系统为进程分配内存的过程,同时各个进程都拥有的自己的内存,无不干扰。比如在32位的系统中,每个进程的拥有的虚拟内存是4G(2**32).
2.虚拟内存可以提供内存访问保护,可以在页表中设置权限位,控制进程访问的权限。
3.虚拟内存按页划分,每个页大小为4KB,称为Virtual Page(VP)。
4.操作系统按照页表(Page Table)管理虚拟内存,页表由VP的地址组成的。
5.每个进程都有自己的页表。
6.操作系统经常使用多级页表来减少页表的占用空间.
7.不同进程共享相同的数据和代码(比如共享库)时,只要设置在不同进程的页表中映射到相同的物理内存即可,这样街节省了物理内存的分配.
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
本章小结 70 动手练练 70 第3章 构建嵌入式linux系统 71 3.1 嵌入式系统开发环境的构建 71 3.1.1 嵌入式交叉编译环境搭建 71 3.1.2 minicom和超级终端配置及使用 76 3.1.3 宿主机服务配置 83 3.2...
1.4 小结 14 第2章 shell程序设计 15 2.1 为什么使用shell编程 15 2.2 一点哲学 16 2.3 什么是shell 16 2.4 管道和重定向 18 2.4.1 重定向输出 18 2.4.2 重定向输入 19 .2.4.3 管道 19 2.5 作为程序设计...
1.4 小结 14 第2章 shell程序设计 15 2.1 为什么使用shell编程 15 2.2 一点哲学 16 2.3 什么是shell 16 2.4 管道和重定向 18 2.4.1 重定向输出 18 2.4.2 重定向输入 19 .2.4.3 管道 19 2.5 作为程序设计...
1.10 课时小结 13 1.11 专家答疑 13 1.12 练习题 13 第2学时 安装Linux操作系统 14 2.1 开始安装 14 2.2 完成Linux操作系统安装过程 20 2.2.1 登录到Linux操作系统 22 2.2.2 重新启动和关机 24 2.3 课时小结 25 2.4 ...
1.8 小结 13 第2章 Linux编程环境 14 2.1 Linux环境下的编辑器 14 2.1.1 vim使用简介 14 2.1.2 使用vim建立文件 15 2.1.3 使用vim编辑文本 16 2.1.4 vim的格式设置 18 2.1.5 vim配置文件.vimrc 19 ...
1.8 小结 13 第2章 Linux编程环境 14 2.1 Linux环境下的编辑器 14 2.1.1 vim使用简介 14 2.1.2 使用vim建立文件 15 2.1.3 使用vim编辑文本 16 2.1.4 vim的格式设置 18 2.1.5 vim配置文件.vimrc 19 ...
第一篇 基础知识篇 第一章 文件系统和进程系统 1.1 文件系统 1.1.1 文件系统的总体结构 1.1.2 文件结构和目录结构 1.2 文件系统的相关编程 1.3 进程系统 1.3.1 进程的概念... 本章小结
1.8 小结 13 第2章 Linux编程环境 14 2.1 Linux环境下的编辑器 14 2.1.1 vim使用简介 14 2.1.2 使用vim建立文件 15 2.1.3 使用vim编辑文本 16 2.1.4 vim的格式设置 18 2.1.5 vim配置文件.vimrc 19 ...
Linux 操作系统基础教程 清华大学信息学院计算机系 目 录 前言..........................................................................................................................................
这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台...
Window编程环境介绍295 14.2数据检索加工工具awk296 14.2.1awk基本描述296 14.2.2awk中的...小结303 习题303 附录AUNIX系统中的常用系统调用304 附录BLinux系统中的C环境308 附录CUNIX/Linux常用命令314 参考文献...343
全书共分八章,每章的最后一节是小结,涉及的内容有:CH1 操作系统概论。介绍操作系统的基本概念、多道程序设计技术、操作系统的形成和发展,操作系统的分类;操作系统的服务、操作系统的功能、操作系统的接口;操作...
3.6 保护模式小结123 第4章 让操作系统走进保护模式125 4.1 突破512字节的限制125 4.1.1 FAT12126 4.1.2 DOS可以识别的引导盘131 4.1.3 一个最简单的Loader132 4.1.4 加载Loader入内存133 4.1.5 向Loader交出控制权...
第1 章Linux操作系统概述................... .......................................................................... 2 1.1 Linux发展历史........................................................ 2 ...
3.6 保护模式小结123 第4章 让操作系统走进保护模式125 4.1 突破512字节的限制125 4.1.1 FAT12126 4.1.2 DOS可以识别的引导盘131 4.1.3 一个最简单的Loader132 4.1.4 加载Loader入内存133 4.1.5 向Loader交出控制权...
3.6 保护模式小结123 第4章 让操作系统走进保护模式125 4.1 突破512字节的限制125 4.1.1 FAT12126 4.1.2 DOS可以识别的引导盘131 4.1.3 一个最简单的Loader132 4.1.4 加载Loader入内存133 4.1.5 向Loader交出...
Linux C 编程一站式学习 宋劲杉 目录 Linux C 编程一站式学习..............................................1 C 语言入门..........................................................5 第 1 章 程序的基本概念.....
本文通过遍历hello.c在Linux下完整的一个生命周期,从预处理,编译,汇遍等初始过程到动态链接,内存管理,shell运行等较为高级的程序概念,到最后的更深层次的异常控制流,虚拟内存,IO管理等内容,将计算机系统中...