操作系统
操作系统概述
TODO:本文为目录,后续使用连接补全。
1. 操作系统的定义与功能
定义
操作系统是管理硬件、软件资源,并为应用程序提供服务的系统软件。
功能
- 进程管理
- 内存管理
- 文件管理
- I/O设备管理
- 安全与保护
2. 操作系统的发展
- 批处理系统
- 分时系统
- 实时操作系统
- 网络操作系统
- 分布式操作系统
3. 操作系统的类型
- 单用户与多用户
- 单任务与多任务
- 实时操作系统
- 嵌入式操作系统
二、进程管理
1. 进程与线程
进程(Process)的概念
- 定义:程序执行时的实例
- 状态:新建、就绪、运行、等待、终止
线程(Thread)的概念
- 线程是进程中的最小执行单元
- 分类:用户级线程与内核级线程
2. 进程控制
- 进程创建:系统调用(fork()、exec()、wait())
- 进程表与进程控制块(PCB)
- 进程终止:正常终止与异常终止;僵尸进程
3. 进程调度
- 调度的分类:非抢占式调度、抢占式调度
- 调度算法:
- 先来先服务(FCFS, First-Come-First-Served)
- 短作业优先(SJF, Shortest Job First)
- 时间片轮转(RR, Round-Robin)
- 多级反馈队列(Multilevel Feedback Queue)
4. 线程管理
- 线程的创建与终止
- 多线程编程
- 线程同步
- 线程池
三、同步与互斥
1. 临界区问题
- 定义:同一时刻只能有一个进程或线程进入的共享资源访问区
- 解决方案:禁用中断、锁机制、信号量(Semaphore)、互斥量(Mutex)
2. 同步机制
- 信号量:P操作与V操作;二值信号量与计数信号量
- 管程(Monitor)
- 条件变量:等待和通知机制
- 事件(Event)
3. 死锁
- 概念:多个进程相互等待,无法继续执行
- 必要条件:互斥条件、占有且等待、不可剥夺、环路等待
- 处理方法:死锁预防、死锁避免(银行家算法)、死锁检测与恢复
四、内存管理
1. 内存分配
- 连续内存分配:固定分区分配、动态分区分配(内存碎片问题)
- 非连续内存分配:分页(Paging)、分段(Segmentation)、段页式管理
2. 虚拟内存
- 概念:将部分进程地址空间映射到磁盘上,通过页面调度机制实现内存扩展
- 分页与页面置换
- 页面置换算法:最优页面置换算法(OPT)、最近最少使用(LRU, Least Recently Used)、先进先出(FIFO, First In First Out)
- 页面抖动
3. 内存保护与共享
- 地址转换:基址寄存器与限长寄存器、页表机制、段表机制
- 内存保护:虚拟地址到物理地址的映射、保护位与权限控制、缺页异常
五、文件系统
1. 文件概念与属性
- 定义:存储数据的基本单位
- 属性:名称、大小、类型、权限、时间戳
- 操作:创建、删除、打开、关闭、读写
2. 目录管理
- 目录结构:单级目录、两级目录、树形目录、图形目录(带链接的目录)
- 目录操作:目录创建与删除、目录的遍历与搜索
3. 文件存储管理
- 文件分配方式:连续分配、链接分配、索引分配
- 文件系统的实现:文件控制块(FCB)、索引节点(inode)
- 磁盘空间管理:位图法、空闲表法
4. 文件系统的安全与保护
- 文件权限:读、写、执行权限
- ACL(访问控制列表)
- 文件加密
六、输入/输出系统
1. I/O设备概述
- 输入设备:键盘、鼠标、扫描仪
- 输出设备:显示器、打印机
- 存储设备:硬盘、光盘、U盘
2. I/O系统结构
- I/O控制方式:程序直接控制、中断驱动I/O、DMA(直接存储器访问)
- I/O接口:设备控制器、设备寄存器
3. 磁盘调度算法
- 先来先服务(FCFS, First-Come-First-Served)
- 最短寻道时间优先(SSTF, Shortest Seek Time First)
- 扫描算法(SCAN)
- 循环扫描算法(C-SCAN)
七、操作系统安全与保护
1. 安全威胁与漏洞
- 恶意软件:病毒、蠕虫、木马、勒索软件
- 系统漏洞:提权漏洞、缓冲区溢出
2. 安全机制
- 认证机制:密码学与加密技术、用户认证(如用户名/密码、双因素认证)
- 访问控制:访问控制矩阵、ACL(访问控制列表)、RBAC(基于角色的访问控制)
- 审计与日志:系统日志、安全审计
3. 安全模型
- 贝尔-拉帕杜拉模型(Bell-LaPadula Model)
- 机密性模型
- 比巴模型(Biba Model)
- 完整性模型
八、分布式系统
1. 分布式系统概述
- 定义:多个独立计算机通过网络协同工作提供服务的系统
- 特点:透明性、扩展性、容错性
2. 分布式系统架构
- 客户机-服务器架构(Client-Server)
- 对等网络架构(P2P, Peer-to-Peer)
- 微服务架构
3. 进程通信与同步
- 进程通信方式:消息传递、远程过程调用(RPC)、分布式对象(CORBA)
- 分布式锁与一致性算法:分布式锁实现(如ZooKeeper)、一致性算法(如Paxos、Raft)
九、虚拟化与云计算
1. 虚拟化技术
- 概念:通过软件模拟硬件资源,使多个虚拟机共享同一物理资源的技术
- 虚拟机管理程序(Hypervisor):
- Type 1:裸机虚拟化(如VMware ESXi)
- Type 2:宿主机虚拟化(如VirtualBox)
2. 容器技术
- 概念:通过操作系统级虚拟化来隔离应用程序
- Docker与Kubernetes
3. 云计算
- 模型:
- IaaS(基础设施即服务)
- PaaS(平台即服务)
- SaaS(软件即服务)

浙公网安备 33010602011771号