【13180】 计算机操作系统第一章操作系统概论(持续更新中...)

17 阅读12分钟

记录自考13018 计算机操作系统学习过程,有不正确的地方请在评论区指正!

第一章 操作系统概论

第一节操作系统概念

一、计算机系统

计算机系统是一种可以按照用户要求接收和存储信息,自动进行数据处理并输出结果信息的系统。广义计算机系统包括:

  1. 机械式系统
  2. 电子式系统
    • 模拟式(接收模拟信号)
    • 数字式

计算机系统由软件系统硬件系统组成软件系统 是保证计算机系统按照用户指定的要求协调工作(灵魂),由程序和数据组成。软件系统又分为:

  • 应用软件(图像处理、文件处理等)
  • 支撑软件(数据库、网络、多媒体等)
  • 系统软件(操作系统、编译程序等)

硬件系统 是计算机系统赖以工作的实体,包括:

  • 中央处理器(CPU=运算器+控制器)
  • 内存储器(主存)
  • 外存储器(磁盘、磁带等)
  • 输入输出设备(鼠标、键盘、显示器、打印机等)

计算机系统资源包括:软件资源和硬件资源

二、操作系统的定义

操作系统是一种系统软件,它是程序模块的集合,能有效的组织和管理计算机系统中的硬件资源和软件资源,合理的组织工作流程,控制程序执行,并向用户提供服务,使用户能够灵活、方便有效的使用计算机,并使整个计算机系统能高效的运行。

三、操作系统的特征

  1. 并发性:指在计算机系统中同时存在若干个运行着的程序。
    • 并行性:指两个或多个事件在同一时刻发生,微观意义的概念,在物理上同时发生。
    • 并发性:指两个或多个事件在同一时间间隔内发生,宏观概念。
  2. 共享性:指操作系统程序与多个用户程序共用系统中的各种资源。资源共享形式有:互斥共享、同时共享
  3. 虚拟性虚拟性是一种管理技术,该技术把物理上的一个实体变成逻辑上的多个对应物或把物理上的多个实体变成逻辑上的一个对应物。
  4. 异步性

四、研究操作系统的观点

  1. 软件的观点

    从软件的观点来看,操作系统是一种大型软件系统,多种功能程序的集合。作为一种大型软件系统,操作系统由软件的 内在特性外在特性

  2. 资源管理的观点 在计算机系统中的硬件和软件资源可分为:中央处理器(CPU)、存储器(内存和外存)、外部设备、信息(文件)

  3. 进程的观点

    进程的观点则把 操作系统看作由多个可以同时独立运行的程序和一个对程序进行协调的核心组成

  4. 虚机器的观点

    虚机器的观点是从系统功能分解的角度出发,考虑操作系统的结构。

  5. 服务提供者的观点

    从用户的角度,站在操作系统之外观察操作系统,则可以认为该服务提供者为用户提供了一组功能更强大、方便、易用的广义指令(称为系统调用)。

五、操作系统的功能

  1. 进程管理(处理器管理)

    • 进程控制:创建式资源分配,进程退出资源回收,控制进程状态。
    • 进程同步:多个进程并发执行,用同步或者互斥的方式实现同步机制。
    • 进程间通信:相互协作的进程之间交换数据和消息。
    • 调度(处理器调度):包括线程调度、进程调度和作业调度。
  2. 存储管理

    管理计算机内存的资源,内存分配、内存保护、内存扩充、地址映射

  3. 文件管理

    在计算机系统中的信息资源是以文件的形式储存在外存储器上的需要时装入内存,有以下作用:

    • 文件存储空间管理
    • 目录管理
    • 文件系统管理
  4. 设备管理

    • 缓冲管理
    • 设备分配
    • 设备处理
  5. 用户接口*

    • 命令接口
    • 程序接口
    • 程序接口

第二节 操作系统的发展

一、操作系统的发展历史

  • 1946年~1957年 第一代 电子管时代
  • 1958年 ~ 1964年 第二代 晶体管时代
  • 1965年 ~ 1970年 第三代 大规模集成电路
  • 1971年至今 大规模/超大规模集成电路

二、不同时期的操作系统

  1. 手工操作

    二战时期对武器装备设计的需要,美国、德国、英国等国家陆续使用真空管建造数字电子计算机通过在插板上的硬线控制季全集的基本功能。程序设计全部采用机器语言。20世纪50年代早期,出现穿孔卡片,可以将程序写在卡片上,此阶段特点是:手工操作、独占方式。

  2. 监控程序(早期批处理)

    晶体管发明出现后出现高级语言;程序员将程序写在卡片上;交给操作员;计算结果通过打印机输出;速度不匹配诞生监控程序;成批输入、自动处理即单道批处理

  3. 多道批处理

    进入第三代计算机后,硬件快速发展通道使得输入/输出操作与CPU操作可以并行处理。与此同时软件系统也随之相应变化,实现在硬件提供并行处理上的 多道程序设计多道批处理没有交互性,不适合交互式作业。

    多道指允许多个运行程序同时存在于主存之中,由CPU统一调度,多个程序可以同时执行,计算机资源可以同时被多个用户共享,提高系统在单位时间内处理作业的能力。

  4. 分时操作系统

    指多个用户通过终端设备与计算机交互来运行自己的作业,共享一个计算机系统且互不干扰,用户常发出简短的命令少有长的费时命令所以能为许多用户提供交互式快速服务,同时CPU空闲时还能运行大的后台任务。

  5. UNIX通用操作系统

    特点

    1. C语言编程,具有可移植性;
    2. 唯一一个能在个人计算机、PC机、工作站、巨型机上运行的操作系统;
    3. 适应性强
    4. 多用户、多任务、分时操作系统;
    5. 树形文件系统;
    6. 简介的字符流文件和文件保护机制;
    7. 具备shell,它既是命令解释器又是编程的高级语言可用于扩充系统功能;
  6. 个人计算机系统

    面向个人计算器的操作系统(如:微软公司的MS DOS操作系统)属于单用户单任务操作系统。

    • 1984年,苹果推出交互式图形功能的操作系统;
    • 1992年,微软推出交互式图形功能的Windows 3.1;
    • 1995年,Windows 95出现,Windows 成为个人计算机的主流操作系统;
    • 1991年,Linus公布Linux操作系统,继承UNIX全部优点并且开源;
  7. 当代操作系统两大发展方向——宏观应用和微观应用

    • 大型系统:分布式操作系统、机群操作系统;
    • 微型系统:嵌入式操作系统;

第三节 操作系统的分类

一、批处理操作系统

  1. 基本工作方式

    系统收到一定数量的用户作业后,组成一批作业,输入到计算机在系统中形成一个连续的自动转接的作业流。

  2. 特点与分类

    • 优点:成批处理、资源利用率高、作业吞吐率高、吞吐量大、作业流程自动化高。
    • 缺点:没有交互性、不适合调试程序。
    • 分类:简单批处理系统、多道批处理系统;
  3. 设计思想

    简单批处理系统在操作系统早期出现,被称为早期批处理系统监控程序其设计思想:在监控程序启动前,操作员有选择地把若干个作业合并成一批作业,将作业安装在输入输出设备上,然后启动监控程序,监控程序将自动控制这批作业的执行。

  4. 作业控制说明

    在简单批处理中,作业的运行步骤是由作业控制说明书传递给监控程序的。作业控制说明书是由作业控制语言编写的一段程序,它通常存放在被处理作业的前面。在运行过程中,监控程序读入并解释作业控制说明书中的语句,以控制各个作业的执行。

  5. SPOOLing技术

    为提高硬件资源的利用率,批处理系统发展为更加高级的多道批处理系统,关键就是多道程序、假脱机(SPOOLing)技术。

    假脱机技术全称是“同时的外部设备联机操作”,借助硬件通道技术,实现输入输出操作和处理器操作的自动并行处理。

    通道 是指专门用来控制输入输出的硬件设备,可以看作是专门的I/O处理机,自主控制外设,可以与CPU并行工作。

二、分时操作系统

分时操作系统 出现在批处理操作系统之后,为弥补批处理方式不能向用户提供交互式快速服务的缺点

  1. 工作方式

    用户通过终端交互式向系统提出命令请求,系统接收命令之后采用时间片轮转方式处理请求,并向用户显示处理结果。

  2. 设计思想

    将CPU的时间划分成若干个小片段称为 时间片操作系统以时间片为单位,轮流为用户服务。

  3. 特点

    • 多路性:多个用户在同时使用计算机。
    • 交互性:指操作系统和请求之间相互交流和互动。
    • 独占性:指每个用户感觉不到计算机为它人服务。
    • 及时性:系统及时响应用户请求。

    对于分时与批处理的处理原则是分时优先、批处理在后。一般把系统的分时和批处理运行状态称为前台后台

    • 前台:响应需频繁交互的作业。
    • 后台:处理对时间性要求不强的作业。

三、实时操作系统

实时操作系统 指在规定时间内及时响应外部事件请求、完成事件处理。分为以下两类:

  • 硬实时:响应和处理时间严格要求。
  • 软实时:响应和处理事件有一定要求。

实时系统为实现硬实时和软实时需要具备以下能力:

1.实施时时钟管理

  • 实时任务根据时间要求可分为以下两类
    • 定时任务:依据用户的定时启动严格按照时间间隔重复运行。
    • 延时任务:非周期运行,运行延后执行。
  • 根据任务功能的不同可分为:
    • 主动式任务:依据时间间隔主动运行,多用于监控。
    • 从动式任务:依赖于外部时间的发生。
  1. 过载防护

    实时任务随机性大易过载,出现过载情况时系统需分析判断、放弃次要任务,保障关键任务执行

  2. 高可靠性

    实时系统设计目标之一,实时操作系统需要很强的健壮性和坚固性

四、个人计算机操作系统

个人计算机操作系统一种单用户的操作系统,主要特点如下:

  1. 为单个用户服务;
  2. 图形界面人机交互式的工作方式;
  3. 使用简单方便。

五、网络操作系统

网络操作系统是基于计算机网络的,在各种计算机操作系统之上按照网络体系机构协议标准设计开发的软件

计算机网络的不同模式:

  1. 集中式:运算处理在主机里发生,终端仅作为输入/输出设备使用通过连接两台或更多主机的方式构成计算机网络。
  2. 分布式模式:多台计算机通过网络交换数据共享资源和服务。在分布式模式中,计算机不仅能共享数据、资源、服务还能共享运算处理能力

六、分布式操作系统

分布式操作系统大量的计算机通过网络连接在一起获得极高的运算能力极广泛的数据共享,是网络操作系统的更高级形式。具备以下特征:

  1. 系统中所有主机使用统一操作系统;
  2. 资源深度共享;
  3. 透明性
  4. 自治性;

优点

  1. 分布式:以较低成本获得较高运算性能;
  2. 可靠性:当一个计算机发生故障时不影响整个系统工作。

七、嵌入式操作系统

嵌入式操作系统用于工业控制、交通管理、信息家电等嵌入式系统,具体以下特点:

  1. 内核小
  2. 专业性强
  3. 系统精简
  4. 高实时性
  5. 多任务的操作系统

八、其他类型操作系统

  1. 大型机操作系统:处理海量数据和事务,高安全性、可靠性和可伸缩性。通常用于:银行、保险行业等
  2. 服务器操作系统:支持多用户多任务在服务器上运行,通常用于互联网、企业等
  3. 多处理操作系统:特点多处理器并行执行任务,通常用于:科学计算、图形计算等。
  4. 移动计算机操作系统:支持移动通信、定位、传感器等功能,适用于智能手机、平板电脑等。
  5. 传感器节点操作系统:支持传感器数据采集、处理和传输。通常用于物联网、环境监测等。
  6. 智能卡操作系统:支持智能卡的存储,计算和安全功能,通常用于金融、交通等。