操作系统 - 概述

操作系统 (OS) 是计算机用户和计算机硬件之间的接口。 操作系统是一种软件,它执行所有基本任务,如文件管理、内存管理、进程管理、处理输入和输出,以及控制磁盘驱动器和打印机等外围设备。

操作系统是使应用程序能够与计算机硬件交互的软件。 包含操作系统核心组件的软件称为内核

操作系统的主要目的是使应用程序(spftwares)能够与计算机硬件交互并管理系统的硬件和软件资源。

一些流行的操作系统包括 Linux 操作系统、Windows 操作系统、VMS、OS/400、AIX、z/OS 等。如今,操作系统几乎在所有设备中都可以找到,例如手机、个人计算机、大型计算机、 汽车、电视、玩具等


定义

我们可以对操作系统有多种定义。 让我们来看看其中的几个:

操作系统是支持计算机基本功能的低级软件,例如调度任务和控制外围设备。

我们可以将这个定义细化如下:

操作系统是充当用户和计算机硬件之间的接口并控制各种程序的执行的程序。

以下是取自维基百科的另一个定义:

操作系统(OS)是管理计算机硬件、软件资源并为计算机程序提供通用服务的系统软件。

架构

我们可以画出一个操作系统的通用架构图如下:

操作系统的概念视图

操作系统世代

多年来,操作系统一直在发展。 我们可以根据不同的世代对这个评估进行分类,简述如下:

0th

0th 代这个词用来指代计算的发展时期,即查尔斯·巴贝奇(Charles Babbage)发明了分析引擎,后来约翰·阿塔纳索夫(John Atanasoff)在 1940 年创造了计算机。这一时期的硬件组件技术 是电子真空管。 这一代计算机没有可用的操作系统,计算机程序是用机器语言编写的。 这一代的计算机效率低下,并且依赖于作为操作员的各个程序员的不同能力。

第一代(1951-1956)

第一代标志着商业计算的开始,包括在 1951 年初推出的 Eckert 和 Mauchly 的 UNIVAC I,以及稍晚一点的 IBM 701。

系统操作是在专家操作员的帮助下执行的,并且有一段时间没有操作系统的好处,尽管程序开始用更高级别的面向过程的语言编写,因此操作员的例程扩大了。 后来开发了单程序操作系统,它消除了运行工作中的一些人为干预,并为程序员提供了许多理想的功能。 这些系统仍然在人类操作员的控制下继续运行,该操作员过去常常遵循许多步骤来执行程序。 像 FORTRAN 这样的编程语言是由 John W. Backus 在 1956 年开发的。

第二代(1956-1964)

第二代计算机硬件最显着的特点是晶体管取代真空管作为硬件组件技术。 第一个操作系统 GMOS 是由 IBM 计算机开发的。 GMOS是基于单流批处理系统,因为它将所有相似的作业分组或批量收集,然后使用打孔卡将作业提交给操作系统,以完成一台机器中的所有作业。 操作系统在完成一项工作后被清理,然后继续读取并启动穿孔卡中的下一项工作。

研究人员开始在他们的称为分时系统的计算服务中尝试多道程序和多处理。 一个值得注意的例子是 1960 年代早期在 MIT 开发的兼容分时系统 (CTSS)。

第三代(1964-1979)

第三代正式开始于 1964 年 4 月 IBM 宣布其 System/360 系列计算机。 硬件技术开始使用集成电路 (IC),这在速度和经济性方面都具有显着优势。

随着多道程序的引入和广泛采用,操作系统的开发继续进行。 充分利用计算机的数据通道 I/O 功能的想法不断发展。

导致第四代个人计算机发展的另一个进展是使用DEC PDP-1的小型计算机的新发展。 对于计算机硬件和配套操作系统的开发而言,第三代确实是一个激动人心的时刻。

第四代(1979 年至今)

第四代的特点是个人电脑和工作站的外观。 第三代组件技术被超大规模集成(VLSI)所取代。 我们今天使用的许多操作系统,如第四代开发的 Windows、Linux、MacOS 等。

以下是操作系统的一些重要功能。

  • 内存管理
  • 处理器管理
  • 设备管理
  • 文件管理
  • 网络管理
  • 安全
  • 控制系统性能
  • 作业监听
  • 错误检测帮助
  • 其他软件和用户之间的协调

内存管理

内存管理是指对主内存或主内存的管理。 主存是一个字或字节的大数组,其中每个字或字节都有自己的地址。

主内存提供了一个可以直接由 CPU 访问的快速存储。 对于要执行的程序,它必须在主存储器中。 操作系统为内存管理执行以下活动 −

  • 跟踪主内存,即它的哪些部分被谁使用,哪些部分未使用。

  • 在多道程序中,操作系统决定哪个进程将在何时以及获得多少内存。

  • 在进程请求时分配内存。

  • 当进程不再需要或已终止时,取消分配内存。


处理器管理

在多道程序环境中,操作系统决定哪个进程在何时以及多长时间内获得处理器。 此功能称为进程调度。 操作系统为处理器管理执行以下活动 −

  • 跟踪处理器和进程状态。 负责此任务的程序称为交通控制器

  • 将处理器 (CPU) 分配给进程。

  • 在不再需要进程时取消分配处理器。


设备管理

操作系统通过各自的驱动程序管理设备通信。 它为设备管理执行以下活动 −

  • 跟踪所有设备。 负责此任务的程序称为I/O 控制器

  • 决定哪个进程获取设备的时间和时间。

  • 以高效的方式分配设备。

  • 取消分配设备。


文件管理

文件系统通常组织成目录以便于导航和使用。 这些目录可能包含文件和其他方向。

操作系统为文件管理执行以下活动 −

  • 跟踪信息、位置、用途、状态等。集合设施通常称为文件系统

  • 决定谁获得资源。

  • 分配资源。

  • 重新分配资源。


其他重要活动

以下是操作系统执行的一些重要活动 −

  • 安全 − 通过密码和类似的其他技术,它可以防止对程序和数据的未经授权的访问。

  • 控制系统性能 − 记录服务请求和系统响应之间的延迟。

  • 作业监听 − 跟踪各种作业和用户使用的时间和资源。

  • 错误检测帮助 − 生成转储、跟踪、错误消息以及其他调试和错误检测辅助工具。

  • 其他软件和用户之间的协调 − 为计算机系统的不同用户协调和分配编译器、解释器、汇编器和其他软件。