zoukankan      html  css  js  c++  java
  • 操作系统的指令与体系结构

    指令

    指令和代码的关系:一条高级语言编写的语句被翻译成机器语言指令可能会有多条,简单来说,指令就是CPU能够识别并执行的基本命令。
    指令分为特权指令和非特权指令;
    特权指令:就是不允许用户使用的指令,这些指令可能执行后的结果对其他用户影响较大,例如内存清0;
    非特权指令:用户可以轻易使用的指令,如加减乘除运算指令。

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

    应为处理器分为两种状态,一个被称为用户态,另一个被称为核心态
    用户态只能执行非特权指令,而核心态既可以执行特权指令也可以执行非特权指令。用程序状态字寄存器(PSW)中的某个标志位来表示当前处理器处于什么状态,如0处于用户态,1处于核心态。

    两种指令对应两种程序

    内核程序

    操作系统的内核程序是系统的管理者,既可以执行特权指令也可执行非特权指令,运行在CPU的核心态。

    应用程序

    为了保证系统能安全运行,普通用户程序只能执行非特权指令,运行在用户态。

    操作系统的体系结构

    大内核:将操作系统的主要功能模块都作为系统内核,运行在核心态。
    优点:高性能
    缺点:内核代码庞大,结构混乱,难以维护
    微内核:只把最基本的功能保留在内核,
    在微内核结构下,操作系统被划分成小的、定义良好的模块,只有微内核这一个模块运行在内核态,其余模块运行在 用户态。 因为需要频繁地在用户态和核心态之间进行切换,所以会有一定的性能损失。

    优点:内核功能少,结构清晰,方便维护
    缺点:需要频繁的在核心态和用户态之间切换,性能低。

  • 相关阅读:
    Python-枚举
    Python-函数
    Python-装饰器(语法糖)上下五千年和前世今生
    Python-全局函数(内置方法、内置函数)
    Python-时间模块-time
    Python-随机模块-random
    Python-维护排序好的序列模块-bisect
    需求推动技术的产生
    RBF神经网络
    聚类算法的衡量指标
  • 原文地址:https://www.cnblogs.com/itjiangpo/p/14181410.html
Copyright © 2011-2022 走看看