博客首页|TW首页| 同事录|业界社区
2008-08-06

现在网上关于这方面的讨论越来越热火了,我也被弄的蠢蠢欲动加入到这里面来。虽然不是编程专家,没有真正的实干参与一些大的东西的构建,但不妨碍我做这方面的思考,也许对于外行人去考虑专家才能考虑的内行的问题,天然的就能以最通俗最朴素的角度去看,当然也避免不了把复杂的问题想的简单,徒增笑料。

云计算,涉及到云和计算,我先说说计算吧。

现在文明对计算的需求是越来越多,越来越复杂。先不管那些复杂性,在我看来,计算量很大程度是海量的循环和迭代,对于后一次循环需要前一次的结果的迭代,没办法,扯不开,但是对于每次循环牵扯的东西比较固定,不依赖上次的结果的,就可以把海量的循环分成一段段,多台机器并行处理。我不知道并行计算是否是这么考虑的,如果被我误解了,就当笑话看吧,复杂的事情我想不明白,想想cpu里面所说的乱序执行阿之类的就如坠云里,不知道是不是因为没有相关性,而可以不必考虑顺序的随便来。说这么多不知所云,还是让我找个例子来说明吧,就拿两个大质数的乘积的分解来说。计算机发展到现在,质数序列的寻找是非常容易的事情了,不过反过来,一个非常大的数,要把它分解开来,看看是哪两个质数的乘积,对于现在的计算机,那是很困难的一件事,不是因为有多么玄虚,而是那种海量循环花的时间就让人吃不消。对于一个大数N,想知道它是由哪些质数的乘积,一个最笨的办法就是用2~sqrt(N)一个个的去除,看看剩下的是不是整数就行,这就涉及到循环了,不过各个循环没什么相关性,如果并行的话,就可以把这样的循环分成一段段交给不同的机器去做。不过这个办法比较笨,完全可以用2~
sqrt(N)
里的质数去筛选,不过质数序列本身没有什么规律性可言,所以要把很大的质数序列分段分发给不同的机器的话,又会涉及到海量的数据流。我们就是在这样的简单的代码但冗余的运算量和很少的数据流,以及有效的运算但庞大的数据流之间寻找一个平衡。还有就是,分段下发给不同的计算机本身,如果分的过细,分发和结果的收集工作量就很大,如果分的过粗,下层的计算机要花很长时间才能有结果,如果以后大街上,家庭里,这样的计算机也可以做一个节点的话,人为的中断也会影响运算的效率,这也需要一个平衡的折中。

下面谈一下云,我要说的云是指所有连上网的计算机以及网络,这样一个整体。我们现在网络上传送的都是数据流,即使网络软件,安装前仅仅是数据的形式下载,安装好基本上就固定了,接收网上的数据,处理后发送结果。也许一些计算集群,通过网络传送的会有代码流,接收到之后结合数据而运行,随结果变化的代码再不断的分发。还是以上面的例子来说明,如果下面的某台子节点发现m能够被N整除,其把结果发送给中心计算机之后,中心计算机就应该根据结果,看看N/m能分解成什么样的数乘积,再重新根据N/m去分段和下发任务,而不是让下面的计算机继续傻算。也许读者觉得这里面只涉及到NN/m和分段这样的数据,没有变化的代码,实际上网络计算涉及到的复杂性根本是我没法想象的,所以我只好举这样的很简单的一个例子。这里m当然还可能继续分解,又涉及到新任务的发配。。。

2008-08-05

现在Mandriva上写博,qq和firefox3再慢慢装上去。
联新浪问题不大,可惜video看不了,qq网站现在连不上。发现中文输入还不错。
有空多换几台机器试试看能不能启动,发觉linux真不错,光驱启动后,装系统本来就可以选择装在移动硬盘上。以后弄个大一点的u盘试试照不照。

棒阿,页面上音乐都可以听。

发现linux软件管理真好,自动可以在资源库搜到最新版来更新。firefox3,qq希望能早点做到各个发行版的资源库,我就省得一个个去下载搞了。

pop3又弄好了,linux的惊喜太多了,争取以后慢慢的都转过来。不过仪器测量控制方面,希望支持的越来越好才行。

qq弄上了,可惜windows下那么多功能都不支持,没有群。

列表上看不到群,有消息才能看到。

土了,上面有分栏。

恩?很多视频还是可以放的哦。

XP下word编辑‘关于云计算的思考’,email到信箱,下载到mandriva,点击打开发博。openoffice的公式做的还不够好,加油阿!

这几天折腾linux,埃,msn开始用kopete能上,后来不知怎么搞的菜单里找不到快捷方式了。后来又装,也许光盘不好了,装不上,删掉本地的库,用网络镜像的,装了个pidgin,msn可以连了。不过没有kopete那种震动了。

从办公室拿回linux下的labview8.2,装是装上了,可惜后面的gpib和搞不上。

搞不清楚怎么回事,好像和内核有关。

试了好几台机器,都可以启动系统,网卡也可以不用光盘的独自装上。真方便。

2008-08-03

IT—信息产业,包罗太广的一个领域,涉及信息处理,计算,测量,控制。。。,等等,以我的眼界根本罗列不清,那就让我以一个外行人的视角,去谈些内行人才能说清的事情,不求能说得准确和深入,这本身对我来说就做不到,只求能跳出一个斛笼,远远的端详,看个大概的轮廓,不求深入细节以至于迷途。

从中国远古的算盘,到近几百年的机械运算机器,再到上个世纪的电子二极管搭配的庞大的原始的计算机,后来晶体管,集成电路,集成度越来越高,性能越来越强大的CPU,录入方式从原来的手动开关,打孔纸带,到后来的键盘,鼠标,以及当今和以后的触摸屏,即指即画的智能识别,核心和外围终端都在提升性能和更加方便。计算机从无到有,开始的集成度不高,在现在看来简单的声卡,网卡,显卡等等外围终端的连接处理都需要单独的板卡来实现,以至于计算机要实现一个完整的功能,不得不考虑在内部实现通用的扩展,在我们眼中,计算机就是那样的一个大机箱,里面充满了扩展槽和空间。人类传递信息的方式从远古的烽烟,驿马,到后来的电报,电缆,发展到现今的光缆,以及3G,4G,以及以后会更高的带宽,网络把所有的孤立计算单元连在一起,我们每个人更加方便的和远方交流,共享着整个网络的资源。这些改变着我们的生活,教育,工作等等的方式,人类文明的进程类似于指数方式的上升。回想着一百年前的今天和当今的对比,再遥想一百年前和一千年前对比,这两个比较的差别不知是否能让我们感觉到文明进程的飞速。

计算机和网络经历了原始,从无到有,从大公司封闭的框架到标准的统一和开放,很多高端的应用不再是被一家公司垄断,人们有更多的选择,也不再接受实力强劲技术领先的公司再像以前那样制造壁垒,漫天要价,随意引领某个方向。这些人们回看IT近年的历史就能清楚地感受(引个例子http://baike.baidu.com/view/730006.htm)。本人前几篇提到计算机的集成和扩展,展望未来,这里再重复一下,芯片的集成度越来越高,一个小小的盒子就能实现以前一个大机箱计算机的全部功能,资源紧张的未来,我想必然会向这样的方向发展,通用的外部扩展接口,这样的小盒子可以随意的替换,外部扩展接口和机箱的发展,不必再受小盒子内部发展的制约,更高速,更开放,更方便,软件移植性更好的标准会有更强的生命力。这样的小盒子可以放在仪器内部,示波器,频谱仪等等,通用性,信号处理,将不局限于专用的DSP电路板,对于设计,开发产品工作量和繁琐程度都将减轻(现在就有了这样的仪器);PDA现在用的也很多了,机器人等等。技术的发展和普及,让小孩子都可以使用最新科技,游戏机,手机等等。制作越来越真实的游戏让小孩子沉迷,荒废好时光,真是可惜,我想以后最基本的编程也会慢慢得容易,完全可以从娃娃做起,不至于被游戏吸引。本人学过一些高级语言,可惜一直不会编程,想想那些繁琐的语句就头疼,更别说深入进去,直到碰到一个叫做Labview的图形化编程语言,让我也能够做一些外人看来很难的工作,实际上稍稍学学,很快就能够用起来,数据采集,仪器控制等等都变得很容易。当然这种傻瓜式编程有其局限,越容易编的东西,性能往往不如其他高级语言,精通一门高级语言的程序员往往不喜欢用这个。用顺手了,就更不愿意去尝试学学c,java等等一直感兴趣的东西,所以一直担心在系统集成级做惯了,人的惰性就很难让人深入到驱动,源码,电路设计等底层,这种很容易让小孩子学会的东西,是否会让小孩子以后不愿意去考虑底层最基础的东西?一直这么担心,不过后来发现自己担心是多余的,我们从小教育之路就是从形象到抽象,搭积木,看图识字等等,这样的过程并没有让我们变成傻瓜,相反,我们慢慢的可以考虑更加复杂的事情,挑战着我们人类智力的极限。这样的图形化编程,我想以后将不只局限在Labview这一种,只要有一个种子,就能够被GNU,GPL这样的土壤不断的催生,长大,而不至于被一个公司所垄断。

网上发现现在还有汉语编程,但感觉内核是封闭的一小群人在做,这样的敝帚自珍,不知道以后是否能做大做强,如果能摈弃短期的经济利益,我想不会这样一直处于边缘状态。毕竟现在的各种系统平台,各种各样的编程语言,已经不再是从原来的无刚刚到有,在这样充足的有的状态,要想发展,短期的利益就要舍弃。其宣传中提到什么汉语cpu,我就觉得有些搞噱头了。我们知道,不管什么样的语言要执行,最终都要翻译成机器语言,最底层都是在做着繁复的布尔运算,我们可控的输入的0,1经过繁复的与或非门,其中又不断的反复叠带。。。最后给出结果,这里只有一种语言,世界通用,什么汉语,英语等等,仅仅是我们能够容易的去操作,理解而已,就象数学,物理的教科书,里面的公式就是我们的通用语言,所有点缀其间的各国语言仅仅是让我们能够去理解。汉语编程的好处我想能够让我们不懂英语的人也能够容易的去编程就足够了,这就是最大的贡献,没必要为了宣传去搞其他什么噱头。而且程序中的变量代号,已经失去了语言的含义,拉丁字母的简单有其优点,没必要完全用汉字代替。

高级语言是一维编程,图形化编程是二维编程,也许以后的逼真的三维显示投影技术可以让我们更形象的三维设计和编程。不过不管怎样的逼真,光怪离陆,在最底层,都可以用一维的代码流表示。这些不管怎么发展,还囿于布尔运算,图灵机的模型,也许计算机的革命,编程语言的革命只有等到量子计算机萌芽的那一天。现在的量子纠缠态的光路,远程的传输,各种各样的势阱也许就象我们刚刚发明电子管那样,做着这样最原始的尝试和组合。也许未来的能够实现量子态操作的集成电路或光路还很遥远,但至少在密码,安全等领域,可以配合传统的计算机。我们传统的通信,是一方到另一方,未来人类不知道会怎样,也许可以在星球之间随意的游走,彼此关联的飞向两个方向的粒子对就是我们通信的媒介,当知道了一个粒子的状态,另一个粒子就确定了,这本身就让人感觉不可思议,可是量子的基本理论和事实就是这样的发生。测量和控制,这本身就是相对的概念,当我们通过测量确定了一个粒子的状态,另一个粒子实际上就受控的确定了。如果我们能够让粒子态向我们想要的方向塌缩,是否能实现控制的革命。编程,也许里面的循环,赋值,判断,这些基本的元素都将以我们现在难以想象到的方式改变。

生物技术的发展,干细胞,神经元的培植,也许未来的生物计算机就这样的萌芽,当然这样的路还太遥远,毕竟一个初生的婴儿,完美的大脑都一片懵懂,更何况几个神经元原始的连接。不过至少我们的记忆,思想等等这些都有了一个研究的原始的物质基础。当最终这样的根基于营养液的超脑有了意识,并且有了喜怒哀乐,有了思想,我们将如何定义这样的东西?我们是否应该把它看成一个生命?和我们的区别是否仅仅是没有手脚,不能独立的行走和代谢生存?当最终我们也象我们现在的计算机那般的小型化,把这样的生物脑配上外围的扩展,这样的东西我们是否能把他们看成生物?所有这些,都将不仅仅是计算机,编程,IT行业内所能讨论的事情,必将涉及到伦理,以及人类对生命的思考。

附上一些论坛的讨论:
acectl(www.mitbbs.cn):
Labview没有你说的那么神奇。其实它本质上和C/JAVA没多大区别,和JAVA更类似点,只不过是采用了dataflow的设计方法而以,别的语言的基本要素labview也是一一对应的。

Labview能“让我也能够做一些外人看来很难的工作,实际上稍稍学学,很快就能够用起来,数据采集,仪器控制等等都变得很容易”简单的控制仪器的关键是人家公司生产从板卡到GUI整个流程的所有软硬件,自然一切都好办,点一个按钮什么都出来了。换了任何一个其他的高级语言也完全能这样,只要你有API,什么不能办?labview能控制别的公司的仪器也是靠大家都通过的控制协议才行的。

而且,labview的这些“傻瓜”功能其实也就是给初学者看看的,你真的要开发实用的软件最后自己还是要用基本for、while这种模块搭起来的。labview其实也就是提供了一些高级的API,没什么大不了的。Labview是公司独有的软件,是不可能象你希望的GNU方向发展的。话又说回来,我看labview的dataflow设计方法是很适合现代CPU的发展趋势的。现在labview的公司里有很多这方面的讨论。 

顺便再说说你的"计算机集成和扩展的思考
"文章,就是你的blog上的http://blog.sina.com.cn/goofegg。
NI可绝对不是从PXI系统发展出来的。你可以看一看http://en.wikipedia.org/wiki/National_Instruments,NI最早是做GPIB的板卡出身的,后来弄出了Labview,就开始做系统整合。NI以前是有很多VME,VXI的总线的产品的,同时也做PXI,只不过后来这些东西淘汰了PXI才突出起来的。NI的强项和PXI没有什么关系,只不过现在PXI的东西好卖NI就多做点,以后PXI淘汰了NI很简单的就能跳到新的系统上。再说,我是看不出来VME/VXI怎么可能“紧随PC机的发展”,标准就是标准,定了以后就不改了,现在PCI一统天下,别的总线当然没活路了,有什么好奇怪的?就好象你的CGA显示器,不可能发展成VGA的。

回复:
是的,我觉得labview实际上就是把源码形式的编程翻译成比较形象的图形化流程,程序面板上的一条条线实际就是一个个变量,运算阿之类的用一些模块来代替。这和我们传统的编程方式还是有很大差别的,现在的其他语言集成开发环境,比如vc,builder等等,仅仅是界面的模块方便的搭来搭去,我们补一些函数里面的操作源码,这只是做到了labview控制面板而已,后台的程序流程没有做到labview那样。

对于for,while等,程序流程面板这些都是最基本的元素,只要现在高级语言能实现的,labview都可以做到,扩展也很方便,activex,dll,cin。。。和其他高级语言的接口都很方便。

可惜啊,是一家公司的产品,vi文件翻译成形象化的程序框图,这些都是内部保密的,如果能做成gnu,gpl就好了,我想这些对牛人都没有难度,多少超级黑客的智慧用错了地方啊,如果能做一些这样的事情就好了。 

毕业工作10年了,由于头比较英明的眼光,工作开始就接触NI的产品,labview,vxi的板卡,gpib。。。
10年前,仪器领域hp是老大,NI和其相比,不知道我拿现在的微软和google类比合不合适,希望google不要让人失望才好。那时候PXI刚出来,仪器领域编程,hp的vee和labview并驾齐驱。开始的时候NI就主推PXI,hp那时候估计还在犹豫不决,这些年过去了,估计vee快被人遗忘了。同一段历史,每个人的视角不一样,观点就会很大的不同。NI除了labview,当然有更多的牛的地方,但是我还是抱着由于其紧随pc机的扩展标准,成就了他能这么快速的发展。现在的agilent在业界的地位,估计和NI没法比了(或者是我接触他的产品越来越少),可是十年前,情形完全不一样,不知是否能说明这样的问题。

2008-07-17

随着技术的发展,芯片的集成度必然会越来越高,应用领域的延伸会越来越广,现在我们眼中的高端应用也会越来越普及。

曾几何时,个人电脑的普及让人多么欢欣鼓舞,电脑机箱内部的扩展槽,超频,DIY配置都为厂商带来了商机。第一代享受个人电脑的人群现在还记得有限的性能,超频的成功为自己带来的乐趣,虽然系统可能不稳定。可是这些实在是没什么技术含量的活动。

NIM,CAMAC,VME,VXI等工控测试,数据采集领域的总线标准,就是因为没有紧随PC机的发展,都已是昨日黄花,慢慢的被历史淘汰,变成了高档的垃圾。PXI标准因为跟随着PCI总线标准同步发展,慢慢的成就了像NI这样的大公司。安捷伦,Tek这样的公司所生产的仪器统领了科研,IT,电子,工业等所有的测试领域,做到这种程度是多少国内公司的梦想,可是依然遥遥无期。

所有高端生产线的仪器,科研,教育,同步辐射实验站所有的能谱,光电分析,国防,所有的最高速的控制和采集,太多太多,都是国外的东西占领,并且高昂的利润,我们落后的太多太多。

这些都需要一代或几代的领先的科技积累,我们领先了才会有更尖端的需求,我们国内的公司才能近水楼台,成就出那么多的领先企业。

未来离不开智能,电脑如果在内部保留扩展的话,只会造成浪费,还没有技术含量。发展的方向:内部的集成和外部的扩展。内部不管你怎么实现,只要能更好的性能,更紧凑的结构,但是对外的接口,软件等就要有个统一的标准。外部的扩展,就要有统一的标准。

个人PC必将朝那样高度浓缩发展,工控,测量等等在其外部有个统一的标准向各种应用延伸,而且也不会再像那么局限在某个方面,将向普通的应用延伸,我们DIY的部分就在这外部。比如PC和仪器的连接,早先通过慢速的串口,需要机箱内部插的GPIB卡等等,现在慢慢的通过USB,1394等直接就可连接仪器,更专业的地方,更恶劣的环境,通过线缆和PXI机箱相连,或者高度集成的内嵌式控制器直接插进机箱。

本人做测量控制的开发和系统维护,10年的经历里,对这方面还有些体会。硬件方面,10年的维护里,出现的几乎所有的问题都是风扇散热,灰尘短路,板卡连接等;软件方面,硬件过热,断电,硬盘故障等的崩溃,从开始一点点的重装系统和软件,到后来用ghost映像,烦恼,琐碎,每天对在线运行系统的担心,我想每一个和我工作性质类似的技术人员都深有体会。从工作最初的项目抢着干,到后来自己做出来的东西要自己来维护,积累的越来越多,担心和出问题的烦神也越来越频繁,后来几乎不愿再主动去找活干,等着上面分配任务,系统不出问题时每天浑浑噩噩,出问题时的随叫随到和紧张,这些也许伴随着每一个和我类似的人。

结合本人的体会,所以对风扇和散热以及多余的连接深恶痛绝,才有前几篇文章以及这篇里面对集成的推崇。PC去掉多余的扩展,越集成会越稳定,DIY和扩展完全可以从外部去做。USB,SATA越来越普遍,连接仪器和扩展硬盘容量也越来越方便,电脑完全可以做成龙芯盒子样。对于高速的PCIe接口也可以在机箱外部做个接口,就像连接PXI机箱那样桥式扩展,可以很方便的应用在工业采集和控制领域,也许以后会有更好的光纤连接的标准,将更加方便,而不需要那种多芯的还不能太长的捆线。也许散热还不是一时完全能解决的问题,但是需要散热的地方和不需要的完全可以在设计的时候就尽量分开,往往因为灰尘造成系统不稳定,或者一个芯片的烧毁,整个系统报废。

我们个人应用外围扩展的需要,以后完全能慢慢的向工控领域靠拢,这样就不会因为只局限在某个领域造成价格的高昂,让普通的消费者怯步。USB的数据采集,声音,振动,高端音响设备的连接,监控,家庭的智能化等等,这些普通的应用只会越来越多,发展的潜力越来越大;更高端的应用,外围PXI机箱扩展,FPGA在板卡上的集成,前端的处理,带宽的节省,也许以后会有更快的标准,光纤连接,更多的探测器和控制器,应用的范围太广,移动基站设备,医疗器械,工业控制,科研教育等,几乎所有的领域。扩展标准的统一,几乎所有的领域将不像现在仅限于少数的几个企业可以做,所有的都可以做,竞争的激烈,服务的提升,软件更加完善,所有这些对我们中国人都是一个契机,因为我们从来不怕挑战。

 

补充:这里面的PXI,FPGA等都只是以我目前的视角来看,也许有更快的标准,更方便的集成智能开发我所不知道的。总之计算机内部去掉一切不需要的插槽,软件和外部接口的标准开放统一,应该是以后发展的方向。不知这是否符合系统工程学原理,如果总是在一个盒子内部搞扩展的话,只会造成太多的不需要的地方的浪费。外端接口的开放,将不会再像以前一样,比如SUN,HP的高级工作站,一个简单的显示器接口都要和通用的标准做的不一样,而不得不买他们的外围设备。集成和扩展,两个方向高度的发展,从低端到高端都会极度的延伸,并且标准的统一和开放,如果哪个公司还像以前那样搞壁垒,只会是死路一条。

这样的方式,升级换代,将不必再考虑兼容问题。也许现在量子信息的光子操作,干细胞的各种功用的器官培植,神经细胞等等,这些都是以后的量子计算机和生物计算机的最原始的萌芽,这样的升级换代只要从小黑盒子内部更换就可以。外围的接口,网络,也许都会慢慢向光纤发展,外围扩展机箱的桥式连接完全不必考虑兼容的问题。只要速度更快,标准开放统一,就会有很多的公司在提供外围的支持。

技术应用的领域范围小,造成的成本和价格,以及利润太昂贵。比如简单的图像采集处理,通用的usb摄像头完成所有的功能,成本却非常的低廉,可是工控领域的一个图像采集卡,国外的大公司就动则上万元。软件接口和硬件接口的开放,更方便的二次开发,技术越来越普及,也许以后扩展机箱的板卡,普通的中学生都可以自己DIY。

当机箱内部的PCIe插槽等扩展槽通过高速的外部接口在外部扩展之后,主板可以做的非常的紧凑,现在的固态硬盘技术的发展,也许主板上直接集成一个,可以构成最基本的系统,容量扩展都通过接向外面的SATA等。这样紧凑的结构,没有损失任何的性能,随着cpu的发展,性能不断提升,应用领域太广了,如果用隔热防水的凝胶之类的东西完全包裹起来,国防,潜艇,太空等等等等都可以用得上。外部扩展的接口现在金属线缆还是主流,防水的插头不知道做得怎样了,如果以后接口发展成光纤,水下的插拔都可以了。

外部扩展方面,普通的应用,也许USB连着带FPGA等智能开发的小盒子,探头之类的就可以了,高端的PXI机箱里面PCIe桥式扩展,应用领域的广泛,工控到普通家用,量的扩大,价钱不会像现在工控领域那样高昂。那些骨灰级玩家,更高的图像效果和音响效果都可以通过扩展机箱的方便的可外部插拔的插卡完成。也许以后显示需要更高计算量的真实的3维效果,都可以通过插卡上的智能处理,等等等等。

希望本文能起到抛砖引玉的效果,一线的技术人员应该有更深的体会和憧憬。

2008-07-15

在GNU和GPL的框架下,Linux得到了飞速的发展,以其为代表的自由软件和微软帝国代表的收费软件形成了两股强大的博弈的势力。相信这两股力量在相互的博弈中,会为IT行业和整个人类的文明进程起到非常重要的作用。

往往一个思想火花的萌芽,最初并不是带有功利性质的,如果掺入了功利,也许就不会有那么强烈的光闪。互联网造就了一个平台,让我们所有人都可以参与其中,所有的软件爱好者默默地编写,无私的相互交流,所有的想法融在一起,产生更大的力量。只要能想到的,慢慢都能够实现,但是这样松散的爱好者组织做出来的东西,毕竟不像专业的公司那样,充分的分析客户的需要,市场等等,整体有序的完成一项大的工程。所以这必然会形成一种博弈,当收费软件昂贵的时候,大家就会考虑自由软件,虽然粗糙,但是至少能够满足基本的使用,越昂贵,爱好者那种无私贡献的成就感就越会促使更多的人投入到其中。但是软件帝国慢慢的庞大,最终会渗入到国计民生的各个角落,公安,银行,经济,生产。。。,所有这些对普通公众无法直接接触到的领域,软件爱好者是无法投入到其中的,这样的国计民生一定不能被某一个公司垄断,要形成多个公司之间的博弈才好,不过这方面不是本文要讨论的主题。

有计算机以来的初期,操作系统对硬件的要求促进了硬件的快速发展,形成了一个惯性,就是微软的操作系统做的越来越需要更大的资源,慢慢新出的系统就会淘汰一大批落后的电脑,而这些完全没有达到自然寿命就寿终正寝扔进回收站。IT发展到现在,是否还会按照这样的步调往下走?我们从Vista的不怎么受人欢迎应该能够感觉出一些端倪:如果微软还按以前的方式,携整个行业的规则制定者的身份之威继续这样走下去的话,最终只会慢慢的没落。

微软操作系统如果不放下其昂贵的身价,改变其收费模式,还是每台电脑都要一个昂贵的许可证的话,在电脑越来越普及,而且每个人可能不只用一台的今天,Linux只会越来越普及。存储芯片的容量不断增大,价钱越小,没有许可证使用的限制,其必然会固化在每一台电脑里,让我们满足最基本的应用。现在的技术已经完全可以做到主板上芯片固化Linux的程度,只是还没有厂家去做,不过我想这本就不是难事,厂商的电路设计和Linux开发人员配合起来,完全可以做到在主板功能不变的情况下,增加一项可以启动固化的系统的功能。

让我们畅想一下未来的计算机的情形,人类文明进程的目标是什么?我想不外乎是让我们能更加看清这个世界,寻找世界本原的真理,科技的发展,融入我们的生活,让我们生活的能够更方便,交流的更加方便,能够去更远的疆域,更快的从一个地方到另一个地方,但是所有这些,需要的最重要的支撑就是能源,但是在我们还无法去开发外空的资源的时候,有限的资源要支撑我们无法逆转的高科技,是多么的会越来越勉为其难,所以以后的发展必然是向越来越节省,有限的资源越来越合理的应用的情况下发展。

看看我们现在的电脑,是否能看出怎样的浪费?CPU需要大块的散热片,风扇散热,普通应用下不需要的扩展槽,不仅光盘,光驱也成了耗材,整个电脑都是用了几年就淘汰,电脑内部太多的可活动插槽,更多的中间环节,长时间运转吸入的灰尘,太多的不稳定性。

我想以后的电脑两条路,更紧凑的结构和更方便的扩展。里面没有风扇,插拔的扩展槽尽量的少,甚至可以没有,内存芯片以及固化基本系统的存储芯片都可以直接集成在主板上,一个小小的盒子,外面连上IO就可以启动固化的系统联网使用,放在大街两边的厅堂里。当然如果需要个人定制,更多的容量,扩展的话,自带个U盘样的东西,或从网络下载,或自带的扩展设备插在小盒子外面的高速接口就行。

对于工业,科研,需要更方便扩展的地方,初期也许需要沿着现在的路,后来也许慢慢的和上面的一样,从外部扩展。总之减少中间插拔环节,内部去掉多余的东西。这样的小盒子,没有损耗的附件,其使用寿命能达到其自然的芯片寿命,并非常的稳定。

电脑硬件发展的两个方向—更紧凑的结构和更方便的扩展,对于软件来说,同样存在着这两个方向的问题。这两个方向存在博弈,但又是统一的,在同一个时代侧重点可能偏向某一个,但两个方向又可以同时发展。个人电脑初期,硬件性能的限制,程序员把重点放在优化代码的结构和执行效率上,也许当时留下来的程序到现在还是经典。我们从刚开始接触电脑,太多的应用需求,这本身快速的促进了硬件本身以及应用范围和功能的提升。后来人们重点放在了功能的扩展上,太多的需求,也许没有过多的精力去优化执行效率。电脑硬件发展到现在,性能已经完全能够满足人们平常的基本应用,如果微软还继续把操作系统往更加庞大,更加消耗资源的道路上走,只会慢慢的走向没落。

关于微软未来发展的方向,自然有其专家去考虑,我下面只想讨论一下GNU,GPL,以及Linux。DOS系统时代,在个人电脑还只局限在单用户、单任务的时候,Linux继承以前UNIX–超级计算机才用的操作系统的优点横空出世,那时候微软和其相比简直如萤火之光。不过那时候互联网还没现在这么普及,多用户,多任务对个人应用都勉为其难的微机太虚无缥缈。应用限制了Linux初期的发展,相反后来的Windows更直观,更方便的操作界面,让Linux实际处于在后面疲于追赶的地步。即使是这样,后来的网络普及,在后台服务领域,Linux依然占统治地位。

在GNU,GPL框架下,自由软件得到了蓬勃的发展,但是我想还不够,松散的软件爱好者组织如果能拧成一个拳头,将会所向披靡。商用软件,对于天才的程序员来讲,其功能的实现是非常透明的,但是集那么多开发者的工作,太庞大,靠个人力量不可能做那么大的系统。如果能把爱好者组织起来,大家共同分工,协同做一个庞大的系统,是完全有可能的。实际上自由软件就有这样的组织结构,但我想如果能更大一些,更透明一些,像GNU,GPL公约一样,成为软件爱好者有迹可寻的规范,将有助于其发展。GNU,GPL仅仅是开源方面的规范,如果能有组织分工方面的就更好了。互联网这样的平台,让每个人分享他人的东西,同时又以他人能够分享自己的而让人欢喜。多少天才的程序员为之在上面默默不计酬劳的奉献十几年并且会奋斗一生。花钱去吃饭,毕竟不如自己做的饭好吃,如果自己做的饭能得到别人的赏识,那就更让人兴奋了,可惜我不会做饭,也就在网上空想一通,如果有用,就请捧捧场。

计算机的未来一直存在这样两种模式的争论–云和端,其具体的含义我就不过多解释了,因为本就不是这方面的专家,用专业术语说不清楚,也不懂。那就让我用自己的理解说说看法。

在我看来,不管云还是端,对于端来讲,可以把连在网络上所以其他的电脑做成个整体,看作一大片云,对于整个互联网,实际上又是由很多端构成的。实际就是整体和个体的问题,谁也离不开谁,整体由个体组成,整体的繁荣会带动个体更多的应用,相反,个体的进步是整体提升的关键。

IBM开放的个人计算机以来,intel、微软对IT的发展做出了杰出的贡献,操作系统的进步,对硬件要求的提高,让我们普通大众都可以方便的使用计算机,IT发展到现在,从原来的计算能力很难跟得上,到现在我们的个人微机计算能力极大的提高,并很多的闲置。开始为了追求速度,芯片消耗很大,对于风扇,散热片这样的外围供应商都可以赶上潮流最后成为IT行业的中坚力量。我想在以后的发展中,IT行业不应该再像以前那样追求速度,更应该环保,节能,节约资源的方向。以后的计算机应该是可以做成无风扇的小盒子形的,开始也许需要大块的散热片,后来可能散热片都不需要,仅仅是外壳就足以散掉多余的热量。当然,性能也是要提高,均衡的发展。

网络上的计算机,不外乎可以分成两类,个人使用的终端和网络上的服务器。现在网络的普及,云的慢慢扩展,应用越来越广泛。对于云来说,我们个人是无法直接用手去操纵,去干预的,他提供的服务要24小时不间断;对于端,我们日常都在接触,使用,但是并不是一直24小时用。正是由于现在个人电脑性能的提高,我们每天很多时间都在闲置,这样潜在的资源才相当可观,却被人忽视。未来的电脑,耗电少,但性能强,如果效能比做的比当时的超级计算机还要高,利用起来,就能够为我们带来财富,即使没有其高,但由于大部分时间都是待机,也可以让我们利用起来。

个人终端基本上可以分三类,家里,办公室,和公共场合。对于公共场合的,有人用的时候,插个U盘,或者从网上下载个人的办公环境,随时随地,当然使用的话可以按时间或者什么样的形式收费;当闲置的时候,启动机器内固化的系统,连着网,就是一个计算单元,运营商可以运行一些定制的程序和需要大规模计算的大客户连接,随时等待计算的请求,这些都可以有适当的收费,因为科研中心要买超级计算机的话,毕竟是一笔不小的开支。家里和办公室的,上面会有个人或公司的信息,我想即使以后云再怎样的发展,对个人和公司,不会把这些完全放心地交到网上,这样的电脑一定是会比公共场合的电脑还要好的,因为个人的工作,娱乐,游戏中心。当我们不用的时候,完全可以重新启动电脑,进入固化的操作系统,安全技术能完全的屏蔽有私密资料的硬盘,在网上作为一个裸机,为大家提供计算,或者和一些运营商合作,运行他们提供的定制程序,当然运营商要付费,如果运营商就是网络服务提供商的话,减免我们的通信费。

这样的资源就是财富,可以被我们所用,云和端还有什么可争议的呢,本来就是有一个支点的情况下,双方达到一个平衡,共同进步。

补充:公共场合的计算机,除了有人用可以收费外,闲置的时间可收费的模式可以很多,屏幕运行广告画面,后台运行科研中心的运算程序,等待调用,p2p的发展,还可以作为网络中转,均衡网络负荷。。。

2008-07-14

现在的计算机技术简直日新月异,U盘,固态硬盘等等存储介质做的可以越来越大,并越来越便宜。电脑已经不是稀罕物了,办公室,家里都有,并且还不只一台。电脑多了,给我们带来方便的同时,有时候也会弄得很麻烦。比如开发工具,写的文档,编的程序,在家里,办公室的电脑上都要装一装。很多实验室,生产线的在线控制,监测等等,这些的维护对一个技术人员来说工作量是非常的繁复。也许这些都可以随着技术的发展越来越方便。有时候想啊,如果把操作系统装在U盘里,在家里,办公室,随便插在哪台机器上都可以启动自己的定制的桌面,工作的环境,是多方便哦,不必好几台机器都要同步文档,程序等等。搜一下网络,还真发现了已经有人想到这些,并有了这样的东西,Puppy Linux、MojoPac、slax。。。,现在的技术作的,真是想什么有什么,激动人心阿。

不过现在这些做的还很粗糙,但是一个非常好的方向。我们通常的电脑,由于以前的惯性,硬件本身的bios芯片容量很小,只好把代码浓缩,最紧凑的代码完成电脑最基本的启动,之后一切就交给硬盘的操作系统。现在eprom等存储芯片容量完全可以很大,也许阿最基本的操作系统,更完善的功能都可以做在里面。

马达驱动的硬盘,时间长了自然有掉链子的时候,很多的生产线,在线的设备现在做备份系统非常的麻烦,也许都可以慢慢的通过这种可移动的操作系统技术方便的备份,故障时更换。。。

网络的普及,操作系统的打补丁,病毒库的升级都非常的方便。这样的系统几乎可以行遍天下,管他什么机器,插上就能用,对于新硬件,系统自然会在系统的维护网站上搜到相应的驱动,加到系统中的驱动库。

 

现在的虚拟机技术已经可以做到在一个操作系统上运行虚拟机软件,装载另一个操作系统,不用重新启动电脑,就可以在不同的操作系统上方便的切换,连接。。。,虽然有执行效率的问题,但是随着硬件的发展,这些都不是主要问题。虚拟机能做到这种程度,我想其脱离操作系统运行,自己成为一个独立的操作系统在技术上并不成问题。如果能做成这样的话,在现在的存储芯片容量这么大,并且这么便宜的今天,把其存在主板上的芯片里,就可以是个简单的操作系统,对于不同的操作系统,不同的指令集,都可以在同一台电脑上运行。比如,龙芯的指令集和intel系列的不同,windows系列的操作系统不能在龙芯上运行,龙芯电脑上,当在BIOS中设成本机硬盘启动时,可以按现在的情况启动硬盘上的Linux,如果在BIOS里面设成先运行固化芯片上的虚拟机,可以通过虚拟机来装载硬盘上的windows。随着U盘操作系统的成熟,在其相应的指令集的机器上,自然可以设置BIOS直接从U盘启动,如果非其装系统时的机器的指令集,就可以通过虚拟机来装载。

如果真的能结合虚拟机做到这种程度,龙芯是否还会愁出路?集中力量把性能弄起来,不同的操作系统,不同的指令集,通过虚拟机都可以运行起来。加上能耗的优势,小盒子里没有风扇,不需要大块的散热片,这样的电脑自然不会积攒灰尘,长时间后不会有短路的不稳定性。。。

当然实现这些任重而道远,虚拟机的技术,龙芯本身,等等。。。

所有这些靠我这样的空想不可能实现,需要太多的专业技术,专家的实干才行,可惜我都不会。 

补充:现在技术的发展,集成度越来越高,以前声卡,网卡等等都需要单独一个插槽,现在都可以集成在主板上,从前技术的限制,接口简单的串行,追求传输性能的并行,传输距离很短的排线。。。,现在系统频率越来越高,原来的瓶颈变成了瓢,从ide到SATA。。。,这样很多的扩展通过串行非常的方便,并且可以把接口做到机箱外面。机箱、主板。。。完全可以做的很小,我们现在通常的电脑太费材料了,资源越来越紧张的情况下,浓缩会是发展的趋势。

 

上面提到虚拟机和龙芯,有人提出虚拟机脱离操作系统自己成为独立的操作系统很难做到。实际上暂时做不到又有什么关系呢,至少目前的技术,在主板的芯片上固化一套紧凑的Linux,linux下装上虚拟机软件,这个在技术上一点问题都没有。很多笔记本电脑的一键式恢复系统这些都做得很成熟了,仅仅把要恢复的系统换成linux,下面装个虚拟机软件而已。

现在的pc机性能越来越好,个人电脑的性能几乎就能赶上以前的超级计算机。但是现在很多电脑的计算性能都在闲置。如果能把之利用起来,将是非常大的资源。网络计算应该是个很好的方向,比如DNA序列解码阿什么的,在网络上,愿意参与的计算机被分配去解一段段,最后连起来,也许很多人怕自己机器的安全,但至少可以在一个科研中心内部的电脑上一起参与,有信用的科研中心,公众信任的计算工程愿意参与的会越来越多,非常庞大的资源。。。

网络上的很多计算机联合在一起的计算能力将会超过现在的最强的超级计算机,民众关心的计算工程真切的参与其中,对科学,对教育本身都会是非常好的作用。

也许又会被人想成痴人说梦,实际上现在的技术,只有我们想不到的,没有做不到的。

 

读张亚勤先生的未来计算在云端,真有一种醍醐灌顶,豁然开朗的感觉,大牛的智者就是有超人之处,里面对未来计算的场景描绘真是激动人心,专家就是不一样,里面的专业名词,对我们老百姓虽然感觉虚无缥缈,但是对专家就像是一条条道路,通向未来的方向,切实可行。

下面让我站在智者的肩膀上,以我的话能把他所描述的场景说得更通俗一些:

未来的计算机不会像现在,虽然已经很普及了,但是对很多人来说还是高科技,稀罕物,会像公共电话亭一般,在大街两边店铺的厅堂里,走廊上,非常的普及,每一台电脑就是一个计算资源,平时没有人用的时候,启动本身主板上的操作系统,连着网,随时响应远方的计算指令。笔记本虽然已经很方便了,但是未来也许我们揣个U盘那样的东西,随处都可以找台可用的电脑,插进去,就可以启动我们U盘里面的操作系统,个性化的办公环境,随时随地。更进一步,也许U盘都不需要,我们通过运行固化在计算机操作系统上安装的虚拟机,就可以从网上下载我们自己的工作环境。编的程序,可以网络计算,运行起来,可以就近或者在整个网络上,搜索闲置的计算机,共同分工为一个目的协同工作,再返回结果。

也许很多人觉得太虚无缥缈,但是未来的计算资源也许就是财富,让很多的运营商像现在争抢固话市场一样,在每一个街区去占领,科研中心,天气,地震,基因等等太多需要大规模计算的单位,就像现在运营商争取大客户般,成为运营商争夺的对象。。。

手机的智能化,计算机的到处普及,也许笔记本都会慢慢的边缘化。。。

2008-07-11

这个世界真是奇怪,一个公司推出了一款据说领先几年而已的手机竟然受到世人争先恐后的追捧。网上到处都在谈论他,媒体因为有他的报道而吸引网民的眼球,不管了解不了解,因为谈论他而沾些时尚,有他的人自喜于别人的羡慕,很多没有的早就准备好钱袋,即使排队也要买到。不知这个公司是否因为自己的领先而过分膨胀,一出世就能改变世界的规则而参与分成,或者原来的规则本就不是很合理,因为他的出世而挑战强权。所有的运营商也因为要和他沾点边而觉得自己高贵,更能吸引高端消费人群的赏识,破天荒地因为一款手机放下自己从前高高在上的姿态,到处都在谈判,竟然还以不妥协当成炫耀的资本。晕掉了,不就是一个手机么,一只比普通的机长的漂亮点的,先进点的机而已,至于被人这么追捧么?就像皇帝的新装,衣服本来就是用来穿的,抱着太多的幻想,最终失望只会更大。我就不信因为谈论他就会显得时尚,或者因为拥有他灵魂就会显得高贵。

唉,我也不能免俗,为了一个用来打电话的,也就多了点功能的东西,加入到这样的漩涡,不过希望自己只是拿个搅屎棍子远远的搅和搅和,不染上一身味道才好。

2008-06-13

我们落后了这么多年,被国外的巨头赚了太多太多的血汗,并且以后很长远的一段时间还将继续这种情形。但我们民族的脊梁们从来不甘心这样的情况一直永远持续下去,一直在默默地抗争。龙芯,TD-SCDMA…所有这些都那么让人激动人心,就像是一粒火种,摇摇欲坠的长大,别人扼杀不掉我们的奋争,可很多这样的萌芽总是被我们自己人给消灭。在网上看到龙芯的产业化是那么艰难,国人都好着急,面对intel,微软,我们很多自己人都觉得发怵。不过我们相信虽然艰难,总会慢慢的长起来。网上很多人都为之出谋划策,不管好的坏的,俺也说说。

Linux,汉语编程,学电脑要从娃娃抓起。。。
龙芯现在在linux平台下能很好的运行,外围的产业链和软件都还跟不上,汉语编程现也经过萌芽阶段,有了自己的开发环境,并且能真正的独立使用中文编程。虽然还做不了大东西,至少小程序都可以做。

小孩子学电脑,也不需要那么多的大程序,能编小程序,益益智就很好了。所有我觉得如果汉语编程环境能在linux很好的开发运行起来,并能编写程序,那和龙芯配合起来做成一套简单的系统,如果能有政府部门慢慢的在中小学推广,孩子从小就可以在linux下用汉语编程,这将会是一个很好的开始。

以后的情形大家尽可以想象。。。
能做到这些,很多艰巨的事情要做,龙芯,linux,汉语编程本身,以及我们政府的推行。。。
暂到这,该回家了。