操作系统基本概念

操作系统的基本概念

批处理与多道程序设计

多道程序设计:允许多个程序(作业)同时进入一个计算机系统的内存并启动进行交替计算的方法,也就是,计算机中可以同时存放多道程序,他们都处于开始和结束之间。从宏观上来看它们是并行的,多道程序都同时处于运行过程中,但都未运行结束,但是微观上是串行的,轮流占用CPU交替执行,引入多道程序设计技术的根本目的是提高CPU的利用率,充分发挥计算机系统部件的并行性,现代操作系统都采用了多道程序设计技术。

操作系统发展历程

  • 手工操作阶段:用户在计算机上的所有操作都要人工干预,如程序的装入、运行、结果的输出等。

    • 缺点:用户独占全机、人机速度矛盾导致资源利用率低。
  • 批处理阶段:为了缓解人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,产生了批处理系统。引入了脱机输入/输出技术 ,并由 监督程序 负责控制作业的输入、输出。 同时针对批处理紫铜又可分为单道批处理系统和躲到批处理系统。

    • 单道批处理系统:系统对作业的处理是成批进行的,但内存中始终保持一道作业。

    • 特点:

      • 自动性:磁带上的一批作业能自动逐个运行,无需人工干预。
      • 顺序性:作业完成的顺序与进入内存的顺序完成相同,即先调入先执行。
      • 单道性:每一时刻内存中仅有一道程序运行。
    • 优点:缓解了一定程度的人机速度矛盾。

    • 缺点:内存中仅能有一道程序运行,只有该程序运行结束才能调入下一道程序,CPU有大量时间是在空闲等待I/O完成。资源利用率依旧不高。

    • 多道批处理阶段:允许多道程序同时进入内存并允许他们交替地运行。(标志操作系统的正式诞生。)

    • 特点:多道(内存中同时存在多道相互独立的程序)、宏观上并行微观上串行

    • 优点:多道程序并发执行,共享计算机资源。资源利用率大幅度提高。

    • 缺点:用户响应时间长,没有人机交互功能。

  • 分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务。各用户可通过终端与计算机进行交互。

  • 优点:用户请求可被立即响应,解决了人机交互问题。允许多个用户使用同一台计算机,并且用户对计算机相互独立,感受不到别人的存在。

  • 缺点:不能优先处理一些紧急任务。(不具备优先级功能),OS对各个用户/作业完全公平。

  • 特点:同时性(多个用户可以同时或基本同时使用计算机)、交互性独立性(系统中多个用户可以独立的进行操作,互不干扰)、及时性(用户的请求能在很短的时间内被响应)。

  • 实时操作系统:计算机系统收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。实时操作系统的主要特点是及时性和可靠性。

  • 优点:能够优先响应一些紧急任务,某些紧急情况不需要时间片排队。

  • 分类:

    • 硬实时操作系统:必须在严格规定的时间内完成处理。如:导弹控制系统、自动驾驶系统。
    • 软实时操作系统:能接受偶尔违反时间规定。如:火车订票系统。
  • 网络操作系统:最主要的特点是网络中各种资源的共享及各台计算机之间的通信。

  • 分布式操作系统:主要特点是分布性和并行性。系统中各台计算机底为相同,任何工作都可以分布在这些计算机上,由他们并行、协同完成。

  • 个人操作系统:windows、Linux、MacOS等。

操作系统的特征

  • 并发:指两个或多个时间在同一时间间隔内发生(宏观上同时发生,微观上交替发生)。OS的并发性之计算机系统中同时存在多个运行的程序,具有调度和处理多个程序运行的能力。并发性通过分时得以实现。
    注意:要正确区分并发和并行的区别。并发性是指两个或多个事件在同一时间间隔内发生;并行性是指两个或多个事件在同一时刻发生。

  • 共享:指系统中的资源可供内存中多个并发执行的进程共同使用。

    • 分类:

      • 互斥贡享:系统中的资源虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。
      • 同时共享方式:系统中的资源,允许在一个时间段内由多个进程“同时”对他们进行访问。

注意:并发和共享是操作系统两个最基本的特征,两者互为存在条件:①资源共享是以程序的并发为条件的,若系统不允许程序并发执行,则自然不存在资源共享问题;②若系统不能对资源实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行。

  • 虚拟:指把一个物理上的实体变为若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上的对应物是用户感受到的。
    操作的系统的虚拟技术可归纳为:时分复用技术,如处理器的分时共享;空分复用技术,如虚拟存储器。

  • 异步:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进。
    异步性使得操作系统允许在一种随机的环境下,可能导致与事件有关的错误(就像对全局变量访问顺序不当产生的错误)。
    同时需要注意一点虚拟性和异步性也是在拥有了并发性后才产生的。

并发与并行概念辨析

  • 并发是指两个或多个程序在同一时刻发生,并发性是指两个或多个事件在同一时间间隔内发生。
  • 在多道程序环境下,并发性是指在一段时间间隔内,宏观上由多个程序同时运行,但在单处理器系统中每个时刻只能有一道程序执行,因此在微观上这些程序只能分时地交替执行。若在计算机系统中有多个处理器,则这些可以并发执行的程序便可分配到多个处理器上,实现并行执行,即利用多个处理器来处理一个可并发执行的程序。

操作系统的层次结构和功能模块

层次结构:是一种操作系统的组织结构,其提供了一种隔离操作系统各层功能的模型。

  • 目的:力求使模块间调用的无序性变为有序性,减少模块调用的无归性。
  • 分层结构的限制过于严格,几乎没有一种操作系统是用这种方式构造的,但其分层的思想值得借鉴和参考。

操作系统的功能

  • 系统资源的管理者

    • 处理机管理
    • 存储器管理
    • 文件管理
    • 设备管理
  • 向上层提供服务

    • 给普通用户提供的服务:

      • GUI用户图形界面
      • 命令接口:联机命令接口和脱机命令接口(联机命令接口用户说一句系统做一条;脱机命令接口用户说一堆系统做一堆)。
    • 给软件/程序员用的->程序接口即系统调用。

  • 对硬件机器的扩展。在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造为功能更强、使用更方便的机器。

程序的并发执行与顺序执行

程序的顺序执行:在早期无操作系统及单道批处理系统时,程序都是按照顺序进行执行的。先进入内存的先执行,在执行的过程中不能执行其他的程序。程序中的指令也是按照顺序执行,一条指令正在执行时不能开始执行另一条指令。所以程序顺序执行有以下几个特点:

  • 顺序性:处理机的操作,严格按照顺序执行,前一操作还没执行完毕,后继操作则不能继续执行。
  • 封闭性:程序是在封闭的环境下运行的。即程序在运行时独占全机资源,各资源的状态只有本程序才能改变。程序一旦开始运行,其结果不受外界的影响。
  • 可再现性:只要程序的环境和初始条件相同,无论程序执行多少次,执行结果相同。例如一个加法运算,无论执行多少次,相加的结果都不会发生改变。

程序的并发执行:程序的并发执行是指在同一时间间隔内运行多个程序。也就是在一个程序运行结束之前,可以运行其它的程序。对于用户来说,有多个程序在同时向前推进,但是从微观上来看,任意时刻CPU上都只有一个程序在执行。在多道程序系统和分时系统都允许程序并发执行,程序的并发执行有以下几个特点:

  • 间断性:程序在并发执行时,因为要共享资源,但是资源往往都少于正在执行的程序数,所以会存在资源抢占的问题。因而,每个程序在CPU上运行,都是时断时续的。当一个资源被占用时,其他需要该资源的程序不得不暂停,待资源被释放时方可执行。
  • 失去封闭性:程序正在并发执行时,由于它们共享资源或者合作完成同一项任务,系统的状态不再受其中一个程序的控制和改变,所以就失去了封闭性。
  • 不可再现性:因为程序在并发执行时失去了封闭性,所以任何一个程序都有可能对系统的状态进行改变,这也意味着程序执行的结果可能会不相同。例如两个程序同时往一个文件追加内容,在执行数次之后,每个文件所展现出的内容可能各不相同。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值