考研面试自用
1. 操作系统的特点与功能
- 特点:
- 并发性:支持多任务同时进行。
- 共享性:系统资源可被多个进程共享使用。
- 异步性:进程在不同时刻按自己的速度独立执行。
- 虚拟性:通过虚拟化技术,使用户觉得独占资源。
- 功能:
- 管理软硬件资源:合理分配内存、CPU、I/O设备等资源。
- 组织工作流程:协调各个进程的运行。
- 提供用户接口:为用户提供交互界面(如命令行、GUI)。
2. 中断与系统调用的区别
- 中断:
- 硬中断:由硬件设备触发(如键盘、网卡)。
- 软中断:由软件触发(如除零错误、系统调用)。
- 系统调用:
- 是一种软中断,用于用户进程请求操作系统服务(如文件操作、进程管理)。
3. 进程与线程的概念及区别,进程间的通信方式
- 进程:系统资源分配的基本单位。
- 线程:CPU调度的基本单位,一个进程可以包含多个线程。
- 区别:
- 进程:独立拥有资源(如内存、文件句柄),进程间资源不共享。
- 线程:共享进程的资源(如内存、全局变量),但拥有独立的栈和寄存器。
- 进程间通信方式:
- 管道(Pipe)、消息队列(Message Queue)、共享内存(Shared Memory)、信号量(Semaphore)、套接字(Socket)。
4. 进程状态及调度策略
- 状态:
- 就绪(Ready):等待被分配CPU。
- 执行(Running):正在使用CPU执行。
- 阻塞(Blocked):等待某事件(如I/O)完成。
- 调度策略:
- 先来先服务(FCFS)、短作业优先(SJF)、优先级调度、高响应比优先、时间片轮转、多级反馈队列。
5. 读写者问题与文件系统组织方式
- 读写者问题:
- 经典的进程同步问题,用进程实现。目的是防止读和写操作的冲突。
- 文件系统组织:
- 逻辑组织:有结构文件(记录文件)和无结构文件(字符流文件)。
- 物理组织:连续文件、串联文件、索引文件。
6. 死锁的概念、产生条件与预防方法
- 死锁:多个进程因争夺资源而相互等待,导致无法继续执行。
- 产生条件:
- 互斥条件:资源独占。
- 请求和保持:进程占有资源时请求新的资源。
- 不可剥夺:资源不可被强制剥夺。
- 环路等待:进程形成资源等待环。
- 预防方法:
- 资源一次性分配、可剥夺资源、资源有序分配。
7. 哲学家进餐问题的解决方式
- 解决方式:
- 限制最多只有n-1个哲学家同时拿起筷子。
- 设定资源分级,奇数号哲学家先拿左手筷子,偶数号哲学家先拿右手筷子。
- 如果哲学家拿起一只筷子但无法拿起另一只筷子,放下筷子并等待。
- 使用服务生算法,一次只允许一名哲学家进餐。
8. 银行家算法
- 银行家算法:一种避免死锁的资源分配算法,系统在分配资源前先计算安全性,确保不会进入不安全状态。
9. 常见的进程调度算法
- FCFS:先来先服务,按到达顺序调度。
- SJF:短作业优先,优先调度预计运行时间最短的作业。
- 优先级调度:根据优先级调度作业,高优先级作业优先执行。
- 时间片轮转:每个进程按时间片轮流执行。
- 多级反馈队列:根据进程的执行情况动态调整优先级和队列位置。
10. 分页与分段的作用与区别
- 分页:
- 为了实现内存的非连续分配,解决内存碎片问题。
- 页是物理单位,分页管理逻辑地址和物理地址。
- 分段:
- 为了满足用户需求和资源共享。
- 段是逻辑单位,段长度可变。
11. 内存管理与虚拟内存
- 内存管理:涉及内存分配与回收,分页、分段、虚拟内存等技术。
- 虚拟内存:通过地址空间映射,使程序认为拥有连续的内存。
12. 页面置换算法
- 最佳置换算法(OPT):每次选择最久未使用的页面淘汰。
- 先进先出置换算法(FIFO):每次淘汰最早进入内存的页面。
- 最近最久未使用算法(LRU):淘汰最近最久未使用的页面。
- 时钟置换算法:设置访问位,按时钟顺序选择淘汰页面。
13. 缓冲区溢出与保护措施
- 缓冲区溢出:数据超过缓冲区大小,导致数据覆盖其他内存区域。
- 保护措施:GS保护、SafeSEH、ASLR、DEP等。
14. 磁盘调度算法与磁盘管理
- 磁盘调度算法:如FCFS、SSTF、SCAN、C-SCAN等,用于优化磁盘I/O性能。
- 磁盘管理:涉及磁盘分区、格式化、文件系统的组织和维护。
15. 文件系统的组织方式
- 逻辑组织:有结构文件(如记录文件)和无结构文件(如字符流文件)。
- 物理组织:连续文件、串联文件、索引文件。