操作系统的定义
- 操作系统是一个系统软件,负责 有效 管理软硬件,合理 组织工作流程,向用户提供各种服务和功能。
操作系统的特征
-
并发性 (宏观上各个程序并发执行)
-
共享性(多个用户程序共享软硬件资源)
共享方式分为 互斥共享 和 同时共享
-
随机性 (运行的环境、事件的发生是随机的)
操作系统的功能
-
进程管理
进程控制(创建、撤销、状态转换)
进程同步,进程间通信,进程调度
-
存储管理
- 内存的分配与回收
- 不同进程间的数据隔离(存储保护)
- 结合内存和外存(内存扩充)
-
文件管理
- 存储空间的管理
- 目录管理
- 文件系统安全性
-
设备管理
- 中断处理
- 错误处理
-
用户接口
操作系统的分类
-
批处理操作系统
-
流程自动化,资源利用率高
-
分用户模式(目态)与特权模式(管态)
-
输入输出、停机等指令为特权指令,由监控程序执行
-
用户程序通过系统调用执行特权指令
-
系统调用
- 发生中断 / 异常,控制流程交给监控程序
- 处理器变为特权模式
- 由监控程序执行代码
- 恢复系统调用前现场,处理器恢复为用户模式,将控制权交还用户程序
-
SPOOLing(假脱机技术)
- 主机从磁盘读取任务,管理员将任务写进磁盘
-
-
分时系统
- 连接多个终端,以时间片轮转的方式处理请求
- 特点
- 多路性,交互性,独占性(使用者感受不到其他用户的存在)
- 及时性(系统实时给予反馈)
-
实时操作系统
- 在规定时间内及时响应
- 分为硬实时(严格)与软实时
- 功能
- 实时时钟管理(定时执行任务,触发中断执行任务)
- 过载防护
- 高可靠性
-
个人计算机操作系统
-
网络操作系统
-
分布式操作系统
- 是一个统一的系统,所有主机使用的是同一个系统
- 资源深度共享,任务可以从一台主机迁移到另一台主机执行
- 透明性(屏蔽了硬件细节,用户眼中是一台主机)
- 自治性(没有主从关系,一台主机的失效一般不影响整个系统)
- 集群是分布式系统中的一种,一般由一群处理器密集构成,可以用低成本的硬件来构建
操作系统的结构
-
整体式结构
- 早期的设计结构,将系统功能不断分解至单一功能,通过接口连接各模块
- 结构紧密,接口简单,系统效率高
- 模块组合法
- 数据作为全局量使用
- 由于基于大型数据表,常常需要全局中断,导致系统并发性差
- 模块之间转接随便,互相牵连,独立性差,结构不清晰
-
层次结构
- 将系统功能分层实现,各层之间单向依赖,单向调用
- 可以方便的替换掉其中一层,不影响其他层
- 分层方式
- 中断处理、输入输出、BIOS 作为最底层
- 包括各种作业方式(批处理、分时处理等)的实现作为中间层
- 语言解释器,用户接口作为顶层
-
微内核(客户机 - 服务器)结构
- 适用于分布式环境
- 内核运行在核心态,提供线程调度,虚拟存储,消息传递,设备驱动,原语操作集,中断处理功能
- 内核采用层次结构,实现基本的操作系统,提供很小的功能集合
- 以 C-S 结构运行的进程层,在用户态运行,分为若干个独立进程,实现一组服务,称服务进程
- 用户应用与服务进程运行于同一层
- 可靠、灵活、但大量通信导致系统效率较低