[Linux教程]关于Linux操作系统的理论基础学习

2019-10-22 17:03:49王冬梅

Linux从一开始显然不是像现在这样复杂的,但是毕竟Linus使它跑起来了,这就为后续的逐渐完善与发展打下了基础。这一步显然很重要,在目前的国内,我还没有听说有这样的操作系统。
如果说有一小部分人首先写了一个能跑的操作系统,那么必须在一开始就考虑一些用于实现新的OS理论的安排。不然的话,按照Linux 那种开发模式进行下去,充其量成为“Linux第二“,这显然就没有意思了。
如果摆脱了Linux,也就失去了Linux的软件框架,在这种情况下,所有软件工程方面的问题就需要更多的考虑了。不然,一个稳定的OS 是不可能产生的。
Linux在目前的小小成功具有更多其他的因素。开发一个完全崭新的操作系统不能保证它一定能够获得支持,而那些完全依靠个人兴趣编写程序的Programmer如果不能得到一定的肯定的话,我想有很多人是会退出的。Allen wing 的见解
在此说几句, 首先照目前的状况看,似乎开发小组尚未达到正式启动项目的技术储备要求,既然如此我建议先把工作重点放在充实开发小组实力上.
据我所知国内能参与OS开发过程的人还是不少的,但由于业界的学术氛围和市场导向以及相关资料缺乏问题因而大多不够全面.拉上一批高手立马出活儿恐怕不太容易.同时这样也不利于培养中国自己的Free OS群体.所以我想本站是否应该先以搜集整理相关资料,培养骨干为主,通过我们自己的努力形成持续攻关能力,而后导入正式项目,才能保证水到渠成不致虎头蛇尾.
另外不知站长注意到没有,一个成功的OS设计并非只要别人有的我都有就大功告成了,而是一定要有自己的特色-即针对某些方面的优化.尤其是在当今多种通用已经瓜分了整个业界的状况下再力图一次性开发一个大而全的新OS恐怕就不是一个襁褓中的民间技术团体的最佳选择了,因为潜在的用户与期望的业界关注都不甚乐观.因此我的建议是先专后全,即:
1.先将CODING人员分为两组,一组继续实验系统的开发,主要探索INTEL处理器的指令系统,保护模式环境建立,以及编译代码优化等(不是一般的运用就可以了,若有谁认为他已经吃透了我倒愿意出题考考他);另一组人精读LINUX及BSD源码,将其中的作业调度和内存管理等核心部件的实现搞熟(建议将结果用完全结构化伪代码归档,以利组内发布).
2.在此基础上可以尝试开发简化版的类linux或类BSD专用OS,我目前能想到的较好选择是应用网关,例如Access controller,Packagemonitor,simple firewall,以及异质主机接入和数据库接入,这样感兴趣的测试者肯定不会缺乏,命令集和人机界面可相对简单,而大量人力资源可被投入对核心算法逐个逐步的改进尝试.此时可参考单盘LINUX,QNX.
3.而后当技术储备雄厚,人才又齐全时,我们可以做一个大家伙了,这时恐怕需要不少建模高手和统计专家,他们负责根据上述专用OS项目的反馈与结论进行模型设计,基线建立及模拟应用环境,同时参考其他成熟