计算机操作系统(一) - 操作系统引论

操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。其主要作用是管理好这些设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口,便于用户使用。

文章目录

    • 操作系统的目标和作用
      • 操作系统的目标
      • 操作系统的作用
    • 操作系统的发展过程
      • 无操作系统的计算机系统
        • 人工操作方式
        • 脱机输入/输出方式
      • 单道批处理系统
      • 多道批处理系统
      • 分时系统
      • 实时系统
      • 微机操作系统
        • 单用户单任务操作系统
        • 单用户多任务操作系统
        • 多用户多任务操作系统
    • 操作系统的基本特性
      • 并发
      • 共享
      • 虚拟性
      • 异步性
    • 操作系统的功能
    • 操作系统的结构设计
      • 无结构 OS
      • 模块化结构 OS
      • 分层式结构 OS
      • 微内核结构 OS

操作系统的目标和作用

操作系统的目标

  • 方便性
    • 操作系统使计算机系统更易于使用。
  • 有效性
    • 操作系统使资源的利用率更高,系统的吞吐量更大。
  • 可扩充性
    • 操作系统必须能方便地增加新的功能和模块,并能修改老的功能和模块,以适应计算机硬件、体系结构以及应用发展的要求。
  • 开放性
    • 操作系统的开发应该遵循世界标准规范,特别是遵循开放系统互连 OSI 国际标准,从而使其与其他系统之间能彼此兼容、方便地实现互连。

操作系统的作用

  • 操作系统是用户与计算机硬件系统之间的接口。
    • 用户并不直接与计算机硬件打交道,而是通过操作系统提供的命令、系统功能调用以及图形化接口来使用计算机。
  • 操作系统是计算机资源的管理者。
    • 处理机的分配和控制,内存的分配和回收,I/O 设备的分配和操纵,文件的存取、共享和保护工作都是由操作系统完成的。
  • 操作系统实现了对计算机资源的抽象。
    • 操作系统是铺设在裸机(即没有配置任何软件的计算机系统)上的多层软件,它不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,从而实现了对计算机资源的抽象。

操作系统的发展过程

无操作系统的计算机系统

人工操作方式

在计算机发展的早期,由于还未出现操作系统,人们采用人工操作方式使用计算机:由程序员将已穿孔的纸带(或卡片)装入纸带(或卡片)输入机,再启动它们将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行;当程序运行完毕并由用户取走计算结果后,才允许下一个用户使用计算机。

特点:

  • 用户独占全机资源
  • CPU 等待人工操作

脱机输入/输出方式

脱机输入方式:是指在一台外围机(即一台专门用来管理输入/输出的、功能较简单的计算机)的控制下,预先将程序和数据从低速输入设备输入到磁带,当 CPU 需要这些程序和数据时,再从磁带高速地读入内存。

脱机输出方式:是指当CPU需要输出时,先高速地将数据写入磁带,然后在一台外围机的控制下,通过低速输出设备进行输出。相反,在主机的直接控制下进行的输入/输出方式被称为联机输入/输出方式。

由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式。

优点:

  • 减少了 CPU 的空闲时间
  • 提高了 I/O 速度

单道批处理系统

批处理技术:是指在系统中配置一个监督程序,并在该监督程序的控制下,能够对一批作业自动进行处理的技术。

早期采用批处理技术的系统,由于在内存中只能存放一道作业,故称为单道批处理系统。

缺点:

  • 系统中的资源得不到充分的利用

多道批处理系统

多道程序设计技术:是指在内存中同时存放若干个作业,并使它们共享系统资源且同时运行的技术。

采用多道程序设计技术的批处理系统被称作多道批处理系统。

优点:

  • 资源利用率高
  • 系统吞吐量大

缺点:

  • 平均周转时间长
  • 无交互能力

分时系统

为了解决批处理系统无法进行人机交互的问题,并使多个用户(包括远程用户)能同时使用昂贵的主机资源,又引入了分时系统。

分时系统:是指,在一台主机上连接有多个配有显示器和键盘的终端,同时允许多个用户通过自己的终端以交互方式使用计算机,共享主机中的资源。

实时系统

实时系统:是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

微机操作系统

单用户单任务操作系统

只允许一个用户上机,且只允许用户程序作为一个任务运行,这是最简单的微机操作系统。

单用户多任务操作系统

只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能。

多用户多任务操作系统

允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。

操作系统的基本特性

并发

  • 并行性
    • 是指两个或多个事件在同一时刻发生
  • 并发性
    • 是指两个或多个事件在同一时间间隔内发生

共享

共享性是指系统中的资源可供内存中多个并发执行的进程同时使用。

根据资源性质的不同可将资源共享方式分为以下两种:

  • 互斥共享
    • 系统中可供共享的某些资源,如打印机、变量、队列等,一段时间内只能给一个进程使用,只有当这个进程使用完毕并释放这些资源后,其他进程才能使用它们。
  • 同时访问
    • 系统中的另一类资源,如磁盘、可重入代码等,它们在同一段时间内可以被多个进程同时访问。虽然这种同时是指宏观上的同时,微观上可能是进程交替地访问该资源,但进程交替访问资源的顺序不会影响访问的结果。

虚拟性

虚拟性是指通过某种技术,将一个物理实体变为若干个逻辑上的对应物。用来实现虚拟性的技术被称为虚拟技术。

异步性

异步性是指在多道程序的环境下,每个程序何时执行、何时暂停都是未知的,即它们以不可预知的速度向前推进。但同时操作系统应保证程序的执行结果是可再现的,即只要运行环境相同,一个作业的多次运行都会得到相同的结果。

操作系统的功能

操作系统的主要功能包括:

  • 处理机管理
  • 存储器管理
  • 设备管理
  • 文件管理
  • 提供友好的用户接口

操作系统的结构设计

操作系统(OS)是一个大型的系统软件,其内部的组织结构已经经历了四代的变革。

无结构 OS

无结构操作系统也叫整体式系统,整个操作系统是各种过程的集合,每个过程都可以调用任意其他过程,操作系统内部不存在任何结构。

采用这种结构的操作系统不仅调试和维护不方便,而且其可读性和可扩充性都较差。

模块化结构 OS

模块化结构中采用了模块化程序设计技术,将操作系统按其功能划分成若干个具有一定独立性和大小的模块,并规定好各模块间的接口,使得它们之间能够交互,对较大的模块还可进一步细化为若干个子模块。

采用这种结构可加速操作系统的研制过程,操作系统设计的正确性高、适应性好。但模块的划分和接口的规定较困难,而且模块间还存在着复杂的依赖关系,使 OS 结构变得不够清晰。

分层式结构 OS

分层式结构是对模块化结构的一种改进,它将操作系统按其功能流图的调用次序以及其他一些原则划分为若干个层次,每一层代码只能使用较低层代码提供的功能和服务,并采用自底向上或自顶向下增添软件的方法来研制操作系统。

由于它将模块之间的复杂依赖关系改为单向依赖关系,并消除了某些循环依赖关系,因此能使OS结构变得非常清晰,从而使系统的正确性更高、扩充性和维护性更好。

微内核结构 OS

微内核的主要思想是,在操作系统内核中只留下一些最基本的功能,而将其他服务尽可能地从内核中分离出去,用若干个运行在用户态下的进程(即服务器进程)来实现,形成所谓的“客户/服务器”模式。普通用户进程(即客户进程)可通过内核向服务器进程发送请求,以取得操作系统的服务。

由于微内核 OS 结构是建立在模块化、层次化结构的基础上的,并采用了客户/服务器模式和面向对象的程序设计技术,因而它具有提高了系统的可扩展性,增强了系统的可靠性和可移植性,提供了对分布式系统的支持等优点。

你可能感兴趣的:(操作系统)