您好,欢迎访问三七文档
第11章多媒体操作系统多媒体的应用需求逐渐从单机延伸到互联网,从非实时方式发展到实时方式,因而操作系统也逐渐沿着适合这种应用的方向发展。在不同的应用环境、应用方式下需要有相应的多媒体操作系统的支持,因而多媒体操作系统是多媒体技术中的中流砥柱。在多媒体应用迅速火热的局面下,无论是桌面式、嵌入式、还是分布式的多媒体应用中,多媒体操作系统技术面临的新的核心问题是围绕着多流、同步、时限、以及基于QoS的管理,要研究如何采用适当的策略和算法去调度、去满足多媒体应用任务。本章将针对这些概念介绍多媒体应用对操作系统的要求、多媒体操作系统应具备的核心功能、和支持连续媒体应用的有关策略。11.1操作系统概述操作系统是计算机软硬件资源的控制管理中心,它主要任务是合理组织和调用软硬件资源,以完成用户提交的作业。随着市场需求的不断提高以及计算机、网络、多媒体、通讯技术的不断发展,操作系统经历了一系列开发和变革。11.1.1操作系统的分类操作系统有很多种类,并具有不同的特征。从不同的角度可以将操作系统分成不同的类型。根据计算机体系结构可分为单机、多机、网络和分布式操作系统。根据操作系统工作的角度可分为单用户、批处理、分时和实时系统。由于多媒体的引入,因而产生了多媒体操作系统和多媒体网络操作系统。从操作系统工作的角度来看,单用户、批处理、分时操作系统的工作重点都是围绕着系统资源的利用率而展开的。在单用户操作系统下,用户必须初始化所有硬件设备,并将操作系统的核心部分常驻留在系统的主存储器中,为运行应用程序提供装入、解释和控制。为了减少用户作业建立和打断的时间,于是提出批处理系统的概念,由计算机按顺序自动批处理指令。批处理系统虽然提高了资源的利用率,但作业处理的平均周转时间较长,且用户交互能力较弱等。分时系统具有较好的交互式功能,同时可为多用户和多任务提供服务,它将CPU的运行时间分割成微小时间片,依次轮流为各个程序提供服务,并能及时响应用户的输入请求。但是分时时间片的长短以及主机系统的配置将系统的性能有较大的影响,对时间响应上有特殊要求的应用是难以满足的。实时系统是因为多媒体应用在时间的特殊要求而形成的。由于在多媒体系统中大量地使用了基于时间的连续性媒体,而连续性媒体数据的组织和表现严格地受限于所规定的时间,这就需要有能够提供及时服务的实时系统。所以,实时系统首先要满足时间的响应,然后再考虑支持多个用户和多个任务。目前,实时系统显得相当重要,下面我们将对进一步了解实时系统的系统特征。11.1.2实时系统的特征实时系统是指系统能及时响应输入,并能按需提供无延迟的输出处理。实时系统可以分为实时控制系统和实时信息系统。实时控制系统可用于生产过程中的自动控制,也可以用于监测制导性控制。实时信息系统通常指实时信息处理系统。实时系统继承了分时系统的交互性和多用户功能,并在满足任务时限的基础完成任务,它主要包括如下特征:1.及时与时限性。主要反映在对用户的响应时间要求上,以满足控制对象所能接受的时间延迟,它可以是秒级、毫秒或微秒级。2.交互性。根据不同的应用对象和应用要求,实时系统能提供便捷的交互方式。3.安全可靠性。实时控制系统必须考虑系统的容错机制,避免导致灾难性后果。实时信息系统,应向用户提供及时、有效、完整和可用的信息。4.多路性。实时控制系统应能提供多用户的服务。并具有现场多路采集、处理和控制执行机构的功能。实时系统的调度包括CPU、资源、输入和输出、通信和任务各个方面,正确把握基于时间上的调度问题就是实时系统所要解决的关键问题。由于实时任务具有时限性、抢占性、周期性、优先性、重要性、组合性等多种特征,因而在创建任务调度的算法时必须考虑这些因素。在任务与时限的关系中,涉及的概念包括:任务时限、任务执行时间、任务时限余量(任务执行时间与任务时限之差)、紧任务时限、松任务时限、强实时(超时将无可用性)、弱实时(超时将影响可用性)、关键任务时限(超时将引起严重后果)等。其中任务时限是指执行某任务时的可用时间,也称为时限粒度。任务时限和任务时限余量之间存在着一定的关系,较小的任务时限必定导致较小的时限余量。但较大的任务时限也可能导致较小的时限余量,因为任务的执行时间取决于具体算法的复杂程度。也就是说,不同复杂的算法决定了任务的时限余量。根据以上这些特性,实时调度中广泛采用了基于优先级的抢占调度算法。该算法可以使正在执行的任务出让资源,去满足一个高优先级的任务的执行。同时对具有动态优先级的任务,可以根据任务的某些因素在运行时调整进程的优先权。常用的算法还有截止期最早最优先(EarliestDeadlineFirst,EDF),最关键任务优先算法(MostCriticalFirst,MCF)、关键性和时限优先算法(CriticalnessandDeadlineFirst,CDF)、最小余量优先算法(MostLaxityFirst,MLF)、最低松弛度优先(LLF)算法等。当任务的某些特征模糊不确定或不可预测时,一些常用的调度算法不再适用。可以使用不精确调度算法(ImpreciseComputing,IC)或模糊反馈控制实时调度算法。实时系统的性能好坏主要从以下几个方面衡量:(1)响应时间主要包括中断响应时间、关联转换时间和任务等待时间中断响应时间包括中断延迟时间,其大小取决于总线速度、中断屏蔽的时间长短、中断负载的大小、中断优先级等多种因素。任务等待时间是指从发送消息的时刻到任务收到消息变为准备并投入运行之间的时间,包括消息处理时间、核心不可抢占延迟、调度时间和关联转换时间,反映了系统的开销情况。关联转换时间即上下文切换时间,它取决与任务关联的数目、任务调度算法、任务现场信息量的大小、CPU速度等诸多因素。(2)吞吐率实时系统的吞吐率取决于系统的各个部位,不同的部位具有不同的吞吐率概念,如CPU、系统总线、外围设备等。提高吞吐率的目的是减少任务执行时间,增加任务余量。这样留给系统更多的时间,实现松时间约束,对相同的工作可以更好的完成;或在相同的时间内完成更多的任务。(3)可靠性因为在一些重要的实时任务中,任何不可靠因素和故障都会引起难以预测的灾难性后果。11.1.3多媒体操作系统的类型多媒体操作系统支持多媒体的实时应用,其首要任务是调度一切可利用的资源完成实时控制任务,其次要提高计算机系统的使用效率。多媒体实时任务主要包括:任务管理、任务间同步和通信、存储器优化管理、实时时钟服务、中断管理服务。实时操作系统具有规模小,中断被屏蔽的时间很短,中断处理时间短,任务切换很快等特点。根据不同的使用规模,多媒体操作系统可分为单机、互联式和分布式单机多媒体操作系统单机多媒体操作系统是指支持非网络环境中的MPC的操作系统,例如,Windows95以后的操作系统就属于多媒体操作系统。WindowsXP操作系统更是从系统级上支持多媒体功能,其DVD支持技术、内置的DirectX多媒体驱动、与操作系统无缝连接的光盘刻录与擦写技术等,给用户提供了更加丰富多彩的交互式多媒体环境。互联式多媒体操作系统与单机操作系统不同的是,互联式多媒体操作系统面对的是多台计算机或多个局域网系统,它要支持多机之间的资源共享、用户操作协调和与多机操作的交互。网络操作系统可以构架于不同的操作系统之上,也就是说它网络中所连接的计算机可以被装有不同的操作系统,通过网络协议实现网络资源的统一配置,在较大的范围内构成互联式网络操作系统。在互联式网络操作系统中,对网络资源的访问需要指明资源位置与资源类型。对于有实时要求的的任务,多媒体操作系统不仅要根据用户的请求准确地完成信息的发送、传递和接收的全过程,而且要保证实时性多媒体信息处理的各种要求。分布式多媒体操作系统分布式操作系统是指有大量的计算机通过网络被连接在一起,可以获得极高的运算能力及广泛的数据共享。分布式操作系统有如下特征:1、统一性。它是一个统一的操作系统。2、共享性。分布式系统中所有的资源是可共享的。3、透明性。透明性是指用户并没有感觉到分布式系统上有多台计算机在运行。4、独立性。处于分布式系统的多个主机在物理上是独立的。5、低成本。分布式系统中的计算机不需要具备特别高的性能。6、可靠性。由于有多个独立的CPU系统,因此个别CPU的故障高不影响系统性能。与网络操作系统的主要区别是,分布式操作系统比较强调单一性,使用同一种操作系统,即使用同一种管理与访问方式。11.2多媒体操作系统的核心和重要功能多媒体操作系统不仅要管理软、硬件资源,还需要满足多媒体数据处理的需要,提供一种高效、实时的运行环境。多媒体处理中要解决的主要问题包括中断等待、实时调度、时限和恢复管理处理和基于QoS的资源管理。为了解决这些主要的问题,必须开发新的多媒体操作系统的体系结构。11.2.1操作系统的体系结构传统的操作系统的工作是基于多个进程下的资源管理、设备控制等。这些系统并不具有对时间的复杂控制和维护特定的机制,也没有提供系统短暂过载时进行保护和管理的模式。系统常常无法应对一些不可预见的延迟和抖动,也不能保证对时间有严格要求的多媒体信息的同步,所以并不适合于连续媒体应用的实时服务。传统的操作系统主要在以下几个方面有所欠缺:(1)缺乏操作系统的实时支持这种实时支持应能够提供较好的时间驱动计算、最佳的时间调度策略、而不仅仅只具有时间分配的能力。(2)为了适合于实时多媒体的应用,有必要开发设计新的多媒体操作系统。目前,多媒体操作系统有两种开发模式,即扩充传统操作系统和重新设计的微内核体系结构。无论采用哪种方式,多媒体操作系统都必须至少提供满足多媒体信息处理要求的CPU管理、存储器管理、I/O管理和文件系统管理功能。分层式操作系统传统的操作系统是分层式的,如图11-1(左)所示,它的内核由若干层组成,内核集中提供各种功能,整个内核显得非常庞大。多媒体的应用需要系统支持请求、预定资源和同步处理,也就是要对内核进行适当的修改使得能提供可预测的性能。例如,SUN公司为了提供适当的多媒体资源管理,开发了一种时间驱动资源管理TDRM(TimeDrivenResourceManagement)机制,就是允许一个应用向系统提出资源请求的机制。应用的资源请求可包括应用所需的资源、质量、最后期限、优先级等参数,而系统只是按照申请尽可能地分配可用资源,并可告知必要的信息。图11-1分层内核(左)和微内核(右)微内核(micro-kernel)操作系统是新结构下的操作系统,它保留传统操作系统界面,采用微内核为核心,为模块化扩展提供基础。微内核的基本原理是,只有最基本的操作系统功能才能放在内核中。不是最基本的服务和应用程序在微内核之上构造,并在用户模式下执行。微内核中只包含线程和任务管理、IPC管理、存储对象管理、虚拟内存服务、I/O管理和中断处理等内容。而在微内核外去完成文件管理、进程管理、设备驱动程序、虚存管理程序、窗口系统和安全服务。用户可以通过微内核接口函数提出服务申请,微内核的服务器便可向用户提供内核的功能服务。内核体系结构如图11-1(右)所示,微内核结构用一个水平分层的结构代替了传统的纵向分层的结构。在微内核外部的操作系统部件被当作服务器进程实现。微内核体系结构的优点一致接口:微内核设计为进程请求提供一致接口。可扩展性:允许增加新的服务以及在同一个功能区域中提供多个服务。灵活性:与可扩展性相关,不仅可以在操作系统中增加新功能,还可以删除现有的功能。可移植性:所有或大部分处理器专用代码都在微内核中,移植时只需很少的变化。可靠性:少量的应用程序编程接口,为内核外部的操作系统服务产生高质量的代码。分布系统支持:微内核有助于分布式系统支持,包括分布式操作系统控制的集群。对面向对象操作系统的支持:微内核结构也适用面向对象操作系统环境。微内核上的操作系统的服务模式在微内核体系结构下,可以根据连续媒体的特殊需要安排上层操作系统,服务模式的实现有以下几种方法:库例程服务模式:上层操作系统作为实用库例程,当用户程序调用库例程时,由库例程去调用微内核功能。实用库可以提供包括中断处理、计时器、消息登录、内存分配、线缓冲
本文标题:多媒体操作系统
链接地址:https://www.777doc.com/doc-1473898 .html