【stone: 更为重要的事情?】
【linus: 每一个男人都要经历过的事情啊,你懂的,哈哈!】
【stone: 不懂。】
【linus: ……差点忘记你的年龄似乎比我要小不少了。我要去追求一位心仪的女孩,这该懂了吧?】
林鸿看到linus的话,顿时有些汗颜。他刚刚的确没有反应过来,这也不能怪他,刚刚他们还在讨论技术方面的问题,突然之间就跳跃到追求女孩的话题上,作为一个世纪年龄才十四岁的中国籍技术宅来说,能想到这个问题才怪。
【stone: 原来如此。那预祝你马到成功,早日抱得美人归。】
【linus: 哈哈,谢谢!】
【linus:对了,之前忘记跟你说了,你移植bash的时候最好是按照posix的标准来,这样可以让我们的系统获得更大的兼容性,以后那些unix的用户转移到我们的linux中来也不会有任何障碍。】
【stone:posix标准?】
【linus: 这是ieee组织为要在各种unix操作系统上运行的软件而定义api的一系列互相关联的标准的总称,最初起源于1985年的一个项目……】
接着,linus开始给林鸿详细介绍了一下这个标准的有关内容。
实际上,linus之前也对这个标准一点都不清楚,只是听学校的老师曾经说起过,因为这个标准是unix下的标准,统一规定了所有系统命令的实现细节。
于是,刚开始的时候,他便在minix的邮件讨论组中发布了一个求助帖子,寻求有关posix的相关标准下载地址,可是这个帖子并没有获得几个人的关注和回应,他没有找到posix的相关资料。
于是,他只好退而求其次,找来一份sun服务器的unix使用手册,按照上面的命令调用一个个对这些系统命令进行实现。
但是,这份unix手册上并没有详细说明这些命令所实现的内部细节,只描写了结果。
例如ls命令,手册上只描写了这个命令的结果,以及可以加上哪些参数实现,如“ls -all”可以将当前目录下所有的文件,包括隐藏文件在内,都显示出来。
具体的实现方式,则是linus按照文件系统中的原理自己想出来的,例如首先要找到当前目录的引导区,然后再分析里面的文件节点,从这些节点中读出每一个文件的名称,大小以及创建日期等信息,然后再将其显示在显示器屏幕上。
要实现这些系统调用的功能,必须对底层的基本原理非常了解,当然这并不能难倒linus,否则他还谈什么编写自己的操作系统?
他按照unix手册和《操作系统:设计与实现》中所提及到的资料,总共实现了二十来个系统调用,这正是林鸿在linux中所实现的那些。
【linus: 前一阵子才有一个朋友给我寄了几卷厚厚的posix的手册,不过既然现在你已经开始移植bash了,接下来的工作你就继续做着吧。】
【stone: 从哪里可以找到posix的手册?】
【linus: 这点我也不太清楚。不过,你身在美国,应该不难,去图书商城或者图书馆看看,应该可以找到。我这几本posix手册的出版社是……】
接着,linus将出版社和地址方面的信息全部提供给了林鸿,让他如果实在找不到,就按照这些信息去找,直接向出版社邮购也行。
&nbq软件,他愿意免费将服务器端进行托管,你觉得怎么样?】
<q的服务器端托管到另外的地方,于是linus就留心了一下。
【stone: 可以。我把服务器端的安装文件传给你。】
随着访问用户的增多,sam官方的那个服务器的性能有点跟不上了,再加上最近又出现了德州仪器公司的那档子事情,林鸿最终同意将服务器端转走。<q发布出去,让更多的人使用,并且继续改进,可是上次和凯文聊过一次之后,他的这个计划便搁浅了。<q的结构,增加其安全性,然后再发布出去。
目前这个版本,暂时就用来内部几个人沟通吧,等将服务器端移走之后,林鸿便决定推荐这个软件sam其他成员使用。
&q软件。
!@#
(全文字电子书免费下载)