文章目录
- 概念
- 设计OS的目的
- 定位
- 总结
- 系统调用和库函数概念
- 总结
前言
正文开始!
冯诺依曼体系结构
我们现在大多数使用的计算机,如笔记本,我们不常见的计算机,如服务器等等,都是冯诺依曼体系结构。
其中包括了输入设备,输出设备,存储器,运算器,控制器。
这些硬件结构结构中分别包括的是:
输入设备:键盘,话筒,摄像头,磁盘,网卡…
输出设备:显示器,音响,磁盘,网卡,显卡…
运算器+控制器[CPU]:算术计算+逻辑运算
存储器:就是内存
关于冯诺依曼,必须强调几点:
这里的存储器指的是内存
不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
一句话,所有的外设只能和内存打交道!!!
对冯诺依曼的理解,不能停留在概念上,要深入到对软件数据流理解上,请解释,从你登录上qq开始和某位朋友聊
天开始,数据的流动过程。 从你打开窗口,开始给他发消息,到他的到消息之后的数据流动过程。如果是在qq上发
送文件呢?
首先将发送的信息通过网络服务等传送到目标的输入设备中,然后将信息读入内存,cpu再去访问内存中的数据,来得到信息!
文件也是相同的道理!!!
操作系统(Operator System)
概念
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:
内核(进程管理,内存管理,文件管理,驱动管理)
其他程序(例如函数库, shell程序等等)
设计OS的目的
与硬件交互,管理所有的软硬件资源
为用户程序(应用程序)提供一个良好的执行环境
定位
在整个计算机软硬件架构中,操作系统的定位是: 一款纯正的“搞管理”的软件
总结
计算机管理硬件
- 描述起来,用struct结构体
- 组织起来,用链表或其他高效的数据结构
系统调用和库函数概念
在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用。
系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发。
总结
(本章完!)