Unix,一款多任务多用户操作系统,最早由AT&T公司员工及合作伙伴在贝尔实验室于1969年开发完成。Unix的衍生及克隆版本包括Berkeley Unix、Minix、Linux、AIX、A/UX、HP-UX以及Solaris。苹果的Mac OS X则基于Berkeley Software Distribution(简称BSD)Unix。在本文中,我们将一同回忆奋战于早期Unix计算机领域第一线的先驱者们以及他们贡献出的丰功伟绩。

Ken Thompson

Ken Thompson是Unix系统的联合开发者之一。他从1966年开始就在贝尔实验室工作,直到2000年12月才正式退休。Thompson曾编写过B编程语言,也就是如今如雷贯耳的C语言的前身。他后来还利用C语言重新编写出整套Unix系统,并再次改写其中的部分内容以容纳Doug Mcllroy的多种pipe。

Dennis Ritchie

Dennis Ritchie是Unix操作系统的联合开发者之一,同时也是C编程语言的创造者。他最初效力于贝尔实验室,并在AT&T供职之后最终进入独立出来所组建的朗讯技术公司,并在那里试过了从1967年到2007年退休之间这段漫长的时光。他的学术论著包括《Unix程序员上手指南》(1971年)以及与Brian Kernighan合著的《C编程语言》(1978年)。

Joe Ossanna

Joe Ossanna自上世纪五十年代中期一直到1977年逝世期间,一直在贝尔实验室工作。他所参与的团队在贝尔实验室与麻省理工学院中设计出了Multics——第一款分时操作系统。其后,他还曾与Thompson、Richie以及Rudd Canaday共同编写Unics,也就是后来Unix的前身。他的杰出功绩在于编写了一套nroff版本(被称为troff),用于管理该团队的新型图形系统CAT照排机。在1973年,他利用PDP-11汇编语言编写出第一款Unix troff,并在两年之后利用C语言进行了重新编写。

Douglas McIlroy

Douglas McIlroy自1958年到他退休的1997年之间一直效力于贝尔实验室。除了在开发Unix pipe/pipeline方面声名卓著之外,他还开发出一系列Unix工具,并且扮演着组件及产品线软件工程团队的幕后推手角色。他曾撰写并编辑过多本论著与期刊,他的作品在计算机行业中取得过无数奖项。目前他正在达特茅斯学院计算机科学系担任兼职教授。

Peter Neumann

Peter Neumann在1960年到1970年这十年间效力于贝尔实验室。而在1965年到1969年之间,他则参与到Multics团队当中。当时他的职责是打理文件系统设计并与Thompson、Ossanna以及Stan Dunten一道进行Multics的输入-输出设计工作。他曾发表过一系列广为人知的文章及论文,其中包括论著《计算机相关风险》。此外,他还是《风险文摘》修订人与《ACM软件工程指南》的创始编辑。Neumann自1971年开始就担任SRI的首席科学家,多年来他一直被视为计算机安全领域的权威专家,并撰有题为《可证明安全的操作系统(简称PSOS)》的报告(论文)。

Rudd Canaday

Rudd Canaday自1964年到1989年期间,一直效力于贝尔实验室,并成为Unix操作系统的第三位联合开发者。他的功劳簿中包含着多项创举,例如创造第一台数据库服务器、第一款涵盖整个企业的Unix应用程序、第一款内网Unix应用程序(效力于AT&T公司时)、第一套自动化测试系统、第一个自动化白页/目录程序以及第一套(或者是首批之一)三维文件系统。Canaday目前作为RHC软件公司联合创始人兼工程总监继续为计算事业奋斗不息。

Brian Kernighan

Brian Kernighan曾与Thompson、Richie及其他前面提到的技术大师一道在贝尔实验室的开发团队中共同打造Unix。他曾撰写过六本论著,其中包括与Dennis Ritchie共同撰写的《C编程语言》,并在工作坚持遵循“所见即所得”这一名言。Kernighan目前在普林斯顿大学计算机科学系担任教授。

Michael Lesk

Michael Lesk在1970年到1984年期间效力于贝尔实验室的Unix开发团队。他的贡献包括文字处理工具以及与编译和网络相关的工具。此外,他还编写了便携式I/O库并参与到C语言开发团队中来。他后来离开了贝尔实验室开始管理贝尔通信研究所的计算机科学研究小组。从1998年到2002年期间,他曾担任美国国家科学基金会信息与智能系统部门负责人。目前,Lesk在罗格斯大学担任图书馆与信息科学教授。

Bill Joy

1986年,Bill Joy获得了由计算设备协会(简称ACM)颁发的Grace Murray Hopper大奖,用于鼓励他在Berkeley Unix操作系统(简称BSD或者Berkeley Software Distribution Unix),一款内置了TCP/IP网络的开源操作系统,合作设计中做出的卓越贡献。Joy的BSD Unix中还包含C shell,一种虚拟化编辑器,以及用于为程序提供超越设备物理内存配置的虚拟内存支持功能。Joy于1982年与合作者共同创建了Sun公司,目前担任Kleiner、Perkins、Caufield&Byers等风险投资企业的合作伙伴。

David K​​orn

David K​​orn于1976年加入贝尔实验室,其最卓越的贡献在于开发出Korn shell(一款在用户与操作系统之间进行联络的程序),这款程序以其出色的适用性甚至遮蔽了C与Bourne shell的光芒。他的另一大贡献则是UWIN,一款专为Win32系统打造的X/Open库。当然,这还只是他成就中的一小部分。他曾撰写过两本论著、数十篇论文以及一系列关于Unix及其发展历程的文件资料。Korn目前仍然效力于AT&T实验室。

Rob Pike

Rob Pike在1980年到2002年期间效力于贝尔实验室,并一直作为Unix团队的成员。此外,他还为Plan 9(即Inferno操作系统)做出过卓越贡献,并与同事共同为Unix开发出Blit图形界面。再有,他曾经编写出多款文字编辑器,例如sam与acme,并与Brian Kernighan合作撰写名为《编程实践与Unix编程环境》一书。目前Pike以工程师身份效力于谷歌公司。

Andrew Tanenbaum

Andrew Tanenbaum曾于1979年到1982年期间效力于贝尔实验室。他于1987年编写过名为Minix的Unix克隆版本,旨在为IBM PC环境提供实践操作系统。Minix(也就是迷你Unix的别称)随后在全世界引发热潮。Tanenbaum曾获得过二十多项权威大奖、研究员头衔以及名誉博士学位,并撰写过多本正式出版的教科书。Tanenbaum目前在荷兰阿姆斯特丹自由大学担任计算机科学教授一职。

Rick Rashid

1979年,Rick Rashid被聘为卡内基梅隆大学的计算机科学教授。他的主要贡献包括首个Mach内核版本,即用于取代BSD Unix“微型内核”的备选方案。Mach是首个64位Unix版本,而且与BSD一道成为开放软件基金会OSF/1操作系统的基础。OSF/1最终成为DEC/康柏/惠普、NeXTstep以及苹果Mac OS X的系统基础。Rashid目前担任微软公司首席研究官。

Gordon Bell

Gordon Bell并未担任过贝尔实验室的正式员工,但他确实曾与Thompson及Ritchie共同合作过。他在Digital Equipment公司进行了23年的研发工作。他个人的最大成就在于开发出VAX微型计算机,被业界普遍认为是是此类设备中的王者。他同时也成为科学界采纳并接受Unix超级计算机的最大推手,并促成了美国国防部高级研究计划局(简称DARPA)的建立。他创办了美国国家科学基金会的电脑科学与工程部门,同时担任负责人。目前Bell效力于微软公司。

Linus Torvalds

1991年8月,Linus Torvalds公布了他自己开发的Linux操作系统,这款基于Unix的新型系统在一篇Usenet文章中首次亮相。他最初创建的Linux内核是为了运行于一台配备80386处理器的PC机,这台设备采用Minix操作系统、GNU以及C编译器。不过单凭内核还不足支撑起一款操作系统,我们还需要其它组件——具体来说,包括shell、编译器、库以及工具等。这些组件最终于1992年在GNU项目中被开发完成,并遵循通用公共许可进行发布。当所有组件集成完毕之后,Linux终于正式诞生。1996年,Linux迎来了它的官方吉祥物——企鹅,后面的发展故事相信大家已经耳熟能详了。

Unix英雄传:图文细数十五位计算机先驱的更多相关文章

  1. 【历史】- Unix英雄传:图文细数十五位计算机先驱

    Unix,一款多任务多用户操作系统,最早由AT&T公司员工及合作伙伴在贝尔实验室于1969年开发完成.Unix的衍生及克隆版本包括Berkeley Unix.Minix.Linux.AIX.A ...

  2. 细数Qt开发的各种坑(欢迎围观)

    1:Qt的版本多到你数都数不清,多到你开始怀疑人生.从4.6开始到5.8,从MSVC编译器到MINGW编译器,从32位到64位,从Windows到Linux到MAC.MSVC版本还必须安装对应的VS2 ...

  3. 细数 Windows Phone 灭亡的七宗罪(过程很详细,评论很精彩,但主要还是因为太慢了,生态跟不上,太贪了,厂商不愿意推广)

    曾梦想仗剑走天涯,看一看世界的繁华 年少的心有些轻狂,如今你四海为家 曾让你心疼的姑娘,如今已悄然无踪影 犹记得上大学攒钱买了第一台智能手机Lumia 520时,下载的第一首歌曲<曾经的你> ...

  4. 细数iOS上的那些安全防护

    细数iOS上的那些安全防护  龙磊,黑雪,蒸米 @阿里巴巴移动安全 0x00 序 随着苹果对iOS系统多年的研发,iOS上的安全防护机制也是越来越多,越来越复杂.这对于刚接触iOS安全的研究人员来说非 ...

  5. SQL Server 2014 SP2发布下载:数十项更新修复

    微软发布了数据库工具SQL Server 2014 SP2服务包下载,本次更新集合了数十项更新修复,涉及安全和功能性补丁,使用SQL Server 2014的用户应该及时安装该服务包. 文件内容 版本 ...

  6. 细数.NET 中那些ORM框架 —— 谈谈这些天的收获之一

    细数.NET 中那些ORM框架 —— 谈谈这些天的收获之一(转) ADO.NET Entity Framework        ADO.NET Entity Framework 是微软以 ADO.N ...

  7. Google将数十亿行代码储存在单一的源码库

    过去16年,Google使用一个中心化源码控制系统去管理一个日益庞大的单一共享源码库.它的代码库包含了约10亿个文件(有重复文件和分支)和 3500万行注解,86TB数据,900万唯一源文件中含有大约 ...

  8. 迄今最安全的MySQL?细数5.7那些惊艳与鸡肋的新特性(上)【转载】

    转自: DBAplus社群 http://www.toutiao.com/m5762164771/ 迄今最安全的MySQL?细数5.7那些惊艳与鸡肋的新特性(上) - 今日头条(TouTiao.com ...

  9. 细数Python Flask微信公众号开发中遇到的那些坑

    最近两三个月的时间,断断续续边学边做完成了一个微信公众号页面的开发工作.这是一个快递系统,主要功能有用户管理.寄收件地址管理.用户下单,订单管理,订单查询及一些宣传页面等.本文主要细数下开发过程中遇到 ...

随机推荐

  1. 201521123093 java 第十一周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

  2. 201521123112《Java程序设计》第14周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 关系型数据库系统:使用表来存储数据,使用行来区分不同记录. 主键可以唯一确定一条记录. 常见的数据库管理系统有: ...

  3. 201521123011《Java程序设计》第11周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

  4. mybatis-java-依赖注入

    第一种 setXXX形式的注入 我们的所有dao都会继承自定义的BaseDao,因此在BaseDao中完成对所有dao的注入 在DaoUtil中增加方法injectDao()来注入具体的dao pac ...

  5. Linux Ubuntu从零开始部署web环境及项目 -----tomcat+jdk+mysql (二)

    上一篇介绍如何在linux系统下搭建ssh环境 这篇开始将如何搭建web服务器 1,下载文件 在官网下载好 tomcat.jdk.mysql的linux压缩包 后缀名为.tar.gz 并通过xftp上 ...

  6. idea启动tomcat报错:Error during artifact deployment. See server log for details.

    出现这种情况的原因老夫猜想是改变了artifact然而tomcat的配置中的artifact没有重新配就会出现这种报错 打开tomcat配置 删除原来的artifact 新添加artifact 保存 ...

  7. 深入理解String的关键点和方法

    String是Java开发中最最常见的,本篇博客针对String的原理和常用的方法,以及String的在开发中常见问题做一个整体性的概括整理.因为之前对String的特性做过一些分析,所以不在详细描述 ...

  8. 第一个ExtJS练习(添加用户面板)

    1.[准备] 我是在visual studio里面建立了一个asp.net MVC项目,然后导入ExtJS必要的包,然后写的. ExtJS5.1版本下载:https://pan.baidu.com/s ...

  9. java核心卷轴之泛型程序设计

    本文根据<Java核心卷轴>第十二章总结而来,更加详细的内容请查看<Java核心卷轴> 1. 泛型类型只能是引用类型,不可以使用基本数据类型. 2. 类型变量含义 E : 集合 ...

  10. LeetCode 650 - 2 Keys Keyboard

    LeetCode 第650题 Initially on a notepad only one character 'A' is present. You can perform two operati ...