目录

分时系统:独占的终结与共享的黎明

计算机的洪荒时代,那些由真空管和继电器构成的庞然大物是孤独的帝王。它们居住在恒温的“宫殿”中,一次只接见一位“朝臣”——一个程序。这种被称为批处理 (Batch Processing) 的工作方式,意味着用户必须将任务制成穿孔卡片,毕恭毕敬地呈上,然后经历数小时甚至数天的漫长等待,才能得到一份打印出来的结果。人与机器的交流,被隔绝在一种毫无互动、效率低下的仪式里。分时系统,正是为了打破这种隔绝而诞生的革命,它是一个天才般的构想:让一台计算机同时为许多人服务,并让每个人都感觉自己是这台机器的唯一主人。

黎明之前:巨兽的孤独时代

想象一下20世纪50年代的景象:一间巨大的房间里,一台价值数百万美元的计算机正在嗡嗡作响。它的算力,在今天看来或许还不如一块智能手表,但在当时,它代表了人类智慧的巅峰。然而,这位“巅峰王者”却异常孤僻。 在批处理模式下,计算机像一条流水线,严格按照顺序处理任务。你的程序要计算一个复杂的物理模型?请排队。她的程序要分析一组统计数据?也请排队。等待期间,你无法修改一个微小的错误,无法看到中间结果,更无法与程序进行任何“对话”。如果你的程序因为一个标点符号的错误而崩溃,那么对不起,请回到队伍的末尾,明天再来。 这种工作模式的根源在于一个简单的经济学事实:计算机的时间比人的时间昂贵得多。为了让昂贵的中央处理器(CPU)不被闲置,系统被设计为尽可能地填满它的工作日程。至于另一端的人类用户体验如何,那并不是优先考虑的事项。这是一种以机器为中心,而非以人为中心的哲学,它极大地束缚了创造力的释放。

思想的火花:共享的愿景

变革的种子,总是在对现状不满的土壤中萌芽。20世纪50年代末,一群富有远见的思想家开始挑战“一台机器,一个用户”的铁律。他们注意到,计算机在处理输入和输出(例如,读取磁带或打印结果)时,其核心的CPU实际上是空闲的。这些以纳秒计算的空闲碎片,对人类来说是无法感知的瞬间,但对计算机而言,却是巨大的时间浪费。 一个大胆的想法诞生了:我们能否利用这些CPU的空闲时间,去为另一个用户服务? 1959年,麻省理工学院(MIT)的约翰·麦卡锡(John McCarthy)在一份备忘录中首次正式提出了“Time-Sharing”(分时)的概念。他的核心洞见在于:只要计算机切换任务的速度足够快,它就可以轮流为多个用户服务极短的时间片(Time Slice),例如百分之几秒。由于人类的反应速度远比计算机慢,在每个用户看来,计算机似乎都在全神贯注地为自己工作,从而创造出一种独享计算机的幻觉。 这个想法彻底颠覆了当时的计算机使用哲学。它宣告,人的时间同样宝贵,人与机器之间即时、持续的“对话”是可能的,也是必要的。计算机,即将从一个冰冷的计算工具,转变为一个可以交互的思维伙伴。

伟大的实验:从CTSS到Multics

思想的火花需要实验的燃料才能燎原。一场伟大的技术探索就此拉开序幕。

CTSS:第一个回响

1961年,MIT在费尔南多·柯巴托(Fernando Corbató)的领导下,成功开发了CTSS(Compatible Time-Sharing System,意为“兼容分时系统”)。它被安装在一台IBM 7094大型机上,是世界上第一个真正成功并产生深远影响的分时操作系统。 CTSS的诞生,如同在沉寂的山谷中发出的第一声呐喊,并得到了回响。程序员们第一次可以坐在电传打字机前,远程连接到主机,实时地编写、修改、编译和调试自己的代码。一个困扰他们数天的错误,现在可能在几分钟内就被发现并修正。据说,历史上第一封电子邮件也是在CTSS系统上发送的,这标志着人与人通过计算机网络的连接,迈出了历史性的第一步。

Multics:宏伟的理想国

CTSS的成功极大地鼓舞了人们。MIT、通用电气和贝尔实验室决定联手打造一个更宏伟的系统——Multics(Multiplexed Information and Computing Service)。 Multics的野心是空前的。它的目标不仅仅是让几十个用户共享一台计算机,而是要建立一个“计算电厂”,像供电和供水网络一样,为成千上万的用户提供稳定、可靠、安全的计算服务。为此,Multics引入了大量至今仍在使用的革命性概念:

然而,Multics如同一座设计得过于完美的空中楼阁,它试图一次性解决所有问题,导致其开发过程变得异常复杂、进度严重滞后且耗资巨大。1969年,贝尔实验室由于无法忍受其“大而无当”,选择退出该项目。Multics最终虽然得以运行,但从未实现其最初设想的商业辉煌。它成了一个悲壮的理想主义者,一个伟大的“失败者”。

意外的遗产:UNIX的诞生与个人计算机的崛起

历史的奇妙之处在于,伟大的失败往往会孕育出更伟大的成功。 从Multics项目中撤出的贝尔实验室研究员肯·汤普森(Ken Thompson)和丹尼斯·里奇(Dennis Ritchie),对Multics的哲学思想依然充满热情,但对其繁复的设计心有余悸。为了能在一台闲置的、性能孱弱的PDP-7微型计算机上继续玩他们自己编写的太空游戏,他们决定动手创造一个属于自己的、小而美的分时系统。 这个无心插柳的产物,被戏谑地命名为UNIX,以致敬(并调侃)其前身Multics。与Multics的宏大复杂相反,UNIX遵循着“KISS”(Keep It Simple, Stupid)原则,将一切都抽象为文件,并提供一组简单而强大的命令行工具,让它们可以像乐高积木一样组合起来完成复杂任务。 UNIX的简洁、优雅和可移植性使其获得了巨大的成功,并催生了包括Linux、macOS在内的无数现代操作系统。它将分时系统的精髓——交互性、多任务、多用户——提炼出来,并以一种更务实、更灵活的方式发扬光大。 与此同时,分时系统所开创的“以人为本”的交互模式,也为另一场革命埋下了伏笔。它让人们习惯了与计算机进行即时“对话”。当半导体技术的发展使得计算机的成本急剧下降时,那份“独享计算机”的幻觉,终于有机会变成了现实。个人计算机 (Personal Computer) 的浪潮席卷而来,分时系统最初的梦想——让每个人都能自由地使用计算资源——以一种始料未及的方式得以实现。

永恒的回响:云端的幽灵

进入21世纪,当我们手握智能手机,或者在浏览器中打开一个在线文档时,我们似乎又回到了“一人一机”的时代。但实际上,分时系统的幽灵从未远去,它只是换了一副更现代的面孔,化身在我们数字生活的每一个角落。 你所使用的智能手机操作系统,正是一个微型的分时系统,它在后台的多个应用程序之间飞速切换,让你能一边听音乐,一边回信息。而当你访问网站、使用网盘、观看流媒体视频时,你正是在与远端数据中心里强大的服务器进行交互。这些服务器,正是通过虚拟化技术运行着无数个“分时”实例,同时为全球数以百万计的用户提供服务。 这,就是云计算 (Cloud Computing) 的本质。它几乎完美地实现了半个世纪前Multics那个宏伟的“计算电厂”之梦。分时系统,这个诞生于大型机时代的古老智慧,在经历了一次轮回之后,最终在云端获得了永生。它所开创的共享与交互精神,已经成为整个数字文明赖以运转的基石。