• 操作系统



    一,操作系统是什么

    《计算机硬件和软件》一节中提到,操作系统是软件,更准确地说是系统软件。一个没有安装操作系统的计算机,普通用户是无法使用的。

    计算机运行过程中,操作系统往往扮演着中间人(或者中介)的角色。比如单纯的计算机硬件和应用程序之间,本身是无法实现通信的,操作系统为它们建立起了沟通的通道,使它们能够一起工作,完成用户指定的任务。
    在这里插入图片描述

    除此之外,操作系统还充当着用户和计算机硬件之间的中间人。我们知道,绝大多数操作系统都为用户提供了友好的图形操作界面,即打开计算机后在屏幕上看到的计算机桌面。一方面,用户可以在桌面上打开多个文件或应用程序;另一方面,操作系统会一直在计算机后台控制、协调各个硬件的工作,完成用户指定的操作。

    根据运行状态的不同,可以将在操作系统中运行的应用程序分为 2 类,分别为前台执行程序和后台执行程序。所谓前台执行程序,指的是用户直接可以在计算机桌面或者任务栏中找到的应用程序;而后台执行程序,指的是没有显示在计算机桌面上、但实际却在运行的应用程序。以 Windows 为例,用户可以借助任务管理器查看并管理所有的后台执行程序。

    二,操作系统的发展史

    操作系统的发展,大致经历了以下几个重要的阶段。

    1) 1945~1955年

    这个时期处于第二次世界大战,数字计算机还尚未诞生,初期仍采用机械式继电器作为计算机的主要运算部件。由于机械式继电器的运算效率太差,后续又改用真空管作为主要部件。

    但即便如此,计算机的性能问题也没有得到解决,由此还产生了新的问题,即整套机器由成千上万个真空管构成,体积过于庞大。不仅如此,每台机器都需要一群人来设计、编写程序并提供维护,限于当时还没有诞生任何的编程语言以及操作系统,开发人员只能使用机器语言编写程序。

    处于这一时期的程序员,开发的系统主要用于数值计算,他们需要提前预约并争取到计算机的使用资格后,才能利用计算机执行他的程序。20 世纪 50 年代,穿孔卡片被引入到计算机中,程序员可以将程序编写到穿孔卡片上,然后交由计算机执行,在一定程序上提高了计算机的性能。

    2) 1955~1965年:首个操作系统诞生

    这一阶段的重要标志是晶体管的问世,通过用晶体管代替真空管,计算机的运行结果更加可靠,此类计算机通常称为“大型计算机”(简称大型机)。但受到价格的影响,大型机并不普及,仅有政府和一些大型的机构、公司负担得起这笔费用。

    大型机的使用,要求程序员先将程序写到纸上,然后存储到打孔卡片中,随后卡片会被带到输入室并由指定操作员将其插入到输入设备中,计算机会将处理结果经位于输出室的打印机打印出来,交给程序员。显然,整个过程是非常繁琐的,当时的解决方案就是使用批处理系统。

    批处理系统,其本质就是运行在计算机上的一个系统软件,在它的控制下,计算机能够自动地、成批地处理一个或多个用户的任务。

    具体来讲,在批处理系统的协助下,多个用户的任务将被收集起来并一起送到输入室。操作员会将这些任务统一读取到一块磁带(当时的存储工具)中,然后经过磁带机传输给计算机。操作员会手动操作计算机读取第一个任务并运行它,同时将处理结果生成到另一个磁带上,然后批处理系统会自动读取下一个任务,下下个任务…,直到处理完所有的任务。批处理过程完成后,操作员会将 2 块磁带取出,并开启下一次批处理过程。所有的处理结果会从存储处理结果的磁带中获取。

    批处理系统主要用于工程设计制造和科学计算。这一代计算机使用了首个操作系统,通常称其为 FMS 操作系统。

    3) 1964~1979年:多道程序系统诞生

    1964 年,IBM 360系统计算机诞生。这一代计算机用硅芯片取代晶体管,并且此阶段开发出的操作系统,可以同时执行多个应用程序(称为多道程序系统),其中一些多道程序系统还兼具批处理、实时处理等功能。

    4) 1979~至今:网络操作系统和分布式操作系统快速发展

    这一时期,计算机内部的芯片往往由上千个晶体管构成,个人计算机(即微型计算机)和工作站出现并得到了快速的发展,从而也促进了网络操作系统和分布式操作系统的发展。

    所谓网络操作系统,除具备先前操作系统所具有的诸如内存管理、文件管理、CPU 管理等功能外,还可以为计算机提供高效、可靠的网络通信能力,包括远程管理、文件传输、远程打印、电子邮件等。

    而分布式操作系统,即具备分布式处理能力的操作系统,即该操作系统可以将位于不同地点、具备不同功能、拥有不同数据的多台计算机,通过网络连接起来,系统会统一管理、控制这些资源,从而可以完成大规模地数据处理。

    Dos、Linux 以及 Windows 操作系统,就是这一时期网络操作系统和分布式操作系统的典型代表。

    三,操作系统的类别

    通过了解操作系统的发展史就不难理解,伴随着计算机硬件和软件的发展,先后诞生了多种操作系统。

    根据不同操作系统各自的特点,大致可以将它们分为 5 类,分别为批处理操作系统、分时操作系统、分布式操作系统、网络操作系统以及实时操作系统。前面的讲解过程中,我们已经对批处理操作系统、分布式操作系统以及网络操作系统做了简单的介绍,接下来给大家介绍一下另外 2 种操作系统的特性。

    分时操作系统最大的特点是,它支持位于不同终端的多个用户同时使用一台计算机,这些用户共享计算机的资源。举一个典型的例子,在该类型操作系统中所有用户共享 CPU,每个用户都可以向计算机发布任务,而 CPU 会以一定的顺序逐个执行这些任务。

    实时操作系统是专为实时应用程序开发的,所谓实时应用程序,即这些应用程序必须在指定时间内对数据进行处理。实时操作系统最大的特性可总结为快速输入和及时响应。例如在炼油厂中,如果油的温度过高并超过阈值,就应立即响应,对此情况做及时处理。实时操作系统常用于控制科学仪器,并作为导弹发射系统、交通灯控制系统、空中交通管制系统等。

    对于操作系统的 5 大分类,简单了解即可。

  • 相关阅读:
    【RPC】I/O模型——BIO、NIO、AIO及NIO的Rector模式
    VINS-Mono-后端优化 (三:视觉雅可比推导)
    Linux常见Bug解决方案
    Himall商城字符串帮助类移除前导/后导字符串
    Nginx+Tomcat 搭建负载均衡、动静分离
    QT点击事情实现图片切换
    【搭建NextCloud私有云盘服务】采用docker在linux上进行部署,内含nextCloud移植(迁移服务器)方法
    【21天学习挑战赛】折半查找
    腾讯云数据库SaaS致力于构建数据库分布式云,为更多更广的用户提供服务
    C语言:堆
  • 原文地址:https://blog.csdn.net/m0_62617719/article/details/128072296