操作系统 - 概述

  • 简述

    Operating System(OS) 是计算机用户和计算机硬件之间的接口。操作系统是一种软件,它执行所有基本任务,如文件管理、内存管理、进程管理、处理输入和输出,以及控制磁盘驱动器和打印机等外围设备。
    操作系统是使应用程序能够与计算机硬件交互的软件。包含操作系统核心组件的软件称为kernel.
    的主要目的Operating System是使应用程序(spftwares)能够与计算机的硬件交互并管理系统的硬件和软件资源。
    一些流行的操作系统包括 Linux 操作系统、Windows 操作系统、VMS、OS/400、AIX、z/OS 等。如今,操作系统几乎可以在手机、个人计算机、大型计算机、汽车、电视等所有设备中找到, 玩具等
  • 定义

    我们可以有许多操作系统的定义。让我们来看看其中的几个:
    操作系统是支持计算机基本功能的低级软件,例如调度任务和控制外围设备。
    我们可以将这个定义细化如下:
    操作系统是充当用户和计算机硬件之间的接口并控制各种程序的执行的程序。
    以下是取自维基百科的另一个定义:
    操作系统(OS)是管理计算机硬件、软件资源并为计算机程序提供通用服务的系统软件。
  • 架构

    我们可以绘制一个操作系统的通用架构图,如下所示:
    操作系统的概念视图
  • 操作系统历史

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

    第0代

    第0代一词用于指代查尔斯·巴贝奇(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 直接访问。对于要执行的程序,它必须在主存储器中。操作系统为内存管理执行以下活动 -
    • 跟踪主存储器,即它的哪一部分被谁使用,哪一部分没有使用。
    • 在多道程序设计中,操作系统决定哪个进程将在何时以及获得多少内存。
    • 当进程请求它时分配内存。
    • 当进程不再需要或已终止时取消分配内存。
  • 处理器管理

    在多道程序环境中,操作系统决定哪个进程在何时以及多长时间内获得处理器。这个函数被称为process scheduling. 操作系统为处理器管理执行以下活动 -
    • 跟踪处理器和进程状态。负责此任务的程序称为traffic controller.
    • 将处理器 (CPU) 分配给进程。
    • 当不再需要进程时取消分配处理器。
  • 设备管理

    操作系统通过各自的驱动程序管理设备通信。它为设备管理执行以下活动 -
    • 跟踪所有设备。负责此任务的程序称为I/O controller.
    • 决定哪个进程获取设备的时间和时间。
    • 以有效的方式分配设备。
    • 取消分配设备。
  • 文件管理

    文件系统通常组织成目录以便于导航和使用。这些目录可能包含文件和其他方向。
    操作系统为文件管理执行以下活动 -
    • 跟踪信息、位置、用途、状态等。集体设施通常被称为file system.
    • 决定谁获得资源。
    • 分配资源。
    • 取消分配资源。
  • 其他重要活动

    以下是操作系统执行的一些重要活动 -
    • 安全− 通过密码和其他类似技术,防止未经授权访问程序和数据。
    • 系统性能控制− 记录服务请求和系统响应之间的延迟。
    • 作业统计− 跟踪各种工作和用户使用的时间和资源。
    • 错误检测辅助工具− 生成转储、跟踪、错误消息以及其他调试和错误检测辅助工具。
    • 其他软件和用户之间的协调− 为计算机系统的不同用户协调和分配编译器、解释器、汇编器和其他软件。