张尧学:创造无处不在的云服务模式

5月19日消息 在第三届中国云计算大会上,张尧学就云计算系统新服务模式等方面发表了演讲,以下内容为演讲实录:

张尧学:尊敬的各位来宾,女士们、先生们,大家下午好,非常感谢中国电子学会给我提供这么一个机会,和大家一起沟通、交流一下我个人对于云计算的一些认识和看法,以及我们在清华大学的一些研究成果,主要是想通过这个机会向大家学习。我今天的演讲分为三个方面,一个就是为什么要提出用户控制的云计算这么一个概念,第二就是我里面用的有一个词叫同一计算,用同一计算可以实现用户控制的云计算,第三个就讲讲同一计算实现控制云计算的最关键的因素就是一个同一计算和云计算的操作系统。

现在在云计算的专委会的推动下,在我们国家政府的领导下,业界对云计算是越搞越热了,大家可以看我们的会场,两千多人的会场基本上座无缺席,而且在各个地方,很多省市都在出巨资买了很多大型机,包括我们千万亿次的千核的计算机系统也都用在云计算上来了,比如重庆等等很多地方,都在建大型的数据中心,所谓的云计算系统。

但是我个人认为云计算系统它是大型计算中心吗?它是大规模的数据系统吗?当然超大规模的数据中心是云计算的重要部分。云计算最重要的,我个人认为是一种计算模式的变化,所以说通过互联网的发展,通过计算机技术和通讯技术的进步。最早提出来的单机的计算机结构正在向网络的结构发展,这势必带来计算模式的变化,而这种模式的变化就反应在我们云计算里面。另外我觉得还有一种,就是种哲学模式的变化,主要是人的思考模式的变化,至今为止的计算机都是以机器为中心的,就是我们的厂家把操作系统,把中间件,把应用的程序锁在我们的机器上,让用户来使用,这样用户没有挑选的余地,你要购买一个计算机的时候,你就必须买下它所有的中间界、音频。那这个系统呢,就会越做越复杂。我们正在通过云计算把这种以机器为中心,向以位数为中心做转变,这个转变呢,就是一种新的服务模式。最终通过云计算的实现,要让一种服务模式变成用户在不知不觉中间得到无处不在的这种服务,这才是一种真正的云计算的计算模式。

我认为云计算的核心,就是刚才最后第三个所讲的,应该为用户提供一种不知不觉的、无处不在的服务。那么这个不知不觉和无处不在的服务怎么来体现呢,我觉得有几点是非常重要的,网络计算和单机计算的最大区别就是乘除和运算要分开,我们的单机,PC机也好,大型机也好,我们所有的数据和程序都是存储在我们的硬盘上,然后通过总线,到我们的内存,然后再通过操作系统,调度到我们的CPU上去执行。当我们想实现一种无所不在的服务,我们不可能用一台机器去实现,就需要把我们那些禁止的东西、程序、手续,甚至包括我们操作系统的程序,放到网上去,也就是放到我们所谓的云上面去。这就势必带来一个程序和运算分开,当然运算可以在前端进行,也可以在指定的服务上进行。另外一个很重要的条件,就是软件和硬件互相不在一层,至今为止,大家可以看,我们英特尔的芯片、主办还有AMD都是X86,包括我们的手机,包括我们的平板电脑,包括我们现在非常流行的Ipad,都是和它的操作系统非常紧密的绑定,这样既有厂家的利益,也有我们发展进步的障碍,但是你要为用户提供不知不觉、无处不在的服务,软件的技术势必要打开,如果不打开,也只能是把所有的操作系统都做在一个硬件上去,这个机器就非常沉重了,负担就非常大了,很难把机器做到一步。第三个,就是你要做到无处不在的,不知不觉的服务,因为你必须要把这个机器做得很小,就像我们现在这个IPad它尽管可以下载很多东西,但是有限。

像我们现在在互联网上看我们的电视剧一样,在我还没看之前,酒吧我们的电视剧给下载了,看一部分,一边看后面的,一边把前面的丢掉了,这样以后呢,前端机器没有这么重的负担,所以我个人认为,要实现云计算,为用户提供的不知不觉、无处不在的服务,这三个是非常重要的。

我来解释一下什么是透明计算,我们把计算还原成一种不知不觉的用户可控的服务,他只提供这个要求,计算机网络是怎么实现这种服务的,用户不要去管,但是用户可以控制。我们把它叫做一种Client,它有几个特点,一个就是它的运算是一个虚拟化的前端,在前端上或者数据上或者台式机上你看到的只是虚拟的,真正的程序或者执行都是通过后台的调动或者是互相之间的配合来完成。另外它的存储,就是所有的程序、所有的数据放在一个网络化的云的后端,在前端存储很少,或者基本上存储程序或者数据。

它的管理是集中化的,在后端进行,然后它的中端可以做出各种牵强的、移动的,CPU也可以不要那么大的,功耗也可以做得比较低。然后它最能够实现一种用户可选择的服务,比如说我要选择在W上的应用系统,都可以通过一个比较少的终端来完成。

它的技术特点我们说有这么几个,一个就是它有一个在BIOS和传统的操作系统之间的开放结合,举个例子,在英特尔的EFI,我们做一个和后端、前端互动的这么一个透明计算的管理系统,把其他的操作系统也看作一种资源来进行管理。我们因为从操作系统的角度,因为操作系统是管理软件资源的系统,我们也把它叫做操作系统。这样呢,它有点像TCPI或者IP的×,它把硬件的主板和不同的软件操作系统能够通过接口的方式连接起来。另外,它对其他的操作系统是什么关系呢,它本其他的操作系统,都看作一种资源来技术管理、来进行调动。我们这些协议呢,当然是至今为止很少的,这里或者说是没有成为标准,我们这里写的一个UDP这是个标准协议,这个UDP不是传统的操作系统的UDP,是单位站,自己形成一个单独的协议站,这样可以把其他的操作系统通过管理模块调动到前端进行虚拟执行。

举个例子,它怎么来实现不知不觉的服务。我们有不同的平台,有PC机、有手机,有Ipad,还有家电等等。我们可以通过这样一个透明的操作系统,通过协议连接在一起,它可以去访问我们这个云上面各种资源、各种数据,给用户提供不知不觉的服务,用户只是说我要打电话,这个电话究竟通过PC机出去还是通过手机出去,通过其他的方式出去,不要去管。

再一个,它可以通过跨软件平台实现服务。比如说我通过Ipad,它可以对于不同的操作系统,不同的用户,用户可以去选择,不仅仅是可以通过硬件软件系统来实现跨平台的,不知不觉的服务,另外它的管理功能也非常强大,可以在安全性,在可选择方面都可以提供端到端的服务。比如说我这个用户端可以通过系统,原来上面没装什么东西,它是一个虚拟的可选择的,通过用户的选择进行轻松的管理,他把用户所要的东西,包括用户的操作过程,举个简单的例子,比如说我们要对一个网站,在用户进行访问的时候,我们怎么去管理它,我们可以在服务器上装一个管理软件,当你去访问这个网址的时候,给你下载一个小的管理模块,进入你的访问时间、访问内容,然后当你从这个网站退出来的时候,他就把管理模块消掉,实现一种虚拟的、集中的端到端的管理服务。

然后它的服务,因为要做的比较轻巧,它是基于一种快调度的模式来实现,我们有很多不同的终端,有手机,有平板电脑,手机和平板电脑上当然都有CPU,有外壳、有内存,通过连接去访问云,把终端,原来终端是发给我的单性主机上去,现在发到我的服务器上去,由后端处理,处理完了,它是什么需求,然后把需要进行服务的程序调度到前端或者调度到相应的计算服务器上去执行,执行完了,用户得到部分服务之后,再把这个程序给扔掉,扔掉以后又可以进行下一次请求调动,这样大家可以看到我在前端可以做得非常灵活,因为它不再存储负担,这就跟大家穿衣服一样,我要换季了,我就把冬天的衣服放在衣柜里去,穿夏天的衣服。

我们在2001年开始,就在做这件事情,我们在局域网上基本上实现了前面所说的这些功能和特点,这是我们一个例子,在局域网环境下实现多操作系统和多种类的各种应用,我们现在基本上可以在局域网还有平板电脑上可以实现多操作系统和多种应用的用户选择。比如说我们把后面看作一个云,我们从前端提出一个请求,我要用W上的应用,它就会把W的应用下载调动过来执行。当用户得到服务了,这个执行已经完了,就把它抛掉,前端又变空了,我又可以下载别的东西去执行。这么一个服务的模式。另外我们现在正在做另一个项目,就在手机和家电上面来做这个透明的计算操作,我们把这个手机叫做服务手机,我们智能太聪明不好,我就希望傻瓜一点,我本人就是傻瓜。怎么样得到服务呢,把程序全放在后面去,包括中移动做一个大计划,买它多少台服务器,但是买了服务器,你放了那么多程序干什么,所以你得要有服务手机,能从云中间把你所需要的服务拿过来,你要拿过来不完了,放在那儿干什么。什么拿过来呢?我就要手机上面的系统,主要讲操作系统或中间件平台要做得相当小,我们现在的手机,年轻人用得挺好,我老用不好,我不喜欢用,一开机,上面东西很多,我用的很简单,就打个电话、发个短信,最多收收邮件,其他功能我几乎没用,但他都卖给我了,所以我以后针对不同的用户,当然我不能说它不好,很多年轻人喜欢,大家上网,他喜欢玩就需要,我不喜欢玩我就不需要,这个怎么办?需要把手机做得相当小,采用流动的模式来跨平台,调动实现。另外我们在电视、PC机上实现服务数据、服务家电、服务PC,我们现在目前在国家项目支持下,我们服务手机进展的非常顺利,我估计还有两个月我们就能拿出一个新的东西出来。

另外,这里讲一讲透明计算与云计算的比较。我觉得相同主要是存储和计算都采用虚拟计算的模式,二、中央管理,三、面向服务。不同之处,云计算是从服务器向终端在走。云计算实际上,我觉得当时是因为网络发展那么快,特别在杨致远先生做了网站之后,如果在他后面更进一步跟进,把全世界所有的Web的概念都做进去,把很多信息都做进去,越做越大,就出来快速搜索的这个事,然后出了新的Tob1,它是一种实际发展的需要,你要从学术的观点来看,当然现在他做大了,很多人都说他那个什么。因为他做得很大,大家觉得很成功,他当时没钱,都是用的纸箱子,最便宜的。他都是一个从网络、从大型、从后端怎么发展快速找到的一个模式,没有从前端,当然他往前端走呢,也有一个困惑。当时我记得08年10月份,谷歌主管、科技的副总裁,我们三个人在谷歌的清华旁边大楼里面讨论了一整天,上午是三个人,下午是中国高校的大概七八十位计算云学的院长,我们当时就讨论这个怎么向终端反应的问题。我觉得08年当时他们还没有再讲这个,后来就向这方面研究。

我个人认为,针对云计算这个目标的实现,还是一个择物的过程,因为它还是非常大,但是×小了很多,它是开放的,不是绑定的。所以我们要看到它的趋势,当然也有人说它在做TV的操作系统,这三端差不多了,一个家电、一个移动、一个台式机,我觉得这个东西都不可怕,包括Ipad也不可怕,Ipad是存储性,不是流失的,它还是下载,让你买,要是流失的话就不占太多的前端资源,我觉得我们主要是从终端,从这个角度出发,再到后端去,我们开始就是从三次会议的角度,最早是99年国家发改委立的这个项目,这是第二个,我刚才已经讲完了,不多讲了。

第三个,讲讲操作系统的概念,这个操作系统概念有个基本的变迁过程,操作系统就是一个管理计算机系统软件,这个大家都知道了。操作系统的发展,从无操作系统,最早是××大学教授提出来的,现在有网络功能的操作系统,我觉得还是单机为主,它是一个单机的操作系统加上协议形成的,现在是一个新型操作系统时代。大家在那儿盘旋,但是没有形成一个真正一统天下的系统。以单机作为资源管理和运行平台。

另外一个就是新型操作系统,IOS,包括我们做的这个Tnos,它的资源管理和运行平台是以网络为基础…另外它是一种可载系统。另外我们把前端的功能要考虑的前瞻、虚拟、可移动。另外一个前端的启动要非常快。一个小系统,你做这么慢肯定最后没用户用了,用户的管理爱减少,要提高他的可用性和安全性。还有一点就是我们说的,把传统的操作系统也看成这样,不要把新的操作系统和传统操作系统弄成一个层次的东西。我觉得开放本身就是一件什么都可以讨论的事情,不要一讲操作系统就是一个新的Windos,我去做一个更底层的BOS管理的东西。

为什么要提出这么一个新的概念,主要考虑这么几个,一个就是单机的OS五可不可以看作一类网络资源,我们既然是网络了,我们就要重新讨论管理的基本单位是什么,在多大一个范围内讨论,还是一台机器为基本单位,还是以互联网为基本单位。还有就是底层的网络资源,现在管理是在管理,但都是分散的,网络为什么脆弱,每一个资源管理都是分散的,我们有没有办法给它进行有结构的。就是有组织地来管理,这样就可以改变它的脆弱性。还有就是这个底层资源你要进行管理的话,怎么样进行统筹、存储、调动,还有怎么样为用户服务,这些问题,传统模式都有这样的问题,解决不了,你就有新的东西出来,新的怎么出来,就依靠大家思考。

再有就是我们想做的东西,有很多观念都要变,整个会带来计算机科学的变化,比如说网络资源的调动,它是纯虚拟还是半虚拟还是部分虚拟,然后网络终端,你原来的终端是自己打到我的单机上去,这个时间是多少,还有资源的回收,还有后端的搜索、导航等等,我举一个例子,比如我这个单机终端和网络终端的区别。单机终端,我在执行的时候发现这个东西没有了,他去找一些东西。在网络中,找了前端交换去,因为前端没有硬盘就没有交换区,他可能找后端的缓冲区,再找后端的交换区,这个过程就有一个中断性的数,这就需要新的协议出来了,在终端传输这一层,需要高速的传出终端协议。

我举一个操作系统Tnos的例子,这是我们做的操作系统,这个操作系统已经实现了,我们客户端可以由很多,都不要你装的,硬件已经给你装好了,它有EFI,这个上面我们还加了SNP。IOS所讲的也是前端的,我们通过后端的交换、调动,再把后端的数据和程序拿到前端去执行。这是国际上一家很着名的大公司,它进行的比较,把我们这个Tnos拿去和微型机比较,但是它的结论对我们非常有利,我把它翻译了一下,总的认为我们的比那个要好得多。

我认为云计算会带来新的产业链的变化,这种变化既是各种新型终端的发展,我认为我们主要机会有两个,一个是终端还有一个就是应用。再有新的系统软件,促进我们软件和服务业发展。再个模式的变化,另外学术上也是单机向网络转化。这种模式就是一种,很多问题就是我们做的过程中的一些考虑,不一定正确,只是向各位同行汇报一下,希望大家提出批评意见,谢谢。