对于宫敏,在中国的开源界以及技术圈内,大家所熟知的是“中国 Linux 第一人”的称呼,因为他用手提肩背的方式将 Linux 带回了中国,组建了中国第一个自由软件库。然而宫敏则谦虚地表示,他只是中国自由软件和 Linux 的先行者。
宫敏的人生,经历颇丰,感受过截然不同的文化。在一路的成长中,彻底明白了计算机的工作原理,深刻感受到计算机系统安全的重要性。这也塑造了今时今日的宫敏。本期《开源英雄》,让我们一同走进宫敏的程序人生。
1994 年,北京,国内贸易部正在建立 VSAT 信息发布平台,没有互联网,包括主站在内的很多应用都在 Windows 系统上运行,性能很差,问题频发。回国休假的宫敏看后说道:“咱们试试这个”,就拿出自己从芬兰带回的 SLS Linux 发行版系统,装上后,贸易部的同行惊讶道:“这个系统一装,怎么感觉我的 PC 变成工作站了!”高兴得不得了,“这东西哪来的?”“自由软件是怎么回事?”“唉!可惜咱们接触不到这东西呀!”宫敏说:“会接触到的,我能让你们接触到!”
这神奇的系统,是宫敏在赫尔辛基理工大学做研究时发现的。他在构建新的分布式并行计算模型,需要用到 IP 多播协议,可没有操作系统能支持这个 IP 协议,在浏览教育科研网的 FTP 时,突然出现的 Linux Kernel 引起了宫敏的注意,他的分布式并行处理有些东西要在 Kernel 里做,“这玩意儿有点意思!是赫尔辛基大学二年级的学生 Linus Torvalds 写的,自由软件、源代码开放、运行自由修改和散发,太好了!”
可此时,Linux 的状态还做不了什么。
一年后,网上一些人拿出了一个叫 SLS 的 Distrbution(Softlanding Linux System,最早的 Linux 发行版之一),“这大概是 Linux 最早的一个 Distribution”,宫敏拿过来开始安装,下载了内核代码,发现可以支持自己需要的 IP 多播协议,研究工作进一步推进,“加进来经过修改原先的 Bug 之后就好用了,这东西可太好了!”“如果以前做地面站的时候有它,我的系统会做得非常漂亮。”
同时,他认为中国应该很需要这个东西。
一次,宫敏去瑞典计算机科学研究所(SICS,Swedish Institute of Computer Science)做交流,大家聊天时谈到瑞典比芬兰更发达,可为什么 Linux 会出现在芬兰,而没出现在瑞典?其中有个人说:“是因为全世界最大的软件库 Archive 在芬兰,芬兰的学生、老师有机会接触到全世界几乎所有的源代码,所以这里的人思路开阔。”大家也认同这种观点。
宫敏博士在芬兰
宫敏受到启示,“我得把这东西拿到中国,让中国人也能接触到它。”
1997 年,北京,国家信息中心在中国软件协会下成立了“中国国际自由软件分会”,并决定利用国家信息中心的中经网的基础设施建立“中国自由软件库”,推选宫敏担任顾问,提供自由软件资源并进行答疑等支持。也因于此,宫敏自费做了这件事。
宫敏把想法告诉了在芬兰教育科研网 Archive 工作的朋友 Ari Lemmke,他是真正给 Linux 命名的人。Ari 是位理想主义者,在 Otaniemi 科技园 Inopoli 附近开了一个小型的 ISP(X-gateway),为了推广新生事物“因特网”,让园区的公司免费使用,他通过其他的工作挣钱养活这个 ISP,同时负责“芬兰教育科研网(funet)”的 FTP 系统管理工作。
Ari 说复制 Archive 软件库大概需要 80 个 G。1994-1995 年,PC 磁盘容量普遍为 40-45M,完全不够用,起码需要 1 个 G 作为缓冲,而 1 个 G 的 SCSI 硬盘需要 8000 马克(原芬兰货币单位)。
另外,为了在服务器上跑 SCSI 硬盘,还需要买一块 SCSI 卡,因为没这东西就没法玩儿,宫敏连卡带硬盘共花了 1 万马克,花销不菲,“该花的钱要花,自己也得学东西呀!”
用 1 个 G 硬盘传 80 个 G 的资源不可取,宫敏就想到了磁带,买得起的是和数字录音带很像的 DDS(4mm)磁带,宫敏花了几千马克买下 20 盘,又花了 4000 马克买了个二手磁带机,还好,把 SCSI 卡插上就能用。“既然想干这件事就得放开干。”
设备都齐了,宫敏想让 Ari 帮他导资源,由于比较费工夫,Ari 建议宫敏去自己学校弄,学校的网很快。随后,宫敏白天工作,晚上在学校用脚本拽资源,每拽一部分就拷进磁带里,再拽、再拷,他还专门写了脚本,以免出现混乱。
宫敏用几个月的时间拷完所有的东西,带回到中国。
为证明自己这套东西名不虚传,宫敏说:“咱们的自由软件库就用自由软件来搭。”说干就干。宫敏用 Linux 做了软 RAID,把不常用的 PC 机加大内存和磁盘用起来,信息中心的一台 HP 小型机上有磁带机,宫敏要了账号,通过网络使用磁带机,开始存储资源。网用磁带机比较慢,但最终还是把全部资源导进 RAID 里了。
软件库建成了,Linux 操作系统成功引进中国!
可宫敏觉得光放着不行,就在上面建了一个新闻组,大家有问题可以在这里讨论。可很久都没有互动,宫敏就在里面发贴,慢慢地开始有人留言提问,终于活跃起来了。只要有提问,宫敏一定回答,“我可能答得比他问的更深、更多一点。”
用户越来越多,宫敏答不过来,就挑有意义的或新问题来答。对于老问题,会有人告知去找哪个贴子,“我觉得这样很好,大家都在无私地做着贡献。”一有东西就能让大家知道,给大家用;不会用的就一起讨论;都不会的,宫敏就帮忙在“因特网”上真正的新闻组上发起话题讨论,得出结论后完整地告诉大家。
当大量活跃用户出现时,就有越来越多的人说“你做的这些工作很有意义,能不能回国做?在国外做把很多东西留给了洋人,回来为自己的国家做吧。”于是宫敏就回国了。
幼时情节
“每周回家,爸妈都会问我,在幼儿园吃了什么?”
1959 年 11 月,宫敏 3 岁,就和其他科学院的孩子一样,进了端王府幼儿园,星期一送进来,星期六接回家。这里让他体验到了集体生活的纪律性,睡觉、吃饭、出去玩都要大家一起去,不能自作主张。
3 岁的宫敏
一次,幼儿园组织孩子们去四不要(中关村)礼堂演出,演完节目又呼呼地坐着卡车回来,中午“小演员们”美滋滋地吃了顿炸鱼,这对宫敏来说是最好的奖励了。
幼时关于吃的情节,总是耐人寻味。一天晚上,父亲说:“豆腐脑能增加蛋白质,爸爸带你去买豆腐脑,回来大家吃。”宫敏就跟着父亲点着灯,在豆腐脑摊位排起长长的队,买到后拿回家,有辣的和不辣的,宫敏不经意吃到一碗辣的,当时就被辣哭了,“这段印象真可爱!”
宫敏的好奇心也给生活平添了些插曲。一天,心理研究所的人员来幼儿园找孩子做实验,宫敏很好奇,就被叫去了,他们被带进一个小黑屋,头上装上电极,面前一盏红灯,扬声器里提出来各种问题,他们就一一回答。
周末回到家,他把这件趣事告诉家人,家人惊讶道,“拿我们孩子做什么实验?我得去心理所问问。”得知是做儿童心理实验,只是看看脑电图,这才放心。
学霸之家
早就掌握了识字能力的宫敏,一二年级就开始看小说了。
四五岁的时候,宫敏看见父亲在做一个放大器,就跑过去不停地问:“这是什么东西?”
“这个是电阻。”父亲说。
“那是什么东西?”“那个是电容。”
“这是什么东西?”“这是电子管。”
“这是什么东西?”“这是变压器。”……
这种儿时碎片式的学习,宫敏很早就开始了。
父亲经常给宫敏买儿童读物,有些是讲科学人物的图画书,像特斯拉、爱迪生、罗蒙诺索夫和祖冲之等,父亲有时也给他讲一讲,更多是看宫敏的意愿,“反正书在这,你自己看”,看宫敏对哪些方面感兴趣。
很快发现宫敏对无线电、物理更感兴趣,就开始多买这方面的书。宫敏有问题,父亲有时直接解答,有时说:“你看完这本书就知道了”,宫敏就去看书。
1953 年,父亲从武汉大学无线电学专业毕业,是新中国培养的第一批大学生,毕业后分配到了中科院地球物理研究所,由赵九章等几位老先生带他做一些项目。
1958 年,国家进行人造卫星预研,选了十多个科研人员组成研究小组,宫敏的父亲也入选了。
科学院有很多研究所,父亲主要是研制科学仪器,“没有仪器是做不了科学研究的,老爸和他的同事都热衷于做仪器。”
宫敏的母亲毕业于湖南长沙的湘雅医学院,是美国教会创办的高等医学教育机构。母亲很早就教宫敏认识 26 个英文字母,他学拼音时就学得非常轻松,“只是这个字母我们以前都念 A,怎么到这儿念 a(啊)?”。
宫敏的爷爷当年从安徽寒山县出来,去上海念了大学,在宫敏快上小学时患了半身不遂,不能说话,“他以前,会拿着一本线装书摇头晃脑地在那儿唱诗。”奶奶毕业于武汉大学中文系。
忽然没有学上
环境艰苦,“在这样的情况下谁去了都是没学上的。”生活中,宫敏一旦有不明白的,就去找书看或者问父亲。
1963 年宫敏读小学,1966 年全家搬到了陕西 112 大院,在秦岭的一个山沟边,这里是赵九章先生选点建设的三线单位,父亲和几位同事算先遣人员。
刚到这里,实验室的设备、用具还没到位,更难的是星期天只吃两顿饭。家里连饼干和馒头都没有,宫敏就和妹妹跑到食堂,工作人员忙说,现在没饭,要 9 点才有。两人饿得不行。
学校还没开起来,距大院约 5 公里还有个山沟,有个子午钟表厂,这里住的全是上海人,生活比较好,子弟学校已经开张了。宫敏就和伙伴们跑去旁听,跟上海小伙伴们一起玩儿,可还是比较远,不能每天去,“反正这段时间基本是没学上的”。
1967 年政策变了,宫敏跟随家人回到北京搞运动,三年级没怎么念的他,直接在中关村小学上了四年级,直到小学毕业。
“我不记得有太多事情发生,好像也没有什么考试。”回京后住在中关村,小伙伴的家人不是这个所的,就是那个所的,“都是在家听大人讲完,就来学校吹各种科学上的牛。”宫敏一旦有不明白的,就回去找书看或者问父亲。
这个时期也是父亲参与研制任务的关键期。父亲经常夜不归宿,宫敏有些实验做不通,就把实验现场留在桌子上,写一张纸条说明问题和现象,再去睡觉。早晨起来,还是不见父亲的人影,“桌上的纸条变成了老爸的指导意见,按照意见处置后,问题基本就解决了。”
不久,父亲负责研制的部分进入关键阶段。他提出利用国内所能提供的器件,满足总体设计要求创新性的技术方案,最终获得成功,圆满完成了任务。
少年宫敏和父亲
父亲总是把“多普勒效应”、“截止频率”、“参量放大器”、“阶跃二极管”等新名词挂在嘴边,宫敏不明就里。一次,父亲自言自语地说:“国内最好的晶体管的工作频率是 40 兆赫兹,200 兆赫兹怎么搞?”宫敏觉得父亲遇到了大的挑战,后来发现,正是父亲的方案和产品保证了第一颗卫星能被地面“跟得上”。
科学、音乐两不误
“没想到物理世界和音乐世界竟有着如此奇妙的联系!”
宫敏在北大附中表现一直不错,只是大家不轻易聊成绩。学校生活很丰富,他参加了校合唱团,时常排练,由于变声,从男高声部唱到了男生低声部。
一天,邻家来了位会拉小提琴的大哥哥,演奏水平很高,琴生深深打动了宫敏,很快,两人就成了好朋友。宫敏很想学小提琴,就开始跟父亲软磨硬泡,在向父亲承诺“不能三分钟热度,一定练到至少和邻居哥哥一样的水平”后,父亲才答应买个便宜的小提琴。
经过邻居哥哥的介绍,宫敏结识了住在磁器口的小提琴老师,老师同意每周为宫敏做一次专业指导。家里给买了月票,他每周四放了学就去磁器口学琴。
1970 年,宫敏在中关村北区花坛旁演奏小提琴
在老师的指导和自己的苦练下,宫敏的演奏水平提升很快,就这样,在科学之外,宫敏真正掌握了一门乐器演奏技巧。他的阅读范围也扩展到了和声学、音乐史、德奥音乐和俄罗斯音乐等,图书馆的《人民音乐》(过刊)杂志也成了他的阅读对象。有些小伙伴家里有唱片,宫敏就去造访、听音乐,也会把唱片借回家听。
为了高品质地欣赏唱片,宫敏开始研究、设计和制做高保真功放,让他增加了电子电路方面的知识和经验。通过音乐,对一些物理概念有了更加直观的感受,例如频率就是音高,波形就是音色(正弦波圆润乏味,方波刺耳,三角波又是不同的音色,偶次谐波比较悦耳,奇次谐波比较令人烦躁等),这一切变得越来越有意思了。
附中有个校办工厂,除了做广播用的扩音机,还做半导体(碳化硅的发光二极管),工厂是由宿舍楼改建的。后来得知,这些发光二级管是供北大设计建造的大型电子计算机(杨芙清院士的 150 机)使用。
科学院计算所要做晶体管电子计算机,学工要协助制造一大批晶体管,工序就是在一个直径 3-4 毫米的陶瓷片上,用小笔画三条银浆。银浆有很强的化学味道,宫敏很好奇,就弄了一些请叔叔阿姨辨别是什么东西,他们闻过之后说应该是丙酮。用丙酮做溶剂弄出三条墨绿色的线,就是银浆,在烘烤箱中把这些有机物烧掉后,金属银就呈现在上面了。三条绿线烧完以后就变成三条银线。宫敏他们就是画这三条银浆线,其他单位在这个有银薄膜的陶瓷片上造晶体管。
做完以后让大家去参观计算所。在计算所北楼(该楼后来拆除,宫敏刚回国时还在),很大的一间屋子,里面是一台大型计算机,宫敏和同学们就听叔叔阿姨们讲它的工作原理。
内存会有电波发出来,一个收音机在接收。他们通过编程发出来的电波,用收音机收到后就是音乐。
一个大大的控制台吸引了宫敏,上面有许多开关和闪着的灯。他好奇地在里面乱串,串到一个地方,见有一个电动机,带着一个圆筒一样的东西呜呜地转,这时一个叔叔过来说:“你不在那儿听讲,跑到这儿来干什么?”
“我看看计算机里都有什么东西。”宫敏说,“这是什么?”
“这个是磁鼓。”叔叔回答。
“磁鼓是干什么的?”
“哎呀,跟你讲不清楚。”
宫敏回家问父亲,父亲告诉他磁鼓上面有一堆磁头。磁盘是盘状的,磁鼓是鼓状的,它们都是磁面,磁盘和磁鼓都是外存。宫敏不知道这种东西怎么玩,因为一般人买不起。
“说起来还是沾了点光,在那个年代大概没多少孩子能见到这种东西”,“就算是没吃过猪肉,也算见过猪跑了”。
回到 112 大院
很多同龄人初中毕业就去插队了,宫敏在这里倒是学到了很多知识。
临近初中毕业,停办已久的北京高中开始少量招生,一个四五十人的班,大概有两三个学生能上,条件要求比较多。家里评估宫敏上高中的机会基本为零,全家户口都已迁到陕西,在北京升学会有更多障碍,他就跟随家人去了陕西 112 大院。
宫敏没有在意种人生转折,毕竟还是在父母身边,已经熟悉了这种生活。
112 大院在长安县(现西安市长安区),离当时的西安市相对较近,这里一半是工作区,一半是生活区,大家一起吃饭。孩子想去图书馆就跟解放军打个招呼,就能去看书,反正有书看宫敏就高兴。
父亲调研了周边学校,帮宫敏选了韦曲一中(现长安一中)。学校的师资力量很强,民国时建校,1962 年被列为陕西省重点高中之一。
宫敏在韦曲一中的高中毕业照
高中离家很远,宫敏不得不住校,一个星期回家一趟。每个周六宫敏和妹妹吃过午饭,不到 1 点就要从学校往家骑,差不多 5 点到家,中间要翻一两个塬(黄土高原的一种台状地形),很难走。到家后妈妈给做了好饭,帮他们洗脏了的衣服,宫敏和父亲津津有味地谈论科学话题。星期天,宫敏吃完午饭,就骑上自行车回学校。
这里比较偏远,运动没北京那么强烈,反倒成了好事,老师可以正常教课、考试,宫敏在这里学到了很多知识。
很多北京的同学初中毕业都去了海淀苏家坨插队,他们的生活也因此被改变。“初中同学上大学的并不是很多,但北大和科学院的孩子后来升学的比率要高一些。”
另辟蹊径,解决饮水问题
宫敏认为,这种电学的方法在当时是最简单的,任何有机械加工的东西都是复杂的,因为他不具备那种能力。
韦曲一中的大门建在川道上,整个学校是沿着一边的塬一节一节往上建成的,在最高处建有一个水塔。
学校无法正常供应自来水,因为需要有人经常爬上水塔去看,没水了就灌水,有时工人师傅灌着水去忙别的,水就溢出来,又要跑上去关上阀门,使得自来水不能正常供应,这让宫敏很疑惑。
他开始思考:可不可以做一个自动装置,在低于一个水位下限时就能自动开泵灌水,等水位达到规定的上限,就能自动把泵关掉?
具体的实现方案是,在水里放三个电极,一个放在水塔底层,一个放在最低水位,一个放在高线水位,通过晶体管检测水目前处在哪个位置上。“这里面是有一个状态机”,当低于最低水位时,就开泵灌水;当超过第一线水位继续涨到高线水位时,就关泵。
可处在高线和低线之间的时候该怎么办?
正常来说,当从最高水位落下来时,如果处在中间,是不应该管它的,继续用到比最低位置更低时再来开泵,开泵后水位再往上升。
这里的逻辑关系是,当处在中间水位时,怎么才能知道它是从哪个路径过来的?从上面落下来的,还是从下面涨上去的,这需要看到前面的情况。从下面涨上来就不该关泵,从上面落下来就不该开泵,可是没有地方保存这种记忆。
宫敏看到老师和其他人的解决方法,都是用很多个继电器。“继电器可以做逻辑,它是有记忆的。”
宫敏的想法是只利用继电器的固有特性,而不是用多个继电器。继电器有一个特性,就是吸附电流和释放电流(从张开到吸合)有一个差值,例如某个继电器,10 毫安的电流才会让它吸合,那降到 8 毫安它仍然会吸合,只有降到 7 毫安它才会释放。
如果让处在中间位置的电流是 9 毫安,就意味着原来是吸合的,就不会放开;原来是放开的,就不会吸合,能让它保持原状。这个方法就是用了继电器固有的特性,通过调整继电器,让这个差值变得更大,控制晶体管电路提供不同水位点时的不同电流更稳定。
宫敏把原理写清楚后拿给了物理老师,老师没发现任何错误,奇怪为什么没人这样做,就说“那就试试吧”。
校长问宫敏:“你觉得做这件事要花多少钱?”
宫敏回答:“50 块钱应该足够了。”
“批给你 100 块钱”校长说,“咱们有校办工厂,壳子什么的让校办工厂帮你做。”
最后宫敏用了不到 50 块钱,就把这套自动化的水位管理装置做好了,他成了学校的名人,让大家真正喝上了自来水。
在生产队组装电视机
“有你在这儿,我们的广播站就没有后顾之忧了。”
转眼间高中即将毕业,宫敏面临着双重选择:一方面,自己擅长小提琴演奏,可以报考西安音乐学院;另一方面,继续在实验室里搞科学。两难之下,宫敏去征求家人的意见。
奶奶对他说,“你的这两个爱好都是正当事业,都应该支持。”“你是愿意做研究,处理新的问题,还是愿意坐在乐池里,每天演奏相同的音乐?”“你可以把一个作为职业,另一个作为爱好。”
想来想去,宫敏更愿意留在实验室。这个决定,也是自己做水塔自动控制系统时,学校给予莫大的支持,让他觉得只要有好想法,社会就能给你机会,科学研究应该是自己真正的事业。
这一年,赶上号召年轻人到农村生活劳动,每户家庭可以留下一个孩子,于是家庭会议召开:让妹妹去,还是让哥哥去?宫敏觉得自己是哥哥,不能让妹妹去,父母满意地说“这哥哥的态度挺好,那你就去吧。”
临行前,父亲说:“你把书都带去,要坚持学习,英文也要坚持学,不能放松。”就这样,带着心爱的书和小提琴,宫敏离开了家。
他被安排在陕西省长安县,虽然与家在同一个县,可也有几十公里的山路,从生产队回家不需要翻塬,却要上山,沿着山路一直往上走就可以到家,从家里回来一路下坡就能到生产队。
刚到这里,宫敏和其他几个青年都住在老乡家,不久县里给的安置经费到位了,生产队就划了一块宅基地,盖了个小院。
宫敏所在的集体户是两个男生,三个女生,小房中间盖一堵墙,一边住女生,一边住男生,吃饭会在一起。“我记得我负责烧火,另一个男生就出去挑水,女生负责擀面条、做饭。”
大多数农活宫敏都能做,可也有意外发生,一次,宫敏在麦场收麦子,把麦捆铲到垛子上时,腰忽然扭伤了,在床上躺了好长时间。
另一次是修水库时,一个事故伤到了腿。宫敏扒着伤口从真皮、脂肪到下面的肌肉包膜一层层都看得清清楚楚,还不忘调侃:“这下我学到了直观的解剖学知识。”
宫敏对生活没有太高要求,能吃饱饭,睡觉不冷就行。收工回来别人打牌、谈恋爱,他就读书。
在知识的海洋里畅游,他又鼓捣出了新名堂。
干活之余,宫敏想弄明白电视机的工作原理,“只有把它做出来,才证明我确实弄明白了。”
在读高中时,宫敏经过一个学期的研究,组装过一台电视机。当时扫描发生器和锁相环路,都是使用的最新器件“单结晶体管(UJT,又名双基极二极管)”,利用它的负阻效应制作“张弛振荡器”,通过改变两个基极之间的电压,改变振荡频率,利用振荡器产生的信号,与电视台发送的同步信号的频率/相位差,产生控制电压完成扫描的同步。这一点让研究所里的叔叔们都赞不绝口。
他设计了一个电视机的完整电路,寒假到北京探亲,顺便购买了显像管、屏幕等相关零部件。北京生产的零部件宫敏都买等外品,最贵的是显像管,一个要 13 块 5,其他东西二三十块钱就能全买到,组装下来不到 50 块钱,三周的时间里宫敏从采购零件、制作印刷电路到整机调试,完成了一个九寸晶体管电视的制作。
有了第一部电视机的制作经验,第二部就轻车熟路了,显像管和部分零件都是从北京带过来的,他自己绕制了高压变压器,最终完成了电视机的组装。
简直是天大的事,村里这下能看电视了!这里离西安几十公里,用一个外置天线接收信号。大家都围着电视看,“电视节目大概是每天晚上五点半开始,先是新闻,再是别的,最后是文艺节目,十点左右就没有了。”
消息很快传到了公社,公社领导叫宫敏到公社来上班。
被推荐上大学
考研结束后,老师表情有些沉重,从班里挑了五个学生说:“你们五个人把考研试题做一下,我们要评估考题情况。”宫敏就和几位同学去答题,答完后老师看过成绩说:“你们当中考得最低的,也比这次考分最高的学生考得好。”
在公社,宫敏和领导吃住在同一个院,很快就熟络起来,工作上听从书记安排,事情做得也很漂亮,受到了书记的赏识。
好事来临,北大开始招生,无线电系在长安县有一个招生名额,书记得知后跟宫敏说:“这专业不正是你做的事情吗,你应该到这里去啊”,专业对口,就推荐他读大学。
说来也巧,在北大招生之前,部队曾前来征兵,宫敏跟部队的人聊得很好,就说:“你把我带走吧,我当兵去。”“好啊!”解放军说。
几天后解放军跟宫敏说:“我不能带你走。”
“为什么?”宫敏问。
“你的岗位不应该在我这里,你应该去上大学。”解放军回他。
“我觉得我现在没有机会上大学。”
“你听我的,你的机会就是去上大学,我不能带你走。”
就这样与部队失之交臂。宫敏想到,解放军可能跟公社这边沟通过,领导一直认为他该读大学。
不久,宫敏通过了入党申请,外调的资料也都合格了。在准备回京的时候,支部书记忽然对宫敏说:“你是不是能够明年再去上大学?我们希望你留下来,再为我们工作一年。”
可一心求学的宫敏,难得有了奔赴理想的机会,他非常珍惜,就没有答应书记。
人生充满机缘巧合,宫敏想,既然走了,就尽量走好,不要给学校丢脸。
在北大,宫敏很享受师生之间的关系。“老师们都拿我们当朋友,不当孩子对待。”大家都很认真地讨论问题。
1978 年的冬天,宫敏于北大留影
一次,宫敏向老师们请教 32 路数字电话的专业问题,他们惊讶于学生竟能问出这种问题!问到我就给你讲,讲完后告诉宫敏下一步的研究方向,希望他也对这些感兴趣。“北大老师和科学院的叔叔阿姨们的作风很像”,这也是宫敏从小接触到的,熟悉的氛围让他感到亲切。
更有意思的是,有几门课刚上了几堂,专业老师就说“这门课我给你通过,你别念了,去别的系听你感兴趣的课吧。”宫敏觉得这很不可思议,老师们都很开明,“他觉得继续听这门课是浪费时间,就劝你别听了。”
学习之余,宫敏加入了北大游泳队,每天下午训练,“还是很辛苦的,每天都要游 3000 多米。”教练要求很严格。好在小学时,父亲就带着他和妹妹去横渡昆明湖,“从排云殿游到龙王庙有 700 多米,游过去休息一会,再游回来。”从小养成了锻炼身体的习惯。
让遥感探测项目起死回生
在 80 年代,飞机遥感是很先进的技术,此时中国的高科技是在西方封锁之下搞出来的,“真的跟美国差距没有那么远。”
1980 年,北大,20 多岁的宫敏已有了人生目标,“我就是想成为老爸那样的人。”毕业时,宫敏顺理成章地被派遣到科学院工作。此时徐梦侠老师对他们说了很重的话,“你们毕业以后,前五年可以用母校的名字,五年以后北大指望着用你们的名字。”
1981 年,在科学院空间中心工作时期的宫敏
到了科学院空间中心,宫敏被分配到了地面系统部,单位的短期使命被定义为两星一站,即天文卫星、资源卫星和遥感卫星地面站,“虽然我最希望加入卫星团队,但还是服从分配好好搞地面系统吧。”研究室领导给宫敏介绍了这里的三个研究方向:硬件、软件和算法,可以自己挑。“想让哪个老同志带你,你就去争取他的同意。”于是宫敏开始摸情况。
宫敏喜欢挑战,做别人不敢尝试的东西。
在跟各位老同志交谈、看了各个实验室之后,发现这里有一个机房,里面设备很多,了解到这是 1976 年我国第一次航空遥感的数据处理系统,可一直没有成功运行,且负责人已去了美国。
这个机器是上海计算机厂(以前叫上无十三厂)生产的 DJ S-131 小型计算机,仿美国 Data General Nova 的产品。
按照计划,这个研究室是负责处理飞行时仪器所采集、记录的数据,可这一步一直未完成。宫敏就向研究室请求来这个机房,让它完成历史使命。谁知研究室觉得他资历不够,无法批准他负责这项工作,但允许宫敏来这里进行认为必要的工作,前提是必须保证不把它搞得更坏。宫敏回答:“保证不把它搞得更坏,争取把它搞得更好。”
宫敏是学无线电的,对电子计算机完全不懂,可他认为既然是电子计算机,它的基础就是电子电路,只要是电子电路宫敏就能搞懂。
“那个机器现在看起来很烂,主频 0.5 兆赫,一个内存周期两微秒,内存 32K 字,但它居然配了 40 兆的硬盘。”里面还配了数字磁带机,有两台是东德卡尔·蔡司生产的,另外一台是内蒙古生产的,质量不可同日而语。
宫敏决定,放弃使用内蒙古的磁带机,只用东德的。可东德磁带机的接口接不到我们自己的机器上,得自己做接口。好在计算机的逻辑图都是完整的,宫敏就一张一张地爬逻辑图,“最后弄明白了,它还有 Diagnostic 诊断程序,读这个诊断程序,才能深入理解计算机的工作原理。”
通过这件事,宫敏就彻底明白了计算机是怎么工作的。
此时这台机器工作还不稳定,宫敏就分析它的逻辑,发现有个地方的时间利用不充分,导致时间很紧张,持续的紧张会造成机器误判,比如 0 判成 1。宫敏就把计算机的逻辑稍微改了一下,加了两个逻辑芯片,“按照新的时序来,可以更充裕地去建立时间,这样机器就能稳定工作了。”“我还给它超频了,本来是两微秒一个周期,我把它提升到 1.6,超频还稳定。”
这就能更好地利用起来了。航空遥感飞回来的数据,本来是模拟信号,需要把它数字化,数字化的过程需要和航空遥感仪器每一圈的转动的起始点同步,可同步的挑战比较大,因为磁带录回来信噪比不好,噪声比较大,这会造成同步的电路失误。
宫敏想,能否用一种方法把真实的同步信号提取出来。这种做法纯学计算机的人是做不好的,纯学逻辑电路的人也做不好。宫敏有专业的信号处理背景,想到了匹配滤波器(Matched-Filter),用一个已知信号去匹配它那个(同步)信号,判断哪个是真实信号,一个信号在不应该来的时候来了,那就是假的。宫敏做了一块信号采集板,成功地把真实的同步信号提取了出来。
老同志得知后就和宫敏一起搞,他们帮助项目正式立项,要到了经费,最终把遥感飞行的数据全部处理出来了,是国内第一个完全自主知识产权的图像处理系统。
浙江大学和解放军测绘学院作为第一批用户上机试用获得了良好反应,物理所的雷达波波带信息经过系统的处理成功成像。系统通过科学院鉴定后,获得科学院科技进步二等奖,宫敏排名第二。
这次遥感飞行的主要目的,是验证我国自己设计制作的遥感仪器和我们的地面处理系统,另一个目的,是探测地下的铀矿。二机部的同志根据处理出来的照片,“我们最后是出成胶片”,通过胶片判读,得出了比较积极的结论,也得了二等奖。
这次遥感飞行探测早在 1976 年就开始了,当时做了很多工作,可运行都不正常,数据(模拟磁带)就一直放了四年,直到 1980 年宫敏来后,把旧有的东西重新设计、制作,用了两年多的时间把这件事起死回生了。
方案被美方认可
100 多人中有 30 人提交了方案,又经过一轮筛选,宫敏和另外 4 人的方案得到美方认可,获得了赴美工作的机会。
法国宣布,将在 1986 年发射世界最先进的 SPOT 遥感卫星。1985 年,中国决定建 SPOT 卫星地面系统,接收和处理法国的 SPOT 卫星数据,系统将由中国人自主在美国设计和建造,利用美国的工业技术和供应链,有效而快速地建设地面站,成果运回中国并在中国完成研制。
项目启动之前,美方专家来中国讲解处理系统的具体内容和要求,单位来了 100 多人听报告。
专家画出几个任务,让在场每个想干的人任意领一个回去,利用三天时间写出自己的解决方案。宫敏选了一块有挑战性的,三天后提交了自己的方案。“美国人在阅读了 30 多人提交的方案后,又听取了 10 个人的方案讲解,最终选定了 5 个人,其中有我。”
随后,所里领导找到宫敏:“美国人很认可你的方案,所里准备派你去美国做这件事。”“不过回国后,你需要为所里服务三年,三年以后你想做别的,可以走。”
宫敏听后说:“如果是三年的话我就不去了,您派别的同志去吧。”
“为什么?”领导问。
“我已经 29 岁了,去两年 31 岁回来,再服务三年,34 岁了,我还要深造,我还没有博士学位呢。”宫敏分辨道。
“可别的同志都同意是三年。”领导告诉他。
“他们同意是他们的事情,如果一定是三年的话,我选择不去好不好?”宫敏说。
“那你觉得多长时间可以接受?”领导问。
“最多两年。”宫敏说。
宫敏觉得一旦答应就要做到,这个年龄,读博士比去美国做事更重要。
一个星期后,领导又找到他:“所里开过会了,同意你服务两年的要求。”
感受西方世界
宫敏从妈妈嘴里和在外面听到的美国生活大相径庭,等真正到了美国,他感觉这里“就那么回事儿。”
1985 年,巴尔的摩,宫敏走在街上感受着这座东部大城市,种种景象触动着他,“能感觉到这座城市曾经很辉煌,可如今已衰败得不得了。”
路边有很多联排别墅,一次,宫敏从一个联排别墅的后院经过,一对老夫妇正晒着太阳,看到宫敏,就跟他友好地打招呼。
“你从哪来?”老头问道。
“你看我像从哪来的?”宫敏说。
“Cuba”老人看了看宫敏。
“你看你我的长相像古巴人吗?”宫敏笑道。
“那你是从哪来的?”老人接着问。
“我是从中国来的。”宫敏回他。
“中国在地球的另一边,你坐船过来要几个月?”老人惊讶地问。
“我没有坐船过来,是坐飞机来的。”宫敏说。
“那么远坐飞机!”接着他把老伴叫过来,“这个小伙子说他从中国坐飞机来的,我们两个还没坐过飞机呢!”
这次相遇让宫敏感触很深,他觉得虽然老人没坐过飞机,可住得起联排别墅,已经过得很不错了。
这里曾是美国的蓝领工人区,20 世纪 70 年代,美国的蓝领工人也是中产,这个阶层的人在美国并不在少数。
另一方面,在街上能见到很多无家可归的人,晚上警车到处跑,警用直升机在空中飞,感觉很不安全。
巴尔的摩离华盛顿 D.C.很近,开车 50 分钟就到了。
美国的生活很丰富,每个星期宫敏都到华盛顿 D.C.去参观一个博物馆。国会大厦前面有一大片草坪,草坪两边是各类博物馆(史密松尼亚博物馆群)。航空航天博物馆让宫敏觉得很震撼,各种航天文物和小型物品,包括天空实验室和美苏飞船对接,在这里都有展出。
一次,宫敏正在逛国家美术馆,发现旁边有两个人指着他问:“诶!诶!诶!你是不是北大的?”
“我是啊”,宫敏惊讶道。
“你是不是游泳队的?”
“是啊。”
“我是经济系的,当时我们经济系的某某也是你们游泳队的,你老去找他。”
“对!对!对!”宫敏笑着说。世界真是太小了!
宫敏把这里的博物馆看了个遍。大概在靠近白宫的科技历史博物馆,宫敏看到了些自己从书本上熟悉的东西,比如 ENIAC(世界上第一台电子数字计算机)的一部分,还有巴贝奇的机械计算机的一部分,等等。“这都是以前听过但没见过的东西,见到之后感觉不错!”
在学术资源方面,宫敏觉得中国的实验室仪器跟美国比,不能算非常落后,“我们是有些很好的仪器在手里的,可能没他们全,他们可能有二三十种,我们可能有五种,但我们这五种绝对是好的。”在科学院,大部分高级的东西是可以从外面买到的。
在单位上班时,有两次宫敏中午吃饭和工人坐在了一起,后来美国老板找他谈话,“你应该和工程师坐在一起,不应该坐在那边。”老板认为宫敏不属于那帮人,而是属于工程师这帮人。在美国,人群实际上是有分隔的,而宫敏受到的教育是要和工人、农民打成一片,还是受到了些文化的震撼。
宫敏也会抓各种机会跟美国人聊天,多了解一些美国社会。
最先完成任务
美国有先进的供应链,利用美国的信息和制造能力,做完拿回中国,知识产权是中国自己的,“放到现在美国不会这么干。”
1985 年,美国,一切进行得都很顺利,住宿免费,饭要自己买,有一辆车周末免费给中方人员使用,每个月发 420 块钱。“一个月只吃饭的话 100 块就够了,都是到超市买菜,回来自己做,下馆子是不敢的。”
宫敏领到的这块任务难度不小,可他最先完成了任务。每个人对自己的设计负全部责任,设计出来自己调试,“都是你一个人的事儿,工厂会按照你的设计进行加工。”
任务完成后,回国进行后续的工作。
临走之前,宫敏看中了一台 PC/XT 兼容机,里面有 10 兆硬盘,一张单色图形显示卡,他自己配了一兆内存,“我就是奔着顶级去的,彩色图形对我并不重要。花了 700 多美元。”
此时,在美工作学习一年以上的外国人回国可以带八大件,冰箱、洗衣机、电视等用品,该买的宫敏都买回来了,孝敬了家人。
成功移植 CPM/68K 操作系统
“以前都要做交叉汇编,现在系统支持了 C 语言,让整个系统上了一个档次。”
1987 年,北京,宫敏开始了地面站研制的后续工作。机器没有适合的操作系统,非常难用,宫敏说:“我们要给自己的机器做个操作系统”,于是准备移植 Digital Research 的 CPM/68K 操作系统,可人家只给了 BDOS,宫敏不得不自己写 BIOS 还有 ROM 上面的 Bloader 和 Device Driver(驱动程序)。机器用的总线是 Intel 的 MULTIBUS,而处理器是当时最好用的摩托罗拉的 68020,“这是一对很魔幻的组合”。
MULTIBUS 的硬盘控制器不好买,进口非常贵,宫敏看到满街的 PC 磁盘控制器说:“我做个总线转换器(Bus Converter)吧”,然后做了一块板子,上面是 PCBUs,把街上买的磁盘控制器插上,将总线转换器在插到 MULTIBUS 上。前面那些系统都写好以后,操作系统就 boot 出来了,这下好用多了。
宫敏成功移植了 CPM/68K 操作系统,并通过操作系统支持了 C 语言,摆脱了原有只能汇编语言交叉汇编下载的低效率模式。后来,这个项目获得了科学院科技进步一等奖。
以外国专家身份去芬兰
宫敏突然收到一封信,上面写着“你就是我们在找的人,耽误这么长时间,是因为我们一直跟芬兰教育部沟通,邀请外国专家。”芬兰教育部批准宫敏以外国专家的身份加入本国项目。
宫敏在美国的时候,妹妹在挪威,常跟他聊北欧五国的教育和科研情况。宫敏就想要去北欧,看看那里的学校都在干什么,自己有没有参与的可能性。
一天,北京举办国际教育展览会,会上介绍了很多参展国的情况,包括各大学的教育、实验项目,会场派发相关材料,宫敏在一份材料上发现芬兰赫尔辛基理工大学在开展一项“实时图像处理”的项目,就回去写申请信,把自己的个人信息、工作经历都填上了,说自己对这个项目很感兴趣,很想加入。
离开美国之前,宫敏请老板给自己写了评语,提到自己在美国的工作表现,他把美国老板的评语、科学院老同志的评语、大学老师的评语,还有自己写过的一些专业文章一并寄了过去,等待回复,可是几个月都没有消息,心想:那就算了。
三个月后,惊喜来临,宫敏收到了赫尔辛基理工大学的邀请信,自己能以外国专家的身份去芬兰工作。
芬兰靠租美国的设备做研究,看到宫敏在科学院做过遥感处理系统,处理中国的遥感仪器飞行记录信号、参与法国 SPOT 卫星地面站系统研制等经历,自然视他为专家。
不久,宫敏到大使馆拿火车票,乘车前往,中途在莫斯科转车,停留几个小时,宫敏趁机跟几位当地市民交谈,看到这里的市容和地铁,对“老大哥”的现状有些伤感。
在去芬兰之前,研究所的领导跟宫敏沟通,由于这一走时间不会短,领导建议他辞职,宫敏答应了。忽然想到宫敏未满三年的服务期,就说“等下,你三年的服务期还没到。”
宫敏把当年的事跟领导说了一下,自己是两年而非三年,随后所里开了所务会,核实之后确实有这么回事,于是批准了。
工作之余进修博士
在研究课题时,宫敏发现有人拿出了一个叫做 Linux 的内核,并在多人努力之下,做了一个 Distribution(名叫 SLS),宫敏安装了 SLS,下载了内核源代码,实现了 IP 多播,研究课题顺利推进。在此期间,宫敏研究了 GNU GPL V2,“觉得这个许可协议很好,中国可以利用 GPL 做很多工作。”
1989 年 9 月,赫尔辛基火车站,火车缓缓驶进站台,随着车门统一打开,车内旅客相继走了出来,人群中一位俊朗的中国青年提着行李,沉稳地走出车厢,看到站台上有人手举一张纸,上面是他的名字,就过去打招呼,原来是芬兰教育部派人前来接站,上车后就直接奔向离学校最近的外国专家公寓。
公寓里的设备又好又齐全,可以做饭、洗澡,里面有三个独立卧室,大家共用厨房和卫生间,宫敏很喜欢。很快电话打来,校方告诉宫敏冰箱里有早餐,宫敏打开一看,面包、奶酪、火腿,东西还真不少。
校方说:“你先休息,明天我们会来看你。”
宫敏说:“我明天可以去学校看看。”
“那好,你来我们欢迎!”
当晚,宫敏就在自己的卧室安然睡下了。
伴随芬兰初冬迟到的晨光,宫敏醒来,开始奔赴新的生活。他吃了早饭,整理了一下就去了学校,终于见到了校方领导和同事,他们解释了之前为什么三个月才给到回复,又给宫敏介绍了学校的特色。这里的研究方向不少,宫敏想做什么自己定。他选择了分布式并行处理,这是自己的兴趣所在。
上班后开始忙起自己的工作,同事们有问题会很客气地请教他,宫敏就去帮忙,“都是些比较棘手的事,尽管棘手,我也都能解决。”时间长了难免会“过一过招”,由于是新人,他们就给宫敏来个下马威,“你接住了就站住脚了,接不住,那以后有你好日子过了”。经过一番考验,他们觉得宫敏有些本事。
在注意到宫敏没有博士学位时,就建议他顺便读个博士,宫敏说可以。芬兰的博士分两级,第一级叫 Ph.D(Doctor of Philosophy),第二级叫做 Doctor of Science(科学博士),证书上写做 Higher Doctor(高级博士)。
宫敏说:“我选第二级。”
对方接着说:“第二级需要通过考试来获得资格,有一本《数字图像处理》共二十二章,有两种考法,一种是把这二十二章的内容做成一张考卷,你要用一天时间考完,这样我们对你能有一个大概的了解;第二种是每章各出一张考卷,也是考一天,这种考法可以更深入地了解你,但会比较难。”
宫敏说:“选这个难的吧。”
“我不怕。后来考过第四章,他们说我们决定不考了,你 Pass 了。”
“为什么?继续考多有意思?”宫敏问。
“你前四章的考试不光答得都对,还有书里没有的东西,每一章考试你都答出了更深层的东西,所以我们认为没必要考了。”对方回答。
读博士也需要拿学分,出去开学术会议,投稿成功,发表文章、上课等都记入学分,“该做的都做了,没觉得很困难,很不得了。”
宫敏的博士论文是一本专著,叫做 《Distributed parallel processing for photogrammetry and remote sensing》(分布式并行处理用于摄影测量学和遥感)。摄影测量学和遥感有大量的图像数据要处理,直到现在,计算机都必须通过并行处理进行功能的增强和性能的改善,这是宫敏以前就实际遇到和处理的问题。学校也很骄傲,答辩时邀请了英国纽卡斯尔大学的教授来做 Opponent(质辩人)。
在芬兰,高级博士在答辩前两个星期,要在当地最大报纸上登消息:谁,在哪年哪月哪日,在什么地方,就哪个题目做科学博士论文答辩。这被视为一件大事,在报纸上看到这条消息的人都可以来听,且都有资格发问。“所以历史上确实出现过委员会没意见了,却被社会听众问了问题。”
你要有充分的信心,才会公布这件事。
芬兰事件
黑客黑掉了宫敏的并行计算机群,一台不剩,这让他很不高兴,火速进行了一场“保卫战”。
1994 年夏天,宫敏休假结束回到学校,忽然发现自己的并行计算机群全部工作异常,经了解原来是黑客在对芬兰的计算机进行大规模网络入侵(称为芬兰事件),这次入侵不仅针对 Linux,BSD 和学校的 AIX、HPUX、OSF1、Solarise 等计算机都未幸免。
宫敏认识到计算机并非是安全的,解决计算机安全性问题是分布式并行处理的前提,否则其他都无从谈起。
宫敏把这个想法告知学校,学校支持并批准他使用原本用于研究并行处理的计算机,进行安全性研究。战场就设在了宫敏的计算机,宫敏一旦发现有人正非法使用自己的计算机,就通过写脚本来监视他们,发现异常后立即报警,如果他在场就人工监视并干预,如果打不过黑客就拔掉网线。
最后,宫敏缴获了黑客工具的源代码,通过这些源代码,宫敏了解了他们入侵的方法。通过内核侦测出了黑客的入侵路径,再根据预定的策略采取行动,做到了 100%成功防御。这种安全方面的研究一直在持续。
1997 年,宫敏利用假期回国建设“中国自由软件库”,并开通“新闻组”进行问题讨论和答疑,二者的完成获得了极大成功。清华大学和中国科技大学都拉取新闻组,开展讨论和答疑,从软件库中拉取感兴趣的内容进行使用。讨论和答疑活动在中国普及了自由软件的概念和 Linux 操作系统,为后来的开源运动打下了坚实的基础。
回国创业
2004 年,《程序员》杂志(《新程序员》前身)将宫敏同中文操作系统 CCDOS 开发者严援朝,金山软件创始人之一求伯君,江民杀毒软件创始人王江民,UCDOS、联众公司创始人鲍岳桥一起,誉为影响中国软件开发的元勋。
1998 年,中国驻芬兰大使馆,宫敏和新华社驻赫尔辛基分社的同志聊起了近来的工作,他们鼓励宫敏撰写个人材料提交新华社,准备小范围发表宫敏有关自由软件的稿子。
此后,大家开始劝宫敏回国,包括大使先生和远在家里的父亲,宫敏同意了。经过一年的收尾,宫敏于 1999 年年底结束了旅居生活,回到中国。
1999 年底,北京,宫敏来科学院相继见了陈芳允、张孝祥和倪光南等院士,有些是父亲的朋友,看到宫敏回来很是欣慰,不过前辈们不建议宫敏回科学院。陈院士说:“我觉得你不如以公司的形式为国家服务。我最大的愿望是希望你把公司做成中国的贝尔实验室。”
宫敏感叹道:“您对我的要求太高了,这是要我的命啊!”
作为中国 Linux 第一人,宫敏质朴而敬业的精神被前辈们看在眼里。“先辈有期望,我就往好的方向去做吧。”
宫敏不擅长经营公司,就有院士给他推荐合伙人,接触之后,大家志同道合,彼此欣赏,就一起来做。
创办公司后,宫敏的角色并没有变,依然专供科研,合伙人负责找钱。“一件事从国家的角度来说是应该做的,我们就力所能及地替国家干这件事”,团队陆陆续续做过两三个国家 863 课题,牵头做过核高基课题,两个国家发改委的项目。宫敏也很感谢合伙人和他找的那些资本,因为项目周期很长,很多资本是受不了的。
宫敏,摄于 2013 年
宫敏目前在公司主要做安全操作系统,面向的客户也是电力、铁路、电信等国家的核心部门,像国家电网遍布全国的调度系统用的就是宫敏的公司提供的操作系统,“我们知道自己的责任,这个东西要出事可不得了。”他们通过自主的 Linux 内核安全模块,将系统的安全性实现了很大的提升。
问答
刘韧:民间公司做安全操作系统的优势在哪里?
宫敏:从学术角度来讲,操作系统并没有太高的学术水平,因为都有标准在,而学术都是探讨目前不存在的东西。
问题是有标准在,不一定有符合标准的东西在,既然美国、欧盟、中国等国家都有自己的标准,那我们就尽量参考所有相关标准,弄清各个标准的内在逻辑,把它融会贯通以后做出来。
刘韧:你觉得一个民间公司落实一件事情会更有效率,而科研单位会追求更高的科研水平,所以双方追求的东西是不一样的。一个公司它可能更务实,更愿意做出可用或更好用的东西。
宫敏:对,科学院有些东西也很有实用性,可他服务的对象可能就是科学院和少数几个单位。可能社会上对这种东西还没有需求。
我们做的东西可能并没有特别大的学术突破,但也不是一点学术都没有,我们有学术和基础,所以国家 863 计划才能批准我们申请的课题。
刘韧:什么叫做矿石收音机?
宫敏:最开始用的都是电子管,没有晶体管,电子管很贵,轻易得不到。最早是外国人从一些矿石中发现,把矿石拿来,用一根针在上面轻轻触碰,这些被触碰过的地方就能让直流电通过,这颗矿石就具备了检波的作用。无线电波过来后,通过矿石用耳机就能听见声音了,就是广播。
比较有名的叫做方铅矿,方铅矿是效果比较好的材质,最早、最便宜的收音机就是用矿石做检波的收音机叫矿石收音机。
检波的英文叫做 Detector,一般的广播是调幅广播,是把音频调制在你的载波上面,载波的幅度高低是通过音频来变的,这个是我们听不见的。通过检波可以把载波去掉,留下半边的包络线,这个过程叫做检波,就是变成人能听见的声音。
最开始用矿石,后来就用晶体二极管,比矿石的效果要好得多,但大家仍然把它叫矿石收音机,因为它只有检波,现在再找块矿石都困难了。
刘韧:开源是怎么一回事,对中国的意义是什么?
宫敏:我只表达自己的观点。实际上在理查德·马修·斯托曼(Richard Matthew Stallman)看来,开源这个说法很不精确。2005 年,科技部委托我代表中国去柬埔寨暹粒市参加联合国开发署亚太地区的开源论坛,会上有人播放了一段 Bruce Perens 的视频,他是开源概念的提出者之一,谈他是怎么看开源和自由软件关系的。
在那段视频里,Perens 说,在他看来这两个东西大致是一个意思(More or less the same),只是开源的概念让人更容易理解,这是否代表现在开源的普遍概念,也不一定,至少是 Perens 的一家之言。
鉴于他是开源这个词的发起人之一,他的看法应该也有一定的代表性。要是按照 Perens 的说法,我们姑且认为开源软件和自由软件基本上就是一回事。另外,我也看到一些开源组织的统计数据,它们定义了一个开源的标准,在所有符合开源软件标准的软件当中,自由软件大概占了 60%以上,这样是不是可以认为,自由软件是开源软件的一大组成部分。
实际上在很多基础性、有代表性的开源软件当中,基本上是自由软件。操作系统、编译器,甚至包括 FirmWare 固件,都是以自由软件的信息形式存在的,尽管自由软件是一个小集合,但它是开源软件当中相当大的一部分,应该是超过 50%的。如果我们从基础性来看的话,自由软件应该是更重要一些。
我一直是认为我们国家最弱的不是你能玩出花来、短期能挣很多钱的上层应用,恰恰底层系统是我们最弱的部分,要加强我们的底层系统。自由软件是一个非常好的学习对象,因为有自由的编译器和工具链,包括 Linker、汇编器,这些东西包括操作系统 Kernel、Shell,和上面的 Utilities,这些东西构成了一个最基本的操作系统,那么这些东西应该是以自由软件为主的,虽然说有 BSD 那个更宽松的也不错,你愿意学也没问题,但现在从活跃度上来说,最活跃的还是 GNU/Linux。
在活跃的情况下,你往往通过讨论能学到很多东西,包括与人交流的方式,这个我觉得也是需要学习的。早年间我看到国内有人参加研讨会,上来就说,我希望你能够加入这个,加入那个,我觉得这个可能不是研讨的方式,你凭什么告诉别人他应该做什么?正确的方式是,你要觉得这个事情很有必要,你就把它做了,然后拿出来讨论,源代码也是对你开放的。
你可以做得不是太好,来征求一下他人的意见是可以的。所以什么是开源文化?是一帮人在一起应该怎么互动,这些都是需要学习的。社区里面也没有那种,我是头儿,你们都得听我的,那凭什么呀?你愿意做什么你倒是做呀,凭什么让我做呀?
这是我们所欠缺的文化之一。
另外,我刚回国的时候,教育部搞过一次 Linux 相关的教材的审定,也请我去,我说这个教材的审定可能不是我们几个人坐在这儿拍拍脑袋就可以审的,这些教材有哪些学校用过?在教的过程当中有什么经验和教训?它到底好在哪里?这些也要考虑,所以可能不是先着急审定一批教材,而是让大家把现有的教材先用起来,然后根据使用情况写出文章,老师对这些书都会有评价的,把几本不错的书取长补短,来编一本是可行的。
你看自由软件,包括开源软件很多发展都是自下而上的,并不是谁下了一个任务,你给我做一个东西。
这些话我希望大家能听进去,有很多事情我也是反复讲,很多年以后,我发现越来越多的人的说法,跟我的说法越来越像了,这个就是成功不必在我吧。
刘韧:为什么开源在中国还没有很好地开花结果?
宫敏:我可以用更积极的说法来讲,应该是越来越好了,比如你去看 Linux Kernel 里的贡献者,中国人的名字越来越多,所以我用积极的方式来说还是越来越好了,可能这个速度不像有些人期望得那么快,可它毕竟在向前走。
二十几年前,我说开源的时候,很多人都怀疑:“这个家伙到底在说什么?他是骗子吧?”现在已经不是这样了。
从这个方面来看还是有些积极的进展,确实这个东西对很多人的价值观,对社会构成、行为模式是有颠覆和冲击的,要理解和接受它是有困难的,现在大家是在逐渐接受。
也有很多人说自由软件就是各尽所能,各取所需。后来我跟斯托曼聊天,他也一直在强调自由软件的关键不在开源,而在自由。
他还说很多的软件公司实际上在做的是殖民主义在对人群进行分割(segregate),这样不好,自由软件的实质是让大家团结一心,不能各打各的小主意。
所以我认为,我们是能学到不少东西的,把这些东西真正学到手,就像你念了很多书之后,可以自己写书,在你自己的书里,你可能引用其他书里的话,只要在文中注明出处,这不影响它是你的作品,但你要是没有这些修炼,你想一下子写出一本好书来,恐怕不太可能。
要写出好软件,你就必须读过很多好软件。
刘韧:你怎么评价 Linux 对世界的贡献?
宫敏:我认为 Linux 的胜利是自由软件的胜利,因为 Linus Torvalds 拿出他第一版 Kernel 的时候,许可证不是 GPL,很多人就劝他如果用这种方式许可的话,你的东西是不会有前途的,没人跟你玩儿。
他听劝之后就改成了 GNU GPL,事实表明这个决定是正确的,这也从一个侧面反映出许可证的精神条款对你的东西能否发展、活跃的重要性。举个例子,BSD 的条款比 GPL 条款要宽松很多,可是你也看到了极度的宽松,并不能使它很流行;极度的不宽松,也不一定能让它很流行。从这个角度来看,斯托曼的 GNU GPL 把人性拿捏的比较好,所以与其说 Linux 的胜利,不如说是 GNU GPL 的胜利,是社区的胜利,组织方式的胜利。