1.4 操作系统的前世今生
操作系统并不是伴随着计算机的诞生出现的,而是在计算机的使用过程中,逐渐形成和完善起来的。计算机和操作系统的发展历程如图1-15所示。
图1-15 计算机和操作系统的发展历程
大家会觉得很奇怪,没有操作系统,人们怎么使用计算机呢?
事实上,自1946年第一台计算机诞生及以后的十年,用户和计算机硬件是直接交互的,这就是手工操作方式。你肯定会觉得,那个时候的人太厉害了,人工能够与计算机硬件交互,那得对计算机系统多么熟悉啊!
手工操作程序员使用计算机,采用One by One的方式,程序和数据用打孔纸带或卡片装入计算机,计算完毕,由打印机输出计算结果。这个时代的特点是计算机的CPU处理能力利用不充分,毕竟用户独占CPU,彼时计算资源不是瓶颈,用户的使用操作是瓶颈,计算机的计算资源大量闲置的同时,很多用户却为了使用计算机,排队等了很久,如图1-16所示。
图1-16 手工操作硬件时代
随着计算机运算速度的不断提升,手工操作的慢速度和计算机运算的快速度之间形成了巨大的反差。人们越来越无法容忍手工操作方式的低资源利用率,希望实现计算机运算任务(作业)的自动加载和完成。这样,批处理操作系统就应运而生了。
批处理操作系统需要在计算机上安装一个系统软件。在这个系统软件的控制下,计算机可以自动地、成批地处理多个用户的运算任务,完成多个用户交办的作业(程序、数据和命令)。但是,CPU在一个时间段内只为一个作业服务。
随后的多道程序操作系统,允许多个程序同时进入计算机内存,在CPU中交替运行。多个程序可以共享系统中的各种硬、软件资源。当用户请求暂停一个程序后,CPU会立即转去运行另一个程序。
20世纪80年代以后,随着大规模集成电路工艺的飞速发展,计算机运算速度的大幅提升,迎来了个人计算机的时代。操作系统在此基础上,有了大的发展,如个人计算机操作系统、网络操作系统、嵌入式操作系统等。
个人计算机操作系统,由于是个人专用,功能会简单得多,但对提供方便友好的用户接口和丰富功能的文件系统要求非常高。Windows是提供图形用户界面的典范,很好地匹配了个人计算机操作系统的需求。
网络操作系统是将地理上分散的、具有自治功能的多个计算机系统互联起来,实现信息交换、资源共享、多点协作的计算机操作系统。相对于个人计算机操作系统,网络操作系统增加了网络管理模块,其中包括通信、资源共享、系统安全和各种网络应用服务。Windows的服务器版本、Linux等操作系统,都可以作为网络操作系统来配置使用。
随着智能硬件及物联网的发展,计算机操作系统一定会适应这些方向的发展,涌现出更多的、匹配各种场景的新版本。