zoukankan      html  css  js  c++  java
  • 第 1 章 导论

      操作系统(operating system)是管理计算机硬件的程序,为应用程序提供基础,并且充当计算机用户和硬件的中介。

    1.1 操作系统的功能

      计算机系统可粗分为四个组件:硬件、操作系统、应用程序、用户。

      操作系统是一直运行在计算机上的程序(通常称为内核)。除了内核外,还有系统程序(与系统的运行有关,但不是内核的一部分)和应用程序(与系统运行无关)。

    1.1.1 用户视角

      操作系统设计的主要目的是使用方便,次要的是性能,不在乎的是资源利用。

    1.1.2 系统视角

      操作系统可看作是资源分配器和控制程序。

    1.2 操作系统的组成

    1.2.1 计算机系统的运行

      当计算机电源打开或重启时,需要运行一个初始程序或引导程序,一般位于计算机的固件中(如ROM、电可擦可编程EEPROM)。它初始化系统的各个组件,从CPU寄存器、设备控制器到内存内容。引导程序必须定位操作系统内核并加载到内存。

      一旦内核加载到内存并执行,它就开始为系统和用户提供服务。除了内核外,系统程序在启动时加到内存而成为系统进程或系统后台程序,其生命周期和内核一样。

      事件发生通常通过硬件和软件的中断来通知。硬件可以随时通过系统总线发送信号到CPU以触发中断。软件也可以执行系统调用以触发中断。

      当CPU被中断时,停止正在做的事,并立即转到固定位置再继续执行。该固定位置通常包含中断服务程序的开始地址。中断服务程序开始执行,在执行完毕之后,CPU重新执行被中断的计算。

      中断的处理应当快捷。由于只有少量预先定义的中断,所有可以通过中断处理程序的指针表来提高速度。通常指针表位于低地址内存。这些位置包含各种设备的中断处理程序的地址。这种地址的数组或中断向量,对于任一给定的中断请求,可通过唯一的设备号来索引,进而提供设备的中断处理程序的地址。

    1.2.2 存储结构

      CPU只能从内存中加载指令,因此执行程序必须位于内存中。大多数程序通常位于可读写内存中,称为内存(main memory),也称随机访问(访问任何位置时间一致)内存(RAM),内存通常为动态随机访问内存(DRAM),采用半导体技术实现。

      所有形式的内存都提供字节数组,每个字节都有地址。

      在冯·诺依曼体系结构上执行时,一个典型的指令周期是,首先从内存中获取指令,并存到指令寄存器。接着该指令被解码,也可能会从内存中获取操作数据并存到内部寄存器。在指令完成对数据的执行后,结构也可能存到内存。

      内存容量通常太少且是易失性的存储设备,掉电会失去所有内容。因此大部分计算机提供外存。

    1.2.3 I/O结构

      计算机系统由一个CPU和多个设备控制器组成,通过共同的总线连在一起。每个设备管理器管理某一特定类型的设备。操作系统为每个设备控制器都提供了一个设备驱动程序。

    1.3 计算机系统的体系结构

      单处理器系统:只要一个主CPU,带有其他专用处理器(不执行用户进程);

      多处理器系统(并行系统/多核系统):优点是增加吞吐量、规模经济、增加可靠性;

      集群系统:由两个以上的独立系统组成,共享存储并采用LAN或更快的连接。

    1.4 操作系统的结构

      操作系统最重要的一点是具有多道程序能力。

      为了充分利用CPU,现代操作系统采用多道程序设计:允许多个作业同时位于内存,从而保证CPU总有一个作业可以执行。

      分时系统是多道程序系统的扩展,它采用了调度算法,以快速切换作业,好像每个作业同时进行。

    1.5 操作系统的执行

    1.5.1 多重模式  

      现代操作系统是中断驱动的。事件总是有中断和陷阱引起的。陷阱(或异常)是一种软件生成的中断,或源于错误(如除数为0),或源于用户程序的特定请求。

      操作系统必须确保计算机系统的正确运行。为了防止用户干预系统的正常进行,硬件会有两种模式:用户模式和内核模式(也称系统模式或特权模式)。计算机硬件可以通过一个模式位来表示当前模式:内核模式(0)和用户模式(1)。

      将可能引起损害的机器指令作为特权指令,并且硬件只有在内核模式下才允许执行特权指令,如果用户模式下试图执行特权指令,那么硬件不执行该指令,认为其非法并将以陷阱形式通知操作系统。

      许多指令(如I/O指令和停机指令)都是特权的,只能在特权模式下执行。操作系统驻留的内存也会加以保护,以防用户程序修改。

    1.5.2 定时器   

       操作系统应该维持控制CPU,防止用户程序陷入死循环,或不调用系统服务并且不将控制返给操作系统。为了实现这一目标,可以使用定时器。

      在将控制交给用户之前,操作系统确保定时器已经设置好以便产生中断。当定时器产生中断时,控制自动转移到操作系统。

     1.6 进程管理

       程序本身不是进程。

      进程是操作系统工作的基本单元。

      进程管理包括创建和删除进程、提供与其他进程通信和同步的机制。

    1.7 内存管理

      操作系统管理内存,以跟踪内存的哪部分被使用以及被谁使用。操作系统还负责动态分配和释放内存空间。

    1.8  存储管理

       操作系统对存储设备的物理属性进行了抽象,并定义了逻辑存储单元,即文件(file)。

    1.8.1 文件系统管理

       文件系统管理文件和目录。

    1.8.2 大容量存储器管理

       ...

    1.8.3 高速缓存

      ...

      高速缓存一致性问题:由于多个CPU可以并发执行,应确保位于一个高速缓存的A值的更新,应该马上反映到所有其他A所在的高速缓存。

    1.8.4 I/O系统

      ...

  • 相关阅读:
    知乎
    热磁性储存系统转载
    超薄纳米纸张 比钢强250倍转载
    TFT LCD数据存储为BMP文件的C语言代码
    GPS NMEA0183协议详解 转载
    JPG文件结构分析转载
    SD/TF 引脚
    调试错误:No Algorithm found for(转载)
    STM32 USB IAP 步骤
    追踪“善恶有报” 解开生命健康福寿秘密(转载)
  • 原文地址:https://www.cnblogs.com/astonc/p/12149240.html
Copyright © 2011-2022 走看看