哈喽宝子们!我是令狐冲计算机考研的冲哥~
复试距离不远啦,操作系统作为408必考项,也是老师面试可能提问的重点模块,很多问题都是高频考点,宝子们一定要重点掌握!
专注计算机考研,陪你从择校到复试,全程不迷路!
欢迎同学们扫码进群,学长学姐会尽力帮助大家,我们一研为定!
今天为大家整理了“老师提问+标准回答”的干货,每句都能直接照搬,帮你们省去临场组织语言的麻烦,赶紧码住背诵!
老师提问1:什么是操作系统?它的核心作用是什么?
回答:操作系统(OS)是管理和控制计算机软硬件资源的系统软件,是用户与计算机硬件之间的接口。核心作用有两个:一是资源管理(管理CPU、内存、设备、文件等资源),二是提供友好接口(命令接口、程序接口),简化用户操作,提高系统利用率。
老师提问2:操作系统的基本特征有哪些?各自的核心含义是什么?
回答:核心有4个基本特征:并发、共享、虚拟、异步。并发是指多个程序在同一时间段内同时执行(注意不是同一时刻,同一时刻执行是并行);共享是指系统资源被多个并发程序共同使用(分互斥共享和同时共享);虚拟是指通过技术将物理资源抽象为多个逻辑资源(比如虚拟内存、虚拟CPU);异步是指程序执行过程不确定,但最终会正常结束,由OS调度决定。
老师提问3:操作系统的主要功能模块有哪些?
回答:主要有五大功能模块:处理机管理(CPU调度)、存储器管理(内存分配、虚拟内存)、设备管理(I/O设备管理、驱动)、文件管理(文件存储、目录、权限)、用户接口管理(命令行、图形界面、系统调用)。
多说一句,令狐冲全新思维导图新鲜出炉~结合导图记忆对大家帮助也很大!老师提问1:进程和程序的区别是什么?
回答:核心区别是:程序是静态的,是一组指令的集合(比如一个exe文件),不涉及执行;进程是动态的,是程序的一次执行过程,有生命周期(创建、就绪、运行、阻塞、终止),会占用系统资源。一个程序可以对应多个进程(比如多个浏览器进程),一个进程只能对应一个程序。
老师提问2:进程的三种基本状态是什么?状态之间如何转换?
回答:三种基本状态是就绪态、运行态、阻塞态。转换关系:就绪态→运行态(CPU调度,分配CPU资源);运行态→就绪态(时间片用完,或有更高优先级进程进入就绪态);运行态→阻塞态(进程请求资源未得到,或等待事件发生,比如等待I/O完成);阻塞态→就绪态(等待的事件发生,比如I/O完成,由OS唤醒)。
老师提问3:什么是进程同步?什么是进程互斥?两者有什么区别?
回答:进程同步是指多个并发进程按预定顺序执行,协调它们的行为(比如生产者-消费者问题中,生产者生产后才能让消费者消费);进程互斥是指多个进程竞争同一临界资源时,只能有一个进程进入临界区使用资源,其他进程等待(比如多个进程操作同一文件)。区别:同步是“协作关系”,互斥是“竞争关系”,互斥是同步的一种特殊情况。
老师提问4:什么是临界区?进入临界区的准则是什么?
回答:临界区是进程中访问临界资源的那段代码(临界资源是指只能被一个进程同时使用的资源,比如打印机、共享变量)。进入临界区的准则有4个:空闲让进、忙则等待、有限等待(等待时间有上限,不会无限等待)、让权等待(等待时释放CPU,不浪费资源)。
老师提问5:进程调度的基本准则有哪些?
回答:核心准则分两类:面向用户(公平性、响应时间快、截止时间保证);面向系统(吞吐量高、CPU利用率高、周转时间短)。比如分时系统优先考虑响应时间,批处理系统优先考虑吞吐量和周转时间。
老师提问1:什么是线程?线程和进程的关系是什么?
回答:线程是进程中的一个执行单元,是OS调度的基本单位(引入线程后,进程是资源分配的基本单位,线程是调度的基本单位)。关系:一个进程可以包含多个线程,多个线程共享进程的所有资源(内存、文件描述符等),但每个线程有自己的程序计数器、栈和寄存器。线程切换比进程切换开销小(不用切换资源)。
老师提问2:用户级线程和内核级线程的区别是什么?
回答:核心区别是调度者不同:用户级线程由用户程序(线程库)调度,内核看不到用户级线程,切换开销小,但一个线程阻塞会导致整个进程阻塞;内核级线程由OS内核调度,内核能看到每个线程,一个线程阻塞不影响其他线程,但切换开销大(需要陷入内核)。实际系统中多采用两者结合的方式(比如Windows、Linux)。
老师提问1:什么是虚拟内存?引入虚拟内存的原因是什么?
回答:虚拟内存是指OS通过硬件和软件技术,将物理内存和磁盘空间结合,为用户提供一个比实际物理内存大得多的逻辑内存空间。引入原因:一是解决内存容量不足的问题,让多个大程序能同时运行;二是提高内存利用率,只将进程当前需要的部分调入内存,其余放在磁盘上。
老师提问2:虚拟内存的实现技术有哪些?各自的特点是什么?
回答:主要有三种实现技术:请求分页、请求分段、请求段页式。请求分页是将内存和进程分成固定大小的页,按需调入页面,优点是无外碎片,管理简单;请求分段是分成可变大小的段,优点是符合程序逻辑,便于共享和保护,缺点是有外碎片;请求段页式结合两者,先分段再分页,兼顾两者优点,但管理复杂、开销大,是目前主流的实现方式。
老师提问3:页面置换算法有哪些?最常用的是哪几种?
回答:常见的页面置换算法有:最佳置换算法(OPT,理论最优,无法实现,用于衡量其他算法)、先进先出(FIFO,简单易实现,但会出现Belady异常,即置换次数随内存块增加而增加)、最近最少使用(LRU,实际最优,基于局部性原理,置换最近最少使用的页面,开销较大)、Clock算法(LRU的近似算法,开销小,实际系统中常用)。面试重点答FIFO、LRU、Clock即可。
老师提问4:什么是Belady异常?为什么会出现?
回答:Belady异常是指在页面置换算法中,当增加内存块数量时,页面缺页次数反而增加的现象。只出现在FIFO算法中,原因是FIFO算法不考虑页面的使用频率和最近使用情况,只按调入顺序置换,可能会把经常使用的页面置换出去,导致更多的缺页。
老师提问1:I/O设备的分类有哪些?
回答:按不同维度有多种分类,面试重点答3种:按传输速率分(高速设备:磁盘、打印机;中速设备:键盘、鼠标;低速设备:打印机);按信息交换单位分(块设备:以块为单位传输,比如磁盘,可随机存取;字符设备:以字符为单位传输,比如键盘、串口,只能顺序存取);按共享属性分(独占设备:只能被一个进程使用,比如打印机;共享设备:可被多个进程共享,比如磁盘;虚拟设备:通过SPOOLing技术将独占设备抽象为共享设备,比如虚拟打印机)。
老师提问2:什么是SPOOLing技术?它的核心作用是什么?
回答:SPOOLing技术(假脱机技术)是指通过内存中的输入井和输出井,将独占I/O设备抽象为共享虚拟设备的技术。核心作用是:将CPU和I/O设备并行工作,减少CPU等待I/O的时间,提高系统吞吐量;将独占设备变为共享设备,提高设备利用率(比如多个进程同时“打印”,实际是将打印任务存入输出井,由打印机依次执行)。
老师提问3:I/O控制方式有哪些?各自的特点是什么?
回答:从简单到复杂有4种:程序查询方式(CPU不断查询I/O设备状态,忙则等待,闲则传输,CPU利用率极低);中断驱动方式(I/O完成后主动向CPU发中断,CPU不用一直查询,利用率提高,但每次中断都要陷入内核,开销较大);DMA方式(直接内存访问,I/O设备直接和内存传输数据,CPU只负责初始化和结束,利用率进一步提高,适合块设备);通道方式(专用的I/O处理机,独立于CPU,负责I/O传输和控制,CPU利用率最高,适合大型系统)。
老师提问1:什么是文件?文件系统的核心功能是什么?
回答:文件是指由创建者定义的、具有文件名的一组相关信息的集合(比如文档、图片、程序),是OS管理磁盘数据的基本单位。文件系统的核心功能是:负责文件的创建、删除、读写、修改,管理文件的存储(物理结构)和目录(逻辑结构),提供文件的存取控制(权限管理),保证文件的安全性和可靠性。
老师提问2:文件的物理结构有哪些?各自的优缺点是什么?
回答:主要有3种:连续结构(文件数据连续存放在磁盘上,优点是存取速度快,缺点是不利于文件扩充,会产生外碎片);链接结构(文件数据分散存放,通过指针链接,优点是利于扩充,无外碎片,缺点是存取速度慢,指针占用空间);索引结构(为文件建立索引表,记录每个数据块的地址,优点是存取速度快、利于扩充,缺点是索引表占用内存空间,比如Unix的inode结构)。
老师提问3:文件目录的作用是什么?常见的目录结构有哪些?
回答:文件目录的作用是记录系统中所有文件的信息(文件名、物理地址、大小、权限等),方便用户快速查找和管理文件。常见的目录结构有3种:单级目录(整个系统一个目录,简单但混乱,不适合多用户);两级目录(用户目录+文件目录,解决多用户命名冲突,缺点是不便分类);多级目录(树形目录,比如Windows、Linux的目录结构,层次清晰,便于分类和查找,是目前主流)。
老师提问1:什么是死锁?产生死锁的必要条件是什么?
回答:死锁是指多个并发进程因竞争资源而互相等待,无法继续执行的状态(比如进程A持有资源1,等待资源2;进程B持有资源2,等待资源1)。产生死锁的4个必要条件(缺一不可):互斥条件(资源只能被一个进程使用)、请求与保持条件(进程持有部分资源,又请求其他资源)、不剥夺条件(已分配的资源不能被强行剥夺)、循环等待条件(多个进程形成资源等待循环)。
老师提问2:如何预防和避免死锁?两者有什么区别?
回答:预防死锁:破坏4个必要条件中的任意一个即可(比如破坏请求与保持,采用一次性分配资源;破坏不剥夺,允许OS剥夺闲置资源;破坏循环等待,按顺序分配资源),优点是简单易实现,缺点是资源利用率低。避免死锁:不破坏必要条件,而是在资源分配时判断是否会产生死锁(比如银行家算法),优点是资源利用率高,缺点是判断复杂、开销大。
老师提问3:银行家算法的核心思想是什么?
回答:核心思想是“安全状态”:在资源分配前,判断系统是否处于安全状态(存在一个进程执行序列,使得每个进程都能获得所需资源并完成执行,最终释放所有资源),如果是安全状态则分配资源,否则拒绝分配,从而避免死锁。本质是“预判断”,确保资源分配后系统仍能正常运行。
这些问答都是学姐结合历年真题和上岸学长学姐经验整理的,覆盖了操作系统复试80%的高频考点,重点模块(进程、内存、死锁)的提问一定要烂熟于心!
另外,遇到不会的问题别慌,可主动说“老师,这个问题我对XX相关知识点更熟悉,能不能给我机会分享一下?”,展现思考态度比硬说“不会”更加分。最后祝宝子们复试顺利,成功上岸!
令狐冲全新思维导图新鲜出炉~结合导图记忆对大家帮助也很大!复试时老师提问不会太偏,操作系统的提问大多围绕核心概念和基础原理,只要把这些内容背熟,回答时自信流畅,不卡顿、不慌神,就能拿到不错的分数。
后台回复关键词,获取更多干货:
回复【QQ 群】:加入 26 计算机考研交流群(群内每日分享公共课 / 专业课资料)回复【大学 / 学校 / 院校信息/ 考情分析】:获取相关文本及文章回复【27 资料包 / 资料包 / 资料】:获取文本、图片及视频号内容回复【知识点 / 重点 / 408 知识点梳理】:获取相关文本回复【408 大纲 / 考纲 / 408 考纲】:获取相关文章专注计算机考研,陪你从择校到复试,全程不迷路!
