操作系统的理论牵涉的几个方面,每一方面都很深奥.我大致先说说我个人在大方向上的看法:
1.作为一个现代的OS应该是基于微内核结构的,微内核机构把OS最基本的功能放入内核中,这使内核的代码简洁,受保护的内核将使OS更稳定,,另外将一些OS功能放在内核之外,使得定制OS成为可能,可以根据需要组合不同的功能模块,比如:对一个客户终端来说,文件系统应该在服务器端,它本身不需要文件系统,对一些固定功能的终端来说,甚至图形界面都是多余的.
2.OS应是基于客户端的,我们不是开发一个高性能'并行的服务器OS,有LINUX就够了.我们的OS是灵巧的,小的.和WINDOWS相反,我们的OS启动迅速,身躯小巧,运行稳定,安全.
3.OS是多层结构的客户端,目前PC上的许多功能应该移到应用服务器
3。以某种操作系统为基础,做一些试验,比如把MINIX的文件系统去掉,把它作为客户OS挂在LINUX端。
见解一:
我认为没有那一个操作系统能满足所有用户的要求,大企业用户,小企业 用户,家庭用户的要求各不相同,将来不可能只存在一种操作系统,无论是WINDOWS,还是UNIX,LINUX都无法一统天下.那么目前缺少那一种OS呢?我个人认为随着计算机产业的发展,PC变得越来越强大,以至于常常被作为服务器来使用,而作为客户端使用的机器是用不着这么强大的,实际上PC复杂的功能,反而使许多用户无所适从.WINDOWS就是一个典型的例子,在它作为一个业务终端时,由于它庞大的身躯,启动缓慢,管理复杂,对硬件要求高等等.注定了它不适合作为一个业务终端,有意思的是,它却是用的最广的业务终端OS,这只能说明能替代它的OS还没有出现,SUN的JAVA OS,CITRIX的WINDOWS终端,以及NC都是一种可能,但离成熟还很远.目前,是我们开发这种OS的好机会。尽管我们中国的技术储备还不够。但只要发扬我们中国人的钻研精神,我们是有机会的。我建议开发这样一个OS,它有如下特征:
1。建立在x86芯片上。
2。内核简洁,短小,是rtos.
3.有与众不同的图形界面系统,耗用的系统资源少。
4。具有良好的可伸缩性,既可以作为嵌入式OS也可以作为网络终端OS。
5。在SERVER端有丰富的程序,可以和LINUX,UNIX组成多层体系系统,应用逻辑在应用服务器上运行,本机只完成业务程序的显示和一些简单的逻辑。
见解二:
我个人认为开发一个新的OS有几个好处:
1。作为一个中国的电脑爱好者,自己开发的操作系统显然从头到尾都是支持中文的,如果真的成功的话,那么对广大的中国人来说那就是一个大福音了。这样的话,向其他多字节内码语言的转换也就比较容易了。
2。从Linux操作系统本身而言,应该说他并不是一个以技术领先的操作系统,它的成功完全是一种新的软件开发模式的胜利。如果自己从头写OS的话,我认为可以摆脱这种低技术成分的束缚,完全去实现一种崭新的,支持新技术的操作系统。但是,要写一个完整的操作系统显然不是那么容易的:
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项目的反馈与结论进行模型设计,基线建立及模拟应用环境,同时参考其他成熟
的OS,吸取它们的优点,针对它们的弱点,设计优化的全功能内核,这是一个认认真真的OS系统所必不可少的.
4.当核够硬的时候,包上友好,丰富的SHELL,我想这个新生儿就可以进入他的生命周期了.
上是我的一些浅见,贻笑大方了,但我想兵马未动,粮草先行这个道理还
是对的.循序渐进的策略也是实际的.谨供诸位参考.
[Linux教程]关于Linux操作系统的理论基础学习
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://www.heiqu.com/1ab61a2eb4c0a9af9b1c3c6e14207754.html