相比其他系统的内核设计Linux是否已经过时?.doc

相比其他系统的内核设计Linux是否已经过时?.doc

ID:28113101

大小:24.50 KB

页数:3页

时间:2018-12-08

相比其他系统的内核设计Linux是否已经过时?.doc_第1页
相比其他系统的内核设计Linux是否已经过时?.doc_第2页
相比其他系统的内核设计Linux是否已经过时?.doc_第3页
资源描述:

《相比其他系统的内核设计Linux是否已经过时?.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、相比其他系统的内核设计Linux是否已经过时?  Linux多年来取得的成绩毋庸多言。但最近,reddit上有人发起了一个话题,想知道Linux的内核设计是否已经过时,并得到了一些有趣的答案。  这位Ronis_BR的用户提问大致如下:  Linux是在1992年启动的,一些特性到现在都没有改变。我猜想最新的操作系统内核设计技术(如果存在…)应该较之前有很大的进步。那Linux内核是否已经过时?  与Windows、macOS、FreeBSD内核的设计相比,Linux内核的设计有没有在哪些方面比较先进?(注意,重点是设计的先进,而不是哪一个更好)。  该话题引起了近400条回复,大家纷

2、纷发表了自己对内核设计的看法,节选几条不同的观点:ExoticMandibles:  “过时”?不存在的。Linuxkernel对现代内核的设计其实是非常了解的,只是它选择了保持传统的形式。  内核设计的核心在于“安全/稳定”和“性能”之间的关系。Microkernels(微内核)以性能为代价保证安全。如果你有极小的微内核,那么它将具有相对较小的APIsurface,使其难以被攻击。而且当你有一个错误的文件时,驱动程序崩溃而不占用内核,可以无损重启。优越的稳定性!优越的安全性!一切很美好。  但这种方案的缺点是所有IPC永远且不可避免的开销。如果你的程序想从文件加载数据,则必须访问文件

3、系统驱动,这意味着IPC要处理进程上下文切换和两次ringtransitions。然后,文件系统驱动要求内核与硬件通信,这也意味着两次ringtransitions。然后文件系统驱动发送其回复,这意味着又一轮的两次,以及另一次上下文切换。总开销:两次上下文切换,两次IPC调用和六次ringtransitions。非常贵!  宏内核将所有设备驱动合拢到内核中。所以当出现一个错误的图形驱动,就可以占用内核,或者如果它有一个安全漏洞,那么可能被用来危及系统。但是,如果你的程序需要从磁盘加载某些东西,则会调用内核,进行ringtransitions,与硬件通话,计算结果,并返回结果,进行另一个

4、ringtransitions。总开销:两次ringtransitions。便宜得多,也快得多!  简而言之,微内核是:“放弃性能来提高安全性和稳定性”;宏内核是:“保持性能,只要修复安全和稳定性问题就可以了”。而目前,大家更愿意接受后者。Scandalousmambo:  开发一个和Linuxkernel相同的系统,从本质上决定了它一旦设计出来就会“过时”。KugelKurt:  尽管这里讨论的大部分内容都是关于微内核与宏内核的关系,但是最近的研究还涉及到编程语言。如果你今天启动一个全新的内核,那么就可能不会用C去写。微软的Singularity和Midori项目探讨了用C#托管代码

5、内核的可行性。Daemonpenguin:  有一些概念,在理论上可以提供更好的内核设计。比如,理论上微内核也有一些非常好的设计选择,使得它们具有便携性、可靠性和潜在的自我修正能力。  然而,无论理论多么好,人们总是会根据实际情况进行设计。Linux内核拥有如此多的硬件支持,那么多公司支持开发,其他内核(不管设计得多炫酷)都不太可能赶得上。  例如,MINIX具有良好的设计和一些很棒的功能,但硬件支持很少,几乎没有人为此平台开发。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。