3.1.1内存,理解指令

这篇博客详细介绍了操作系统的基础知识,包括内存的作用、存储单元的概念、指令执行的过程、相对地址与绝对地址的差异,以及程序运行的步骤。同时,还讨论了链接的静态、动态两种方式和装入的绝对装入、静态重定位、动态重定位三种方法,深入理解操作系统核心概念。
摘要由CSDN通过智能技术生成

  全知识整理目录

操作系统整理的目录,包括了整理的所有操作系统的知识。


目录

概述

存储单元 

指令的执行过程 

相对地址(逻辑地址)绝对地址(物理地址)

程序运行过程

链接的三种方式 

装入的三种方式


概述

什么是内存?

由于CPU与硬盘的速度极不匹配,所以设计了内存,即CPU拿数据,只能去内存中拿。 

存储单元 

什么是存储单元?为什么要有?

存储单元是内存上的一个个有编号的块,每个块当中就方有数据。

在多道批处理系统当中,并发执行的程序很多,那么怎么快速的找到各自需要的数据,就是根据存储单元的编号来找的。(从0开始,占1B)。 

指令的执行过程 

 指令编译之后,就会根据操作指令(例如数据传输指令,加法指令),存取数据,进行操作。

 然后代码翻译成CPU能够识别的指令,这些指令会告诉CPU,需要去哪里找数据。但是在实际的操作当中往往不知道指令的具体存放位置,所以一般指令使用的是相对地址(逻辑地址)

相对地址(逻辑地址)绝对地址(物理地址)

相对地址就好比,一个班的班级号,而绝对地址就是每个人的学号。

例如班级号是211161(相对地址),而这个班级有30个人那么就是211161(1-30)(绝对地址)。

指令就是采用的相对地址的思想,因为在指令寻找数据的时候,首先关注的是寻找指令的相对地址,在相对地址当中再寻找绝对地址。

程序运行过程

 编译:就是把高级语言翻译成,计算机能读懂的机器语言。

链接:将编译后形成的目标模块,和需要的函数库链接在一起,形成一个完整的装入模块。

装入:装入模块被装入程序装入模块中运行。

链接的三种方式 

静态链接 

在程序运行之前,就先将其所需要的函数库,与目标模块连接成一个完整的可执行文件(装入模块),之后也不会拆开。

装入时动态链接

将各个目标模块装入内存时,边装入边链接。

运行时动态链接

在需要该模块运行的时候,再进行链接,优点是便于更新和修改。

装入的三种方式

绝对装入

在编译的时候,如果程序知道具体放在那个位置(绝对地址),编译程序将会产生绝对地址代码,那么装入程序就会按照装入模块中的地址,将程序和数据装入内存。

可用看见绝对装入是需要绝对地址的,这在多道处理系统中常常是不能拿到的,所以绝对装入只适合于单批道处理系统。

静态重定位

又称可定位装入,编译装入后的模块地址都是从0开始的,就是相对于起始地址的逻辑地址。到装入的时候可用根据当前内存的使用情况,来一次性寻找到合适的位置,将逻辑地址变为物理地址。

特点:必须一次性分配装入所需要的全部内存,不够则不能装入。装入内存之后,也不能够随便的更改移动。

动态重定位

又称动态运行时装入,这种方式和静态重定位装入的区别就是,动态重定位装入,并不会在装入的时候就将逻辑地址转变为绝对地址,而是在程序真正运行的时候才会转化为绝对地址。

特点:由于是在运行是才转化为绝对地址,需要一个重定位寄存器来存储地址。

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ybbgrain

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值