操作系统:概述
基本特征
并发
并发是指在同一时间段内可以同时运行多个程序,并行是指在同一时刻能够同时执行多指令。
并行依靠硬件完成,例如多核处理器或分布式操作系统
并发依靠操作系统引入进程与线程来完成
共享
同一个进程内的线程共享系统中的资源
共享有两种方式:同时共享和互斥共享
互斥共享的资源称为临界资源,临界资源在一个时刻只能被一个进程访问,多个进程访问同一个临界资源时需要用同步机制。
虚拟
虚拟是指将一个物理实体虚拟成多个逻辑实体
虚拟技术有两种:时分复用、空分复用
时分复用:将一个时间段划分成多个时间片,每个进程轮流占用一个时间片,达到进程并发。
空分复用:将物理内存空间虚拟成地址空间,每个进程有自己的地址空间,地址空间的页映射成物理内存。
异步
异步是指进程的执行断断续续,以不可知的速度向前推进。
基本功能
进程管理
进程结构、进程控制、进程同步、进程通信、死锁、进程调度
内存管理
存储器层次、连续分配存储方式、分页存储、分段存储、段页式存储、虚拟内存
设备管理
完成用户的I/O请求,尽量降低I/O设备与CPU处理效率间的巨大差异
主要包括:I/O系统层次、缓存管理、设备分配、磁盘I/O
文件管理
文件的逻辑结构、目录管理、文件共享、文件保护
磁盘管理
磁盘空间的分配、磁盘空间的管理、提高磁盘I/O速度
系统调用
如果一个进程在用户态需要使用内核态的功能,就进行系统调用从而陷入内核,由操作系统代为完成。
大内核与微内核
大内核
大内核是指将整个操作系统功能作为一个整体放到内核中
由于各部分之间直接共享信息,因此效率很高
微内核
由于操作系统不断复杂,因此将一部分操作系统功能移出内核,从而降低内核的复杂性。移出的部分根据分层的原则划分成若干服务,相互独立。
在微内核结构下,操作系统被划分成小的、定义良好的模块,只有微内核这一个模块运行在内核态,其余模块运行在用户态。
因为需要频繁地在用户态和核心态之间进行切换,所以会有一定的性能损失。
中断分类
外中断
不是由CPU指令执行引起的,例如等待I/O
异常
由CPU指令执行的内部事件引起的,例如地址非法、算术溢出等
陷入
在用户程序中进行系统调用