- 操作系统教程
- 操作系统 - 首页
- 操作系统 - 需求
- 操作系统 - 概述
- 操作系统 - 历史
- 操作系统 - 组件
- 操作系统 - 结构
- 操作系统 - 架构
- 操作系统 - 服务
- 操作系统 - 属性
- 操作系统 - 周转时间 & 等待时间
- 操作系统进程
- 操作系统 - 进程
- 操作系统 - 进程调度
- 操作系统 - 调度算法
- 先来先服务调度算法 (FCFS)
- 最短作业优先调度算法 (SJF)
- 轮询调度算法
- 最高响应比优先调度算法 (HRRN)
- 优先级调度算法
- 多级队列调度
- 上下文切换
- 进程操作
- 彩票进程调度
- 预测突发时间SJF调度
- 竞争条件漏洞
- 临界区同步
- 互斥同步
- 进程控制块
- 进程间通信
- 抢占式和非抢占式调度
- 操作系统同步
- 进程同步
- 操作系统内存管理
- 操作系统 - 内存管理
- 操作系统 - 虚拟内存
- 操作系统存储管理
- 操作系统 - 文件系统
- 操作系统类型
- 操作系统 - 类型
- 操作系统杂项
- 操作系统 - 多线程
- 操作系统 - I/O硬件
- 操作系统 - I/O软件
- 操作系统 - 安全
- 操作系统 - Linux
- 考试题库及答案
- 考试题库及答案
- 操作系统有用资源
- 操作系统 - 快速指南
- 操作系统 - 有用资源
- 操作系统 - 讨论
操作系统 - 概述
操作系统 (OS) 是计算机用户和计算机硬件之间的接口。操作系统是一种软件,它执行所有基本任务,例如文件管理、内存管理、进程管理、处理输入和输出以及控制外围设备(如磁盘驱动器和打印机)。
操作系统是一种使应用程序能够与计算机硬件交互的软件。包含操作系统核心组件的软件称为内核。
操作系统的主要目的是使应用程序(软件)能够与计算机硬件交互,并管理系统的硬件和软件资源。
一些流行的操作系统包括 Linux 操作系统、Windows 操作系统、VMS、OS/400、AIX、z/OS 等。如今,操作系统几乎存在于每种设备中,例如手机、个人电脑、大型机、汽车、电视、玩具等。
定义
我们可以对操作系统有许多定义。让我们来看几个:
操作系统是支持计算机基本功能(例如调度任务和控制外围设备)的低级软件。
我们可以将此定义细化为:
操作系统是一个程序,它充当用户和计算机硬件之间的接口,并控制各种程序的执行。
以下是维基百科中的另一个定义:
操作系统 (OS) 是管理计算机硬件、软件资源并为计算机程序提供常用服务的系统软件。
架构
我们可以绘制操作系统的通用架构图,如下所示
操作系统世代
操作系统多年来一直在发展。我们可以根据不同世代对这种演变进行分类,如下所述:
第0代
第0代是指计算发展时期,查尔斯·巴贝奇发明了分析机,后来约翰·阿塔纳索夫在1940年创造了一台计算机。这一时期的硬件组件技术是电子真空管。这一代计算机没有操作系统,计算机程序是用机器语言编写的。这一代计算机效率低下,依赖于操作员个人的不同能力。
第一代 (1951-1956)
第一代标志着商业计算的开始,包括1951年初埃克特和莫奇利的UNIVAC I的推出,以及稍后IBM 701的推出。
系统操作是在专家操作员的帮助下进行的,一段时间内没有操作系统的帮助,尽管程序开始用更高级的过程导向语言编写,因此操作员的例程扩展了。后来开发了单程序操作系统,它消除了运行作业中的一些人工干预,并为程序员提供了许多理想的功能。这些系统仍在人工操作员的控制下运行,人工操作员遵循许多步骤来执行程序。约翰·W·巴科斯在1956年开发了FORTRAN之类的编程语言。
第二代 (1956-1964)
第二代计算机硬件最显著的特点是晶体管取代真空管作为硬件组件技术。IBM 计算机开发了第一个操作系统 GMOS。GMOS 基于单流批处理系统,因为它将所有类似的作业收集到组或批次中,然后使用穿孔卡将作业提交给操作系统以完成机器中的所有作业。完成一项作业后,操作系统会清除,然后继续读取并启动穿孔卡中的下一项作业。
研究人员开始在他们的计算服务中试验多道程序设计和多处理,这被称为分时系统。一个值得注意的例子是兼容分时系统 (CTSS),它是在 20 世纪 60 年代初在麻省理工学院开发的。
第三代 (1964-1979)
1964年4月,IBM发布其System/360系列计算机,正式开启了第三代。硬件技术开始使用集成电路 (IC),这在速度和经济性方面都产生了显著优势。
随着多道程序设计的引入和广泛采用,操作系统开发继续进行。充分利用计算机数据通道 I/O 功能的想法继续发展。
另一个导致第四代个人电脑发展的进步是带有DEC PDP-1的新型小型机的开发。第三代确实是计算机硬件和伴随的操作系统发展的激动人心的时代。
第四代 (1979 – 至今)
第四代的特点是个人电脑和工作站的出现。第三代的组件技术被超大规模集成电路 (VLSI) 所取代。我们今天使用的许多操作系统,如 Windows、Linux、MacOS 等,都是在第四代开发的。
以下是操作系统的某些重要功能。
- 内存管理
- 处理器管理
- 设备管理
- 文件管理
- 网络管理
- 安全
- 控制系统性能
- 作业会计
- 错误检测辅助
- 其他软件和用户之间的协调
内存管理
内存管理是指主内存或主存的管理。主内存是一个大型字或字节数组,其中每个字或字节都有其自己的地址。
主内存提供 CPU 可以直接访问的快速存储。要执行程序,它必须位于主内存中。操作系统为内存管理执行以下活动:
跟踪主内存,即哪些部分由谁使用,哪些部分未使用。
在多道程序设计中,操作系统决定哪个进程何时以及获得多少内存。
在进程请求时分配内存。
当进程不再需要内存或已被终止时,释放内存。
处理器管理
在多道程序设计环境中,操作系统决定哪个进程何时以及获得多长时间的处理器。此功能称为进程调度。操作系统为处理器管理执行以下活动:
跟踪处理器和进程的状态。负责此任务的程序称为交通控制器。
将处理器 (CPU) 分配给进程。
当不再需要进程时,释放处理器。
设备管理
操作系统通过其相应的驱动程序管理设备通信。它为设备管理执行以下活动:
跟踪所有设备。负责此任务的程序称为I/O控制器。
决定哪个进程何时以及获得多长时间的设备。
以高效的方式分配设备。
释放设备。
文件管理
文件系统通常组织成目录,以便于导航和使用。这些目录可能包含文件和其他目录。
操作系统为文件管理执行以下活动:
跟踪信息、位置、用途、状态等。这些集体设施通常称为文件系统。
决定谁获得资源。
分配资源。
释放资源。
其他重要活动
以下是操作系统执行的一些重要活动:
安全 - 通过密码和其他类似技术,防止未经授权访问程序和数据。
控制系统性能 - 记录服务请求与系统响应之间的延迟。
作业会计 - 跟踪各种作业和用户使用的時間和资源。
错误检测辅助 - 生成转储、跟踪、错误消息和其他调试和错误检测辅助工具。
其他软件和用户之间的协调 - 协调和分配编译器、解释器、汇编程序和其他软件给计算机系统的各种用户。