操作系统(03)- 操作系统的运行机制和体系结构

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

计算机指令系统是计算机硬件的语言系统,也叫机器语言,它是软件和硬件的主要界面,从系统结构的角度看,它是系统程序员看到的计算机的主要属性。

我们使用高级语言编写程序,最终都会被编译为机器语言,计算机才能识别。不清楚的可以看看计算机基本组成及其内部元件细节随笔这篇文章。

在计算机系统中有些指令“人畜无害”,可以随意使用,但有些指令不行,比如内存清零指令,这种指令执行后对计算机的影响是非常大的,所以不允许用户程序使用。

因此,按照指令的使用权限可以将指令分为两类:

  • 特权指令
  • 非特权指令

CPU在执行指令之前会先判断指令的类型,那CPU是如何判断的呢?

我们规定了CPU的两种状态:

  • 用户态(目态,CPU只能执行非特权指令)
  • 核心态(管态,CPU既可以执行特权指令,又可以执行非特权指令)

计算机中状态的判断是由“程序状态字寄存器(PSW)”的某个标志位来判断的,比如0代表用户态,1代表核心态。

按照程序能否执行特权指令又可以将程序分为两类

  • 内核程序:系统的管理者,可运行特权和非特权两种指令,运行在核心态
  • 用户程序:为保证计算机系统内的安全性,只能运行非特权指令,运行在用户态

操作系统(01)-定义及功能简述这篇文章中,我们简单介绍了操作系统的内部层次结构,这里再细化一下:
在这里插入图片描述

时钟管理:主要是实现计时的功能,计算机中所有的进程切换、调度、管理工作都是由计时来完成的。
原语:一种特殊的程序,最接近硬件,这种程序的运行具有原子性。
原子性:程序要么不执行,一旦执行就必须执行到程序结束,中间无法被中断。这里不着重讲述原子性,后面会放在中断那里一块讲。

上图中根据操作系统的不同,内核可以分为两类:

  • 大内核
  • 微内核

大内核就是上图中标注“内核”的那一部分,它将不那么重要的内核功能也划分在了内核中,但在有些操作系统中,他只将最接近硬件的部分划分为内核,这类称之为微内核。

大内核:高性能,但是内核代码庞大,结构混乱,难以维护
微内核:内核功能少,结构清晰,分工明确,易于维护。但有时由于某些工作需要特权指令,所以需要在用户态与核心态之间频繁切换,性能较低。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值