`
Ydoing
  • 浏览: 100652 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

linxu虚拟内存小结

 
阅读更多

概念

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>

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    嵌入式Linux C编程入门(第2版) PPT

    本章小结 70 动手练练 70 第3章 构建嵌入式linux系统 71 3.1 嵌入式系统开发环境的构建 71 3.1.1 嵌入式交叉编译环境搭建 71 3.1.2 minicom和超级终端配置及使用 76 3.1.3 宿主机服务配置 83 3.2...

    Linux程序设计 第4版.haozip01

    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 作为程序设计...

    Linux程序设计 第4版.haozip02

    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 作为程序设计...

    LINUX 24学时教程

    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 ...

    linux网络编程-宋敬彬-part3

    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网络编程-宋敬彬-part2

    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网络编程书,这是我上传的源码

    第一篇 基础知识篇  第一章 文件系统和进程系统  1.1 文件系统  1.1.1 文件系统的总体结构  1.1.2 文件结构和目录结构  1.2 文件系统的相关编程  1.3 进程系统  1.3.1 进程的概念... 本章小结

    linux网络编程-宋敬彬-part1

    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 操作系统基础教程 清华大学信息学院计算机系 目 录 前言..........................................................................................................................................

    入门学习Linux常用必会60个命令实例详解doc/txt

    这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台...

    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 操作系统概论。介绍操作系统的基本概念、多道程序设计技术、操作系统的形成和发展,操作系统的分类;操作系统的服务、操作系统的功能、操作系统的接口;操作...

    自己动手写操作系统 电子工业出版社 pdf

    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网路编程 中文 23M 版

    第1 章Linux操作系统概述................... .......................................................................... 2 1.1 Linux发展历史........................................................ 2 ...

    自己动手写操作系统 pdf

    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 编程一站式学习 宋劲杉 目录 Linux C 编程一站式学习..............................................1 C 语言入门..........................................................5 第 1 章 程序的基本概念.....

    程序员面试刷题的书哪个好-My-first-repository:这是一个测试

    本文通过遍历hello.c在Linux下完整的一个生命周期,从预处理,编译,汇遍等初始过程到动态链接,内存管理,shell运行等较为高级的程序概念,到最后的更深层次的异常控制流,虚拟内存,IO管理等内容,将计算机系统中...

Global site tag (gtag.js) - Google Analytics