操作系统概论
1概念
- 操作系统(Operating System,OS)是计算机系统最基础的系统软件,是控制和管理计算机系统硬件和软件资源,调度计算机的工作和资源的分配,以提供给用户和应用程序方便的接口和环境的程序集合。
2功能
2.1计算机系统资源的管理者
- 处理机管理 Processor Management
- 内存管理 Memory Management
- 文件管理 File Management
- 设备管理 Device Management
2.2用户与计算机硬件之间的接口
- 命令接口(Command Interface),分为联机命令接口(交互式命令接口)和脱机命令接口(批处理命令接口)两种。用户可以通过键盘在命令行界面(Command Line Interface,CLI)输入命令,然后控制权交给命令解释器,解释器负责解释并执行用户命令,然后控制权又交还给控制台或终端,用户继续输入命令;用户也可以将命令写成批处理文件,提交给OS执行后用户不能干预,OS按照用户的编写的指令集执行,完成相应的功能。
- 程序接口(Program Interface),由一组系统调用命令(也称广义指令)组成。应用程序可以通过系统调用来请求OS服务,系统调用可以看作子程序。图形用户界面(Graphic User Interface,GUI)也是通过系统调用来实现的。
2.3做扩充机器
- 没有任何软件支持的计算机称为裸机;覆盖了软件的机器称为扩充机器,又称虚拟机。
3特性
- 并发(Concurrence),并发是指两件或两件以上的事件在同一段时间间隔内发生,OS的并发性是指OS在同一段时间内运行着多个进程。区别:并行是指两件或以上的事件在同一时刻发生。
- 共享(Sharing),资源共享是指系统中的资源可共内存中并发执行的多个进程共同使用。资源共享分两种方式:1)互斥共享方式,某些资源在一段时间内只允许一个进程对其进行访问,这些资源也称为临界资源或独占资源;2)同时访问方式,某些资源在一段时间内允许多个进程同时对其进行访问。
- 虚拟(Virtual),虚拟是指将一个物理上的实体映射为逻辑上的对应物。
- 异步(Asynchronism),异步是指在多道程序环境中,进程并发执行,但由于资源优先,进程的执行不是一贯到底的,而是走走停停,以不可知的速度推进。
4发展与分类
- 手工操作阶段(此阶段无OS)
- 批处理阶段(此阶段OS出现),分为单道批处理系统和多道批处理系统。单道多处理系统的特点:1)单道性;2)自动性;3)顺序性。多道批处理系统的特点:1)多道性;2)宏观上并行,微观上串行。
- 分时操作系统,分时技术是指将处理器的运行时间分成很短的时间片,按时间片轮转把处理器分配给给联机作业使用。特点:1)同时性;2)交互性;3)独立性;4)及时性。
- 实时操作系统,可分为硬实时和软实时操作系统,特点:1)及时性;2)可靠性。
- 网络操作系统
- 分布式操作系统
5运行机制
5.1运行模式
- 内核态,执行OS内核程序。特权指令,计算机不允许用户直接使用的指令,如I/O指令,置中断指令等。
- 用户态,执行用户自编程序或系统外层应用程序。
5.2中断机制
- 操作系统是靠中断驱动的。只有一小部分属于内核,负责保护和恢复中断现场的信息,转移控制权到中断处理程序(中断处理程序属于操作系统程序)。
5.2.1中断源
- 中断(Interruption),狭义上的中断,又称外部中断,是指来自CPU执行指令以外的事件的发生,如时钟中断,I/O中断。
- 异常(Exception),广义上的中断,又称内部中断,是指来自CPU执行指令内部的事件的发生,如非法操作码,算术溢出,除零操作,缺页,专门的陷入指令等。
5.2.2中断处理
5.2.3中断屏蔽
//pass
5.2.4中断优先级
//pass
5.2.5中断嵌套
//pass
5.3系统调用
- 系统调用运行在内核态,操作系统通过专门的陷入指令执行系统调用。
- 从用户态转换为内核态的唯一途径是中断或异常,系统通过硬件中断机制进入内核态。
- 从内核态返回用户态会用到特权指令,一般是中断返回指令。
6体系结构
- 大内核
- 微内核
参考书籍:William Stallings.操作系统精髓与设计原理[M].机械工业出版社
参考视频:骆斌、葛季栋.计算机系统.中国大学MOOC南京大学