目录
操作系统的概念
操作系统的地位和作用
- 没有配置软件的计算机称为裸机
- 操作系统在计算机系统中位于硬件和其他软件之间
操作系统的主要功能
操作系统有其模块协作完成五大管理功能:“处理器管理”、“存储器管理”、“设备管理”、“文件管理”、“作业管理”
- 处理器管理:负责协调系统中的多个程序,使他们正确、有效的占用处理机
- 存储器管理:负责内存的分配与回收、程序的逻辑地址到物理地址的转换、内存的共享与保护
- 设备管理:负责输入/输出设备的分配、共享、驱动调度
- 文件管理:负责文件存储介质的管理(外存空间的分配与释放)
- 作业管理:负责命令处理和作业调度
操作系统的定义
操作系统是合理组织计算机的工作流程,有效控制和管理计算机系统的各类资源,并方便用户使用计算机的程序集合。它是一个最重要的系统软件。
操作系统的类型
-
多道批处理系统
-
分时操作系统
-
实时操作系统
-
单用户操作系统
-
网络操作系统
-
分布式操作系统
操作系统的特征
并发性和并行性
- 并发:指两个或多个事件在同一时间间隔内发生
- 并行:指两个或多个事件在同一时刻发生
共享性
指计算机系统中的各种硬、软件资源都可以为多个用户同时使用。
共享可分为:“互斥共享”、“同时共享”
互斥共享也称顺序共享,是指多个进程互斥地或者排他地性地使用某个资源,例如对打印机的共享。
同时共享也称并发共享,是指在一段时间内允许多个进程同时对它进行访问。
(这里的“同时”是个宏观概念,微观上,这多个进程是交替使用该资源,例如对磁盘的共享访问)
虚拟性
指把物理上的实体变成逻辑上的多个对应物。
例如虚拟内存
异步性
内存中的多个进程都按照各自独立的、不可预知的速度向前推进。
这是因为它们共享资源、并发执行的缘故
操作系统与用户的接口
命令接口
联机命令接口
最常用的一种用户接口。
它由一组键盘命令和命令解释程序组成。
每当用户在终端或控制台键盘上输入一条命令以后,系统便立即转入相应的命令解释程序,对该命令进行解释并执行。
命令完成后,控制返回到终端或控制台,等待用户输入下一条命令。
(例如某些云服务器开发的云连接等等)
脱机命令接口
为批处理作业的用户提供,它由一组作业控制语言语句组成。
程序接口
为用户程序在执行过程中访问系统资源而设定的,是用户程序取得操作系统服务的唯一途径,用户只能在程序里使用。
常见的操作系统提供的程序接口由:“MS-DOS”、“UNIX的系统调用函数”、“Windows的API函数”
图形用户接口
图形用户接口即图形用户界面,简称(GUI),例如一个浏览器界面就是一个图形用户界面。
操作系统的结构
整体式系统
整体式系统是最常用的组织方式,但常被人们形容为“一锅粥”,其结构实际就是“无结构”。
整个系统是一堆过程的集合,每个过程都可以根据需要调用其他过程。
使用这种结构时,系统的每个过程都有一个定义完好的接口,即它的“入口参数”、“返回”
层次式系统
层次式系统是按照操作系统中各个模块的功能和相互依存关系把它们划分为若干个层次,各层之间的模块只能是单向调用关系。
虚拟机系统
采用虚拟机系统结构的操作系统主要由虚拟机监控程序和会话监控系统两大部分组成。
位于底层的虚拟机监控程序是核心,具有多道程序功能,在裸机上运行,负责向上一层的会话监控系统提供若干台虚拟机。
每台虚拟机不具有文件管理功能,仅仅是“精确复制的裸机硬件,包括核心态/用户态等等”。
由于每台虚拟机都与裸机相同,所以不同的会话监控系统上可以运行不同的操作系统,形成更高一层的虚拟机器。
客户-服务器系统
客户-服务器系统由一个微内核和一个运行在用户态并以客户-服务器方式活动的进程层组成。
操作系统的大部分服务器功能,被分成若干个相对独立的进程,每个进程执行一组服务,称为服务器进程。
客户-服务器系统工作方式:“当客户进程需要请求某个服务时,即向服务器选择发出请求服务消息,内核将该消息传给服务器进程,服务器进程执行相应的操作,其结果又通过发消息的方式返回给客户进程”。
操作系统的硬件环境
CPU与外设并行工作
在一台通用的计算机系统中,通过输入/输出控制系统完成外设与主存之间的信息传送。
“当CPU执行到一条启动外设指令时,就按指令中给定的参数启动指定的设备,并把控制移交给输入/输出控制系统,由后者控制外设与主存之间的信息传送,而CPU可以继续执行其他程序。这是CPU与外设就是并行工作的”。
I/O中断的作用
当被启动的外设任务正常完成或发生事故时,则由通道或控制器向系统发出中断请求,请求CPU进行干预。
CPU捕获到这个中断信号后,将转去执行相应的“I/O正常完成”或“I/O异常完成”中断处理程序。
管态与日志
为了构造安全可靠的操作系统,计算机的指令系统划分为特权指令集和非特权指令集两部分。
- 特权指令:只允许操作系统程序使用的一组指令
- 非特权指令:既允许操作系统程序使用,又允许用户程序使用的一组指令。
管态是指:
操作系统的管理程序在执行时CPU所处的状态,又称系统态、核心态、内核态
日态是指:
用户程序在执行时CPU所处的状态,又称用户态。
CPU处于管态时,既可执行特权指令,也可执行非特权指令。
CPU处于日态时,只可执行非特权指令
存储结构
用户程序运行时,必须调入主存(内存)中,以便处理器能够访问。
常把不立即使用的程序和数据放在辅存(外存)中,当处理器再次访问它们时把它们再装入主存。
存储保护
硬件提供存储保护措施,限定用户程序只能在指定的主存区域内执行。