第331章我想学
编写操作系统是一件非常繁杂的事情,必须对计算机系统中每一个细节都了解清楚,通电之后,每一个硬件在最初的状态,里面保存着那些数据,代码是如何一步一步地执行的……等等等等。
林鸿主要使用的编程语言,是c语言,当然,其中还会有有些地方需要用到汇编语言,例如最初引导启动的那部分代码bootloader。
c语言的确是一种非常强大的语言,几乎现在大部分流行的操作系统都是c语言,或者其变种语言所编写的,例如unix,linux,甚至inix系统下编写linux的内核,而现在,林鸿则在linux系统下,编写linx的内核。
由于林鸿已经有了不少系统编程经验,他刚开始的时候进度是非常快的。
首先,代码编写环境是现成的,根本不用再花另外的时间和精力去配置。
要想编写一个操作系统,其编程环境也是有一定复杂性的,并不说能够编写应用软件的环境就可以,而是需要特别定制,这一步通常需要耗费程序员相当大的精力和时间。因为你需要编写的系统很可能是一个全新的体系,现有的软件和工具可能满足不了你的需求,故而不得不自己动手去实现这些工具软件。
这就像是,你想制造一台机器,但是却没有现成的工
还必须自己去发明一台车床用来制造汽车的配件。可想而知,发明车床的时间可能就需要耗费一段极长的时间。
正所谓“磨刀不误砍柴工”,要想砍柴砍得快,就必须要有锋利的刀具,但是磨刀也是需要花费时间的。
而林鸿现在这一步可以直接省略了。因为他的开发环境完全可以和linux的开发环境一致,因为使用的编程语言是一样的。
其次,诸如bootloader这样的引导程序也几乎是现成的,只要修改少量的代码就可以直接将原来的进行重用。
所以,他在很快的时间之内,就将第一个例程“hellolinx”编写了出来。
重启之后,引导进入他新编写的操作系统,显示器上,便开始间歇性的打印“hello”以及“linx”这两个词语。
正如当年linus编写的第一个多进程程序一样,他这个也实现了两个线程,这两个线程同时运行在cpu中,共享着cpu的时间片。
虽然早已料到这样的结果,但是林鸿还是看了一下效果。
这是程序员们经常干的事情,虽然早就料到程序执行的结果,但是还是会选择亲自输入一遍,然后运行再看电脑执行一遍。这样可以有一个感性的认知,同时也是对自己的一种潜在的激励,看着自己亲自编写出来的程序渐渐成型,让电脑展现出各种效果,其中的自豪感是无以言表的。
熟悉心理学的林鸿自然知道,这实际上是人的控制本能,尤其是男孩子,从小就有这种控制**。他们希望玩遥控汽车,希望玩游戏,都是同样的道理。
写代码的时间过得非常快,一个个细节调试过去,不知不觉中天就亮了起来。
从今天开始,新生们的大学生活正式启动。
首先便是开班会,选择班级干部以及听辅导员大致介绍一下具体情况,同一个班级的人也相互见见面,认识一下。
林鸿将所有东西都保存好,便关闭了笔记本。
现在已经到了晨练时间,他看了看依然在床上呼呼大睡的其他人,也没吵醒他们,直接到洗手间洗漱完毕便出门了,地点是学校操场。
大学大学,首先面积肯定要大。
水木大学经过这么多年的发展,所占面积,从刚开始建校时候的450亩,到现在整整翻了十倍以上,达到五千余亩,并且这个数字还在增加当中。
在国内,一所大学就是一个城中城,平时是和外界隔离开来的,严禁校外无关人士进入学校,这的确是对学生的一种保护,但是同样也造成了一种温室效应,学生们出去之后,往往在很长一段时间内都有些对社会上的环境很不适应。
林鸿来到了体育馆旁边的操场,四百米塑胶跑道,人造草皮铺满整个足球场。
此刻是六点多一点,天刚亮不久,但是操场上却已经有不少人在做晨练了。
有体育系的学生在进行例行训练,也有其他院系的运动爱好者在跑道上跑步,甚至还有几个人在足球场上带着足球在有针对性的练习。
林鸿并没有立刻开始练功,而是决定先围绕操场跑一圈,看看环境。
还没跑多远,身后却传来了有人喊道:“老大,等我一下。”
林鸿转头一看,张达正从宿舍那边方向跑了过来。
“你竟然起床了,你喝酒不上头?”林鸿有些意外。
“我喝啤酒还好,就是肚子涨得慌。我起来上厕所的时候,正好看到你刚出门。老大,我决定了,我要学功夫!这是我一直的梦想,就算学不会也要学!”张达信誓旦旦地说道。
林鸿对此倒没怎么意外,只是淡然地点点头:“嗯,行。边跑边说,我给你介绍一下大致情况。”
说着,他便开始围绕着跑到慢跑热身,张达连忙跟上。
“我练的拳形意拳。”林鸿边跑边说,“这是一种注重实战格斗的内家拳法。”
“形意拳?我之前听说过,据说也叫心意拳。”
林鸿点点头:“是的,不过现在已经分成了好几个流派,心意拳目前在海外发展得不错。我的师承是岭南孙景泰。不过我现在要教你的,却是