分时系统提升计算机利用率,带来三方面安全风险

20世纪50年代,虽然计算机的用途变得越来越广泛,但对大部分机构来说,计算机仍然是一种稀缺资源。程序代码的调试、运行、改错都需要时间,在这段时间里,计算机实际上是被一个用户所独占的。据统计,在某个用户独占计算机的一小时中,真正用于计算的平均时间只有几分钟,剩下的五十多分钟内计算机一直处于空闲状态,宝贵的计算资源被白白浪费了。

多人共享一台计算机就成了高效利用稀缺资源的最好方法。例如,在麻省理工学院(Massachusetts Institute of Technology,MIT)多人共用一台计算机的情形非常普遍。老师和学生们带着自己编写的程序,在计算机房的门外排起了长队,从白天一直排到深夜。

计算机用户,一边排着长队,一边摇着头、叹着气,互相之间吐槽着。

为了解决排队等待时间过长的问题,英国计算机科学家克里斯托弗·斯特雷奇[4](Christopher Strachey)于1959年提出了“分时”的概念。斯特雷奇指出,单个用户轮流使用计算机的效率之所以低下,是由人与计算机之间的交互模式造成的。

单个用户输入程序后,一般会停下来等待。如果让多个用户同时使用计算机,就可以在第一个用户停下来等待的时间内,让第二个用户利用这个空当来操作计算机。斯特雷奇的具体设想是,把多个操作控制台连接到一台大型计算机,这样一来,多个用户就可以同时使用计算机了。因为计算机运行程序、反馈结果的速度足够快,所以用户根本意识不到,自己正与其他人共享计算机,会产生一种“独享计算机”的感觉。

图1-4 运行首个分时系统的计算机IBM 7090

根据这一设想,1961年,麻省理工学院在IBM 7090上开发了第一个分时系统,支持3位用户,在系统调度下各自独立运行和编辑程序。运行首个分时系统的计算机IBM 7090如图1-4所示,图中人物是费尔南多·科尔巴托[5]

分时系统显著降低了计算机的使用成本,优化了用户的使用体验,使计算机更加流行。但分时系统的广泛应用,又带来了新的信息安全风险。

在分时系统诞生前,计算机由专人看管,每个用户的使用都有记录可查,几乎没有出现过信息安全方面的问题。在分时系统出现之后,每个用户都可以独立地使用输入、输出终端与计算机同时进行交互。这样一来,计算机上的程序和用户的行为,都变得更复杂了。

分时系统的应用带来了三方面的安全风险:第一,同一台计算机上不同用户发起的多个进程可能会相互干扰,从而导致错误;第二,一个用户存储在计算机上的信息,其他用户也能看见,用户的隐私没有了;第三,有的用户可能会恶意篡改计算机中的信息,甚至输入破坏性的代码,从而造成不可预期的问题。