内核态、用户态背得滚瓜烂熟,结果考试题目上写的是“管态”“目态”“特权态”,我懵了,这是啥?
这道操作系统选择题,我盯着看了三分钟
昨天刷操作系统真题,遇到一道“送分题”:
text
以下关于处理器工作状态的描述,正确的是() A. 操作系统管理程序运行的状态称为目态 B. 当处理器处于管态时,可以执行全部指令
我有点懵了。
等等,管态是什么?目态又是什么?不是内核态和用户态吗?
一个名字,三种叫法,考研人的噩梦
朋友们,这就是操作系统的“别名陷阱”。你以为你背熟了,换个马甲你就不认识了。
来,一张表带你认全它们的“艺名”:
| 官方大名 | 江湖别名 | 英文花名 |
|---|---|---|
| 内核态 | 核心态、管态、特权态、系统态 | Kernel Mode、Supervisor Mode |
| 用户态 | 目态、普通态 | User Mode、Problem State |
内核态 = 核心态 = 管态 = 特权态 = 系统态
用户态 = 目态 = 普通态
就这么简单?不,考试就爱考这个。
为什么有这么多名字?
这要从“爹妈”说起:
IBM叫它“管态”(管理状态)和“目态”(目视受限状态),老一辈教材沿用了这套叫法
学术界通用叫“核心态”和“用户态”
Windows/Linux文档爱用Kernel Mode和User Mode
所以你在一本教材里看到“管态”,在另一本里看到“核心态”,其实说的是同一回事——一个是管家,啥都能干;一个是客人,干啥都受限。
考试会怎么考你?
以我血的教训告诉你,至少三种出题姿势:
姿势一:直接问别名(送分还是送命?)
“内核态”的别名不包括()
A. 核心态 B. 管态 C. 目态 D. 特权态
答案:C(目态是用户态的别名,专坑记混的同学)
姿势二:题干里用别名,你看不懂
当CPU处于管态时,能否执行停机指令?
如果你不知道“管态=内核态”,这题直接凉凉。
姿势三:联动“特权指令”一起考
下列指令中,只能在核心态下执行的是()
A. 读时钟 B. 置中断屏蔽 C. 访管指令 D. 取数指令
答案:B(置中断屏蔽是典型特权指令,只能在内核态执行)
一个口诀保住2分
记不住?用这个:
管家内核特权多,用户目态受限制
管= 管态(内核态别名)
家= 核心态/系统态
特权多= 能执行特权指令
用户目态= 用户态/目态
受限制= 不能碰硬件、不能乱中断
写在最后
操作系统考试里,2分可能决定你能不能过线。而这几分别名题,纯粹是“知道就得分,不知道就送命”的记忆题。
千万不要在考场上看到“管态”两个字一脸懵。
现在记住了吗?
内核态 = 管态 = 核心态 = 特权态 = 系统态
用户态 = 目态
