操作系统期末复习主要关注了司机和售票员之间的同步关系作为实例来讲解操作系统中的关键概念和原理。在这个场景中,司机和售票员代表了两个并发执行的任务或进程,它们之间的交互体现了操作系统在管理并发进程中的协调和同步机制。
1. **进程同步与互斥**:
- 司机和售票员必须遵循特定的同步规则:司机只有在售票员确认乘客上车并关闭车门(进程互斥)后,才能启动汽车,防止多个售票员同时操作同一辆车门。同样,售票员也需等待司机停车后才能打开车门。
- 进程同步机制,如信号量(如P、V操作),在此处被用来实现资源的访问控制,确保对车门这类共享资源的正确使用。
2. **进程管理**:
- 进程的基本概念,包括进程的状态(就绪、运行、等待等)及其转换,以及进程控制块(PCB)的作用,用于存储进程的属性和状态信息。
- PCB包含了进程的标识符、当前状态、程序计数器、栈指针、资源列表等,是操作系统管理和调度进程的核心工具。
3. **进程控制**:
- 原语操作,如创建、阻塞、唤醒等,用于控制进程的生命周期和交互行为。
- 临界区的概念在此体现,即一段代码,只能由一个进程在任何时候执行,以避免并发访问导致的数据不一致性。
4. **进程间通信**:
- 不同的通信机制,如管道、消息缓冲、信箱等,用于进程间的信息传递,如售票员通知司机乘客已上车或车门已关闭。
5. **调度算法**:
- 调度算法的选择对于资源分配和任务执行顺序至关重要,如先进先出、时间片轮转、优先级调度等,以达到良好的性能和响应比。
6. **死锁与资源分配**:
- 死锁是并发进程由于竞争有限资源而陷入僵局的问题。这里介绍了产生死锁的必要条件以及预防、避免和检测死锁的方法,如资源分配图的使用。
7. **多道程序设计**:
- 在多道程序设计环境下,操作系统如何支持多个进程同时运行,避免单道程序模型的资源浪费。
通过这个例子,复习内容涵盖了操作系统的基础概念(如进程、线程、调度、通信和同步)、核心功能(处理机管理、存储管理、设备管理、文件管理)以及设计原则(并发、共享、虚拟化等)。学习者可以通过理解和解决实际问题的方式,加深对操作系统原理的理解。