1、冯诺依曼体系结构
CPU 中央处理器: 进行算术运算和逻辑判断;
存储器: 分为外存和内存, 用于存储数据(使用二进制方式存储)。
输入设备: 用户给计算机发号施令的设备。
输出设备: 计算机给用户汇报结果的设备。
针对存储空间 :硬盘 > 内存 >> CPU
针对数据访问速度 :CPU >> 内存 > 硬盘
2、CPU的执行过程
.exe文件【是一个可执行程序,存储在硬盘】,双击运行==》操作系统把该可执行文件加载到内存中【这里可执行文件指的是程序执行的指令以及指令所依赖的数据】==》交给CPU处理。CPU读取内存中的指令,然后解析指令,并执行指令。
在CPU内部存储数据的单位:寄存器。
CPU为进一步提高指令执行的效率,==》采用流水式作业
CPU的PC寄存器,是决定CPU要执行哪条指令的关键。
指令是由 动作+操作对象组成的。
程序:一组指令以及这组指令要处理的数据。
3、操作系统
操作系统时一组做计算机资源管理的软件的统称。
操作系统对上给软件提供稳定的运行环境;对下管理各种硬件设备【向应用程序提供简单一致的机制来控制硬件设备】。
4、进程
进程是操作系统对一个正在运行的程序的一种抽象。或者可以把进程看作是程序的一次运行过程。
在操作系统内部,进程是操作系统进行资源分配的基本单位。
进程控制块PCB:
每一个PCB对象,就代表着一个实实在在运行的程序,也就是进程。
操作系统再通过这种数据结构,例如线性表、搜索树等将 PCB 对象组织起来,方便管理时进行增删查改的操作。
5、CPU的分配---->进程调度
操作系统对CPU资源的分配,采用的是时间模式=》不同进程在不同的时间段去使用CPU资源。
PCB的关键要素:(1)Pid->进行身份标识;(2)内存指针;(3)文件描述符表->记录当前线程打开了哪些文件,后续可对其进行读取;(4)进程状态;(5)进程优先级;(6)进程上下文;(7)进程记账信息。
所谓进程调度,就是通过并发/并行的方式,让计算机可以同时执行"多个"程序。
6、内存分配---->内存管理
操作系统对内存资源的分配,采用的是空间模式=》 不同进程使用内存中的不同区域,相互之间不产生干扰
7、进程间通信
上述已经描述过,进程是操作系统进行资源分配的最小单位,即意味着进程之间无法感受到对方的存在,引入进程之间的“隔离性”。
虚拟的地址空间==》体现出进程的独立性。虚拟的地址空间,认为进程之间存在“隔离性”。一个进程不能直接访问另一个进程的内存数据。防止干扰的操作,提高系统的阿稳定性。
现实生活中的应用,要完成一个复杂的业务需求,仅通过一个进程是无法独立完成的,需要进程与进程之间进行配合以达到目的。因此,进程之间就有“信息交换”的需求==》进程间的通信。
8、总结
进程存在的意义:让操作系统可以同时执行多个进程,实现“并行”+“并发”的效果,就可以利用到多核CPU资源。
进程创建的步骤:首先,创建PCB;然后,给进程分配资源,赋值到PCB;最后,把PCB插入链表。