第359章 feonix操作系统构建
项目组动员会开过后,按照日程安排,接下來就是为期一个月的培训,
培训的工作肖远并沒有参加,具体的实施他主要交给了段炎月,刘冬,以及实验室参与项目的导师王博方和另外几个研究生,培训的方式也不是传统的一个人讲大家听,而是采用了比较新颖的讨论组方式进行的,这种方式能够让所有的项目组成员,在接受培训的过程中,充分发挥各自的主动性,以一种更加积极主动的态度來接受新知识,新理念,
对于自己的能力,肖远有着充分的认识和定位,在Linux系统,以及即将要在其上开发的软件上,他自认为自己是权威,所以,课程的内容是他制定的,
但是,如何将这些内容传授出去,让项目组成员更容易的接受,却非他的强项,所以在培训的实施方式上,他充分利用了自己能利用的资源,和段炎月以及刘冬先行研究,制定出初步的培训方案,然后又和老妈杨静宸,以及王博方商量后,反复修改,最终才确定下來的,
当培训工作进入正轨后,肖远并沒有因为不用参与具体的培训而轻松下來,他还有更重要的工作要做,所以,培训的一个月时间,他每天的日程都排的满满的,出了上课之外,几乎所有的课余时间,都在忙碌,甚至陪夏九滢的时间减少了不少,
夏九滢也沒有因此产生什么抱怨情绪,相反她对肖远的工作非常支持,经常会主动到肖远的办公室找他,然后坐在一旁静静的看着他忙碌,在他累了的时候,给他添杯茶,帮他按摩一下肩背,缓解一下他的疲劳,所以肖远在这一个月里,虽然忙碌,但是却也过上了梦寐以求的红袖添香般的日子,十分的惬意,
在这一个月的时间里,肖远要把项目正式启动所需要的环境搭建起來,以便在项目培训结束后,项目组的人员能够迅速的投入工作,而不因为编程环境问題而耽误项目进度,
培训刚开始的一周,由于只是理论的学习,肖远在这一周内,在人工智能实验室安装了七台Linux主机,配置着七台主机肖远花了三天时间,其中主要的时间都花在了对这些主机内所包含硬件的驱动配置之上,之所以用了这么多时间,却是因为Linux在99年的时候,针对PC硬件的驱动程序并不是特别丰富,肖远需要从网络上寻找相应的驱动,甚至需要对其源码进行改造,重新编译,使之能够更加有效的对硬件进行驱动,
所以,当肖远把驱动全部调试好,七台Linux主机可以正常运行之时,这七台主机对其硬件的利用率已经达到了一个很高的水平,他为此专门编写了一个程序,做了一下测试,同样一段程序在他配置好的Linux主机上编译运行,运行速度比同等配置下的Windows98主机提高了将近百分之五十,这个结果简直是个奇迹,让当时在场的实验室的师生,以及项目组的成员们为之惊叹了好久,
配置好Linux主机后,肖远又在其上安装了相应的C编译器,调试器,以及需要用到的C/C基础开发库,这个工作并沒有花费多少时间,只用了一个上午就全部完成了,
接下來是编程工具的配置,在编程工具上,肖远选用了他最熟悉的vi,
vi是一个神器级的文本编辑器,是Unix系统,以及类Unix操作系统,诸如Linux,或者BSD上的标配,就像Windows上的记事本一样,拥有最广泛的用户基础,当然记事本只是一个简单的纯文本编辑器,而vi除了具备纯文本编辑器的基本功能外,通过其支持的脚本扩展,能够实现的功能几乎可以说是无限的,因此说它是神器级的编辑器,一点儿也不为过,
七台Linux主机上的vi经过肖远的精心配置,虽然表面上和沒经过配置的vi看起來一样,但是其背后所具备的强大功能,已经和windows下的VisualStudio不相上下,甚至犹有过之,而且vi在保证其功能的前提下,却能具有记事本一样的反应速度,这样的现实让实验室里一直在使用VisualStudio进行工作的研究生们都是跃跃欲试,
所有这些工作花了肖远五天时间,之后他又花了两天的时间,专门写了一个编程环境操作指南,并将之做成了Wiki的形式,暂存在那七台Linux主机之上,以后开源社区的所有的软件开发文档,都会以Wiki的形式进行编撰发布,
Wiki是一种自由文档,属于Web2.0时代的产物,在Wiki机制下,网络上每一个人都可以对参与到Wiki文档的编辑和审核中,并可以对文档进行批注,后世网络中最大的百科维基百科就是Wiki文档应用最成功的例子,而在国内最成功的Wiki案例,当属百度百科,
而肖远准备利用这种方式,來构造玄涅社区的技术文档库,这是肖远的另一个庞大的计划,如果实施成功的话,那么玄涅Wiki将会在很快的时间内吸引到大量的参与者,并急剧膨胀,甚至有可能成为全球最大的开源技术文档库,
把培训用的所有计算机环境搭建完成,肖远用了七天时间,七天后,项目组的培训正好进行到了实践操作环节,那七台主机正好派上用场,而此时,肖远的工作开始从实验室回到了他的办公室,
接下來的时间,他要做的,是构建他心目中理想的Linux发行版操作系统,,FeoniX,在Linux的内核的基础上,构建一套系统构建机制,以及软件包管理机制,
在系统构建机制上,他选择了一种类似于后世Linux发行版Gentoo那样的机制,这种机制和普通的Linux发行版有所不同,它只提供一个最小的系统编译环境,并提供了一套强大而灵活的系统配置工具,通过这套工具,用户能够对即将安装到自己电脑上的Linux系统进行源码级的完全控制,
这种控制在肖远來说,是一种自由,而相比于Gentoo的纯粹性,肖远更在意的是FeoniX发行版的包容性,也就是说,虽然FeoniX系统提供的最基本的安装方法是源码编译,但是却不排斥用户直接从网络上获取已经编译好的二进制软件包,
实际上,在肖远的计划中,会设计一个极具包容性的二进制软件包管理机制,这个管理机制将综合后世非常成功的两种Linux软件包管理机制,,基于Debian的deb软件包和基于Redhat的rpm管理机制的优点,并兼容这两种软件包,从而使FeoniX系统的软件包管理达到最大的灵活性,
当然,目前这个软件包管理机制只是一个计划,他并沒有马上将至实施,只是将之写到了FeoniX系统的设计纲要中,
做一个Linux发行版,是一件工作量浩大的系统工程,好在肖远并不打算一下子就把这个工作全部完成,他只需要提出FeoniX发行版的哲学理念,将最基本的系统做好,搭好系统框架,然后将之放到开源社区中,
他相信很快就会有认同这种理念的黑客前來,共同帮助他完成这一发行版的构建,这种建设模式只有在开源软件的框架下才有可能得到施行,也就是说,已足够开放的态度,和保障机制來海纳百川,共同完成一项伟大的事业,而对于商业闭源软件,这种建设模式是不可想象的,
FeoniX的基本框架搭建,肖远并沒有耗费太多的时间,只用了半个月时间就完成了,这和他原來在他那台Thinkpad600上所做的大量工作是分不开的,如果沒有先前的那些基础工作,他要从零开始构建一个Linux发行版的基本框架,恐怕需要的时间就不是半个月,而是数个月了,
为了增加FeoniX最初的吸引力,肖远还基于FeoniX系统平台,建立了一个名为Linux通用驱动程序设计架构的项目(GeneralLinuxDeviceArchitecture,简称为GLDA),并将自己已经设计出來的Thinkpad600的全部驱动程序的源代码放到了这个项目中,用以做到抛砖引玉的作用,
所有这些基础性的工作做好后,项目开发组的培训工作已经接近了尾声,在项目组培训结束的时候,按照计划,酝酿了将近半年之久的玄涅开源社区教育网内版和与之对应的网外版同时上线了,