按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
电脑刚启动的时候,程序的指针IP是指向BIOS程序地,所以首先执行的是BIOS系统的第0磁道的第一扇区为启动扇区的原因,如果该扇区出现了物理损坏,那么这个磁盘将永远无法作为启动盘使用。
简单来说,bootloaden程序地作用就是充当中间联络人,将操作系统“请”到内存当中去执行。
由于许毅用的编译器是GCC,而GCC并不能直接生成16位的代码,所以许毅只能用汇编语言来编写这个bootloaden了,等机器进入32位的保护模式之后,许毅再用C语言来开发其他内核代码。
实际上,有了这个程序,就能够将系统启动了。可以在里面直接通过中断来操作显卡,例如直接往显存地址中移进去一个字母中,显示器中就会打印出这个字母,这相当于是一个最为简单的操作系统了,只不地这个操作系统能够完成的功能非常简单,只是在显示器中显示一个字母B而已。但是,这个就已经可以在裸机上成功运行了。要想复杂一点,就是另外编写内核代码,用一个跳转语句,跳到内核代码的入口地址,这样就可以进入其他操作了。
许毅已经有这样的简单系统的编写经验,所以现在编写起来也是轻车熟路的,一路编写下来,基本上没有遇到什么大的阻碍,只是偶尔有些地方忘记了一些细节,到网络上查到了相关资料就搞定了。
只有见到实在的东西才能够调动大家的积极性。
许毅最后不但在里面实现了文件系统,还完成了最基本的图形界面,支持PS/2鼠标,技能VEGA20另外还支持符合windows标准的16位BMP格式,支持标准101键盘,中英点阵字库和800*600的16位色显模式,最后,许毅甚至在里面实现了一个简单的推箱子游戏
许毅在虚拟机中运行着这个小型操作系统,四步完成那个拄箱子游戏,心中颇有成就感。
总得来说,这个操作系统已经初具雏形,文件系统、内存管理、中断调用、GDT、IDT等等全部都已经实现。
许毅在黑客学院专门新开辟了一个操作系统专区,悄悄地将这个命名为StuOSS的操作系统源代码传了上去,另外贴上一些屏幕截图。最后还详细写了一个怎么利用虚拟机来运行这个操作系统的教程。
黑客学院的操作系统板块悄悄开张了,事前没有任何通知。大家也已经习惯了这样,在以前,那些后来增加的板块都是这样开张的。看到新板块,大家都表现出了极大的兴趣,因为每次开始一个新版块都会有新的东西出来。前两次的板块还分了两个分站出去,这次又会怎么样呢?
StuOS操作系统?!大家有些奇怪,StuOS是一个什么操作系统,甚至还专门开了一个板块?在黑客学院中,已经有Linux操作系统和windows操作系统专区了,其他操作系统因为使用人数过少而搞了一个综合的区域。
怀着疑惑的心情,大家点开了这个新开设的板块,里面只有几个新发的贴子,大家首先点开了那个顶置高亮显示的帖子。
StuOS竟然是XYZ编写的!他终于要开始编写操作系统了吗?!
大家在惊讶之余,却又理所当然。实际上,这个问题已经被很多人提出过了。现在黑客学院几乎集中了全国的优秀的计算机人才,早就该组织一个这样的项目了,编写中国自己的操作系统。
大家看到了帖子中的屏幕截图,显然被那些华丽的效果给震住了,他们没想到,XYZ不声不响的就弄出了个图形操作系统!
无论是对这方面感兴趣还是不感兴趣的人都纷纷下载了那个镜像包,都按照帖子中描述的步骤,开始进行虚拟机模拟,他们要亲自观看效果。
最后有不少人看到了运行的效果,不过他们有些小失望,因为发现这个系统原来并没有想像中的那样好,只是实现了一个桌面和一个小游戏。
当然,失望的人自然是那些外行人,那些对这方面感兴趣的人则不同,他们饶有兴致地开始阅读许毅写出来的相关教程和源代码。因为考虑到教学目的,这些源代码都写得非常规范,使用模块化格式,在重要的地方都做了必要的注释,大家看起来非常轻松。
其中讲述的很多资料,现在都非常难找到,就算是找到了没有人帮助也很难看懂。现在,许毅结合实例讲解其中的相关知识,让大家感到非常高兴。这个操作系统涉及的知识并不是很复杂,大家在总体上有了一个大致的概念,极大地刺激了他们想要进一步学习相关知识的神经。原来,一向都非常神秘的操作系统是这样编写出来的!大家按照教程中的步骤,很顺利地完成了自己的第一个bootloaden,看着虚拟机显示器中大迎出来的“hellowonld!”,他们心中的激动之情无以言表。
……
于是,黑客学院中刮起了一阵操作系统学习风潮,很多人搞入到这个项目的学习和开发上来。
第183章 类人智能
StuOS系统的发展方向是“在内核上按照国际规范支持双字节,提供GUI和命令行模式下两种中文技能环境,一个彻底的中文OS如果有可能,则可以兼容Unix/Linux和windows的文件格式,可以不加修改地运行至少是大多数已经存在的windows和Unix/Linux软件像winNT一样提供完全的GUI界面,最大限度地简化操作”
它仍然是开源的,遵守GPL协议,这样做是为了让这个项目更好地发展起来着想,不有开源才能吸引更多的人投入到这个操作系统的开发上来。同时,这也符合黑客共享、免费和自由的精神。
事实上,许毅始终都没有打算过将这个操作系统商业化,他发起这个项目,目的就是为了培养人才,积累技术。“Stu”可以理解为“Study”和“Student”,即这个操作系统本身就是为了教学目的,是一个学习型操作系统。
在StuOS公布之后,引起了国际上很多人的关注,他们纷纷猜测,XYZ这次又有什么大动作了?难道真的被他搞出来一个GUI操作系统?有了之前的经验,就算真的搞出来一个功能强大的操作系统,大家在心里上也能接受。于是。他们到黑客学院将源代码下载下来,然后仔细研究,结果却令那些内行人大为失望。这根本就没有什么技术含量嘛!用到的技术都是一些众所周知地基本技术,唯一有点看头的仅仅是里面支持中文汉字的特性。那些高手对这个项目真的有些不屑,在他们看来,这感觉就是小孩子的玩物,他们在学习技术的早期就已经玩过了。现在已经抛到一边,研究更加高级的技术去了。所以国外地那些高手大部分都是凑了个热闹,后来对此就没再关心了。
真正关心这个项目的还是中国的技术人员。这个项目在提出的初期本来就具有民族性质了,也无怪乎别人不怎么热心。但身为中国的技术人员,他们对这件事是绝对技能的。可以说,编写中国自己的操作系统是很多人地一个梦想,曾经少时都为之疯狂过、努力过、无奈过。有人默默研究。发现自己一个人的力量实在有限,于是到网络上寻求帮助,但响应者甚少。主要原因是菜鸟觉得这个技术太复杂太高深,只能站在外围摇旗呐喊。高手则往往有自己的计划,他们自己也在做同样的事情,不愿放弃自己的项目转而去技能别人的项目。于是,大家都在重复劳动。碰到问题得不到解决,老是在原地踏步,最终导致项目夭折。
现在已经不像是以前那样,名不见经传的Linus公布一个实现了简单功能操作系统就能得到全世界的高手的支持。现在很多技术都公开了,甚至有专门的教程,入门容易了,大家发现,原来基本地也就那么回呈,于是便开始自己动手编写自己的OS,可是往往只能实现几个简单的功能就再也进行不下去了。入门容易,要想真正发展起来却是难上加难,这就是操作系统编写领域的现状。
所以说,要想发起一个这样的项目并得到大家的支持,发起者一定要有实力,有名气,不然还真没多少人会来鸟你。
无疑地,许毅已经具备了这两个条件。实力摆在那,名气就更不用说,上次在MIT和ODAY的代表一战,他已经彻底成为中国计算机技术方面的领袖人物。
可以说,许毅现在随便抛出一个什么项目,绝对会有大部分人会无条件地支持,而不会去管这个项目到底是什么内容。更别说操作系统这么大地一个项目了。
所以说,StuOS公布之后,这个版块立刻成为黑客学院最热门的版块之一,每天N多人发帖子求教这方面的知道。许毅在刚开始的时候都耐心地向大家解释着有关方面的知识,并且还会向大家推荐要想看懂这部分代码需要掌握哪些知识,看哪些资料和书籍。
这个OS的代码最初只有大约六千多行,设计地知识也不是很复杂,所以几天之后,就有人已经将源代码研究透彻,掌握了其中的关键算法,许毅随即将他们提为版主,让他们帮助自己回答新人的一些问题。另外,StuOS代码编写小组也建立起来,经过许毅亲自把关,将真正有心、有潜力的成员吸收为小组成员,并且将后续的编写工作渐渐交到他们手中,直到最后他将这方面的工作全部移交完毕,让这个项目进入一种良性循环的独立运转状态,就算没有他的参与,他们也能健康而顺利地将这个项目进行下去。
※※※※※※※※※※※※※
终于可以松口气了,许毅欣慰地看着这个项目朝着预定的目标发展着,大感满意。心想看来名气大有时候也是一件好事,可以做到很多别人做不到的事情。
接下来,许毅终于又可以把精力放在人工智能的研究上来了。他最近决定自己的这套理论命名为“类人智能”,以此来区别现在国际上流行的“人工智能。”
什么是人工智能?或者说现在的人工智能是怎么定义的?在这个概念上,研究人工智能的人各有自己的理解,他们都用自己的方法为它定义,但是这些定义都有着一个相同的特点——他们的人工智能把目标定位于做出一个和人类智能有点像的东西,而不是完全模拟。也就是说,通常的研究只是部分地对人类的智能进行研究。
最早出现的人工智能是逻辑推理系统,它证明了著名的四色定理,这的原理就是把数理逻辑推理过程看成是思维方式,编程运行,以此作为人工智能。但数理逻辑推理仅仅是人类思维逻辑中形式逻辑的一种形式,只是人类智能的很小的一个组成部分。后来专家系统兴起了,以数理逻辑为基础,加入专家们的某些专业经验便成了专家系统。然后经验也只是人类作为判断依据的一种形式。再后来,人工神经网络大行其道,它的奇特之处在于,人们并不能确切的知道在解决问题过程中,神经网络是如何干的?但是问题确实就解决了。这与逻辑推理系统,系统的运行全靠人编程序的控制大大不同。但是认真地分析人工神经网络,它既不能实现人脑海量神经元的网络的模拟,又不能使这个网络产生分析、归纳、抽象这类能力。它所津津乐道的不过是一个分类。因此它也只是搞了一点像智能的东西而已。
以后的计算机学习理论、自然语言理解等等等等,研究的东西都只是人类智能的一部分,而不是整体。这样,问题就来了,我们仅仅研究人类智能的某一小部分功能,能够实现像人类智能一样的智能吗?许毅对此深表怀疑。从局部研究这些工智能确实能够为人类做出贡献,制造出更方便的工具为人类服务,但是要想凭借这些理论来创造出和人类一样或者相似的智能来,或许本身就是一个错误。这是定位的错误大家研究的起点就错了。
经过这么长时间的思考,许毅的理论焦点已经集中到这个问题上了,所以为了将自己的理论和传统的人工智能区别开来,他将其命名为“类人智能”,意为和人类智能非常相近的人工智能,而不是传统的那些和人类智能有点像的智能。
在这点上,selina和许毅有了不同的见解,她认为许毅的定位有些高了,“模拟人类的一切智能简直不可能!”。她劝诫许毅,研究问题规律都是从简单到复杂,只有将最简单的东西弄明白了,才能够理解更复杂的东西。
而许毅则告知她说:“我并没有违背这个规律,你还没有理解我的意思。我怀疑的是大家研究的起点错误,定位已经错了还能指望后面能得出正确的结果吗?我们应该首先认清楚这件事的本质,找准起点,然后以此为基础,去寻找这个层次中的最简单的问题,然后解决它”
selina回信:“你有些好高骛远了你怎么能肯定自己的研究模拟的就一定会是全部的人类智能?”
许毅则回道:“你中毒太深,传统理论的影响已经深入到你的骨子里了我只是提出这样一个假设,并且沿着这个假设一直思考下去给自己一个这样的前提,然后以此为标准去思考解决的方法,并不是没有可能”
第184章 毅兰基金(上)
早晨,苏兰早早地就跑到许毅的房间叫他气喘。
“兰兰,别闹,让我再睡会儿。”许毅连眼睛都没有睁开,伸出一只手将苏兰顺势一搂,将她也拉到被窝。
苏兰对许毅实在是没办法,他这么大的人了,还像一个小孩子一样贪睡,并且经常不按政党的作息时间睡觉,以至于生物钟有些颠倒。她趴在许毅的胸口,捏着许毅的鼻子说道:“小毅,不能再睡了,等下要赶飞机呢,你到飞机上再睡吧。”
许毅这时才记起,今天是回家的日子。于是只好恋恋不舍地爬出了被窝。
在美国的第一个学期已经结束,总得说来,许毅的收获还是不小的,让他觉得来这里读书是明智的选择。
洗漱完毕之后,许毅突然发现一件事,惊疑地问苏兰:“咦,兰兰,今天怎么没有看到郑洁那小姑娘?”这几天来,郑洁得知许毅要回去,留她一个人在这里很无聊。许毅被她烦得头痛不已,她其他什么方面都很好,就是一直在这件事上钻牛角间,无论许毅如何对她说,她都一概不理,我行我素。
“呵,没有她在身边,是不是突然觉得不习惯了?”
“没有嗯,确实有些不习惯,不过耳根清静了不少。“许毅有些自相矛盾地说道。
对于许毅的回答,苏兰倒没说什么,转而回答他刚才的那个问题:”她说今天不去机场送你了。见不得离开的场面,所以早早地出去了,只是让我给你说一声。”
“哦,这样啊,没想到她鬼名堂还挺多的。”粗神经地许毅嘀咕了一句。除了和苏兰离开许毅有点感觉之外,他对其他人什么感觉都没有,一直都是无所谓地态度。自己一个人一样地过。
许毅自己出了那个新买的笔记本,其他什么东西都没有带,反正家里什么都有,没有也可以买。但是手中依然是大包小包,那些全部都是买给别人的礼物。许毅懒得考虑。直接给苏兰列了一张清单。将要送的东西的人全部列了出来,然后让苏兰拿主意。到底买些什么东西,最后他做苦力,苏兰负责挑选,将这些东西买了回来。
给郑洁留了张字条。许毅和苏兰便赶往机场去了。
※※※※※※※※※※
“队长,他要回国了,要不要将他扣下来?”在公寓附近,某一辆不起眼的汽车中,一个声音这样说道。
“几个人?”
“两个,小鸡1号和小鸡2号。3号今天一大早就出去了。老鹰2号在盯着。”
“你的任务完成了,可以收队。”
……