计算机操作系统的发展过程
5个发展过程:
(一)无操作系统的计算机系统(真空管):
分为人工操作方式和脱机输入/输出方式两种方式;
(二)单道批处理系统(晶体管):
其自动处理过程是:首先,由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业。当该作业处理完成时, 又把控制权交还给监督程序,再由监督程序把磁带(盘)上的第二个作业调入内存。计算机系统就这样自动地一个作业一个作
业地进行处理(顺序性),直至磁带(盘)上的所有作业全部完成(自动性)。内存中仅有一道程序运行,即监督程序每次从磁 带上只调入一道程序进入内存运行,当该程序完成或发生异常情况时,才换入其后继程序进入内存运行(单道性),这样便形 成了早期的批处理系统;
(三)多道批处理系统(小规模集成电路):
1、运行过程:
在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”(首先将作业放置在磁盘中,然后 再由磁盘调入道内存中);然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享 CPU 和系统中的各种资源。
2、优缺点:
提高资源利用率:共享资源的充分利用;
提高系统吞吐量:系统在单位时间内完成的总工作量;
平均周转时间长:作业从进入系统开始直至作业完成并推出系统所经历的时间;
无交互能力:用户无法与自己的作业进行交互;
3、多道批处理系统应该解决的问题:
处理机的管理;
内存的管理;
I/O设备的管理;
文件的管理;
作业的管理;
(四)分时操作系统(CTSS compatable time sharing system);
1、分时系统的描述:
是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式 使用计算机, 共享主机中的资源;;
2、分时操作系统的特点:
(1) 可以实现人机交互:
(2)共享主机:
用户在使用机器时应能够像自己独占计算机一样,不仅可以随时与计算机交互,而且应感觉不到其他用户也在用 该计算机
(3)便于用户上机:
用户可以通过终端将作业传送到主机上,并实现对作业的控制;
3、分时操作系统需要解决的问题:
(1)及时接收:为主机配置多路卡,为终端配置缓存器;
(2)及时处理:人机交互的关键,是使用户键入命令后能及时地控制自己作业的运行,或修改自己的作业。为此,各个 用户的作业都必须在内存中,且应能频繁地获得处理机而运行;否则,用户键入的命令将无法作用到自己的作业上。前面 介绍的批处理系统是无法实现人机交互的。因为通常大多数作业都还驻留在外存上,即使是已调入内存的作业,也经常要 经过较长时间的等待后方能运行,因而使用户键入的命令很难及时作用到自己的作业上。
由此可见,为实现人机交互,必须彻底地改变原来批处理系统的运行方式。首先,用户作业不能先进入磁盘,然后再调入 内存。因为作业在磁盘上不能运行,当然用户也无法与机器交互,因此,作业应直接进入内存。其次,不允许一个作业长期 占用处理机,直至它运行结束或出现 I/O 请求后,方才调度其它作业运行。为此,应该规定每个作业只运行一个很短的时 间(例如 0.1 秒钟,通常把这段时间称为时间片),然后便暂停该作业的运行,并立即调度下一个程序运行。如果在不长的时 间(如 3 秒)内能使所有的用户作业都执行一次(一个时间片的时间),便可使每个用户都能及时地与自己的作业交互,从而可 使用户的请求得到及时响应。
4、分时系统的特征:
(1)多路性:即实时性;
(2)独立性:每个用户各占一个终端;
(3)及时性:快速获得响应;
(4)交互性:用户可以通过终端实现与系统的人机对话;
(五)实时系统:
1、实时系统功能:
(1)实现实时控制:用于进行实时控制的系统称为实时系统。
(2)实时信息处理:该系统由一台或多台主机通过通信线路连接到成百上千个远程终端上,计算机接收从远程终端上发 来的服务请求,根据用户提出的请求对信息进行检索和处理,并在很短的时间内为用户做出正确的响应。
2、实时任务:
(1)概念:在实时系统中必然存在着若干个实时任务,这些任务通常与某个(些)外部设备相关,能反应或控制相应的外部 设备,因而带有某种程度的紧迫性
(2)分类:
1)按任务执行时是否呈现周期性进行划分:周期性实时任务和非周期性实时任务;
2)根据对截止时间的要求进行划分:硬实时任务和软实时任务;
3、实时系统与分时系统的特征比较(待续):
(六)微机操作系统:
微机操作系统两种分类方式:
1、微型机的字长:8位、16位、32位、64位;
2、微型机运行方式:
(1)单用户单任务:只允许一个用户上机,且只允许用户程序作为一个任务运行。适用于8位机和16位机。 CP/M、MS-DOS;
(2)单用户多任务:只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了 系统的性能。Windows XP、Windows 9X;
(3)多用户多任务:允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又 可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。Unix、Linux、Windows7;