操作系统的运行机制和体系结构

目录

知识总览

什么是指令

两种指令

两种处理器状态

两种程序

操作系统的内核

知识总结


知识总览

 

什么是指令

“指令”和我们平时所说的“代码”有什么区别?

C语言代码→通过“翻译”→机器语言指令

一条高级语言的代码翻译过来可能或对应多条指令。

简单来说,“指令” 就是处理器(CPU)能识别、执行的最基本命令。

两种指令

有的指令“人畜无害”。比如:加、减、乘、除这些普通的运算指令。

有的指令需要很高的权限。比如:内存清零指令。如果用户程序可以使用这个指令,就意味着一个用户可以将其他用户的内存数据随意清零,这样做显然是危险的。

特权指令不允许用户程序使用。

两种处理器状态

CPU如何判断当前是否可以执行特权指令?

当CPU处于用户态时,此时CPU只能执行非特权指令;当CPU处于核心态时,此时特权指令、非特权指令都可执行。

而处理器的两种状态用程序装填字寄存器(PSW)中的某标志位来标识当前处理器处于什么状态。如0为用户态,1为核心态。

【PSW:Program Status Word,即程序状态字(也叫程序状态寄存器),可用于OS在管态(系统态)和目态(用户态)之间的转换】

两种程序

 

操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态;而为了保证系统能安全运行,普通应用程序只能执行非特权指令,运行在用户态。

操作系统的内核

内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。

实现操作系统内核程序功能的就是内核程序。

操作系统的内核分为大内核和微内核两种,大内核指的是一个操作系统包含了时钟管理、中断处理、原语(设备驱动、CPU切换等),以及进程管理、存储器管理、设备管理等功能;微内核指的是一个操作系统包含了时钟管理、中断处理、原语这些基本内容。

知识总结

  1. 特权指令只能在核心态下执行
  2. 内核程序只能在核心态下执行
  3. 核心态与用户态之间的切换
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值