目录
1、冯诺依曼体系架构
2.操作系统
1、冯诺依曼体系架构
再开始学习进程之前我们要先了解一下计算机的体系结构,这里我们以最经典的冯诺依曼体系结构为例,简单介绍一下一下计算机的体系结构,方便我们对进程的理解。
这里的中央处理器就是,我们平常所称的cpu,这里的运算器就是做运算的,控制器就是做决策的。这里我们的输出设备就包括话筒、键盘、鼠标等等,输出设备包括声卡、网卡、磁盘、打印机。这里的存储器其实就是我们所说的内存(没有电就会丢失数据)。这里的设备是连接的(马努的是让数据在设备之间流动),我们通过总线把他们连接起来。
这里我们让数据进行流动,其实就是把数据进行拷贝,这里我们的拷贝的速度,其实就决定计算机的运算效率,这里我们存储器的存在就是为了加快计算机的运算速度。那它是如何提高计算机的效率呢?下面我简单介绍一下。
我们先了解一下存储金字塔的概念
这里存储金字塔的规则就是距离cpu越近的存储单元,效率越高,造价也就越贵,单体的容量就越小,离cpu越远的存储单元,效率就越低,造价就便宜,单体容量就大 (其实内存条的价格比硬盘要贵就是这个原理)。
回到原来的问题上,我们可以先假设没有内存的存在,其实我们输入输出设备的读写节奏相对于cpu的处理速度来说是很慢的,如果我们把他们直接相连,cpu会长期处于闲置状态,这就造成了浪费,所以我们在他们中间加一个设备,把输入输出设备的数据先预先加载到内存(其实就是预先加载跟缓存),在cpu 再从内存获取数据,而内存的读取拷贝跟cpu的处理速度差异相对较小,这样的效率就能得到较大的提升,同时也能降低成本。
这里cpu 是直接和 内存直接相连的,而程序是在外设设备上的,如果想运行程序,就必须把程序从外设设备加载到内存里面,cpu 再从内存中获取数据,这也就是为什么我们经常说的先把程序加载到内存的原因。
这里举个例子(两个人聊天)
2.操作系统
下面我们介绍一下操作系统,操作系统其实就是管理软硬件资源的的一个软件。下面我们先引入一张图来帮助我们进行理解。
1.这里我们先介绍硬件驱动,这里的各种硬件以冯诺依曼结构进行排布,这里的硬件驱动,就是硬件开发商的写出的对应驱动底层硬件的程序(包括对硬件的描述,方法),这里我们驱动提供方法给上层的操作系统进行调用,在我们插入鼠标时,过一会才会有反应就是在加载驱动程序。
2.这里的操作系统就相当于学校里的管理者,而底层硬件就 相当于学生,属于被管理者。举个例子,我们学校对学生是对”学生的数据“进行管理,而不是对学生本人进行管理,通常一张表进行学生数据(身高、体重等)的存储,学校的管理者就通过对文档进行管理,就可对整个学校进行进行管理。这里我们就可以把操作系统比作管理者,我们把存储学生数据的表用结构体进行描述,我们再用链表把他们连起来,这样就可以通过对链表(其他数据结构)的增删查改的数据的管理。这个过程就是计算机的建模过程,我们可以用“先描述,再组织”六个字来概括。