一、操作系统的定义
操作系统是一组计算机程序的集合,用于控制和管理硬件资源和软件资源,合理地组织计算机的工作流程,为用户提供方便、快捷、友好的应用程序使用接口。
二、操作系统的特征
并发性
两个及以上的进程在同一个时间间隔内同时运行。
注:并行是同一个时间点,并发是同一个时间段
共享性
内存中并发执行的多个程序可以共享计算机的硬件资源和软件资源。
分为互斥共享和交替共享,
- 互斥共享:利用信号量或其他手段;
- 交替共享:所谓的“同时”往往是宏观上的,而在微观上,这些用户或程序可能是交替地对该资源进行访问,例如对磁盘设备的访问
随机性
也叫异步性。每道程序在何时执行、各个程序执行的顺序以及每道程序所需要的时间都是不确定的,也是不可预知的。
中断的存在导致一个程序很可能不是一次性运行完,而是运行与等待交替进行
虚拟性
将一个物理实体映射为一个或多个逻辑对象。
三、操作系统的功能与分类
操作系统的功能
从资源管理角度来讲,操作系统具有以下五大基本功能:
- 进程和线程的管理 ——进程线程的状态、控制、同步互斥、通信调度等
- 存储管理——分配/回收、地址转换、存储保护等
- 文件管理——文件目录、文件操作、磁盘空间、文件存取控制
- 设备管理——设备驱动、分配回收、缓冲技术等
- 用户接口——系统命令、编程接口
操作系统的分类
按照系统功能分类,分为以下几类:
- 批处理操作系统:多用于早期的计算机,将作业一次性提交给系统,然后由系统成批的处理
- 分时操作系统:将CPU的时间分成很小的时间片,按时间片轮转法分配给多个终端用户使用的操作系统。UNIX就是典型代表。
- 实时操作系统:对于特定的输入,系统能在极短的时间内做出响应,并完成对该输入请求处理的系统。主要用在生产过程自动处理的行业。如售票系统,航天发射系统、生产过程自动控制领域。具有实时性、可靠性的特点。但是实时系统一般是专用的,交互性比较差。
- 分布式操作系统: 通过计算机网络,将分布在不同位置的计算机互连起来,实现信息交换or资源共享。其基本特征为:功能和任务的分布性、高可靠性。
- 网络操作系统:除一般操作系统的基本功能外,还提供网络服务功能和管理。
- 嵌入式操作系统:发展非常快的领域。能运行在嵌入式系统中,对整个嵌入式系统以及它控制的各种资源进行统一管理和调度的操作系统。嵌入式操作系统能有效管理复杂的系统资源,具有实时高效性、软件固态化以及应用专业化等特点。