冯诺依曼体系结构
将冯诺依曼体系结构用图描述原理如下:
其中,
输入单元:包括键盘,鼠标,扫描仪,写字板等
输出单元:包括显示器,打印机等
存储器:内存(掉电易失)
中央处理器(CPU):含有运算器和控制器
注意:我们常说的IO(输入输出既input和output),就是从内存的角度上看,把数据从输入设备存入内存的过程叫做input,把内存中的数据输出到输出设备的过程叫做output,这就是IO的过程。
即冯诺依曼体系结构的主要内容:
- 冯.诺依曼体系结构包含五大组件:控制器(Control Unit)、运算器(Arithmrtic Logic Unit)、存储器(Memory)、输入设备(Input)、输出设备(Output);
- 计算机处理的数据和指令一律用二进制数表示,即只有1和0;
- 顺序执行程序:中央处理器即CPU 能且只能对存储器即内存进行读写,不能访问外设 (因为外设的速度是相对较慢的,若CPU效率取决于外设会导致处理效率较慢)。所以计算机运行过程中,把要执行的程序和处理的数据首先存入主存储器,计算机执行程序时,将自动地并按顺序从主存储器中取出指令一条一条地执行,这一概念称作顺序执行程序。
操作系统 – OS
任何系统都包含了一个基本的程序集合,其中包括
- 内核:进程管理,内存管理,文件管理,驱动管理
- 其他程序:函数库,shell程序
操作系统的认识
- 操作系统是一款管理软硬件资源的软件。是一个管理者的角色。
- 管理的本质是对数据做管理,所以管理者是根据被管理者的数据进行相关决策的。也就是说操作系统并不是直接对计算机中的各种硬件进行决策管理,而是通过数据进行分析,最终做出决策。然后再由驱动执行,从而达到管理的效果。因此管理者与被管理者一般不直接沟通,执行者的角色是必不可少的。
- 操作系统是世界上最大的软件,它对下需要合理的管理软硬件资源,对上需要为用户提供稳定的、高效的、安全的、的执行环境。
计算机的体系结构
计算机的体系结构图如下:
前面说到过,OS的管理本质是对数据做管理,管理的方法是先描述在组织
即:先用struct 结构体进行描述,再用链表或者其他高效的数据结构组织起来
操作系统管理软硬件的内容
- 用户部分:用户和用户操作的接口,应用软件
- 系统软件部分:系统调用,操作系统,驱动程序
- 硬件部分:计算机的底层硬件有CPU,内存,硬盘,显示器
系统调用和库函数
系统调用:操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用。
库函数:系统调用在使用上,功能比较基础,对用户的要求相对也比较高。所以开发者可以对部分系统调用进行适度封装,从而形成库函数,有了库函数,就很有利于更上层用户或者开发者进行二次开发。
以上调用对应着用计算机体系结构图中的户操作接口和操作系统中间的联系-- system call
。因此我们可以认为用户不是直接和操作系统进行操作交流的,而是通过调用各种接口间接地进行交流。