美文网首页
第1章 操作系统概述-1

第1章 操作系统概述-1

作者: 盆栽木只 | 来源:发表于2018-09-24 14:37 被阅读0次

    为什么学习操作系统?

    1.加深对使用的OS的理解,有利于深入编程:用户为了开发应用程序必须与操作系统打交道; 

    2.编程时借鉴操作系统的设计思想和算法: 操作系统中所用的许多概念和技巧可以推广应用到其他领域;比如对JAVA虚拟机的理解

    3.设计操作系统或者修改现有的系统: 嵌入式系统(Embedded OS);

    课程定位

    地位:计算机相关各专业的一门重要的专业技术基础课程

    涉及的内容:现代操作系统变化巨大,其层次,内涵,及在应用领域、技术领域、服务领域等涉及内容很多,没有必要也不可能完全学完,高等学校《操作系统》课程还是局限于其基本原理部分。

    现代操作系统不断变化

    应用在变:从核心与外围都有变化,信息处理多元、海量、高速、高性能,要求越来越高——可配置,可拆卸,可剪裁,可替换

    软件结构在变:重用,安装、配置;工具箱、服务组件、虚拟件等支持

    硬件结构和平台在变:单核,多核,重核

    OS结构、功能、性能、组件、算法、机制、接口、界面、安全等都在变化,但核心问题和核心机制没有变。

    操作系统逐渐走下神坛

    从监控程序→OS→组件式OS

    从OS→OS工具箱→OS平台

    从计算机→智能信息终端(手机、pda,嵌入式平台等)

    OS原有的理论、机制与技术已经广泛应用于数据库、信息系统、移动系统…

    人们对OS的理解逐渐深入,基于OS的编程和应用开发蓬勃开展

    操作系统家族庞大

    高端系统(大型机、阵列机…)

    专用系统(实时、分布…)

    桌面系统(个人通用OS)

    智能终端系统(个人移动终端、手机…)

    嵌入系统(智能设备、仪器…)

    操作系统课程教学的层次

    研究生                                  本科生                                专科生

    • OS结构                              • OS原理                            • OS原理适度

    • OS新发展                          • OS资源管理                    • OS平台操作

    • OS新技术                          • OS系统服务                    • OS系统服务

    • OS组件设计                      • 基于OS编程                    • OS编程适度

    • OS系统设计                      • 主流OS案例                    • 主流OS应用

    操作系统课程教学的层次(IEEE,ACM)

    科学型                            工程型                            应用型

    • 并发、并行                  • 并发、并行                 • 原理适度

    • 结构、模型                  • 原理、技术                 • 操作、实践

    • 算法、分析                  • 资源利用管理             • OS系统维护

    • 设计、替换                  • 服务调用编程             • OS编程适度

    • 改进、优化                  • 主流OS案例               • 主流OS应用

    • 新结构新技术              • OS安全防护               • OS安全保护

    1.1 操作系统的目标、作用和模型

    1.  OS的目标

    方便性:用户无需了解底层硬件,无需用0、1机器语言操作。(可以说不用手,用工具,进入石器时代了。)

    有效性:CPU、I/O、存储等的管理专门、合理地被组织管理起来,提高资源的利用率。

    可扩充性:扩充应用软件;适应硬件和体系结构发展,扩充底层管理功能模块等。

    开放性:网络环境,遵循开放互联标准。

    2.  OS的作用

    1) 作为用户与计算机硬件系统之间的接口

    * 达成了方便性的目标。*

    用户通过OS来使用计算机系统。或者说,用户在OS帮助下,能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。

    提供三种供用户操作OS的方式,如下图:

    2)OS作为计算机系统资源的管理者

    * 达成有效性目标 *

                     处理器       ——》                         处理器管理                Os

                存储器      ——》                         存储器管理                 主要

                I/O设备     ——》                         I/O设备管理                管理

                     信息(数据和程序)     ——》       文件管理                      功能

    3)OS用作扩充机器

    * 系统软件以及更上层的用户应用软件在操作系统虚拟机上运行:计算机成为功能更强大的多层虚拟机。

    * 操作系统附加在裸机上第一层,对裸机的首次扩充: “虚拟机”

    * 最低层:

    物理“裸机”

    目标                                                      作用

    方便性:                                                1) 作为用户与计算机硬件系统之间的接口

    有效性:                                                2)OS作为计算机系统资源的管理者

    可扩充性:                                            3)OS用作扩充机器

    开放性:

    1.2 操作系统的发展过程

    推动OS萌芽、发展、变化的主要动力:

    1.方便用户

    2.提高计算机资源利用率

    3.硬件器件不断更新换代:8bit ->16,32

    4.计算机体系结构的不断发展:单CPU,多CPU,网络

    1. 人工操作方式

    1946-50年代中:电子管时代,计算机速度慢,无操作系统,计算机资源昂贵;

    工作方式:

                        用户:既是程序员又是操作员;用户是计算机专业人员;

                        编程语言:机器语言;

                        输入输出:纸带或卡片;

    计算机工作特点:

                        用户独占全机,资源利用率极低;

                        CPU等待用户,计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或         卡片;CPU利用率低;

    主要矛盾:

                        人机矛盾----人工操作严重降低了计算机资源的利用率

    提高效率的途径:

                        脱机输入/输出技术。

    2. 脱机输入/输出(Off-Line I/O)方式:

    等待人工操作纸带输入数据的不是CPU,而是外围机,一定程度上解决人机矛盾。

    脱机I/O方式的主要优点:

                        减少了CPU的空闲时间

                        提高I/O速度

    脱机I/O方式的主要缺点:

                        系统开销大!

    3. 单道批处理系统(Simple Batch Processing System)

    作业成批、脱机方式输入到磁带或磁盘上

    进一步减少脱机I/O中装卸磁带等耗时操作

    系统监督程序(Monitor)控制作业自动过渡,一个接一个的连续处理。

    特征:

                单道性

                顺序性

                自动性

    优点:

                一定程度解决人机矛盾,CPU与I/O速度矛盾;

                提高了资源利用率和系统吞吐量;

                算做OS的前身,但还不是现在所理解的OS;

    4. 多道批处理系统

    * 一个重要思想诞生:多道程序设计 *

    用户作业、外存上排队,称为“后备队列”;

    作业调度程序、按一定的算法、从后备队列中选择若干作业 调入内存

    入内存的作业、共享CPU和系统中的各种资源,自动批量处理。


    “多道”程序有什么好处?

    CPU利用率提高:减少了CPU等待时间(正在运行的程序若因为I/O操作暂停,可调度其他程序执行,不必装卸。)

    内存利用率提高:容量尽可能多的被利用

    多种I/O设备并发被使用,也提高了利用率

    总体->系统吞吐量增加(虽然CPU总是串行的,但一段时间内被运行的作业数相对要多)

    1)多道批处理系统的特征:

    多道性

    无序性

                    作业入内存由算法决定,不按提交顺序。入内存后顺序执行。

    调度性

                    包括作业调度、进程调度

    2)多道批处理系统的优缺点:

    优点

                资源利用率高:CPU和内存利用率较高;

                系统吞吐量大:单位时间内完成的工作总量大;

    缺点:

                平均周转时间长:短作业的周转时间显著增长;

                无交互能力:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改;

    3)多道批处理系统解决的五大问题:

    a.处理机管理问题

    b.内存管理问题

    c.I/O设备管理问题

    d.文件管理问题

    e.作业管理问题

    操作系统是:一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度(多道),方便用户使用的程序的集合。

    5.分时系统(time-sharing system)

    1)分时系统的产生

    用户的新需求是主要动力:

    A.人—机交互

    B.共享主机

    C.便于用户上机

    2)分时系统实现中的关键问题

    交互:当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,再将结果返回给用户。

    共享:强调即使有多个用户同时通过自己的键盘键入命令,系统也应能全部地及时接收并处理。

                (1)及时接收:多路卡,缓冲区

                (2)及时处理:终端请求作业直接进入内存,设置时间片

    3)分时系统的实现方法

    改变批处理系统的运行方式:

                    多个用户连接主机

                    请求的作业发送到主机后,直接进入主机内存以快速响应

                    系统采用时间片轮转方式处理服务请求

    响应时间RT(response time)≈时间片×用户数

    时间片:就是分配给进程运行的一段时间(time slice)。

    4)分时系统的特征:

                    多路、独立、及时、交互

    多路性:多个用户同时使用一台计算机,共享CPU和其他资源,充分利用系统资源。

    宏观上:是多个人同时使用一个CPU

    微观上:多个人在不同时刻轮流使用CPU

    独立性:用户感觉不到计算机为其他人服务,各用户独立操作,互不干扰。

    及时性:通过时间片技术和轮转调度算法保证及时响应。

    交互性:系统及时响应用户的请求,显著提高调试和修改程序的效率:缩短了周转时间。

    6. 实时系统(Real-Time System)

    实时系统是指:系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

    实时系统的引入

                    (1)实时控制

                                如:火箭发射随时停止,实时根据采集数据进行处理

                    (2)实时信息处理

                                订票系统等,短时间内为用户做出正确回答

    实时系统的实现

                    系统必修有能够保证其承担的多个任务在规定的时间完成,调度和能力是关键。

                                (1)按任务执行时是否呈现周期性来划分

                                            周期性实时任务

                                            非周期性实时任务——截止时间

                                (2)根据对截止时间的要求来划分

                                            硬实时任务

                                            软实时任务

    操作系统分类

    (1)单用户OS:一次只能支持一个用户作业的运行。

    (2)批处理OS:用户作业以成批的方式提交给计算机。

    (3)分时OS:允许多个用户同时与计算机系统交互。

    (4)实时OS:能够及时响应随机发生的外部事件,并对外部事件做出快速处理,对来自外部的请求和信号在限定的时间范围内做出响应。实时性和可靠性是其重要特点。

    (5)网络OS:面向网络上多用户,提供基本的网络操作所需要的功能,如文件共享,内存管理和进程任务调度等。

    (6)分布式OS:是最高级的操作系统,管理整个系统(包括网络)中的所有资源,负责所有资源的分配和调度、任务的划分和具体安排、信息传递和控制。

    (7)嵌入式OS:与应用紧密结合、专用性很强、可裁剪。

    分布式操作系统的主要特点是各节点的自治性;资源共享的透明性;各节点间的协同性;系统的坚定性。

    分布式OS与网络OS的比较

    1、分布性(控制和处理都是分布的)

                    分布式OS不是集中地驻留在某一个站点,而是较均匀地分布在系统的各个站点上,所以OS的处理和控制功能是分布式的。

                    计算机网络也具有分布处理功能,但网络的控制功能,是集中在某个主机或网络服务器中,或说控制方式是集中式的。处理是分布的。

    2、并行性

                    分布式处理系统,具有多个处理单元,分布式OS的任务分配程序可将多个任务分配到多个处理单元上,使这些任务并行执行,从而加速了任务的执行。

                    计算机网络中,每个用户的一个或多个任务通常都在自己(本地)的计算机上处理,所以,在网络OS中无任务分配功能。

    3、透明性

                    分布式OS能很好地隐藏系统内部的实现细节,如:对象的物理位置,并发控制,系统故障等,对用户都是透明的。

                    当用户访问某个文件时,只需提供文件名而无须知道它是驻留在哪个站点上,即可对它进行访问,即物理位置是透明的。

                    网络OS,也有一定的透明性,但主要是指在操作实现上的透明性。如:当用户要访问服务器上的文件时,只需发出相应的文件存取命令,而无须了解对该文件的存取是如何实现的。

    4、共享性

                    分布式系统中,分布在各个站点上的软、硬件资源,可供全系统中的所有用户共享,并能以透明方式对它们进行访问。

                    网络OS也能提供资源共享,但所共享的资源大多是设置在主机或网络服务器中,而在其它机器上的资源,只能由使用该机的用户独占。

    5、健壮性

                    分布式系统的处理和控制功能是分布的,任何站上的故障,都不会给系统造成太大的影响,并且,当某设备出现故障时,可通过容错技术实现系统重构,使系统能正常运行,所以,系统具有健壮性,即具有较好的可用性和可靠性。

                    网络OS中,其控制功能大多集中在主机或服务器中,使系统具有潜在的不可靠性,此外,系统的重构功能也较弱。

    相关文章

      网友评论

          本文标题:第1章 操作系统概述-1

          本文链接:https://www.haomeiwen.com/subject/ppncoftx.html