在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。
在多道批处理系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”。然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。其优缺点为:
(1)资源利用率高;
(2)系统吞吐量大:系统吞吐量是指系统在单位时间内所完成的总工作量。能提高系统吞吐量的主要原因可归纳为:第一,CPU和其它资源保持“忙碌”状态;第二,仅当作业完成时或运行不下去时才进行切换,系统开销小;
(3)平均周转时间长;
(4)无交互能力。
2.分时系统
分时系统与多道批处理系统之间有着截然不同的性能差别,它能很好地将一台计算机提供给多个用户同时使用,提高计算机的利用率。分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。其特征为:
(1)多路性:允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。
(2)独立性:每个用户各占一个终端,彼此独立操作,互不干扰。
(3)及时性:用户的请求能在很短的时间获得响应。
(4)交互性:用户可通过终端与系统进行广泛的人机对话。
3.实时系统
所谓“实时”,是表示“及时”,而实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。其应用需求主要在实时控制和实时信息处理。
分时操作系统特点:
多路性/交互性 /独立性/及时性 实时操作系统特点:
多路性/交互性 /独立性/及时性.可靠性 (与分时系统的特点比较)
(1) 多路性。实时信息处理系统也按分时原则为多个终端用户服务。实时控制系统的多路性则主要表现在系统周期性地对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制。而分时系统中的多路性则与用户情况有关,时多时少。
(2) 独立性。实时信息处理系统中的每个终端用户在向实时系统提出服务请求时,是彼此独立地操作,互不干扰;而实时控制系统中,对信息的采集和对对象的控制也都是彼此互不干扰。
(3) 及时性。实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定的;而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微秒。
(4) 交互性。实时信息处理系统虽然也具有交互性,但这里人与系统的交互仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样能向终端用户提供数据处理和资源共享等服务。
(5) 可靠性。分时系统虽然也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是无法预料的灾难性后果,所以在实时系统中,往往都采取了多级容错措施来保障系统的安全性及数据的安全性。
3 简述信号量S的物理含义
S>0时,S表示可使用的资源数;或表示可使用资源的进程数; S=0时,表示无资源可使用;或表示不允许再进入临界区;
S<0时,S表示等待使用资源的进程个数;或表示等待进入临界区的进程个数; 当S>0时,调用P(S)的进程不会等待;调用V(S)后使用资源数加1或使用可用资源的进程数加1;
当S<0时,调用P(S)的进程必须等待;调用V(S)后释放一个等待使用资源者或释放一个等待进入临界区者。
4 何为死锁?产生死锁的原因和必要条件是什么?
答:所谓死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。产生死锁的原因为竞争资源和进程间推进顺序非法。其必要条件为互斥条件,请求和保持条件,不剥夺条件,环路等待条件。
所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象:死锁。 产生死锁的原因主要是: (1) 因为系统资源不足。 (2) 进程运行推进的顺序不合适。 (3) 资源分配不当等。
如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则 就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。
产生死锁的四个必要条件:
(1) 互斥条件:一个资源每次只能被一个进程使用。
(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。 (3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。 (4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之 一不满足,就不会发生死锁。