- 参考:操作系统入门
总览
操作系统概述
操作系统基本概念
- 什么是操作系统?
- 操作系统用于控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合.
- 操作系统是计算机系统中最基本的系统软件.
操作系统的目标
- 作为计算机系统资源的管理者
- cpu,存储器,文件,设备
- 作为用户与计算机硬件系统之间的接口
- 命令接口:联机(交互)命令接口,脱机(批处理)命令接口
- 程序接口:GUI
- 作为扩充机器
- 把覆盖了软件的机器称为扩充机器或虚拟机
- 作为计算机系统资源的管理者
操作系统的特征
- 并发[最基本]
- 与并行区别
- 共享[最基本]
- 指资源共享,系统中的资源可供内存中多个并发执行的进程共同使用.
- 互斥共享,一个时间段只允许一个进程访问该资源.(如打印机,磁带机)
- 同时访问方式,一个时间段内由多个进程”同时”访问(微观上分时共享).(如多进程同时访问磁盘)
- 指资源共享,系统中的资源可供内存中多个并发执行的进程共同使用.
- 虚拟
- 把一个物理实体变为若干逻辑上的对应物.
- os中利用多种虚拟技术来实现
虚拟处理器
,虚拟内存
,虚拟外部设备
- 异步
- 多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行不是一管到底的,而是走走停停的,它以不可预知的速度向前推进.
- 并发[最基本]
操作系统分类
手工操作阶段
- 用户独占全机
- CPU等待手工操作
批处理阶段(os出现)
- 目的:为了解决人机矛盾以及CPU和I/O设备之间速度不匹配的矛盾.
单道批处理
- 描述:系统对作业的处理是成批进行的,但内存中始终保持一道作业
- 特征:
- 自动性
- 顺序性
- 单道性
- 缺点: 运行时需要I/O操作时,需要让告诉CPU等待低俗的I/O完成.
多道批处理
- 描述:多个程序进入内存并在cpu中交替运行,共享系统中的各种软硬件资源.如果一个程序因IO而阻塞,CPU则运行另一个程序.
- 特征:
- 多道
- 宏观上并行
- 微观上串行
- 有点:
- 资源利用率高
- 系统吞吐率高
- 缺点:
- 用户相应时间长
- 不提供人机交互能力
分时操作系统
- 描述:通过时间片轮转
- 特征:
- 同时性:多个用户
- 交互性
- 独立性:用户独立操作
- 及时性:用户短时间得到响应
- 缺点: 对于飞机订票系统、导弹系统等实时性要求搞的情况无法处理.
实时操作系统
- 硬实时操作系统
- 软实时操作系统
- 特征:
- 及时性
- 可靠性
网络操作系统和分布式操作系统
- 总结
操作系统的运行环境
操作系统运行机制
cpu状态
- 核心态:操作系统内核程序
- 用户态:用户自编程序
计算机内核功能
- 时钟管理:计时,管理进程切换
- 中断机制
- 原语
- 底层
- 原子性
- 运行时间短,调用频繁
- 系统控制的数据结构及处理
- 进程控制卡(pcb)等
- 提供各类进程管理操作等
中断和异常
- 外中断(中断):cpu执行指令意外的事件
- 外设请求
- 人的干预
- 异常(内中断,例外,陷入):cpu执行指令内部的事件
- 自愿中断(指令中断)
- 强迫中断(硬件故障,软件中断)
- 中断处理
- 关中断
- 保存断点
- 中断服务程序寻址
- 保存现场和屏蔽字(中断优先级)
- 开中断
- 执行中断服务程序
- 关中断
- 恢复现场和屏蔽字
- 开中断
- 中断返回
系统调用
- 用户在程序中调用操作系统所提供的一些子功能,系统调用可视为特殊的公共子程序
操作系统的体系结构
大内核和微内核
- 大内核就是将os的主要功能模块都作为一个紧密联系的整体运行在和核心态.各管理模块之间共享信息,能有效利用相互之间的有效特性.
- 微内核结构有效地分离内核与服务、服务与服务,使得它们之间的接口更加清晰,维护的代价大大降低。
其他难点
并发和并行
特权指令和非特权指令
- 从用户态转换为核心态的唯一途径是中断或异常
访管指令与访管中断
- 访管指令:让用户程序可以从用户态切换到核心态.非特权指令.
- 访管中断:访管指令引起的中断