库函数和系统调用库函数和系统调用的关系:用户编程中的`printf`、`fread`、`fopen`等标准C库函数——底层实际上调用了`write`、`read`、`open`等系统调用。系统调用的执行流程——用户态→软件中断→内核服务→返回用户态。系统调用的开销包括上下文切换、参数验证、数据拷贝。库函数提供了缓冲和格式化等功能以降低频繁系统调用的开销。枫桥2026/6/29...大约 5 分钟计算机基础复习重点操作系统复习重点
操作系统的发展历史操作系统发展史:从monitor到DOS到Windows的演进、批处理系统到分时系统到个人操作系统的发展脉络、UNIX和Linux的历史决定性和开源对计算机工业的推动。枫桥2026/6/29...大约 18 分钟计算机基础复习重点操作系统复习重点
操作系统的目标和作用操作系统目标和作用:操作系统作为资源管理者(CPU/内存/设备/文件)和抽象提供者(进程/文件/地址空间)的双重角色、发展过程从批处理分时到分布式操作系统的演进路线、操作系统的结构设计(宏内核 vs 微内核 vs 混合内核)。枫桥2026/6/29...大约 15 分钟计算机基础复习重点操作系统复习重点
系统调用系统调用的完整流程:x86-64的syscall指令的硬件行为——切换到内核栈保存RIP和RFLAGS——寻找系统调用表——执行内核处理函数——copy_to_user返回数据到用户空间——sysretq返回到用户态。系统调用是用户程序请求OS服务的唯一合法通道。枫桥2026/6/29...大约 5 分钟计算机基础复习重点操作系统复习重点
临界区与互斥临界区与互斥——临界区是访问临界资源的代码段——必须确保互斥访问。互斥的实现方式:软件方式(Peterson算法)、硬件方式(关中断/Test-and-Set指令/Swap指令)、OS方式(信号量/互斥锁)。Peterson算法是纯软件方案的一个经典——证明其互斥和有限等待。Test-and-Set是硬件原子指令——一个不可中断的读-修改-写周期。信号量的P/V操作抽象了低层实现细节。枫桥2026/6/29...大约 4 分钟计算机基础复习重点操作系统复习重点
信号量机制与经典同步问题信号量机制与经典同步问题:信号量的定义与P/V操作、用信号量实现进程互斥(设mutex=1——P(mutex)进入临界区、V(mutex)退出)。生产者-消费者问题(有限缓冲——empty/full/mutex三个信号量)——确保生产和消费的顺序。Dijkstra提出的经典问题——读者-写者问题(多个读者可以同时读、写者必须独占——按读优先/写公平两种策略的信号量设计)。枫桥2026/6/29...大约 4 分钟计算机基础复习重点操作系统复习重点
线程的概念与实现线程的概念与实现:线程——CPU调度的最小单位。同一进程中的多个线程共享地址空间和文件描述符表。内核级线程vs用户级线程vs混合模型的映射关系——各模型的优势与代价。Linux中通过clone()系统调用统一创建进程和线程——由flags参数决定共享哪些资源。枫桥2026/6/29...大约 14 分钟计算机基础复习重点操作系统复习重点
进程同步的基本概念进程同步的基本概念:临界资源(一次只允许一个进程使用的资源)、临界区(进程中访问临界资源的代码段)、同步(并发进程之间的协作次序关系)、互斥(多个进程不能同时进入临界区)、信号量——P/V操作的定义及用信号量实现进程互斥和同步的模型。枫桥2026/6/29...大约 5 分钟计算机基础复习重点操作系统复习重点
进程状态与转换进程状态与转换:操作系统的五状态模型(创建→就绪→运行→阻塞→终止)的严格条件与转换触发源——调度程序选中/时间片用完/I/O完成/子进程退出。睡眠态的进一步拆分为可选中断D和不可中断S。就绪和阻塞的本质区别——为什么阻塞进程不能被调度。枫桥2026/6/29...大约 5 分钟计算机基础复习重点操作系统复习重点
进程的概念与PCB进程的概念与PCB:程序与进程的区别(静态vs动态)、PCB(task_struct)中的关键字段:进程ID/状态/寄存器上下文/内存描述符mm/文件描述符files/调度信息se/信号处理sighand/父子关系链表。进程的生命期从fork到exit。枫桥2026/6/29...大约 5 分钟计算机基础复习重点操作系统复习重点