目录
第一章:操作系统引论
1. 操作系统的目标与作用
- 目标:
- 有效性:提高系统资源利用率,增强系统吞吐量。
- 方便性:提供用户友好的界面,简化用户操作。
- 可扩充性:支持系统功能的扩展和升级。
- 开放性:遵循国际标准,支持不同厂家设备的集成。
- 作用:
- 用户与硬件的接口:提供命令行界面、图形用户界面等。
- 系统资源的管理者:管理CPU、内存、I/O设备、文件等资源。
- 抽象层次:通过抽象层次简化硬件操作,提供统一的接口。
2. 操作系统的发展过程
- 无操作系统:
- 人工操作:用户直接操作硬件,效率低,错误率高。
- 脱机输入/输出:通过外围机进行数据传输,减少CPU空闲时间。
- 单道批处理系统:
- 监督程序:控制作业的顺序执行。
- 特点:自动性、顺序性、单道性。
- 多道批处理系统:
- 多道程序设计:同时在内存中运行多个程序,提高资源利用率。
- 特点:高资源利用率、高吞吐量、长平均周转时间。
- 分时系统:
- 多路性:支持多用户同时使用。
- 独立性:每个用户独立操作,互不干扰。
- 及时性:快速响应用户请求。
- 交互性:用户与系统进行交互操作。
- 实时系统:
- 实时性:及时响应外部事件。
- 可靠性:高可靠性,确保系统稳定运行。
3. 操作系统的基本特性
- 并发性:
- 定义:多个程序同时在系统中运行。
- 实现:通过多道程序设计和多处理机技术。
- 共享性:
- 互斥共享:资源在同一时间只能被一个进程使用。
- 同时访问:资源可以被多个进程同时访问。
- 虚拟性:
- 时分复用:通过时间片轮转实现虚拟处理机。
- 空分复用:通过空间划分实现虚拟存储器。
- 异步性:
- 定义:进程以不可预知的速度推进。
- 原因:资源竞争、进程调度等。
4. 操作系统的主要功能
- 处理机管理:
- 进程控制:创建、终止、挂起、唤醒进程。
- 调度:选择进程执行的顺序。
- 同步:协调进程间的执行顺序。
- 通信:实现进程间的信息交换。
- 存储器管理:
- 内存分配:分配和回收内存空间。
- 内存保护:防止进程间相互干扰。
- 地址映射:将逻辑地址映射到物理地址。
- 内存扩充:通过虚拟存储技术扩展内存。
- 设备管理:
- 设备分配:分配I/O设备。
- 设备驱动:控制设备操作。
- 缓冲管理:管理缓冲区,提高I/O效率。
- 文件管理:
- 文件存储:管理文件的存储和检索。
- 目录管理:组织文件目录。
- 文件保护:控制文件的访问权限。
5. OS结构设计
- 传统结构:
- 无结构OS:早期操作系统,代码混乱,难以维护。
- 模块化结构:将OS分为多个模块,每个模块负责特定功能。
- 分层式结构:将OS分为多层,每层依赖于下一层。
- 现代结构:
- 客户/服务器模式:将OS分为客户端和服务器端。
- 微内核结构:将OS核心功能最小化,其他功能通过服务器实现。
第二章:进程管理
1. 进程的基本概念
- 定义:
- 进程:程序的一次执行,包含程序代码、数据和控制信息。
- 特征:动态性、并发性、独立性、异步性。
- 状态:
- 就绪:进程已分配到除CPU外的所有资源,等待CPU调度。
- 执行:进程正在CPU上运行。
- 阻塞:进程因等待某个事件而暂停执行。
- 挂起:进程被暂时移出内存,等待重新调度。
2. 进程控制
- 创建:
- 申请PCB:为新进程分配控制块。
- 分配资源:为进程分配内存、I/O设备等资源。
- 插入就绪队列:将进程插入就绪队列,等待调度。
- 终止:
- 回收资源:回收进程占用的资源。
- 删除PCB:删除进程控制块。
- 移出队列:将进程从队列中移出。
- 阻塞与唤醒:
- 阻塞:进程因等待某个事件而暂停执行。
- 唤醒:事件发生后,将进程唤醒,插入就绪队列。
- 挂起与激活:
- 挂起:将进程移出内存,等待重新调度。
- 激活:将挂起的进程重新调入内存,插入就绪队列。
3. 进程同步
- 信号量机制:
- 定义:用于实现进程间的同步和互斥。
- 操作:wait和signal操作。
- 应用:实现进程互斥、前趋关系。
- 管程机制:
- 定义:封装共享资源和操作的程序模块。
- 特性:模块化、抽象数据类型、信息隐藏。
- 应用:实现进程同步和互斥。
4. 线程
- 定义:
- 线程:轻量级进程,减少系统开销。
- 特性:独立调度、共享资源、并发执行。
- 实现方式:
- 内核支持线程:线程的创建、调度和管理由内核支持。
- 用户级线程:线程的创建和管理在用户空间完成。
第三章:处理机调度与死锁
1. 处理机调度层次
- 高级调度:
- 定义:从外存的后备队列中选择作业调入内存。
- 功能:决定接纳多少作业、接纳哪些作业。
- 低级调度:
- 定义:从就绪队列中选择进程分配CPU。
- 功能:保存现场、选择进程、分配CPU。
- 中级调度:
- 定义:管理内存中的进程,将暂时不能运行的进程移出内存。
- 功能:提高内存利用率和系统吞吐量。
2. 调度算法
- 先来先服务:
- 定义:按到达顺序调度进程。
- 特点:简单公平,但可能饿死短作业。
- 短作业优先:
- 定义:优先调度短作业。
- 特点:降低平均周转时间,但可能饿死长作业。
- 优先级调度:
- 定义:根据优先级调度进程。
- 特点:满足紧迫任务的需求。
- 时间片轮转:
- 定义:按时间片轮转调度进程。
- 特点:适用于分时系统,保证响应时间。
- 多级反馈队列:
- 定义:综合多种调度算法的优点。
- 特点:适用于多种类型的进程。
3. 死锁
- 定义:
- 死锁:多个进程因争夺资源而无法继续执行的状态。
- 产生原因:
- 资源竞争:资源不足导致进程竞争。
- 进程推进顺序不当:请求和释放资源的顺序不当。
- 必要条件:
- 互斥条件:资源被独占。
- 请求和保持条件:进程已占有资源,又请求新的资源。
- 不剥夺条件:资源不能被强行剥夺。
- 环路等待条件:存在资源等待环路。
- 处理方法:
- 预防死锁:破坏死锁的必要条件。
- 避免死锁:通过资源分配策略避免死锁。
- 检测与解除:检测死锁状态,采取措施解除死锁。
第四章:存储器管理
1. 存储器的层次结构
- 多级存储器结构:
- 寄存器:最快,容量小,价格高。
- 高速缓存:次快,容量中等。
- 主存储器:较慢,容量较大。
- 磁盘缓存:较慢,容量大。
- 辅存:最慢,容量最大,价格低。
- 特点:
- 速度:越往上越快。
- 容量:越往下越大。
- 价格:越往上越贵。
2. 程序的装入和链接
- 装入方式:
- 绝对装入:按绝对地址装入内存。
- 可重定位装入:按相对地址装入内存,进行地址重定位。
- 动态运行时装入:在运行时动态装入和重定位。
- 链接方式:
- 静态链接:在程序运行前完成链接。
- 装入时动态链接:在装入时进行链接。
- 运行时动态链接:在运行时按需链接。
3. 存储器管理功能
- 内存分配:
- 静态分配:在程序装入时分配内存。
- 动态分配:在程序运行时动态分配内存。
- 内存保护:
- 内存保护机制:防止进程间相互干扰。
- 地址映射:
- 逻辑地址到物理地址的转换:通过地址映射机制实现。
- 内存扩充:
- 虚拟存储技术:通过请求调页和置换算法扩展内存。
第五章:设备管理
1. I/O系统
- 设备分类:
- 字符设备:如键盘、显示器。
- 块设备:如磁盘、磁带。
- I/O控制方式:
- 程序控制I/O:CPU直接控制I/O操作。
- 中断驱动I/O:通过中断机制控制I/O操作。
- DMA:通过DMA控制器控制I/O操作。
2. 缓冲管理
- 缓冲区:
- 单缓冲:一个缓冲区。
- 双缓冲:两个缓冲区,提高效率。
- 循环缓冲:多个缓冲区循环使用。
- 作用:
- 提高I/O效率:减少CPU等待时间。
- 协调I/O速度:匹配I/O设备和CPU的速度。
3. 设备分配
- 分配策略:
- 独占设备:设备被一个进程独占。
- 共享设备:设备被多个进程共享。
- 设备独立性:
- 设备独立性软件:提供统一的设备接口。
第六章:文件管理
1. 文件和文件系统
- 文件类型:
- 普通文件:文本文件、二进制文件。
- 目录文件:文件的目录结构。
- 文件系统模型:
- 层次结构:文件和目录的层次组织。
- 网络文件系统:通过网络共享文件。
2. 文件存储空间管理
- 分配方式:
- 连续分配:文件存储在连续的磁盘块中。
- 链接分配:文件存储在非连续的磁盘块中,通过指针链接。
- 索引分配:通过索引块管理文件存储。
- 存储管理:
- 空闲表法:记录空闲磁盘块。
- 位示图法:用位图表示磁盘块的使用情况。
3. 文件保护
- 访问控制:
- 权限设置:读、写、执行权限。
- 加密技术:通过加密保护文件内容。
第七章:操作系统接口
1. 用户接口
- 命令接口:
- 联机命令:用户通过命令行输入命令。
- 批处理命令:用户通过批处理文件输入命令。
- 图形用户接口:
- 窗口:提供图形化的操作界面。
- 图标:用图标表示文件和程序。
- 菜单:通过菜单选择操作。
2. 系统调用
- 功能:
- 进程控制:创建、终止、挂起、唤醒进程。
- 文件操作:打开、关闭、读、写文件。
- 通信:进程间通信。
- 实现:
- 陷入机制:通过陷入指令进入内核态。
- 系统调用表:记录系统调用的入口地址。
第八章:网络操作系统
1. 计算机网络概述
- 网络拓扑:
- 星型:中心节点连接所有其他节点。
- 环型:节点形成环形结构。
- 总线型:节点连接到一条公共总线上。
- 网络体系结构:
- OSI模型:七层模型,从物理层到应用层。
- **TCP/IP
2. 网络操作系统功能
- 资源共享:
- 文件共享:文件在不同用户间共享。
- 打印机共享:打印机在不同用户间共享。
- 网络管理:
- 用户管理:管理用户账户和权限。
- 安全管理:保护网络资源免受非法访问。
第九章:系统安全性
1. 安全技术
- 认证技术:
- 基于口令的认证:通过用户名和口令进行认证。
- 基于生物特征的认证:通过指纹、虹膜等生物特征进行认证。
- 加密技术:
- 对称加密:使用相同的密钥进行加密和解密。
- 非对称加密:使用公钥和私钥进行加密和解密。
- 访问控制:
- 访问矩阵:记录用户对资源的访问权限。
- 权限设置:设置文件和目录的访问权限。
2. 计算机病毒
- 定义:
- 计算机病毒:能够自我复制并传播的恶意程序。
- 防治:
- 杀毒软件:检测和清除病毒。
- 防火墙:防止病毒通过网络传播。
第十章:UNIX系统内核结构
1. UNIX系统概述
- 特点:
- 多用户:支持多个用户同时使用。
- 多任务:支持多个任务同时运行。
- 分层结构:内核分为多个层次。
- 内核组件:
- 进程管理:管理进程的创建、调度和终止。
- 存储器管理:管理内存的分配和回收。
- 文件系统:管理文件的存储和检索。
2. 进程描述和控制
- 进程控制块:
- 定义:记录进程的状态和控制信息。
- 内容:进程ID、状态、优先级、内存分配等。
- 进程调度:
- 调度算法:多级反馈队列调度算法。
- 调度机制:通过调度程序选择进程执行。
3. 存储器管理
- 请求调页管理:
- 定义:动态分配内存,按需调入页面。
- 算法:最佳置换算法、先进先出置换算法等。
- 虚拟存储器:
- 定义:通过虚拟地址空间扩展内存。
- 实现:通过请求调页和置换算法实现。
4. 设备管理
- 缓冲区管理:
- 定义:管理I/O缓冲区,提高I/O效率。
- 机制:单缓冲、双缓冲、循环缓冲。
- 设备驱动程序:
- 定义:控制设备操作的程序。
- 功能:实现设备的初始化、读写操作等。
5. 文件管理
- 文件系统:
- 定义:管理文件的存储和检索。
- 结构:层次结构,支持目录和文件的组织。
- 目录管理:
- 定义:管理文件目录,提供文件的组织和检索。
- 机制:文件控制块、目录项等。
- 文件保护:
- 定义:控制文件的访问权限。
- 机制:权限设置、加密技术等。