首页 > 编程知识 正文

分时和实时操作系统,实时操作系统和分时操作系统的特点

时间:2023-05-03 21:30:35 阅读:259523 作者:632

参考
博文01:https://blog.csdn.net/qq_37653144/article/details/77857376
博文02:https://blog.csdn.net/m0_37765662/article/details/83018523

博文01
计算机操作系统从20世纪50年代中期第二代计算机的单道批处理系统到20世纪60年代中期第三代计算机的多道批处理系统(IBM公司研发的OS/360系统是第一个能运行多道程序的批处理系统),都主要致力于提高资源利用率和系统吞吐量。但人们对人机交互的需求却一直未能得到有效解决,因此一种新型OS——分时OS就应运而生了,紧接着实时OS也在工业、军事等领域的需求下也随之诞生。现在我们所使用的操作系统都属于这两类。

一、分时操作系统(Time-sharing Operating System) 1、简介

在多道批处理系统的时代,用户对新系统的需求具体表现在两个方面。一是人机交互,每当程序员写好一个程序时,都需要上机调试,由于程序难免存在错误,因此用户希望能像早期使用计算机一样独占全机资源并对它进行直接控制,以便能方便地对程序中的错误进行修改,意即人机交互。二是共享主机,在20世纪60年代计算机还十分昂贵,一台计算机要同时供多个用户共享使用,每个用户在共享一台计算机时都希望能像独占时一样,不仅可以随时与计算机进行交互,而且还不会感觉到其他用户的存在。
分时系统在这样的背景下诞生,因此分时系统是指在一台主机上连接了多个终端并由此组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。分时操作系统最典型的例子就是UNIX和Linux,它们可以同时连接多个终端,并且每隔一段时间重新扫描进程,重新分配进程的优先级,动态分配系统资源。

2、原理

分时操作系统将系统处理机时间与内存空间按一定的时间间隔(划分时间片),采用轮转运行方式轮流地切换给各终端用户的程序使用(例如规定每个作业每次只能运行一个时间片)。由于时间间隔很短,每个用户就感觉像独占全机一样,这样就解决了主机共享问题。而对于人机交互,为实现用户键入命令后能对自己的作业及其运行及时控制或修改,各个用户的作业都必须留在内存中(作业在磁盘上是不能运行的),用时间片进行切换管理。分时操作系统的特点是可有效增加资源的使用率,支持人机交互与资源共享。例如UNIX系统就采用了剥夺式动态优先的CPU调度以支持分时操作。

简而言之,分时操作系统的核心原理在于将作业直接放入内存,并引入了时间片的概念,采用轮转运行的方式,规定每个作业每次只能运行一个时间片,然后就暂停该作业并立即调度下一个作业运行。在不长的时间内使所有的作业都执行一个时间片的时间,便可以使每个用户都能及时地与自己的作业进行交互,从而使用户的请求得到及时响应。这样就解决了在分时系统中最重要的及时接收、及时处理问题。

3、特征

与其前辈批处理系统相比,分时系统有如下几个特点:

(1)多路性:系统允许将多台终端同时连接到一台主机上,并按分时原则为每个终端分配系统资源,提高资源利用率,降低使用费用。

(2)独立性:各终端之间相互独立,互不干扰,每个用户都感觉像一人独占主机一样。

(3)及时性:用户的请求能在很短的时间内就得到响应。

(4)交互性:用户可通过终端与系统进行人机对话,例如请求多方面的服务。

二、实时操作系统(Real Time Operating System) 简介

在某些领域(如军事、工业、多媒体等)要求系统能够实时响应并安全可靠,实时操作系统在这样的需求下诞生。因此实时操作系统是指是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。
实时操作系统的处理机制与分时操作系统在底层原理上相同,但实时操作系统有其独特的要求,例如在规定时间内完成特定功能等。实时操作系统有为特定应用设计的也有通用的,很多通用的系统,例如IBM的OS/390、微软的Windows NT等,都有实时系统的特征。因此即使一个操作系统不是严格意义上的实时系统,它们也能解决一部分实时应用问题,故不必过于纠结。

实时任务

实时操作系统必须能在一定时间限制内解决实时任务,这些任务通常与某个外部设备有关,能反应或控制相应的外部设备,具有一定紧迫性。实时任务从不同角度有着不同的分类:

按任务执行时是否呈现周期性变化可将实时任务分为周期性实时任务和非周期性实时任务。对于周期性实时任务,外部设备周期性地发出激励信号给计算机,要求它按照指定周期循环之星,以便周期性地控制某外部设备。对于非周期性实时任务,外部设备所发出的激励信号并无明显的周期性,但都必须联系着一个截止时间,这个截止时间可分为开始截止时间和完成截止时间。
按对截止时间的要求来划分,可将实时任务分为硬实时任务(Hard Real-time Task)和软实时任务(Soft Real-time Task)。硬实时任务是指系统必须满足任务对截止时间的要求,否则将会出现错误,带来难以预测的后果(工业和武器控制系统常用)。软实时任务对截止时间的要求不那么严格,即使偶尔出现错过截止时间,对系统影响也不会太大(信息查询系统和多媒体系统等常用)。

三、分时系统与实时系统比较

1、多路性:两者都具有多路性。软实时与分时系统中的多路性表现为系统按分时原则为多个任务终端用户服务;硬实时则指系统周期性地对多路现场信息进行采集以及对多个对象或多个执行机构进行控制。

2、独立性:两者都具有独立性。每个终端用户在向分时系统提出服务请求时,是彼此独立的操作,互不干扰;而在实时控制系统中信息的采集和对对象的控制,也彼此互不干扰。

3、及时性:实时信息系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级、百毫秒级直至毫秒级,甚至有的要低于100微秒。

**4、交互性:**实时信息处理系统具有交互性,但这里人与系统的交互,仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样能向终端用户提供数据处理服务、资源共享等服务。

**5、可靠性:**分时系统要求系统可靠,相比之下,实时系统则要求系统高度可靠。因为任何差错都可能带来巨大的经济损失甚至无法预料的灾难性后果。因此,在实时系统中,采取了多级容错措施来保证系统的安全及数据的安全。

博文02:

1. 什么是实时操作系统?

实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。
其特点是及时响应和高可靠性。实时系统又分为硬实时系统和软实时系统,硬实时系统要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。

2. 什么是分时操作系统?

使一台计算机同时为几个、几十个甚至几百个用户服务的一种操作系统。把计算机与许多终端用户连接起来,分时操作系统将系统处理机时间与内存空间按一定的时间间隔,轮流地切换给各终端用户的程序使用(时间片的概念)。由于时间间隔很短,每个用户的感觉就像他独占计算机一样。

实时操作系统需要满足哪些特征?

多任务:由于真实世界的事件的异步性,能够运行许多并发进程或任务是很重要的。多任务提供了一个较好的对真实世界的匹配,因为它允许对应于许多外部事件的多线程执行。系统内核分配CPU给这些任务来获得并发性。

抢占调度:真实世界的事件具有继承的优先级,在分配CPU的时候要注意到这些优先级。基于优先级的抢占调度,任务都被指定了优先级,在能够执行的任务(没有被挂起或正在等待资源)中,优先级最高的任务被分配CPU资源。换句话说,当一个高优先级的任务变为可执行态,它会立即抢占当前正在运行的较低优先级的任务。

任务间的通讯与同步:在一个实时系统中,可能有许多任务作为一个应用的一部分执行。系统必须提供这些任务间的快速且功能强大的通信机制。内核也要提供为了有效地共享不可抢占的资源或临界区所需的同步机制。

任务与中断之间的通信:尽管真实世界的事件通常作为中断方式到来,但为了提供有效的排队、优先化和减少中断延时,我们通常希望在任务级处理相应的工作。所以需要在任务级和中断级之间存在通信。

分时操作系统需要满足哪些特征?

交互性:用户与系统进行人机对话。
多路性:多用户同时在各自终端上使用同一CPU。
独立性:用户可彼此独立操作,互不干扰,互不混淆。
及时性:用户在短时间内可得到系统的及时回答。

实时操作系统主要应用领域

主要应用于过程控制、数据采集、通信、多媒体信息处理等对时间敏感的场合。例如:机器人的运动控制、无人驾驶等。

分时操作系统主要应用领域

现在流行的PC(个人电脑),服务器都是采用这种运行模式,即把CPU的运行分成若干时间片分别处理不同的运算请求。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。