标签:end 调度 分享 物理地址 截图 软件 img 超级计算机 系统设计
虚拟存储器(Virtual Memory),是硬件异常,硬件地址翻译,主存,磁盘文件和内核软件的完善交互,它为每个进程提供一个大的,一致的,私有地址空间。通过一个清晰的机制,虚拟存储器提供了三个要重的能力:
物理地址:计算机系统的主存被组织成一个人由M个连续的字节到校的单元组成的数组。每字节都有一个唯一的物理地址。第一个字节的地CPU生成址为0,接下来的字节地址为1,再下一个是2,依次类推。给定这种简单的结构,CPU访问存储器的最自然的方式就是使用物理地址。
虚拟地址:早期的PC使用物理寻址,而且诸如数字信号处理器,嵌入式微控制器以及Cray超级计算机这样的系统仍然继续使用这种寻址方式。而为通用计算机设计师的现代处理器使用的是虚拟寻址。使用虚拟寻址时,CPU通过生成一个虚拟地址来访问主存,这个虚拟地址在被送到存储器之前先转换成适当的物理地址(这个过程叫做地址翻译,相关硬件为存储器管理单元MMU)
地址空间:一个非负整数地址的有序集合。
线性地址空间:地址空间中的整数是连续的
虚拟地址空间:一个带有虚拟存储器的系统中,CPU从一个有N=2^n个地址的地址空间中生成虚拟地址,这个地址空间称为虚拟地址空间。
虚拟存储器被组织为一个由存放在磁盘上的N个连续的字节大小的单元组成的数组,每个字节都有一个唯一的虚拟地址,这个唯一的虚拟地址是作为到数组的索引的。
VM系统通过将虚拟存储器分割为称为虚拟页的大小固定的块作为磁盘和主存之间的传输单元,每个虚拟页大小为P=2^p。物理存储器被分割为大小也为P字节的物理页称为帧。
DRAM缓存的组织结构是由巨大的不命中开销驱动的。
页表:存放在物理存储器一个数据结构,叫做页表(page table)。页表将虚拟页映射到物理页。
页表就是一个PTE(page table entry,页表条目)的数组。虚拟地址空间中的每个页在页表中的一个固定偏移量处都有一个PTE。
DRAM缓存的组织结构
页命中
局部性原则保证了在任意时刻,程序将往往在一个较小的活动页面集合上工作,这个集合叫做工作集/常驻集。
颠簸:工作集大小超出了物理存储器的大小。
虚拟存储器作为存储器管理的工具
虚拟存储器作为存储器保护的工具
页表基址寄存器:
不合法,触发段错误,终止进程
合法,进入下一条
不合法,触发保护异常,终止程序
合法,进入下一条
Linux通过将一个虚拟存储器区域与一个磁盘上的对象关联起来,以初始化这个虚拟存储器区域的内容的过程叫做存储器映射。
1.Unix文件系统中的普通文件
2.匿名文件(由内核创建,全都是二进制0)
共享对象
共享对象对于所有把它映射到自己的虚拟存储器进程来说都是可见的
在物理存储器中只保存有私有对象的一份拷贝
(一个模板:我看了这一段文字 (引用文字),有这个问题 (提出问题)。 我查了资料,有这些说法(引用说法),根据我的实践,我得到这些经验(描述自己的经验)。 但是我还是不太懂,我的困惑是(说明困惑)。【或者】我反对作者的观点(提出作者的观点,自己的观点,以及理由)。 )
隐式的,分配时间是块总数的线性时间
但是显式的,是空闲块数量的线性时间。
隐式——隐式空闲链表
显式——双向链表,有前驱和后继,比头部脚部好使。
(statistics.sh脚本的运行结果截图)
Unix/Linux中,对于代码fd=open("foo",O_WRONLY,0766),umask=022,下面说法正确的是()
A .
进程对foo是只写的
B .
同组成员能写foo
C .
使用者可以执行foo
D .
任何人都可以写foo
正确答案: A C 你的答案: A B C D
关于open(2),下面说法正确的是( )
A .
flag 参数中O_RDONLY,O_WRONLY,O_RDWR至少要有一个
B .
O_RDONLY|O_WRONLY == O_RDWR
C .
fd=open("foo.txt",O_WRONLY|O_APPEND,0),调用write(fd,buff,n)写入foo.txt的数据不会破坏已有数据。
D .
fd=open("foo.txt",O_WRONLY|O_APPEND,0644),必将导致其他人不能写foo.txt
正确答案: A C 你的答案: A C D
Linux中下列概念中可以用Unix I/O处理的是()
A .
普通文件
B .
设备文件
C .
目录
D .
套接字
正确答案: A B C D 你的答案: A C D
输入输出是针对()来讲的?
A .
CPU
B .
主存
C .
I/O设备
D .
计算机
正确答案: B 你的答案: C
- [20155219](http://www.cnblogs.com/paypay/)
- 结对照片
- 结对学习内容
- 第九章教材内容
xxx
xxx
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
计划学习时间:XX小时
实际学习时间:XX小时
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
# 2017-2018-1 20155224 《信息安全系统设计基础》第十一周学习总结
标签:end 调度 分享 物理地址 截图 软件 img 超级计算机 系统设计
原文地址:http://www.cnblogs.com/nxy970408/p/7967471.html