一、操作系统概述
操作系统的作用
- OS是用户与硬件系统之间的接口(命令方式、系统调用方式和图形、窗口方式)
- OS是计算机系统资源的管理者(处理器、存储器、I/O设备、文件)
- OS是扩充机/虚拟机(覆盖了软件的机器称为扩充机或虚机器)
基本的操作系统
- 批处理操作系统(目标:资源利用率、系统吞吐量,多道:多个作业并发运行)
- 实时操作系统(目标:快速响应)
- 分时操作系统(多路性:一主机多终端,独占性:一用户一终端,及时性:及时响应,交互性)
操作系统的基本特征(OS最基本特性:并发和共享)
- 程序的并发执行(若干事件在同一时间间隔内发生,串行:一CPU处理多作业,并行:多CPU处理多作业)
- 资源共享(多进程共享系统资源,资源分为互斥共享(独占资源)、同时访问)
- 虚拟
- 操作的异步性
操作系统的功能
- 处理机管理(进程控制、进程同步、进程通信、调度)
- 存储器管理(内存分配、地址映射、存储保护、存储扩充)
- 设备管理(缓冲管理、设备分配、设备驱动)
- 文件系统管理(存储空间管理、目录管理、读写管理)
- 用户接口
- 现代OS的新功能
操作系统结构
- 无结构OS
- 分层式结构OS
基本原则:每一层都仅使用其底层所提供的功能和服务 - 模块化结构OS
- 微内核OS结构(以客户 / 服务器(C / S)为基础,面向对象程序设计(OOP))
二、进程管理
进程
-
程序是静态的,进程是动态的(本质区别)
程序是永久的,进程是暂时的 -
组成部分:程序、数据、进程控制块PCB
-
特征:
动态性、并发性(最基本特征)
独立性:进程是独立获得资源和调度的基本单位
异步性 -
基本状态
就绪
运行
等待/ 阻塞
-
PCB
- 作用
PCB是OS感知进程存在的唯一标志;
将程序变为能独立运行的基本单位,可与其他进程并发执行;
进程与PCB是一一对应的;
PCB随进程创建而建立,随进程结束而回收; - PCB表(组织所有PCB)
PCB表的大小决定了系统中最多可同时存在的进程个数(系统并发度)
线程
线程是进程中的一个实体,线程是系统调度的基本单位
进程使多个程序并发执行提高系统效率
线程减少并发执行时空开销
进程与线程比较
传统OS中拥有资源、独立调度基本单位是进程、进程
引入线程系统中拥有资源、独立调度基本单位是进程、线程
管程
- 定义:包含一个数据结构(能为并发执行进程所执行的一组操作)。
- 组成:
(1)局部于管程的共享变量说明
(2)对该数据结构进行操作的一组过程
(3)对局部于管程的数据设置初始值的语句
进程通信
- 共享存储系统(SharedMemory)
- 管道通信系统(pipe、FIFO)
- 消息传递系统(MessageQ