考研复试操作系统

2024年3月更新:又到一年复试季了,但是现在大部分学校都是线下复试了,本篇经验是网上复试的,可能不太适合现在的情况

--------------------------------------------------------------------------------------------------

仅针对考研复试相关,没有计算部分的问题、PV操作等我觉得不会问的部分(如果你报考的学校要求开摄像头做笔试当我没说)
今天是3.25,我报考的学校还没有发复试公告,表示我背的八股文都快忘了,所以来这里整理一下 。以下内容仅仅是个人理解,参考王道操作系统和本科教材,可能会有错误的地方,希望大家批评指正)

操作系统大概分为五章
1.总论
2.进程管理(处理机管理)
3.内存管理(存储器管理)
4.文件管理
5.设备管理

1.总论

1.操作系统的概念/什么是操作系统: 操作系统是最接近硬件的软件,他负责将计算机的硬件组织起来,有效控制管理各类资源,方便用户使用计算机。

2.操作系统的作用: 1.计算机系统资源的管理者 2.用户与计算机硬件之间的接口   3.扩充机器(我不理解)

3.OS历史回顾(我觉得不会问这个吧): 1.批处理(分为单道和多岛) 2.分时OS 3.实时OS(导弹发射) 4.网络OS 5.分布式OS
分时实时批处理是三种最基本的。
win属于分时里的一种,是单用户,多任务的(?)

4.OS四大特征: 并发(最基本),共享(最基本),虚拟,异步
虚拟性的解释是:由于程序存在换入换出,假设你的电脑之后4G的内存,但是却可以打开占用内存多余4G的多个软件。

5.并发和并行的区别(这玩意很常问…这也算是我的背诵逻辑):* *首先单核CPU只能并发,所以说并发就是多个应用程序在同一时间间隔内执行,比如说张三,他用0.1s的时间吃了一口饭,又用0.1s的时间吃了一口菜,又用0.1s的时间喝了一口水。这三个事情在宏观上来看好像是同时发生的,但在微观上来看是相继发生的。这就是并发。

并行则是两个或多个事件一起发生,比如说张三一边吃饭一边用电脑看视频,一边用手机逛淘宝。这三个事情是同时发生的,这就叫做并行。并行,在宏观和微观上都是同时发生的。

6.中断和异常和系统调用

1.中断分为内中段和外中断。内中断又被称为异常(内部异常),外中断又被称为中断。
2.内中断是指中断信号来自于CPU的内部,如计算整数除0。
外中断是指中断信号来自于CPU的外部,如时间片用完。

3.系统调用是指应用程序主动将CPU的控制权归还给操作系统,请求操作系统的权限支持。凡是与资源有关的操作,都必须通过系统调用来向操作系统发出请求。

7.用户态和核心态
用户态是指应用程序在使用CPU,核心态是指操作系统在使用CPU。
中断是从用户到核心态的唯一途径。

(个人理解,可能不对) 系统调用就比如说我们平时在使用手机的时候,下载一个新的应用它就会出现,你是否让这个应用使用存储权限和摄像头权限,这就是应用程序主动将CPU的控制权归还给(MIUI)操作系统,让操作系统来给他权限。这个时候也就由用户态转向了核心态。

操作系统第一章还有很多没有讲到的内容。不过在面试中他也不可能问的面面俱到,我感觉这已经很多了。

2.进程管理(处理机管理)

8.进程和程序的区别(?这是我第一次听到这个问题)
1.进程是程序处理的过程,程序是一组指令的有序集合。
2.进程是暂时的,动态的,程序是永久的,静态的。进程和程序并非一一对应。
3.进程具有并发,动态等特征,而程序没有

(个人理解,可能不对) 程序就好像你写好完编译成功的执行文件,他可以被使用无数次。进程就是你打开了之后它才会出现。进程和程序并非一一对应。

9.进程和线程的区别(常考常问)
1.在没有引入线程的时代只存在进程。进程是资源占有,处理机调度和独立运行的基本单位。
2.在引入线程之后,进程是资源占有的基本单位,线程是独立运行的基本单位。线程自己不拥有资源,但是他可以使用进程中的资源。
3.进程之间的切换时间开销比较大,而线程之间的切换几乎不费时间。

还有很多,我背不下来了,说这些就可以了…

10.进程五种状态(常考常问)
就绪态,执行态,阻塞态。
创建态,终止态

在这里插入图片描述

11.处理机调度算法

(跟老师回答的时候,如果你英文比较好,可以给他说中文和英文。)
(1,2,3,5见名知意就不解释了,6我理解不了也不解释了)
1.先来先服务(first come first services) 不会饥饿
2.短作业优先(short job first)会饥饿
3.优先级调度(priority) 会饥饿
4.高响应比优先:响应比比越大,越先执行。响应比=(等待时间+要求服务时间)/要求服务时间 不会饥饿
5.时间片轮转(Round Robin)不会饥饿
6.多级反馈队列 (multilevel feedback Queue) 会饥饿

12.进程同步互斥+PV操作
空则让进,忙则等待,有限等待,让权等待
(就这8,多了我也不会)

13.死锁

13.1.死锁是指两个或多个进程在执行过程中因资源争夺而造成一种互相等待的现象。

(个人理解)比如说小学生上手工课。然后你手里有剪刀,你的同桌手里有胶水。你想要他手中的胶水,他想要你手中的剪刀。

13.2.产生死锁的四个必要条件
1.请求和保持:你想要他手中的胶水
2.不可剥夺 :你不想把剪刀给他
3.循环等待 十分钟过去了,你还是没有得到胶水。
4.互斥:剪刀和胶水不能被两个人同时使用。
13.3死锁的检测、预防、避免和解除
死锁检测:允许死锁发生
死锁的预防:在系统运行期前,不会死锁
死锁的避免:银行家算法(安全序列是指,能把整个任务完成而不发生死锁的序列。)

(**简化理解:**银行现在有本金20块。假设一号要取100元。二号要存50元。三号要存40元。
如果直接 让一号取钱,则进入不安全状态。如果让二号和三号先存钱,一号再取钱,则是安全状态。
真正的银行家算法比较复杂,它还牵扯到贷款还款等一系列的问题。这仅仅是简化版。

死锁的解除:1.撤销进程(杀死进程)2.资剥夺法(挂起进程)

操作系统第二章进程管理还有很多没有讲到的内容。不过在面试中他也不可能问的面面俱到,我感觉这已经很多了。

3.内存管理(存储器管理)

14.程序运行的基本原理
编译–>链接–>装入
编译:高级语言–>011101
链接:将编译过不同的模块链接成一个整体
装入:将链接过后的程序装入到内存中运行,
(逻辑地址到物理地址的转换:在整个程序中逻辑地址从0开始,装入到内存中之后则要重新分配物理地址空间)

存储管理的分类1.2.3.4.

15.分区存储管理①(连续分配)

1.单一连续分配:只能运行一个作业(内部碎片:一人吃一锅)
2.固定分区分配(内部碎片:一锅有十碗,十个人每人一碗米,你吃不完了,剩在碗里)
3.动态分区分配(外部碎片:吃多少要多少,但是锅里还可能剩):首次适应,循环首次适应,最佳适应,最坏适应

16分页存储管理②(非连续分配)
1.实分页
这一部分主要是计算题,但是我觉得老师不会问

2.虚拟分页(用户程序页数大于内存块数时使用结合OS的四大特征中的虚拟:由于程序存在换入换出,假设你的电脑之后4G的内存,但是却可以打开占用内存多余4G的多个软件。)
页面置换算法:最佳置换,最近最久未使用,先进先出(贝拉帝异常,物理块数增大缺页也增大),时钟置换

分页会有内部碎片(每个进程的最后一个页面)

17.分段存储管理③(非连续分配)
这一部分主要是计算题,但是我觉得老师不会问
分段产生外部碎片()

18.段页式存储管理④(非连续分配)
段内分页

**19.页面抖动(颠簸):**频繁换入换出
增加内存容量或降低进程数量

内存管理就这样吧。。。。。。

4.文件管理

20.文件结构:
**逻辑结构:**有结够文件(以记录来组织信息)和无结构文件(以字符序列来组织文件)

**物理结构:**顺序文件,链接文件,索引文件,混合索引

**21.文件系统的实现:**顺序,链接,索引

**文件存取方式:**顺序存取,按键存取,随机存取

**22.目录检索方式:**顺序检索,Hash检索

这就没有了???差不多了8。。。。。

5.设备管理

23.I/O控制方式:1.程序控制方式 2.中断控制方式 3.DMA控制方式 4.通道控制方式
(组成原理中再说。。。。。)

24.中断技术中断是指在程序执行期间发生了另一个急需处理的事件,CPU停止执行当前的程序而转去执行比较紧急的事件,在处理完毕后再回到刚才暂停的程序中的中断处继续执行。
(人话:cup正在CSDN上写文章,突然想烧的水开了,他就先执行关中断,保存PC和PSW,保护现场,跑去灌水,之后在回来恢复现场,开中断写作业)

还有一种叫多重中断,多重中断是指在第一次中断的过程中,还有可能会发生第二次甚至多次中断。接着上面的例子。在灌水的途中。突然煤气的警报响了。他就要先去把煤气的警报给关掉,然后再继续灌水。灌完了水再回去写作业,这个例子就发生了两次中断。

25.缓冲技术设立缓冲区,解决高速CPU和低速外设之间速度不匹配的问题。

27spooling技术: 脱离主机控制进行梳理输出。
SPOOLing 技术是用于将 I\O 设备进行虚拟化的技术,这个技术可不像 CPU 的虚拟化能欺骗我们人类,它是专门用于欺骗进程的。就拿打印机举栗吧,我就买了一台打印机,但此时我打开了 word 和 pdf,想要打印 word 和 pdf 中的内容;此时计算机中有2个进程,word 进程和 pdf 进程,这两个进程都认为自己拥有一个打印机,那么是否此时我作为计算机的主人就拥有2台打印机了呢?当然不是啊,我又不是睁眼瞎,我就看到了一台打印机啊~~~这就是通过虚拟化技术欺骗了2个无知的进程。

28.磁盘访问时间
1.寻道时间:一个圆形的磁盘。他的磁头就是这个可以上下移动。(磁头上上下下动)
2.旋转延迟时间(盘片转)
3.数据传输时间

29磁盘调度算法
先来先服务。
最短寻道时间优先。
扫描(一个方向),
循环扫描(两个方向)

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库系统概论(Introduction to Database Systems)是计算机科学与技术专业的考研课程之一,它主要涉及数据库的概念、设计和管理等方面的知识。下面我将从三个方面对其进行阐述。 首先,数据库系统概论主要介绍了数据库的基本概念和原理。它包括了数据模型、数据结构、数据操作语言等内容。学习过程中,我们会了解到数据库的概念,如关系型数据库、面向对象数据库等,以及其应用领域和特点。此外,我们还会学习到数据库的设计原则,包括关系模型、实体关系图等。同时,我们还会学习到SQL语言,用于操作和查询数据库。 其次,数据库系统概论还包含了数据库管理系统(DBMS)的知识。DBMS是数据库的核心组成部分,它负责管理和维护数据库。在学习中,我们会了解到DBMS的架构和功能,如数据定义语言(DDL)、数据操作语言(DML)等。此外,我们还会学习到事务与并发控制的理论和实践,以及数据备份与恢复的方法。 最后,数据库系统概论还会介绍数据库应用开发方面的知识。我们会学习到数据库应用开发的基本步骤,包括需求分析、数据库设计、应用开发和用户接口设计。我们还会了解到常用的数据库应用开发工具和技术,如Oracle、MySQL、JDBC等。此外,我们还会学习到数据库性能调优、安全性管理等重要内容。 综上所述,数据库系统概论是一门涵盖了数据库概念、设计和管理等方面知识的考研课程。通过学习,我们可以掌握数据库的基本原理和操作技巧,以及数据库应用开发的基本方法。这门课程对于提升我们的数据库相关知识和技能,进一步提高我们在计算机科学与技术领域的竞争力有着重要的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值