操作系统的历史,你知道多少?

一、说明

对于初学计算机的学生,操作系统是一个抽象的概念,本篇全面系统地将操作系统的发展历史阐述出来,以便初学计算机的朋友能有一个快速、准确的理解。

二、什么是操作系统

操作系统是一种充当用户和硬件之间接口的软件。它负责处理计算机的各种关键功能并非常有效地利用资源,因此操作系统也称为资源管理器。操作系统也像政府一样,因为就像政府拥有对一切事物的权威一样,操作系统也拥有对所有资源的权威。操作系统处理的各种任务包括文件管理、任务管理、垃圾管理、内存管理、进程管理、磁盘管理、I/O 管理、外围设备管理等。

三、操作系统的功能

内存管理
流程管理
文件管理
设备管理
预防死锁
输入/输出设备管理
充当资源经理
时间管理

四、操作系统的世代

以下是四代操作系统。操作系统共有四代

4.1 第一代

  1. 第一代(1940 年至 1950 年代初)
    1940 年,第一台电子计算机诞生时并未配备操作系统。早期的计算机用户完全控制着设备,并为每个任务编写纯机器语言程序。在计算机诞生期间,程序员只能执行和解决基本的数学计算。这些计算不需要操作系统。

4.2 第二代

2.第二代(1955-1965)
第一个操作系统(OS)GMOSIS 是在 20 世纪 50 年代初开发的。通用汽车为 IBM 计算机创建了操作系统。由于它将所有相关作业集中到组或批中,然后使用打孔卡将它们提交给操作系统以完成所有作业,因此第二代操作系统建立在单流批处理系统上。

4.3 第三代

3.第三代(1965-1980)
由于第二代操作系统将所有相似的作业分组或分批,然后使用穿孔卡将它们提交给第二代操作系统以完成机器上的所有作业,因此它基于单流批处理系统。每项作业完成后,控制权都会转移到操作系统,无论是常规作业还是意外作业。操作系统会在每项工作完成后进行清理,然后读取并启动穿孔卡上的后续作业。此后,人们引入了大型专业操作的机器,即大型机。20世纪 60 年代末,操作系统设计人员能够创建一种新的操作系统,该系统能够进行多道程序设计——在单个计算机程序中同时执行多项任务。

为了创建能够使 CPU 始终处于活动状态并同时在计算机上执行多项作业的操作系统,必须引入多道程序设计。随着 1961 年 DEC PDP-1 的发布,第三代小型计算机进入了新的增长和发展阶段。

4.3 第四代

4.第四代(1980年至今)
第四代个人计算机就是这些 PDP 的产物。第四代(1980 年至今)个人计算机的发展与第四代操作系统息息相关。尽管如此,第三代小型计算机与个人计算机仍有许多相似之处。当时,小型计算机的价格仅比个人计算机略贵,而个人计算机的价格非常昂贵。

微软和 Windows 操作系统的发展对个人电脑的创建产生了重大影响。1975 年,微软开发了第一个 Windows 操作系统。比尔盖茨和保罗艾伦在发布微软 Windows 操作系统后有了推动个人电脑发展的想法。因此,MS -DOS于 1981 年发布,但用户发现解读其复杂命令极具挑战性。Windows 是目前使用最广泛、最受欢迎的操作系统。此后,Windows 发布了多个操作系统,包括 Windows 95、Windows 98、Windows XP和最新的操作系统 Windows 7。大多数 Windows 用户目前正在运行 Windows 10。除了 Windows 之外,Apple 是另一个著名的操作系统。

五、操作系统的类型

操作系统在过去几年中不断发展。它经历了几次变化才形成其原始形式。操作系统的这些变化被称为操作系统的演变。操作系统随着新技术的发明而改进自身。基本上,操作系统增加了新技术的功能并使其更加强大。让我们详细了解操作系统逐年的发展:

无操作系统 – (0 年代至 1940 年代)
批处理系统-(20 世纪 40 年代至 50 年代)
多道程序系统(20 世纪 50 年代至 60 年代)
分时系统 -(20 世纪 60 年代至 70 年代)
GUI 的引入 -(20 世纪 70 年代至 80 年代)
网络系统 – (20 世纪 80 年代至 90 年代)
移动操作系统 – (20 世纪 90 年代末至 21 世纪初)
人工智能集成 – (2010 年代至今)

  1. 无操作系统 – (0 年代到 1940 年代)
    我们知道,在 1940 年代之前,没有使用操作系统。早期,人们的计算机系统中缺少操作系统,因此他们必须用机器语言(基于 0-1 的语言)手动输入每个任务的指令。当时,用户很难执行哪怕是一个简单的任务。而且这非常耗时,也不方便用户使用。因为不是每个人都有那么高的理解水平来理解机器语言,这需要深刻的理解。

2.批处理系统-(20世纪40年代至50年代)
随着时间的推移,批处理系统进入市场。现在用户可以轻松地将程序写在穿孔卡上,并将其加载到计算机操作员。然后操作员将类似类型的作业分成不同的批次,然后将不同的批次(作业组)逐一提供给 CPU。CPU 首先执行一批作业,然后按顺序跳转到另一批作业。

3.多道程序系统-(20 世纪 50 年代至 60 年代)
多道程序设计是第一个真正引发革命的操作系统。它为用户提供将多个程序加载到内存中的便利,并为每个程序提供特定部分的内存。当一个程序正在等待任何 I/O 操作(这需要很长时间)时,操作系统允许 CPU 从上一个程序切换到另一个程序(就绪队列中的第一个程序),以便通过中断连续执行程序。

4.分时系统-(20 世纪 60 年代至 70 年代)
分时系统是多道程序系统的扩展版本。这里添加了一个额外的功能,以避免任何单个程序长时间使用 CPU,并在一定时间间隔后让每个程序访问 CPU。基本上,操作系统会在一定时间间隔后从一个程序切换到另一个程序,以便每个程序都可以访问 CPU 并完成其工作。

5.GUI 的引入-(20 世纪 70 年代至 80 年代)
随着时间的推移,图形用户界面 (GUI) 应运而生。操作系统首次变得更加用户友好,并改变了人们与计算机交互的方式。GUI 为计算机系统提供了视觉元素,使用户与计算机的交互更加舒适和用户友好。用户只需单击视觉元素,而不必键入命令。以下是 Microsoft 的 Windows 图标、菜单和窗口中的一些 GUI 功能。

6.网络系统 - (1980 年代至 1990 年代)
20 世纪 80 年代,计算机网络热潮达到顶峰。需要一种特殊的操作系统来管理网络通信。Novell NetWare 和 Windows NT 等操作系统被开发来管理网络通信,为用户在协作环境中工作提供了便利,并使文件共享和远程访问变得非常容易。

7.移动操作系统 - (20 世纪 90 年代末至 21 世纪初)
智能手机的发明引发了软件行业的一场大革命,为了处理智能手机的操作,开发了一种特殊的操作系统。其中一些是:iOS和Android等。这些操作系统随着时间的推移而得到优化,变得更加强大。

  1. 人工智能集成 - (2010 年代至今)
    随着时间的推移,人工智能开始出现。操作系统集成了 Siri、Google Assistant 和 Alexa 等 AI 技术的功能,并在许多方面变得更加强大和高效。这些 AI 功能与操作系统一起创建了全新的功能,例如语音命令、预测文本和个性化推荐。

注意:上面提到的操作系统基本上说明了操作系统是如何随着时间而演变的,通过添加新功能,但这并不意味着只有新一代操作系统在使用,而以前的操作系统不使用,根据需要,所有这些操作系统仍在软件行业中使用。

六、操作系统的优势

操作系统管理外部和内部设备,例如打印机、扫描仪等。
操作系统提供接口和驱动程序以实现系统和硬件设备之间的正常通信。
允许多个应用程序同时运行。
管理流程的执行,确保系统保持响应。
组织和管理存储设备上的文件。
操作系统为各种应用程序分配资源并确保它们有效利用。

七、操作系统的缺点

如果您的系统出现错误,那么您的数据可能会被删除,因此请务必备份您的数据。
威胁和病毒可能随时攻击我们的操作系统,因此操作系统很难保护系统免受这些危险的侵害。
学习新的操作系统可能很耗时且具有挑战性,特别是对于使用特定操作系统的人来说(例如从 Windows 操作系统切换到 Linux)很困难。
保持操作系统更新需要定期维护,这可能非常耗时。
操作系统消耗系统资源,包括 CPU、内存和存储,这会影响其他应用程序的性能。

八、操作系统历史常见问题解答 – 常见问题解答

8.1 操作系统的演变对计算机硬件的发展有何影响?

计算机硬件的设计和进步受到操作系统发展的重大影响。随着操作系统的改进,硬件制造商逐渐为其产品添加新特性和功能,以便在长时间变化后更好地支持操作系统提供的功能。例如,在操作系统中引入虚拟内存之后,硬件中内存管理单元 (MMU) 的开发用于处理内存寻址和保护。同样,对操作系统多任务和多处理支持的需求促使创建更强大、更有效的处理器和其他硬件组件。

8.2 分布式系统的发展如何影响操作系统随时间的变化?

操作系统受到分布式系统(如客户端-服务器架构和云计算)兴起的重大影响。为了支持网络通信、分布式文件系统和跨多台机器的资源共享,操作系统必须不断发展。分布式操作系统也不断发展,以在分布式环境中提供可扩展性、容错性和协调性。这些修改通过改进网络协议、远程过程调用和分布式文件系统,提高了跨互连系统管理资源的能力。

8.3 操作系统的例子有哪些?

有许多流行的操作系统,例如 Apple macOs、Microsoft Windows、Google Android OS、Linux 操作系统和 Apple iOS。

8.4 操作系统中的死锁是什么?

死锁是操作系统中的一种情况,其中一组进程被阻塞,因为每个进程都持有一个资源并等待另一个资源完成执行,但该资源已分配给其他进程,这种情况称为死锁。或者任何未发生的事件都是死锁。

8.4 操作系统之母是什么?

UNIX是操作系统之母。Unix是所有操作系统(如 Ubuntu、Solaris、POSIX 等)的真正基础。

九、推荐类似读物

  • 操作系统中的系统保护
    简介:操作系统中的系统保护是指操作系统为确保系统的安全性和完整性而实施的机制。系统保护涉及各种技术,以防止未经授权的访问、滥用或修改操作系统及其资源。操作系统有几种方法可以保护用户免受未经授权的访问、滥用或修改。

  • 操作系统的用户视图、硬件视图和系统视图
    操作系统的用户视图:操作系统是一个界面,隐藏了必须执行的细节,并向用户呈现一个虚拟机,使其更易于使用。操作系统为用户提供以下服务。程序的执行访问 I/O 设备受控访问文件错误检测(硬件故障、

  • Xv6 操作系统-添加新的系统调用
    先决条件 - Xv6 操作系统 - 添加用户程序 在上一篇文章中,我们了解了如何在 Xv6 操作系统中添加用户程序。现在您将在这里看到如何在 Xv6 操作系统中添加新的系统调用。向 xv6 添加新的系统调用:系统调用是程序与操作系统交互的方式。计算机程序在以下情况下进行系统调用:
    阅读时间:6分钟

  • 操作系统(OS)中的陷阱和系统调用
    陷阱和系统调用是操作系统 (OS) 用来执行特权操作和与用户级程序交互的两种机制。以下是每种机制的概述:陷阱:陷阱是 CPU 在用户级程序尝试执行特权指令或遇到错误时生成的中断。当发生陷阱时

  • 操作系统中的 Fork 系统调用
    在许多操作系统中,fork 系统调用是必不可少的操作。fork 系统调用允许创建新进程。当进程调用 fork() 时,它会复制自身,从而产生两个同时运行的进程。创建的新进程称为子进程。它是父进程的副本。fork 系统调用允许创建新进程。

  • 操作系统中的系统程序
    系统编程可以定义为使用系统编程语言构建系统软件的行为。根据计算机层次结构,首先是硬件,然后是操作系统、系统程序,最后是应用程序。程序开发和执行可以在系统程序中方便地完成。一些系统程序是

  • 操作系统中的文件系统实现
    文件是相关信息的集合。文件系统驻留在辅助存储上,通过允许存储、定位和检索数据,提供对磁盘的高效便捷访问。操作系统中的文件系统实现是指文件系统如何管理物理存储设备上数据的存储和检索

  • 系统软件和操作系统之间的区别
    软件就像一组指令,告诉计算机该做什么。主要有两种类型:应用软件和系统软件。应用软件是您可以添加到计算机中以执行特定操作(例如编写文档或玩游戏)的额外程序。您不需要这些来使用计算机,但它们可以帮助您完成特定任务。系统

  • 操作系统中的银行家算法
    先决条件 - 资源分配图 (RAG)、银行家算法、银行家算法程序 银行家算法是一种资源分配和避免死锁的算法。该算法测试安全性,模拟所有资源的预定最大可能量的分配,然后进行“s 状态”检查以测试可能的活动

  • 操作系统中的交换空间
    计算机具有足够的物理内存,但大多数时候我们需要更多内存,因此我们会在磁盘上交换一些内存。交换空间是硬盘上的空间,可以替代物理内存。它用作包含进程内存映像的虚拟内存。每当我们的计算机物理内存不足时,它都会使用虚拟内存并

  • 操作系统中的线程模型
    线程是一种轻量级进程,类似于每个进程可以有一个或多个线程的进程。每个线程包含一个堆栈和一个线程控制块。有四种基本线程模型:1. 用户级单线程模型:每个进程包含一个线程。单进程本身就是一个线程。进程表包含一个

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

  • 操作系统中的引导块
    基本上,计算机在通电或重启时要开始运行以获取实例,它需要有一个初始程序来运行。这个初始程序称为引导程序,需要简单。它必须初始化系统的所有方面,从 CPU 寄存器到设备控制器和主内存的内容,然后启动

  • 操作系统安装的不同方法。
    通常,我们使用操作系统来执行日常任务。那么,如果您的操作系统损坏或丢失,您会怎么做?您将尝试恢复,或者最终重新安装操作系统。要安装操作系统,您需要可启动媒体,并且需要启动媒体创建工具来创建可启动媒体。可启动媒体是存储(可以是 Pendr

  • Linux 操作系统 | CLI(命令行界面)和 GUI(图形用户界面)
    Linux 实际上是指系统内核,它是计算机系统上发生的一切的唯一控制器。当我们谈论或说 x“运行 Linux”时,我们通常指的是系统内核和与之一起使用的工具集。我们将检查每个现有组件,以便我们准确了解每个组件的功能。L

  • 在操作系统中使用 Java 和 C 的比较
    Java 是一种托管语言,可提供内存安全性。在 Java 中,不存在指针,因此我们无法对函数指针进行指针运算。应用程序可以通过类对象调用类中定义的方法。在 Java 中,我们不能对对象进行不安全的类型转换,以用其他对象覆盖方法指针。超出范围的数组

  • 操作系统中加载和链接的区别
    操作系统充当计算机用户和计算机硬件之间的中介。操作系统的目的是提供一个环境,让用户可以方便高效地执行程序。链接和加载是实用程序,在程序的执行中起着重要作用。链接吸收了

  • 操作系统中处理器使用的堆栈实现
    堆栈是一组有序的元素,一次只能访问其中一个(最后添加的元素)。访问点称为堆栈顶部。堆栈中的元素数量或堆栈长度是可变的。只能将元素添加到堆栈顶部或从堆栈顶部删除。因此,堆栈是

  • 操作系统中的最佳分配
    简介:最佳匹配分配是操作系统中用于为进程分配内存的一种内存分配技术。在最佳匹配中,操作系统搜索空闲内存块列表,以找到大小最接近进程内存请求的块。找到合适的块后,操作系统将分配

  • 操作系统中的线程控制块
    与表示进程的进程控制块 (PCB) 非常相似,线程控制块 (TCB) 表示系统中生成的线程。它包含有关线程的信息,例如线程的 ID 和状态。组件定义如下:线程 ID:这是操作系统在线程运行时分配给线程的唯一标识符

  • 操作系统的双状态进程模型
    先决条件:操作系统中的进程状态 操作系统中的进程从形成到完成会经历不同的状态。进程由程序数据及其相关数据和进程控制块 (PCB) 组成。进程可能会因为以下事件(如 I/O 请求、中断)而改变其状态

  • 操作系统中的 I/O 硬件
    I/O 硬件是一组专用硬件设备,可帮助操作系统访问磁盘驱动器、打印机和其他外围设备。这些设备位于主板内部,并通过总线连接到处理器。它们通常具有专用控制器,可让它们快速响应在主板上运行的软件的请求

  • ROS(机器人操作系统)简介
    机器人操作系统或简称 ROS 是一个框架,全球数百家公司和各个领域的技术人员都在使用这个框架,它们涉及机器人和自动化领域。它为机器人编程领域的非专业人士提供了一个轻松的切入点。那么首先什么是机器人?机器人是任何能够感知

  • 操作系统中的完全公平队列 (CFQ)
    已经提出了几种 Linux I/O 调度程序。其中一些是:完全公平队列 (CFQ) 截止期限 NOOP 预期 CFQ 是 Linux 内核的输入/输出调度程序之一,也是 Linux 内核中当前的默认调度程序。什么是内核?内核是操作系统的核心部分。它管理

  • 操作系统中的并发进程
    并发处理是一种计算模型,其中多个处理器同时执行指令以获得更好的性能。并发意味着,当其他事情发生时会发生这种情况。任务被分解成子类型,然后分配给不同的处理器同时执行,而不是按顺序执行,因为它们必须

  • 分时操作系统
    多道程序、批处理系统提供了一个有效利用各种系统资源的环境,但它不提供用户与计算机系统的交互。分时是多道程序的逻辑扩展。CPU 通过频繁的切换来执行许多任务,以便用户可以在执行任务的同时与每个程序进行交互

  • 操作系统中的列表调度
    先决条件 - CPU 调度列表调度也称为基于优先级列表的调度,是一种调度技术,通过为进程分配一些优先级来生成有序的进程列表。因此,基本上发生的事情是,生成一个在给定时间点准备执行的进程列表。然后根据 pr 的可用性

  • 操作系统中的任务优先级分配
    为任务分配优先级:当具有不同相对截止时间的任务数量超过操作系统支持的优先级时,某些任务会共享相同的优先级值。但为任务分配优先级的具体方法会有效影响处理器的利用率。如果随机选择任务进行处理,则某些任务的优先级会降低。

  • 操作系统中的稳定存储实现
    根据定义,稳定存储中的信息永远不会丢失。即使磁盘和 CPU 出现一些错误,也不会丢失任何数据。稳定存储实现:为了实现这种存储,我们需要在具有独立故障模式的多个存储设备上复制所需信息。更新的写入应该与

  • 操作系统中的死锁忽略
    在本文中,我们将简要研究什么是死锁,以及操作系统中的死锁无知。什么是死锁?如果进程集中的每个进程都在等待只有该进程集中的另一个进程才能引发的事件,则实际上称为死锁。换句话说,一个进程必

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无水先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值