文档章节

linux-1调用流程(仅个人随笔哈)

AnSn
 AnSn
发布于 2017/08/29 19:07
字数 974
阅读 16
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

0)计算机核心部分是运算器、控制器,内存
1)程序必须从磁盘中加载到内存(RAM)才能运行。而磁盘是属于外围设设备,这点要区别于内存。
    内存包括:RAM、ROM。ROM是存储设备驱动命令的,被固化而只能读不能写。它被映射到RAM中(硬件逻辑完成的),
    所有的外围设备才能正常运行。而RAM是存储一般命令和数据的,能写能读命令进去,CPU所有的操作一般指对RAM而不是ROM。
2)程序由指令和数据组成。计算机中必须把所有的指令和数据转换成二进制才能被识别,原因:运算器是硬件,被电驱动,只分
    有电和无电,无电表示0,有电表示1。所以存于磁盘上的数据能被计算机识别的只有二进制。
    磁盘具有记忆功能,每个磁盘有很多的磁道,并把磁道上的磁能转换成电能,这些电能信息被输出来供计算等机(尤指运算器)使用。
3)为简化运算器的数据线,实行一批数据线的分时复用,使得运算器的操作在不同时刻代表不同的含义。
    一个运算器要完成一个功能(有多条指令组成),在总线分时复用前提下,需要用到一个暂存器(缓存器)暂时性记录数据,
    也叫寄存器,等数据和指令提取完成运算器就能同时综合这些信息共同完成一个功能,得出的结果在控制器的指示下
    存放于内存中。
    注意:内存不只是存储指令,还存储数据。他们都在控制器的指示下被分配到内存编址好了的某个单元空间中。
4)指令表示有不同含义的命令(如表示加数、被加数、加法运算符的命令),控制器告诉运算器执
    行命令的运算顺序,然后依据命令顺序从内存中取出数据供运算器运算,从而实现程序的最终功能。
5)内存是存储很多个编址的存储单元,而且每个小单元上有唯一的编址,可代表存放的是指令还是数据。
------------------------------------------------------------------------------------------------------------------
上面所说的内存都是指是RAM存储器,还有一个存储器叫ROM存储器,它的用途是只存贮用于驱动起这个计算机所有设备
(键盘,磁盘,鼠标)的命令,这些被存放于ROM的命令被映射到内存(RAM)中,运算器再通过控制器的调度来找到内存(RAM)
中的这些设备命令并执行他们,从而实现一开机鼠标,键盘,磁盘设备都能正常工作了。
    有个小细节就是:运算器每N秒就访问内存(RAM)一次,以此来扫描是否键盘,鼠标,磁盘等外围设备有没有被用户(指人)
    操作到,有就执行相应命令来响应外围设备。这是早期计算机的工作方法-->改进方式是:用户通过外围设备输入信息,
    此信息附带一个信号表示CPU有指令执行了,它放于一个空间中(叫做中断响应空间),CPU收到响应可能执行对应信息
    的命令也可能不执行,这点CPU在行为上是处于主动位置的,而早期CPU必须每隔短暂时间就去访问一次内存看看是否有
    命令操作(尤指外围设备是否有输入)从而执行对应命令,此时CPU是很被动的,效率及其低下。
-------------------------------------------------------------------------------------------------------------------
 

© 著作权归作者所有

AnSn
粉丝 1
博文 6
码字总数 2834
作品 0
贵港
其他
私信 提问
加载中

评论(0)

随笔之Android平台上的进程调度探讨

随笔之Android平台上的进程调度探讨 一由来 最近在翻阅MediaProvider的时候,突然想起之前碰到的⼀个 问题,该问题是这样的: 一个Pad上有很多媒体文件,然后每次开机后的⼀段时间 内,Home ...

庸人谷
2012/12/04
410
0
RedHat 更新CentOS Yum源(转)

经测试,可用。转自:https://www.cnblogs.com/tangsen/p/5151994.html 一、随笔引言 1.1随笔内容: 1、RedHat 配置Centos yum源 2、yum配置系统本地源(光盘) 1.2原因: 1、RedHat yum源是...

osc_otkk1ufm
2019/02/15
31
0
哈,招c学徒。。。(南京)

哈,为什么说学徒,而不是c程序员,简单理由如下: 团队这边自行构建c的开发环境也存在自身的开发要求,这和团队的开发目标及发展策略有关。例如,所有模块必须仅使用一种接口如下: _i32 m...

中山野鬼
2014/07/28
7.8K
81
oracle的多表合并查询-工作心得

本随笔文章,由个人博客(鸟不拉屎)转移至博客园发布时间: 2018 年 11 月 29 日原地址:https://niaobulashi.com/archives/oracle-select-all.html 刚刚开发需求写了个SQL,记个笔记,学习...

osc_xbmy69c2
2019/03/11
1
0
bash的环境配置文件加载原理

一、环境配置文件概述 在Linux上开发或者部署应用时,免不了要设置配置文件,比如安装JDK,需要为java可执行文件配置环境变量。 大多数时候我们不需要关注shell,但是当你执行"sudo su" 命令...

dragon_tech
2019/01/17
26
0

没有更多内容

加载失败,请刷新页面

加载更多

IntelliJ 安装 Python 插件

运行 IntelliJ,然后在 IntelliJ 的设置中找到 插件。 然后在插件中搜索 Python 如果你没有安装的话,你应该是没有办法找到的。 你可以选择搜索 MarketPlace 选择官方的插件进行安装就可以了...

honeymoose
26分钟前
8
0
记一次element ui table 数据改变UI没渲染的坑

我要根据外界的值来判断我显示的table是单选还是多选,但是props的值变了UI却一直没什么反应,后来采用了强制刷新,在组件上加了一个:key= XXX,这个key根据外界的值得变化而变化,问题解决...

osc_5p8bxoq2
26分钟前
12
0
ASP.NET Core MVC如何上传文件及处理大文件上传

用文件模型绑定接口:IFormFile (小文件上传) 当你使用IFormFile接口来上传文件的时候,一定要注意,IFormFile会将一个Http请求中的所有文件都读取到服务器内存后,才会触发ASP.NET Core MV...

osc_yq7pxbpa
27分钟前
18
0
ASP.NET Core MVC如何上传文件及处理大文件上传

用文件模型绑定接口:IFormFile (小文件上传) 当你使用IFormFile接口来上传文件的时候,一定要注意,IFormFile会将一个Http请求中的所有文件都读取到服务器内存后,才会触发ASP.NET Core MV...

osc_dihgscoq
29分钟前
15
0
马斯克的宇宙飞船爆炸了!但不会影响SpaceX的载人发射

  该炸的 Starship 原型机总是会炸的,该进行的载人任务也总是会发射的。   承载着 SpaceX 未来星际旅行梦想的 Starship 宇宙飞船原型机再一次在测试中以全部炸毁收场。      但需要...

osc_35ne77sz
30分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部