什么是操作系统?

介绍

现代计算机操作系统由一个或多个处理器、主存、磁盘、打印机、鼠标、显示器、网络接口以及其他输入、输出设备构成。操作系统就是为用户程序提供一个更简单、更清晰的计算机模型来管理刚才提到的设备。**是计算机硬件与应用之间的一层软件,方便我们使用硬件(如使用显存);高效使用硬件(如打开多个终端、窗口)。
并管理以下部分
| CPU | 内存 | 终端 | 硬盘 | 文件 |
| 网络 |电源|多核| | |


多数计算机有两种运行模式:内核态和用户态‘软件中最基本的部分是操作系统,它运行在内核态(或称管态、核心态)。在这个模式下操作系统具有对所有硬件的完全访问权,可以执行机器能够运行的任何指令。软件其余部分运行在用户态。

计算机由五大部分组成:输入设备、输出设备、存储器、运算器、控制器。
存储控制:将程序和数据存放到计算机内部的存储器中,计算机在程序的控制下一步步进行处理。

计算机硬件简介

  1. 处理器

    CPU,计算机的“大脑”是CPU,它从内存中取出指令执行。在每个CPU基本单元中,首先从内存中取出指令,解码以确定其类型和操作数,接着执行之;然后取指、解码并执行下一条指令,直至程序被执行完成。
    每一套CPU都有一套可以执行的专门指令集。所以X86处理器不能执行ARM程序,ARM处理器不能执行X86程序。由于访问内存得到指令或数据的时间比执行指令花费的时间长,所有的CPU内都有一些用来保存关键变量和临时数据的寄存器(通用寄存器)。这样,通常在指令集中的指令,用以将一个字从内存调入寄存器或从寄存器存入内存。其他指令可以把来子寄存器、内存的操作数组合,或者用两者产生一个结果(如将两字相加并把结果存在寄存器或内存中)。初领通用寄存器以外,还有专业寄存器,如程序计数器(保存下一条指令的地址);堆栈指针(指向内存中当前栈的顶端。该栈包含了每个执行过程的栈桢。一个过程的栈桢中保存了有关的输入参数、局部变量以及那些没有保存在寄存器中的临时变量);程序状态器字寄存器(PSW,包含了条件码位【由比较指令设置】、CPU优先级、模式【用户态、内核态】,以及其他各种控制位。用户程序通常读入整个PSW,但是,只对其中的少量字段写入。在系统调用和I/O中,PSW作用很重要。
    操作系统必须知晓所有的寄存器。在时间多路复用CPU中,操作系统通常会中止正在运行的某个程序并启动(或再启动)另一个程序。每次停止一个运行着的程序时,操作系统必须保存所有寄存器的值,这样在稍后该程序再次运行时,可以把这些寄存器重新装入。
    一个CPU可以有单独的取指单元、解码单元和执行单元。
    1.流水线机制。一旦一条指令被取进流水线中,它就必须被执行完成,即便前一条取出的指令是条件转移,他也必须被执行完毕。
    2.超标量CPU。具有多个执行单元。两个或更多的指令被同时取出、解码并装入暂存缓冲区,直至他们执行完毕。只要有一个执行单元空闲,就会从缓冲区中取出可执行的指令。缺点是程序的指令经常不按照顺序执行。多数情况下硬件负责保证运算结果与顺序执行指令的结果相同。
    PSW中通过一个二进制位控制这两种模式:
    1.内核态:CPU可以执行指令集中的任何一条指令。
    2.用户态:仅允许执行指令集的一个子集和访问所有功能的一个子集。一般而言,在用户态有关I/O和内存保护的所有指令是禁止的。当然,将PSW中的模式设置为内核态也是禁止的。
    为了从操作系统中获得服务,用户程序必须使用系统调用已陷入内核态并调用操作系统(TRAP指令)。当有关工作完成后,在系统调用后面的指令把控制权返回给用户程序。

  2. 多线程和多核芯片

    多线程允许CPU保持两个个不同的线程状态,然后在纳秒级的时间尺度内来回切换。
    GPU是由成千上万个微核组成的处理器,擅长处理大量并行的简单计算。

  3. 存储器

寄存器(和CPU一样快,没有时延)
高速缓存(多数由硬件控制)
主存 (被分割成高速缓存行)
磁盘 ( 一种机械装置)
顶层的存储器速度高、容量小,与底层的存储器相比每位成本较高,差别可达十亿数量级。
  1. I/O设备

    一般包括两个部分:设备控制器和设备本身。控制器是插在电路板上的一块芯片或一组芯片,这块电路板物理的控制设备。它从操作系统接收命令,例如,从设备读数据,并且完成数据的处理。

posted on 2021-06-07 22:00  Bonbon'blogs  阅读(434)  评论(0)    收藏  举报