什么是内存,内存的作用

什么是内存,内存的作用学习_什么是内存有什么功能

内存可以存放数据,程序执行前需要先放到内存中才能被CPU处理,缓和CPU与硬盘之间的速度矛盾

在多道程序环境下,系统中会有多个程序并发执行,也就是说会有多个程序的数据需要同时放到内存中,那么,如何区分各个程序都放在什么地方呢。

内存比作一个酒店,内存中有一个一个的小房间,每个小房间都是一个存储单元。要给内存的存储单元进行编号。

内存地址从0开始,每个地址都对应一个存储单元

如果计算机按字节编址,每个存储单元大小为1字节。如果按字编,每个存储单元大小为1个字,每个字的大小为16个二进制位。

补充:一些常见的数量单位。2^10=1k(千)

指令的工作原理:程序段,数据段

执行数据传送指令(操作码,后面两个是操作必要的参数)将地址为79的里面的数据,放到3的这个寄存器中,根据操作码,要进行一个加法运算。

操作码一样,指令作用一样,第三条指令是把进行计算之后的写回地址79里面,三条指令完成x=x+1这个运算

什么是内存,内存的作用

默认这个进程的相关内容从地址#0开始连续存放,指令中的地址参数直接给出了变量x的实际存放地址(物理地址)

如果不是从#0开始存放是否会有问题

形成装入模块,可执行文件,程序经过编译,链接后生成的指令指明的是逻辑地址(相对地址),即相对进程的起始地址而言的地址。

指令0:往地址为79的存储单元中写入10

指令1:把地址79中的数据读入寄存器3

装入的三种方式—绝对装入

绝对装入:在编译时,如果知道程序将放到内存中的哪个位置,编译程序将产生绝对地址的目标代码。

内存空间的分配与回收:1.操作系统负责内存空间的分配与回收。

如何在4GB的电脑上运行60G的游戏(虚拟技术,操作系统的虚拟性)

2.操作系统需要提供某种技术从逻辑上对内存空间进行扩充。

3,操作系统提供地址转换功能(绝对装入,可重定位装入,动态运行时装入)

内存保护:各个进程只能访问自己的内存,不能访问操作系统,也不能访问其他进程。

1.设置上下限寄存器

2.重定位寄存器,看看有没有越界

覆盖技术,早期计算机的内存很小,解决程序大小超过物理内存总和。

将程序分为多个段,常用的段常驻内存,不常用的段调入内存。

A模块可能调用B和C,把A放在物理内存的固定区8k,B和C这两个共享一个覆盖区,覆盖区的大小以大的为准,DEF也是共享覆盖区,程序根据自身的逻辑结构,让那些不可能同时被访问的程序段共享一个覆盖区。

必须由程序员声明覆盖结构,操作系统自动覆盖。缺点是对用户不透明。

交换技术:内存紧张时,将内存中某些进程暂时换出外存,把外存中已经具备运行条件的进程换入内存,进程在内存与磁盘间动态调度。

中级调度就是决定将哪个处于挂起状态的进程重新调入内存。

挂起:暂时换出外存等待的进程状态就是挂起状态。(就绪挂起,阻塞挂起)

1.应该在外存(磁盘)的什么位置保存被换出的进程

2.应该什么时候交换

3.应该换出哪些进程

具有对换功能的操作系统中,把磁盘空间分为文件区和对换区。文件区主要用于存放文件,主要追求存储空间的利用率,对文件区空间的管理采用离散分配方式。

考虑优先换出阻塞进程:可换出优先级低的进程:为了防止优先级低的进程刚被调入内存后很快被换出,有的系统还会考虑进程在内存的驻留时间。

今天的文章什么是内存,内存的作用分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/64173.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注