当前位置: 首页 > news >正文

【计算机操作系统】第一章操作系统引论

一、操作系统是什么

1.1 操作系统的定义

操作系统(Operating System,简称OS)是直接控制和管理计算机硬件、软件资源,合理地对各类作业进行调度,以方便用户使用的程序集合。简单来说,操作系统就像是计算机硬件和用户之间的“桥梁”,它负责管理计算机系统中的各种资源,让用户能够方便地使用计算机。

1.2 操作系统的目标

目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常计算机硬件上配置的OS,其目标有以下几点:
有效性:从系统管理人员的角度来看,操作系统需要高效地管理和分配硬件、软件资源,合理地组织计算机的工作流程,以提高系统的整体性能。
方便性:从用户的角度来看,操作系统需要提供良好的、一致的用户接口,让用户能够方便地使用计算机,即使硬件系统的类型和数量有所不同。
可扩充性:从系统开发人员的角度来看,操作系统需要具备良好的可扩充性。这意味着它能够适应硬件的类型和规模的变化,支持操作系统本身功能的扩展,以及多个系统之间的资源共享和互操作。
开放性:操作系统需要支持多种硬件平台和软件应用,具有良好的兼容性和互操作性。

1.3 操作系统的作用

操作系统主要有以下两个作用:
作为用户和计算机间的接口:操作系统处于用户与计算机硬件系统之间,用户通过操作系统来使用计算机系统。
作为计算机系统资源的管理者:操作系统负责管理计算机系统中的各种资源,包括处理机管理、存储器管理、设备管理和文件管理。此外,操作系统还实现了对计算机资源的抽象,让用户能够更方便地使用这些资源。

1.4 推动操作系统发展的主要动力

操作系统的发展主要受到以下四个因素的推动:
不断提高计算机资源的利用率:随着计算机技术的发展,计算机资源越来越丰富,如何高效地利用这些资源成为操作系统的重要任务。
方便用户:操作系统需要不断改进用户接口和功能,让用户能够更方便地使用计算机。
元器件的不断更新换代:硬件技术的不断进步,如CPU的位宽度增加、快速外存的出现等,为操作系统的发展提供了新的可能性。
计算机体系结构的不断发展:从单处理机到多处理机,再到网络,计算机体系结构的不断发展也推动了操作系统的发展。

二、操作系统的发展历程

2.1 无OS时代:手工操作

在计算机发展的早期阶段,操作系统还没有出现,人们采用手工操作的方式使用计算机。那时候,用户既是程序员,又是操作员,他们需要直接与计算机硬件打交道。编程语言主要是机器语言,输入输出设备通常是纸带或卡片。计算机的工作特点是用户独占全机,CPU利用率很低,因为每次计算前都需要手工装入纸带或卡片,计算完成后又要手工卸取。这种工作方式效率低下,但当时计算机资源非常昂贵,主要用于集中计算。

2.2 有OS时代:批处理系统

随着计算机处理能力的提高,手工操作的低效率问题逐渐凸显。为了解决这一问题,人们引入了批处理系统。批处理系统分为单道批处理系统和多道批处理系统。
单道批处理系统:用户使用系统提供的作业控制语言(JCL)来描述自己对作业运行的控制意图,并将这些控制信息连同作业一起提交给计算机。由操作系统去控制、调度各作业的运行并输出结果。单道批处理系统的处理过程是先把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(Monitor),在它的控制下,使这批作业能一个接一个地连续处理。单道批处理系统的缺点是系统中的资源得不到充分的利用,因为内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便处于等待状态,必须在其I/O完成后才继续运行。又因I/O设备的低速性,更使CPU的利用率显著降低。
多道批处理系统:在多道批处理系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。多道批处理系统是一种十分有效,但又非常复杂的系统,为使系统中多道程序间能协调地运行,系统必须解决处理机争用问题、内存分配和保护问题、I/O设备分配问题、文件的组织和管理问题、作业管理问题以及用户与系统的接口问题等一系列问题。

2.3 分时系统

分时系统是一种允许多个用户同时使用同一台计算机的操作系统。它通过时间片轮转的方式,让每个用户感觉像是独占主机。分时系统的基本特征包括多路性、独立性、及时性和交互性。分时系统的目标是对用户的请求及时响应,尽量提高系统资源的利用率。

2.4 实时系统

实时系统是一种对时间要求严格的操作系统,它要求系统能够对随机发生的外部事件作出及时响应并在规定的时间内对其进行处理。实时系统分为实时控制系统和实时信息系统。实时控制系统要求计算机能尽快处理测量系统测得的数据,以尽快实施响应控制;实时信息系统要求计算机能对终端设备发来的服务请求及时予以正确的回答。实时任务按任务执行时是否呈现周期性来划分,分为周期性实时任务和非周期性实时任务。实时任务按对截止时间的要求来划分,分为硬实时任务和软实时任务。实时系统的基本特征包括快速的响应时间、有限的交互能力和高可靠性。

2.5 现代操作系统

现代操作系统通常具有分时、实时和批处理功能,又称作通用操作系统。它可适用于计算、事务处理等多种领域,能运行在多种硬件平台上,如UNIX系统、Windows NT等。现代操作系统的特点是通用化、小型化。

三、操作系统的四大管理功能

3.1 处理机管理

处理机管理是操作系统的重要功能之一,它的主要任务是完成处理机资源的分配调度。处理机调度的单位可以是进程或线程。具体来说,处理机管理包括以下几个方面:
进程控制:操作系统可以创建、撤销、挂起进程,还可以改变进程的运行优先级。
进程调度:操作系统负责作业和进程的运行切换,以充分利用处理机资源,提高系统性能。
进程同步:在并发进程中,操作系统需要协调它们之间的推进步骤,以实现资源共享。
进程通信:操作系统允许进程之间传送数据,以协调进程间的协作。

3.2 存储管理

存储管理的目标是提高存储器的利用率,方便用户使用,并提供足够的存储空间,同时方便进程并发运行。存储管理的主要任务包括:
存储分配与回收:操作系统负责分配和回收存储空间,确保存储资源的有效利用。
存储保护:操作系统需要保证进程之间互不干扰,防止非法访问和信息泄露。
地址映射:操作系统将进程的逻辑地址映射到内存的物理地址,以实现进程的正确运行。
内存扩充:通过覆盖、交换和虚拟存储等技术,操作系统可以提高内存利用率,扩大进程的内存空间。

3.3 设备管理

设备管理的目标是方便设备使用,提高CPU与I/O设备的利用率。设备管理的主要任务包括:
设备操作:操作系统通过设备驱动程序完成对设备的操作,提供统一的I/O设备接口,使应用程序独立于物理设备。
设备分配与回收:操作系统负责在多用户之间共享I/O设备资源,确保设备的合理分配和回收。
虚拟设备:操作系统允许设备由多个进程共享,每个进程感觉像是独占设备。
缓冲区管理:操作系统通过缓冲区管理技术,匹配CPU和外设的速度,提高两者的利用率。

3.4 文件管理

文件管理主要解决文件资源的存储、共享、保密和保护问题。文件管理的主要任务包括:
文件存储空间管理:操作系统负责管理文件的存储空间,提高空间利用率和读写性能。
目录管理:操作系统通过目录管理,解决信息检索问题,方便用户查找文件。
文件的读写管理和存取控制:操作系统负责管理文件的读写操作,并提供存取控制机制,确保信息安全。

四、操作系统的结构设计

4.1 无结构操作系统

无结构操作系统是由众多的过程直接构成,各过程之间可相互调用,但操作系统内部不存在任何结构,所以这种操作系统是无结构的,又称为整体系统结构。这种操作系统的缺点是既庞大又杂乱,缺乏清晰的程序结构;程序错误多,调试难、阅读理解难、维护难。

4.2 模块化操作系统结构

模块化操作系统结构是采用“模块化程序设计”技术,按其功能划分为若干个独立的模块,管理相应的功能,同时规定好各模块之间的接口,以实现其交互,对较大模块又可按子功能进一步细分下去。这种操作系统的优点是提高了设计的正确性、可理解性,容易扩充和维护,加速了开发过程。缺点是模块及接口划分较困难,从功能上划分模块,未区别共享资源和独占资源,由于管理的差异,使操作系统结构变得不够清晰。

4.3 分层式操作系统结构

分层式操作系统结构是对模块化结构的一种改进,它按分层式结构设计的基本原则,将操作系统划分为若干个层次,每一层都只能使用其底层所提供的功能和服务,从硬件开始,在其上面一层一层地自底向上增添相应功能的软件。这种操作系统的优点是每一步设计都建立在可靠的基础上,结构更清晰,调试和验证更容易,正确性更高。缺点是系统效率降低了。

4.4 微内核的OS结构

微内核的OS结构是在操作系统内核中只留下一些最基本的功能,而将其他服务分离出去,由工作在用户态下的进程来实现,形成所谓“客户/服务器”模式。客户进程可通过内核向服务器进程发送请求,以获取操作系统的服务。这种操作系统的优点是小而精练,系统的灵活性和可扩充性好,系统的可靠性高,适用于分布式系统。常见的微内核操作系统包括Windows 2000/XP、UNIX、嵌入式操作系统等。

五、总结与复习建议

通过本文的详细解读,相信你对操作系统有了更深入的理解。操作系统不仅是计算机系统的核心,也是我们日常使用计算机的基础。它的发展历程反映了计算机技术的进步,而它的四大管理功能则是我们理解和使用操作系统的关键。

相关文章:

  • 优选算法系列(4.前缀和 _下) k
  • Deepseek API+Python 测试用例一键生成与导出 V1.0.4 (接口文档生成接口测试用例保姆级教程)
  • OkHttp 的证书设置
  • QOpenGLWidget视频画面上绘制矩形框
  • Redis简单介绍和安装
  • 版本控制工具
  • 树莓派超全系列文档--(8)RaspberryOS实用程序
  • 【C#.NET】VS2022创建Web API项目
  • Spark大数据分析与实战笔记(第四章 Spark SQL结构化数据文件处理-02)
  • D3802ACF:高精度 PSR LED 恒流驱动电路详解
  • L2-3 龙龙送外卖(天梯赛)
  • mysql5.7无法启动报错处理无日志
  • 吴恩达机器学习笔记复盘(十二)逻辑回归的梯度下降和拟合问题
  • 《基于python游戏设计与实现》开题报告
  • 如何用JavaScript验证身份证号码?
  • vue 使用v-model实现父子组件传值——子父组件同步更新
  • 数据库基础知识点(系列三)
  • 创新NDT解决方案:XARION激光超声系统助力航空航天材料的高效监测
  • xml文件
  • Codeforces Round 1013 (Div. 3)(A-F)
  • 浙江“胖都来”开业多位明星祝贺,“胖东来”称已取证投诉,律师:碰瓷侵权
  • 上海:以税务支持鼓励探索更多的创新,助力企业出海
  • 全文丨中华人民共和国民营经济促进法
  • 铁路上海站今日预计发送旅客65.8万人次,同比增长超16%
  • 节前A股持续震荡,“五一”假期持股还是持币过节胜率更高?
  • 游客曝九寨沟打网约车被出租车围堵,景区回应:当地无合规网约车