参考教材:《操作系统概念(原书第九版)》
一、导论与操作系统结构
操作系统是什么
操作系统(Operating System,OS)是控制应用程序执行和充当硬件系统和应用程序之间的界面的软件
操作系统做了什么
- 对系统资源实施管理和调度
- 硬件资源(处理器、存储器、设备管理)
- 软件资源(信息、数据-文件管理)
- 控制和协调并发活动
- 提供用户界面
操作系统的必备功能
- 进程管理
进程控制:创建、暂停、唤醒、撤销等; 进程调度:调度策略、优先级;进程通信 - 设备管理
设备的分配和调度;设备的无关性动作;设备的传输控制;设备的驱动管理 - 内存管理
内存分配;内存共享;内存保护;虚拟内存 - 文件管理
存储的空间管理;文件的操作;目录的操作;文件和目录的存取权限管理等
现代操作系统的特征
- 并发(Concurrence)/并行——关键技术
- 两个或多个事件在同一时间间隔内同时发生。
- 并行性:两个或多个事件在同一时刻同时发生
- 并发性:宏观上多个事件在同一时间段 内同时运行,微观上多个事件交替执行。
- 两个或多个事件在同一时间间隔内同时发生。
- 共享(Sharing)
- 指系统中的资源可供内存中多个并发执行的进程共同使用
- 互斥共享方式:在一段时间内只允许一个进程访问资源,临界资源(独占资源);例如:打印机
- 同时访问方式:宏观上在一段时间内允许多个进程“同时” 访问某些资源,微观上“轮流”(交替访问);例如:处理机、内存、磁盘、可重入代码
- 指系统中的资源可供内存中多个并发执行的进程共同使用
- 异步性(不确定性,Asynchronism)
- 任务以人们不可预知的速度向前推进的。
- 带来不确定性
- 导致的原因:竞争资源
- 任务以人们不可预知的速度向前推进的。
- 虚拟(Virtual)——关键技术
- 隐藏实际实现的复杂性
- 隐藏实际实现的复杂性
操作系统结构
-
OS内核是一种特殊的软件程序,控制计算 机的硬件资源,例如协调CPU资源,分配内 存资源,并提供稳定的环境供应用程序运行
-
用户程序只能受限地访问内存
-
为了使应用程序访问到内核管理的资源例如 CPU,内存,I/O。内核必须提供一组通用 的访问接口,这些接口就叫系统调用
-
宏内核:宏内核通过函数调用访问特定的逻辑和数据
-
微内核:微内核通过IPC(进程间通信)访问特定的逻辑和数据
系统调用类型
- 五大类:进程控制、文件管理、设备管理、信息维护、通信
- 进程控制:创建、装入、执行、终止、等待、唤醒、内存分配与释放… …
- 文件管理:创建、删除、打开、关闭、读、写、重定位、属性获取及设置… …
- 设备管理:请求、释放、读、写、重定位、属性获得设置、连接与断开
- 信息维护:读取/设置系统数据、读取/设置时间及日期、读取/设置进程/文件/设备等 属性
- 通 信:创建/删除通信连接、收发消息、连接/断开远端设备