问题: 听了太多次大师的训诫:UNIX是如何如何的简约,如何如何的精致。以至于,几乎都快忘了这个通俗的道理:任何事物都会有它的生命期。我想,UNIX类操作系统应该也是一样。一个事物的腐烂,应该是从其最脆弱的地方开始吧?!那么,现代UNIX都有什么缺点呢?单从内核技术角度上有哪些呢?我想自己没有体会到显著缺点的最大原因是身在此山中且道行不深。
网友答复:...另外,现代OS对从嵌入式、移动、大型多处理器服务器到云集群的适应能力有不足。这些差异很大的设备,要涉及到调度和内存分配算法策略需求不同,但是现有OS内核只能有一个通用的调度算法和内存分配算法。Linux的调度和内存分配只好侧重服务器了。内核与应用软件分成了,Mach/Plan再搞了微内核,以上需求再对内核提出了新的需求。
我的答复:我这里不得不发表一下我的拙见了,迄今为止,有哪个内核能像linux这样经得住动态裁剪的,不是我偏心,我真的觉得linux十分不错,从大型机,服务器,pc,netbook,手机,猫等等,无一没有linux的席位,这本身就说明 linux很强。unix呢?都知道linux是类unix系统,但是这种“类”体现在接口上而不是内核设计上,我们可以看到的unix,比如 solaris,aix,hp-ux以及bsd等等,差不多都是大玩意,也许是商业原因使得unix“不屑于”往更广的方面发展,这个不属于我们技术圈的事,也就不多谈。但是linux强大的背后却是它模块化,细粒度,开放式的设计理念,模块化可以根据需求动态增删模块以及裁剪内核本身,细粒度使得上述工作更加简单,另外细粒度和模块化使得内核机制之间的耦合度降低,这样可以增加其设计灵敏度,开放式开发使得它能够瞬间捕捉到需求或者bug,然后独立地进行开发修改而不会影响别的模块,不会牵一发而动全身。这其中最最重要的就是它的开发模式是开放式的,互不相识的人们一起开发了这个内核,这个模式决定了 linux模块间必然是低耦合的,这就是它灵活的原因,灵活意味着它可以很方便的适应不同的领域的不同的需求。unix也好,windows也罢,Mac OS也好,它们就是庞大的航母或者巡洋舰,而linux呢,啥也不说,微型核潜艇吧。现在不是很多人在整什么软件工程或者OO设计吗?还看那么多案例,看看linux就可以了,看看它的开发模式,然后就决定了这一切。很多人都认为linux只适合在服务器领域晃荡,别的不说,且不管它在桌面领域输的多惨,仅凭它敢于进军桌面市场这本身不仅仅是靠勇气就可以的,还有实力,linux的架构证明它有这个实力,输的是商业策略而不是技术,再者就是嵌入式市场,windows ce的架构和NT是两码事,但是linux内核却是始终如一的,unix呢,看过BSD或者Solaris内核或者用过AIX的都会知道,它里面动不动就是虚拟化容器什么的,内存管理一向很大气,不拘小节,可是这种大气用到嵌入式领域就成了苛刻,再者嵌入式领域一般只有极少的任务,容器根本用不着。
从这个讨论可以看出,unix是有缺点,可是linux继承了它的优点,这里的意义就是,linux继承了unix所有值得继承的东西,它的开发模式决定了它只继承好的东西而抛弃不好的,隐藏再深的弊端在众人眼里就成了显然。unix的基因在linux这里延续,父亲死了儿子继承父业也是不错的。unix绝大部分的意义来自于那个时代现在那个时代已经过去,unix的那些意义也就失去了本真,进而从unix中提取的更有意义的东西被linux继承,这就是一切的一切。
分享到:
相关推荐
同时,Linux社区也有大量的文档、讨论组和邮件列表,这些资源对于学习和解决Linux内核相关问题有很大的帮助。 由于篇幅限制,未能提供更多书籍的具体内容,但可以根据内容中提供的链接,访问藏书者的新浪博客获取更...
Linux内核社区包括核心开发人员和广大用户,他们通过邮件列表、论坛和其他渠道进行沟通协作。Linux公社是一个资源丰富的网站,提供最新的Linux资讯、教程和文档,是学习Linux内核的好去处。 这本书在中文版的基础上...
在探讨Linux内核学习之前,我们要明确一点:...记住,不要试图一口吃成胖子,Linux内核是一个庞大的系统,需要时间和耐心去探索。同时,参与社区讨论,阅读开发邮件列表,跟踪最新的开发动态,也是提升技能的有效途径。
5. 参与社区:加入Linux内核邮件列表,阅读开发者的讨论,参与代码贡献。 四、内核版本迭代 Linux内核不断更新,每次版本升级都可能引入新功能或优化现有模块。学习不同版本的内核代码,可以了解技术演进历程。 五...
总之,修改Linux内核代码是一个深入学习和实践的过程,需要扎实的编程基础、对操作系统原理的理解以及良好的问题解决能力。通过这个过程,开发者不仅可以提升技术水平,还能对Linux内核有更深入的认识。
Linux内核分析与编程是IT领域中的一个深度话题,涵盖了操作系统的核心...同时,推荐阅读《Linux内核设计与实现》、《深入理解Linux内核》等经典书籍,以及参与Linux内核邮件列表和论坛的讨论,持续提升自己的技术水平。
- **参与社区**:加入Linux内核邮件列表、论坛,参与讨论,提问和解答问题,这将加速学习进程。 在"Linux内核解读入门.pdf"这个文件中,可能涵盖了这些基础知识的讲解,以及如何逐步展开对内核的学习和实践。通过...
社区中通常会有各种讨论组、邮件列表、IRC频道等,这些都是获取帮助和分享知识的平台。 另外,书中还可能强调了内核版本之间的区别和变化。随着Linux内核的不断发展和改进,了解不同版本之间的新特性和改进点,对于...
- 阅读邮件列表和论坛讨论,了解最新进展和技术挑战。 5. **实践为主**: - 动手修改内核代码,尝试添加新特性或修复已知问题。 - 编写驱动程序或模块,加深对内核工作原理的理解。 #### 五、总结 Linux内核的...
Linux内核社区有着庞大的开发者基础,他们通过邮件列表、论坛、会议等渠道进行沟通与合作,共同推动Linux内核的发展。学习如何参与内核社区的活动,有助于读者更快地成长为一个内核开发者。 书中还介绍了各种内核...
Linux Kernel Mailing List:官方 Linux 内核邮件列表,提供了开发相关的讨论和资源。 开源资源 GitHub:一个开源代码库,提供了大量的 Linux 项目和库。 GitLab:一个开源代码库,提供了大量的 Linux 项目和库。 ...
本节主要讨论了学习Linux内核的有效策略和方法: - **态度决定一切**:强调了正确的心态对于学习的重要性,鼓励读者保持积极的态度面对困难。 - **从初始化函数开始**:建议读者从分析内核启动过程入手,理解内核...