操作系统张尧学 张尧学院士:透明计算/云计算操作系统

2017-12-05
字体:
浏览:
文章简介:中国工程院院士.国家科技重大专项核高基专项技术责任人.国务院学位办主任张尧学院士透明计算.云计算产学研讨会大会上做主题演讲:透明计算/云计算操作系统.张尧学院士

中国工程院院士、国家科技重大专项核高基专项技术责任人、国务院学位办主任张尧学院士透明计算、云计算产学研讨会大会上做主题演讲:透明计算/云计算操作系统。

张尧学院士:透明计算/云计算操作系统

张尧学:尊敬的各位来宾大家早上好,很高兴有这个机会能和大家交流一下。刚才刘秘书长已经把这次会议的背景给点了个题,实际上为什么搞这次会,我们经历几个练习,第一是当前正处在一个信息技术革命的前列,大家看信息技术的发展有几个阶段,一个就是从大型技术,除了微软,另外由多媒机向网络转型,当然英特尔也是跟微软一起,后来又出了Google。

现在正处在一个移动互联网还有什么都是计算机,泛在计算等等这么一个大发展的时期。

下面将会是什么样的企业?什么样的技术来引导信息产业甚至其他的多行业发展是一个很有兴趣的事。其中一个背景就是重大专项,核高基是刚开始我没参加也以为是搞原子弹,因为是核,其实是叫核心元器件,高是高端芯片,基是基础软件,被简称为核高基,其实就是操作系统和CPU。中国怎么样发展自己的操作系统和CPU?一个是产业,一个是安全。

那么对于这两个核心的操作系统和CPU的发展,有两条路线,一条路线就是收复失地的战略,就是敌人把我们的城市占领,蒋介石把延安攻下来,我们要通过各种各样的战略战术去收复延安。收复失地战略就是微软的操作系统占领我们市场的百分之多少多少,其他的CPU占领了我们的市场多少多少,我们要去收复他。

但是这种战略听起来很不错,但是执行起来非常的艰难,虽然不能说会失败,但是通过多年的艰苦的斗争,大家走到现在很不容易。

另外一条战略就是要在信息产业或者是信息技术的新的发展点上,我们要去做人家没有,我们有的同时又和国际兼容的东西,这就是要中国特色、国际水平。中国特色就是我有的,人家没有的,国际水平就是要跟人家兼容。这样取得在信息产业链上的话语权,人家没有的,你有的你可以跟人家讨论,把你有的给我,我有的给你,就是所谓知识产权的问题。因为所谓你有,就是你有知识产权,人家没有这个知识产权。

这两条路线的斗争是很激烈的,反映在我们的项目上面我们也是两方面都涉及,传统的收复失地我们也继续做。新的机会我们按照国务院领导的指示,也是做下来感觉到有一定的效果,但效果不是十分的明显。就像刚才的刘秘书长讲的,我们在互联网的操作系统,在结构化和非结构化持续资源中心,在搜索工具,搜索引擎和搜索浏览器等方面设置了一大批的项目,有的趋势也很不错,但是很多企业趋势还不是太明显。

我们怎么样把我们的思路和企业的发展结合得更近一点,这是一个大问题。首要问题要有一些交流,怎么样加强交流。

我们曾经开过几次会,不是以学术交流的方式,是以办公室召集之后大家一起回答问题的方式,我看也不错。这次撇开项目本身,从学术的角度,专家、企业,我们请了三家很有名的企业,请他们给我们交流谈一谈,看一看。因为专家们都是从学校里来的,我也在学校,我们软件组的几个专家也是从学校来的,尽管整天在学校都是没有亲自操刀,企业是亲自操刀的,他要发工资,要交税,我们从这两方面来看看我们怎么样在新的技术方面我们有一些机会或者是有一些发展,这就是今天这个会议的目的。

我也是很多年没有想这个技术问题了,因为我在政府,我还是想把我的一些想法给大家汇报一下,因为也多少要学习一些东西。

我首先从我们这个项目提出一个项目就是网络计算的操作系统,具体来说是透明计算和云计算的操作系统这方面开始的。我的名字叫张尧学,我的邮箱在这里,大家如果觉得我讲得不对,或者觉得还有更好的想法,一个是今天可以讨论,再一个讨论不充分可以通过邮件的方式进一步做交流。

云计算这个词我想在座都是非常清楚了,我想这两年不仅仅是在信息技术产业,在其他的各个行业也是比较热的一个词。前两天中央电视台有一个报道,海峡两岸要搞一个中华云计算辞典,我们要用云计算的技术搞中华云计算大辞典,我觉得这个真的很不错,影响很大。

什么是云计算呢?当然每个人都有每个人自己的理解,也有比较公共或者是大家认为是差不多的一些想法。我也是选了几个例子,一个比如说Google,他是怎么看待云计算的,08年10月31日有一个全球副总裁讨论过一次关于他们认为什么是云计算的概念?他们说首先是存储和计算分离。

清华大学我们的陈文光(音译)教授认为这个词有所偏差,我觉得这是有所道理的。陈教授举了个例子,说搜索引擎分离,我想是两个概念,一个是逻辑上的分离,一个是罗列上的分离。罗列上的分离包括程序可以放在大的服务器上面,深圳的网络都在做这个事。放在服务器里面以后你可以根据需要去用计算程序对他进行计算,然后给用户提供相应的服务。

另外一个就是逻辑的分离,大家可以这样想,我个人认为计算程序在什么位置,要扩展到什么区间,什么程序。但是这个云计算和网络上面的搜索不一样,你的Web可以任意扩展,他跟你的搜索引擎没有关系。他的程序跟你的计算工具和计算本身来讲,他没有在程序上的影响。比如说我扩展一个Web,不用再去扩展搜索引擎,比如说我增加了一些东西,他给程序进行一些电联。

对Google来讲,Google的起源有几个很出名的事情,一个就是BigTable,大型数据的结构的布线,然后就是他的MapReduce,一个是Map,一个是Reduce,Map是分布式查找,这是最早的,这是Google最核心的发布的。这几个东西使得他可以在一个时间范围内的网络上进行很快的搜索,把你所要的文章或者是相关的内容按照顺序排列出来。

大家注意看你打开Google的搜索引擎搜出来的时间都是一致的,这点在Google出现之前是不可思议的,他原来构造一个很大型的计算,高性能计算都是大型计算机。他构造一个很大规模的存储中心,在Google出现之前要花很长的时间。在Google出现之后,他可以用很便宜的PC在很短的时间之内构建一个大型机。

当时我听他们讲,当时构建这个通信的时候,他的背板跟我们一样,后来发现换那个板子花的时间很长,工程师就把机器翻过来,工程师跑过去很快,对背板是可插拔的,跑过去很快把板子插进去拔下来。所以说遇到这样的事情,工程师可以很快的跑过去,可以节省时间。

另外微软对云计算的看法是不太一样的,Google从后端服务器去搜索,怎么去找Web,往前走。微软实际上从用户这一端往后端走,所以微软提出来是端云结合,大的网络运营的开发管理平台。但是微软主要强调就是怎么样用微软的操作系统内核的桌面 移动 家电,形成前端的一个网上办公,比如说前端的操作系统是Windows7。

其他的公司特别我就不太讲了,我个人总结一下,云计算在整个环境的变化这么一个条件下产生的一个新的技术概念。环境什么变化呢?整个网络的出现,使得原来资源管理单机变成以网络为主。比如说我们现在任何传统的操作系统都是装在单机上的,而单机的资源管理只是跟存储器、外设,比如说对内存、CPU进行管理。

而计算机和计算机之间构建网络靠的是什么?靠的是协议,实际上相对我们人一样,大脑长在每个人头上,大家之间对话是通过中文或者是英文或者是大家相同的文化的一些沟通,这基本上是现在的一个形态。一个单机非常完整,单机网络之间是通过协议来进行沟通,云计算认为这种方式已经落后了,不能解决计算机的网络设备和存在的问题。

另外是我们的计算机的形态正在发生革命性的变化,正如大型机向桌面转移一样,现在正在经历一个从桌面向桌面,再向移动向家电比较3C合一的局面,现在实际上是到了马上就要大面积出现的这么一个时代了。大家看移动,已经是移动互联网了,唯一是家电,家电像三网合一,交互式电视等等也已经出现。

再一个就是原来计算机是以计算为中心的,随着网络的出现和应用的不断变化,现在以数据为中心,甚至有人提出来数据是核心竞争力。其实一个国家的核心竞争力有很多,但是数据是核心竞争力。为什么说数据是核心竞争力?大家想想我们计划经济为什么失败?计划经济失败的主要原因就是数据不够。如果说你能够把各种生产经营管理的数据都能准确实时,需要有一个数据模型分析一下。

现在大家统计数据为什么老不相信,就是因为数据没有统计准确,如果把每年的数据统计下来,工业发展的数据都在那,那这个世界会完全变化。所以说数据的变化会带来很多生活和工作的变化,有一个计算为中心正在向数据为中心转移。

再有就是大家以前都买软件强调是资源,现在是向服务共享为主。你根本不用去管后面谁给你做计算,怎么样给你做计算,你不要把计算的过程和操作告诉用户,用户只需要服务就行。

从这个角度来看,我们认为是云计算应该是存储和运算分离,另外存储规模海量和分布化的,另外结构是结构化和非结构化的数据存在的,另外现在的Web是结构化的,也有非结构化的。另外还有讲话的声音和图象不经过特定的模式,他可以存储到计算机或者是存储到你的服务器里面去。

有就是运算分布化、并行化,再就是我的前端应该是小型化的,不是你拿到外面去非要那么大的。比如说你身上带MID不要带太大,也不要太多,所以说应该是小型化、跨平台、可移动,再一个就是面向服务。

另外现在的云计算是一个从后端向前端发展的过程。正如刚才前面介绍的Google和微软,还有一个从前端往后端的发展。英特的卢总也会讲到,如果说后端往前端,前端往后端同时配套是平衡发展的过程。

下面我来介绍一下什么是透明计算?透明计算实际上是我们国家自己提出来的,当然现在也有不少人说了,当是是清华大学1998年,也是刘汝林秘书长的支持,申请了863项目,提出从服务的角度由端向服务器不断发展和演化的概念。它的特点有这么几点,一个是强调存储和运算分离,把存储放在中央服务器上,运算由前端来做。用户只需要对他服务,数据存储在服务器和Web上,运算在前端或者指定地点。

另外一个特点是软件和硬件强调分离,为什么强调软件和硬件分离,我们现在大家知道你要买一个PC机上面基本上装一个操作系统,但是你要用别的系统的软件就很难,或者是根本就没法用。所以我们希望硬件平台能够和软件平台分离,能够装Windows系统也可以装Linux系统,不给用户带来负担。

同一个硬件平台,支持不同软件,同一个软件平台,支持不同硬件,这个支持不同的硬件是需要硬件和软件厂商有一个紧密结合。Windows底层在操作系统的接口,你想让他支持不同的硬件的时候,我们希望做同一计算的时候希望在软件和硬件平台上应用系统可以分开。

另外是程序的执行是以流的模式,通过相应的管理和控制,发现哪个CPU是空的,可以流到那去执行,执行完了就扔掉。如果我们汉一个做法,把这个软件放在服务器上,你这个用户买一台机器的时候你要上网,我不让用户知道自动以流的方式送到他那边执行,执行完了用可以直接用,用户知道也不会在意。

在你现在上网的时候,他可能会随时监控你,当你退的时候他也就退了。所以最后我们让人家批评了很多,打了很多官司,人家已经做了你还不知道。

我们的贡献是什么?我们做了这么几件事情,第一件事情就是1998年当时的信产部规划司的支持下,在发改委的引导下,主要是做3C合一,做家电的轻量化以及互连服务。另外2001年通过项目不断的往下做,当时好几家有清华大学还有信产部的一些研究组提出了这个存储和运算分离的概念。

在前端的单系统上我们把操作系统去掉,所以提出了没有操作系统的计算模式,最后在局域网上得以实现,最后开发终端系统,当时在桌面系统完成。当时电脑上面的桌面计算机可以支持多个操作系统的运行。

那么2004年当时也是得到了微软的帮助,提出了透明计算的概念,主要是进一步完成了跨终端、跨操作系统平台的原则,然后提出了按需服务的概念,同时也逐步推进产业化,从产业化国内的PC公司也开始进展。

2006年网络化的操作系统是什么样的,我们提出了初步的概念。通时开始和英特尔合作,把英特尔做的NEFI,下一代的BIOS引进到我们的透明计算里来。通过从底层开始做网络化的操作系统,同时英特尔也开始研究。

09年我们把原来面向局域网上进行扩,提出面向服务的端到端的体系结构,同时把它从桌面的计算开始向无线和移动互联网方向开始研究,同时在09年上半年到今年下半年在移动互联网上提出一个模型。这是整个一个发展的过程,然后我们可以简单的比较一下这两个计算的区别,实际上国内有学者已经在08年云计算刚刚出来的时候,清华大学陈刚教授就他们写过一篇文章,实际上云计算的概念无非是前端和后端的推进问题,国外很早就提出这个概念,只不过名字不一样。

另外Google在08年10月份专门为此做了研讨会,他们来的人职位还挺高,一个是全球副大中华区副总裁,另外一个是李开复,我们三个人各讲了一个小时。

相同之处我个人认为是存储和计算分离的概念,把计算机整个给用户提出服务的角度,从面向网络的计算来进行。另外相同之处是中央管理,我们做过一个实验管理放到用户这一块,用户就很烦,但是把它放到中央那一端,你只要保证中央的关系,同时做一些改变。再有就是面向服务,我们都是强调给用户提供服务。

不同的地方云计算是从整个互联网从服务器开始,互联网开始往终端、浏览器等等,他现在做交互式家电的网络,我们实际上是走了一个从终端开始,从3C合一从终端开始往前端和后端推进。我们有一个特点,我们的终端是强调一种可管理的一种虚拟的终端,要求你前端是一个新的很小的,不要很多的。

下面谈一下这个网络计算的操作系统,我简单把操作系统稍微说一下。操作系统是什么东西呢?实际上最早定义是管理和控制计算机系统中软件和硬件资源的系统软件。没有操作系统计算机是不能动的,但是操作系统的变迁也是很怪的,最早计算机是没有操作系统的,是靠人工来设置的,一条一条弄好了再进去。

但是很慢,很多的程序,然后由网络功能的操作系统这么一个过程。还有分时的系统是Windows系列和Linux系列,再加一些协议和管理这么一个过程。

下面操作系统如何发展呢?我认为有两条技术路线,第一条把它叫做传统操作系统也好,他既有台式和移动的,主要是以管理一个单机为主,你一个单一的硬件和软件,他们之间有一个很大的特点,他的功能不是任何操作系统都越做越大。为什么会这么大?他做的功能越来越多,他把每个人做的功能都放在一起。所以这个操作系统是单机为主,功能越来越多,越来越庞大,越来越安全性下降。

另外一种是针对网络环境的新型操作系统,比如说Chromn比如说云端操作系统,透明计算操作系统。这是以网络作为开发和运行平台,不在你单一的计算机管理运行,同时他要管理整个一个自治体中的资源,他离开网络不能工作。你网络离开了,这个操作系统就废掉了。他有一个特点就是他前端的功能很少,他是为用户的服务需要,你需要什么样的服务,我给你提供什么样的服务功能,他是很小的轻载化的。

为什么这么说呢?我想讲两个例子,现在大家一看信息技术进步这么快,大家最终受益的是哪两件事情,我觉得是两个东西受益,一个就是手机。这个手机很有意思,大家原来打电话都是座机,而且很不容易打,还得去缴费。现在你走到哪手机都可以跟你沟通联系,这是改变所有人生活一个最大的东西。

还有一个是什么?我觉得是电视机,原来电视都有一个高塔发射无线电波,看几个有线频道,有的频道不好还有雪花飘,现在在北京大家都换了机顶盒,几百个台,你想看哪个看哪个,这跟技术发展是同步的。电视本来就应该有线,由于技术不够就变成了无线,现在把它恢复到本来面目就是有线的。原来电话都是有线,回归到原来变成无线。

这是技术进步要让生活变得简单就可以得到大发展,如果说技术进步变得复杂不会发展。技术不断进步,人员复杂,每个人都抱怨,现在很多人生活积极性不高,他们要花半天或者是一天要请人来修,如果计算机能和手机一样的简单,或者是你在家里看有线电视一样简单,你想看什么就看什么,就非常方便。为什么我说前面要讲网络化的操作系统要变,你把它从复杂变成简单的服务,人们的生活质量提高了,那就不用搞那么多复杂的效应了。

结合操作系统发展的实例,看看大家在怎么做,我不是说微软不好,因为比尔·盖茨每次来我们都要拜会他一下的。我老跟他们讲一个观点,他跟我关系也很好了,我说你们钱挣多了,就让你们做,你们把这个系统做得越来越复杂,这怎么应用?这个Windows7也是这样的,好象是界面做得更好了,他是跟苹果学的,人机界面都是三维的操作,他越做越大,越做越复杂,花很多人做这个事。

又带来了安全和管理的问题,比如说你用office的操作系统的07版和03版,他越做越复杂。

所以说大概现在的Windows7比Vista好多了。还有你看Android系统,他还是很大,即便你装一个小内核,很小很小,但是装再小有什么用,我们国内有很著名的企业和公司做过一些比较有名的手机,但是有的一部分为什么不成功呢?可能就跟系统太复杂有关。

你系统太复杂没有优越性,价格下不来,用户就不买你的。你一定要做出有特点的东西,他太复杂,这个系统还是很慢,但是他现在提出了开源代码,从长远发展来看他的可持续发展能力还是受到了影响。

我觉得这个Chrome和云端操作系统是很好的发展例子,因为Chrome比较小,他是前端的,这个系统是09年发布出来的。一个他前端的桌面轻载,启动很快。我是把后面的搜索、结构化程序布置构成都看作操作系统一部分。大家也可能对我的看法有不同的疑问,我也接受,因为这是我个人的看法。

然后看到在后端大规模数据存储,快速的搜索,在服务的管理这些方面都有很大的特点。我觉得如果把前端的轻载和后端的快速搜索以及大型数据的构建,如果能把它做得很好,同时再加上跨平台。因为Google有一个问题,他前面做一个浏览器,如果说你一家也好,他唯一不好就没有竞争对手,你给他投很多钱,如果说他能做到跨平台,不是一个浏览器,不是一个操作系统来做这件事情,我觉得变化会很大。

他的问题也就是我刚才讲的,他不支持其他的,他只是给他自己提供,作为商家肯定是这样的。

这是它的结构,他前端有一个浏览器,还有一个Linux系统,他通过前端的协议和后端服务器的以及他的文件系统和搜索引擎等等构建起来,来形成一个完整的体系结构。

我就在这里把这个Chrome/云端操作系统,它的管理功能分布式是通过内核和控制协议来完成。我们提出是透明计算操作系统,这是什么操作系统,它是在其他操作系统之下的,管理其他操作系统的OS。第一他管理其他的操作系统,也可以看作不是传统意义的操作系统。但是从操作系统定义的确是操作系统,他是管理这种,他管理的资源比原来的应用资源多乐很多。他把机器和机器之间的网络的带宽也起到作用。

怎么看到管理其他的操作系统呢,这个图上可以看到,他在客户端,我们起个名字就是TNOS客户端。客户端通过英特尔UFFI提出的底层的自治网络,再加上相应的底层的协议,这个协议是干什么的?他主要是传递用户的服务请求的终端信号,相当于传统操作系统的终端和软终端和硬终端。

这个协议把这个敲键盘的信号抓住送出去,送到哪?送到该处理的地方,送到后端。以后怎么办?他通过一个UFFI协议,他可以请求是哪个操作系统再把它送出去,这是可以调整的。

送到后端之后,后端再把相应的其他的操作系统给他送出去,那前端就变成一个虚拟的操作系统,也可能是重复,也可能是虚拟,这要看系统,他无非是想法、概念比较好。我们把这种想法作为一个透明计算操作系统,管理其他操作系统来替代。

另外一个特点就是跨硬件和软件平台的OS,什么平台?PC、手机、MID、LID、数字家电等等通过协议挂在一起。我们有透明计算服务端,在这上面把这些都装在这里可以发送出去,他就可以为用户提供相同的服务,比如说你要进行电话或者是其他的上网,我都可以在不同的硬件平台上通过这么一个统一的操作系统能够完成用户所需要的服务,而且用户不知道你这个服务是什么样的操作系统来完成的。

再一个就是跨软件平台,比如说我有同样的一个硬件平台,这是一个MID,比如说英特尔开发的一个新的MID技术。他可以连接有线和无线的通信网络,在这个硬件平台上面我同样也装了相应的操作系统,他有客户端等等,但是他可以支持不同的操作系统,也可以得到多种不同的服务,这都可以控制的。

另外还有一个特点,它不是运行在BIOS操作系统之上的,他是应用IOS之下的OS,现在BIOS我们现在选择的是EFI,在这上面可以支持不同的硬件,比如说X86,ARM等等。他可以做到虚拟的终端,是中央管理可管理的终端。另外太执行是一个基于块流调度执行的OS,这是前端,他发出请求,进入程序,然后通过网络进行调度,然后调度回来再具体执行。

透明计算操作系统几个特点,我后面介绍一下他的应用,我讲一下他的桌面应用,就是在有线网,局域网上做得很成熟了,现在主要是带宽方面的,一会刘总会介绍。

我讲一下桌面应用情况,在各种行业有不同的应用。我可以举个例子,在中南海警卫局,还有总参,还有东盟边境还有南沙部队,很简单的机器,他都要管理,他的操作系统维护很简单的。机器死了,我关机就又活了,这样比较方便,不用那么费劲。你要让他费劲的机器,他用几天就会觉得麻烦,我们用的最长时间的机器是用了十年,在贵州,他不用花太长的时间搞维护,他就是基本的运行,大家就可以用下去。

另外比如说在教育系统,大学、中学、小学都有用我们的机器,另外在农村大家用的也比较多。还有在政府、企业机关,用网络能力构建基本上都能做起来。

然后我再讲讲移动应用,如果把这些短信回复到个人信息,看完了就从手机上删掉了,你想再查的时候再从服务器上给你拿过来。还有电话地址,比如说你找谁的地址,现在是存在手机的存储器里面。所以我们就希望把有关的这些应用和有关的存储的这些东西全部放在后面去,或者系部分放到后面去。

你这个移动应用太多了,你自己付不起,感觉也太多了。常用的放在前端,不常用就放在后端。然后手机那么烦琐。还有一块是家电应用,你如果把管理,不仅仅是搞个交互点播,把管理很多计算机的功能也能转为家电,我估计效果会比较好一些。

举个简单例子,电视台要查一个什么东西就得一一打电话,但是现在你可以把你看的内容包括时间都可以动态传过去可以直接搜索,不需要去直接打电话,电视台就可以知道谁在看。现在美国搞互联网已经可以用这个方法调整你的带宽,你这边看着不好那边马上就可以给你换台,你所有的信息都可以查得到,还有他发现你看的不对也可以给你卡住。现在三网合一,有线网、电视网,移动网。

这块我们也可以通过这个方式来解决,我再讲讲需要研究的课题。关于项目的核高基,一个是新型网络化的操作系统,我们讲的是一个概念。但是网络化的操作系统不能按照原来的传统的操作系统,我们要把它从传统的管理的单机模式调到管理的网络资源的模式,怎么调?是什么模式,是透明计算模式还是什么模式,但是你要用新的方式去管理,不要用传统的管理方式去做。

另外就是怎么样来用跨软件、跨硬件平台的资源管理。还有超大规模结构化和结构化的海量数据一致性,所以你看Google,我们原来搞人工智能搞得几十年,但是Google出了一个新方法就一下子出来了。比如我们清华的一个教授搞了一个视频搜索,本来搜索比较长的时间,是十秒钟,那个很有意思。

你在网络上搞一个相应的图象,你要用相关的文字和内容,只要你能够像就可以进行相关连接。就像公安追踪人一样,不需要把一个人的整个面貌全画出来,你就随便画几下,他就可以把图象给你找出来,这种新的图象可以快速的搜索。

还有就是数据的深度快速搜索与浏览,还有UCweb也是几个小年轻,我说三个小伙子都是30多点,一个是清华,一个北大,一个是华南理工,我们开玩笑说是三家PC,UCweb是华南理工上的,3G门户没上我觉得挺可惜的,那个小伙子一看就是两眼发光,觉得很不错,但是很遗憾,最终没有达到打分标准。

另外就是面向用户的服务的服务主动重组重构,用户只要服务,这都是后台搞计算机,搞技术的人员做的事。再有就是相关的工具,比如说Google也好,像这种工具应该是越多用户感觉越好。再一个很大一块是新型终端,现在终端大家可以看看有一个电子书,就是终端,那不算是一个好终端,但是因为他买的显示器的基数,电子书卖得很好,赚了很多钱。搞产业就是脑袋要转一转要有新的想法。