第一章操作系统概述
0.定义
操作系统(Operating System,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本的系统软件。
- 操作系统是系统资源的管理者
- 向上层提供方便易用的服务
1.特征
操作系统(Operating System)是配置在计算机硬件上的第一层软件。
1.并发性:
并发性是指两个或多个事件在同一时间间隔内发生;
并行性:
是指两个或多个事件在同一时刻发生。
并发在宏观上看起来是并行
注意(重要考点):
单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行
多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行
2.共享性是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。
- 互斥共享方式,系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。
- 同时访问方式,系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问。
3.虚拟性通过某种技术把一个物理实体变为若干个逻辑上的对应物。
-
时分复用技术,虚拟处理机技术、虚拟设备技术
-
空分复用技术,虚拟磁盘技术、虚拟存储器技术
4.异步性
2.操作系统的功能
2.1用户与硬件接口
1.命令方式,用户通过输入有关命令来取得操作系统的服务,并控制用户程序的运行;
-
联机命令(交互式命令)
-
脱机命令(批处理命令);
2.系统调用方式,OS提供了一组系统调用(函数),用户可在自己的应用程序中通过相应的系统调用,来实现与操作系统的通信,并取得它的服务;
3.图形、窗口方式,它允许用户通过屏幕上的窗口和图标来实现与操作系统的通信并取得它的服务。
2.2资源的管理者
-
处理机管理,用于分配和控制处理机;
-
存储器管理,主要负责内存的分配与回收;
-
I/O 设备管理,负责I/O设备的分配与操纵;
-
文件管理,负责文件的存取、共享和保护。
2.3扩充机器
3.操作系统的发展与分类
手工操作(无操作系统)
缺点:
(1)用户独占全机;
(2)CPU 等待人工操作。
批处理系统(操作系统开始出现)
(1)单道批处理系统
特点:自动性、顺序性、单道性;
缺点:I/O操作时,CPU无事可做。
(2)多道批处理系统
特点:多道性、宏观上多任务并行、微观上多任务分片串行;
优点:由于提高了CPU、内存和I/O设备的利用率,因此系统吞吐量得到提高。
需要解决的问题:
处理机管理问题、内存管理问题、I/O设备管理问题、文件管理问题和作业管理问题。
缺点:无交互能力。
分时系统
特点:多路性、独立性、及时性和交互性;
缺点:不能优先处理一些紧急任务
实时系统
特点:多路性、独立性、及时性、交互性和可靠性。
微机操作系统
单用户单任务系统、单用户多任务系统和多用户多任务系统。
4.运行机制
我们普通程序员写的程序就是“应用程序”
微软、苹果有一帮人负责实现操作系统,他们写的是“内核程序”
由很多内核程序组成了“操作系统内核”,或简称“内核(Kernel
内核是操作系统最重要最核心心的部分,也是最接近硬件的部分
4.1内核态与用户态
CPU有两种状态,“内核态”和“用户态”
处于内核态时,说明此时正在运行的是内核程序,此时可以执行特权指令
处于用户态时,说明此时正在运行的是应用程序,此时只能执行非特权指令
拓展:CPU中有一个寄存器叫程序状态字寄存器(PSW),其中有个二进制位,1表示“内核态”,0表示“用户态”
内核态→用户态:执行一条特权指令――修改PSW的标志位为“用户态”,这个动作意味着操作系统将主动让出CPU使用权
用户态→内核态:由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权
4.2中断、异常
“中断”是让操作系统内核夺回CPU使用权的唯一途径
中断机制的基本原理
不同的中断信号,需要用不同的中断处理程序来处理。当CPU检测到中断信号后,会根据中断信号的类型去查询“中断向量表”,以此来找到相应的中断处理程序在内存中的存放位置。
4.3系统调用
“系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以通过系统调用来请求获得操作系统内核的服务
什么功能要用到系统调用?
应用程序通过系统调用请求操作系统的服务。而系统中的各种共享资源都由操作系统内核统一掌管,因此凡是与共享资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统内核提出服务请求,由操作系统内核代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。
系统调用的过程:
传递系统调用参数→执行陷入指令(用户态)→执行相应的内请求核程序处理系统调用(核心态)→返回应用程序
注意:
1.陷入指令(trap指令、访管指令)是在用户态执行的,执行陷入指令之后立即引发一个内中断,使CPU进入核心态
⒉.发出系统调用请求是在用户态,而对系统调用的相应处理在核心态下进行
5.操作系统体系结构
操作系统的内核
内核是操作系统最基本、最核心的部分。
实现操作系统内核功能的那些程序就是内核程序。
注意:
操作系统内核需要运行在内核态
操作系统的非内核功能运行在用户态
习题
在单处理器系统中,可并行的是(A)
l.进程与进程
lI.处理器与设备
III.处理器与通道
IV.设备与设备
AI、Il和Ⅲ
B. l、ll和Iv
C. I、Ⅲ和V
D.lI、Ⅲ和IV
下列选项中,操作系统提供给应用程序的接口是(A) 。
A系统调用
B.中断
C.库函数
D.原语
(2011年统考真题)下列选项中,在用户态执行的是(A) 。
A命令解释程序
B.缺页处理程序
C.进程调度程序
D、时钟中断处理程序
目态︰又叫常态或用户态。机器处于目态时,程序只能执行非特权指合。
管态︰又叫特权态,系统态或核心态。CPU在管态下可以执行指合系统的全集。通常,操作系统在管态下运行。
一个多道批处理系统中仅有PI和P2两个作业, P2比PI晚5ms到达。它们的计算和I/O操作顺序如下∶
PI︰计算60ms,IO 80ms,计算20ms
P2∶计算I20ms,I/O 40ms,计算40ms
若不考虑调度和切换时间,则完成两个作业需要的时间最少是(B)
A.240ms
B. 260ms
C. 340ms
D.360ms
下列选项中,不可能在用户态发生的事件是(C) 。
A系统调用
B.外部中断
C.进程切换
D.缺页
中断处理和子程序调用都需要压栈以保护现场。中断处理一定会保存而子程序调
用不需要保存其内容的是(B) 。
A.程序计数器
B.程序状态字寄存器
C.通用数据寄存器
D.通用地址寄存器
计算机开机之后,操作系统最终被加载到(D) 。
A. BIOS
B.ROM
C. EPROM
D.RAM
ROM只读存储器,不可能加载到其中。
BIOS是一种软件
RAM是随机存储器
下列选项中,会导致用户进程从用户态切换到内核态的操作是(B) 。
l.整数除以零
ll. sin()函数调用
Ⅲ. read系统调用
A仅l、lI
B.仅l、Ⅲ
C.仅lI、Ⅲ
D.I、ll和Ⅲ
sin()函数调用普通函数的调用