ITPub博客

首页 > > > 【内核恐慌】Linux Kernel 的设计是否已经过时?

【内核恐慌】Linux Kernel 的设计是否已经过时?

作者:u_453e1a12781dea 时间:2017-12-20 09:47:47 0 删除 编辑


点击蓝色字关注"CU技术社区" 一起玩耍哦~


Linux 多年来取得的成绩毋庸多言。但最近,reddit 上有人发起了一个话题,想知道 Linux 的内核设计是否已经过时,并得到了一些有趣的答案。


这位 Ronis_BR 的用户提问大致如下:


Linux 是在 1992 年启动的,一些特性到现在都没有改变。我猜想最新的操作系统内核设计技术(如果存在…)应该较之前有很大的进步。那 Linux 内核是否已经过时?


与 Windows、macOS、FreeBSD 内核的设计相比,Linux 内核的设计有没有在哪些方面比较先进?(注意,重点是设计的先进,而不是哪一个更好)。


该话题引起了近 400 条回复,大家纷纷发表了自己对内核设计的看法,节选几条不同的观点:


ExoticMandibles:


“过时”?不存在的。Linux kernel 对现代内核的设计其实是非常了解的,只是它选择了保持传统的形式。


内核设计的核心在于“安全/稳定”和“性能”之间的关系。Microkernels(微内核)以性能为代价保证安全。如果你有极小的微内核,那么它将具有相对较小的 API surface,使其难以被攻击。而且当你有一个错误的文件时,驱动程序崩溃而不占用内核,可以无损重启。优越的稳定性!优越的安全性!一切很美好。


但这种方案的缺点是所有 IPC 永远且不可避免的开销。如果你的程序想从文件加载数据,则必须访问文件系统驱动,这意味着 IPC 要处理进程上下文切换和两次 ring transitions 。然后,文件系统驱动要求内核与硬件通信,这也意味着两次 ring transitions。然后文件系统驱动发送其回复,这意味着又一轮的两次,以及另一次上下文切换。总开销:两次上下文切换,两次 IPC 调用和六次 ring transitions。非常贵!


宏内核将所有设备驱动合拢到内核中。所以当出现一个错误的图形驱动,就可以占用内核,或者如果它有一个安全漏洞,那么可能被用来危及系统。但是,如果你的程序需要从磁盘加载某些东西,则会调用内核,进行 ring transitions,与硬件通话,计算结果,并返回结果,进行另一个 ring transitions。总开销:两次 ring transitions。便宜得多,也快得多!


简而言之,微内核是:“放弃性能来提高安全性和稳定性”;宏内核是:“保持性能,只要修复安全和稳定性问题就可以了”。而目前,大家更愿意接受后者。


Scandalousmambo:


开发一个和 Linux kernel 相同的系统,从本质上决定了它一旦设计出来就会“过时”。


KugelKurt:


尽管这里讨论的大部分内容都是关于微内核与宏内核的关系,但是最近的研究还涉及到编程语言。如果你今天启动一个全新的内核,那么就可能不会用 C 去写。微软的 Singularity 和 Midori 项目探讨了用 C#托管代码内核的可行性。


Daemonpenguin:


有一些概念,在理论上可以提供更好的内核设计。比如,理论上微内核也有一些非常好的设计选择,使得它们具有便携性、可靠性和潜在的自我修正能力。


然而,无论理论多么好,人们总是会根据实际情况进行设计。Linux 内核拥有如此多的硬件支持,那么多公司支持开发,其他内核(不管设计得多炫酷)都不太可能赶得上。


例如,MINIX 具有良好的设计和一些很棒的功能,但硬件支持很少,几乎没有人为此平台开发。



欢迎大家在评论区说出自己的看法~


编译:开源中国

www.oschina.net/news/84807/is-linux-kerne-design-outdated



近期热文

Python将被纳入高考,小学生都在学Python,你慌了吗?

称霸超级计算机,Linux 为何如此强势?

Linux 之父怒斥:一些“安全人士是TMD的白痴!”

Linus Torvalds 就指责他人白痴的过激言论道歉

Linux Shell 从入门到删除根目录跑路指南

Unix 目录结构是怎么由来的?

维密放弃高薪转行当程序员,她实力演绎了超模的开挂人生~

Linux 企业运维人员最常用 150 个命令汇总! 收藏了!

Python 这么热,运维要不要追赶 Python 的热潮?

砸 4 亿上 Win10 ,慕尼黑正式叫停 Linux 开源计划

用开源软件写的57行代码,PK掉8600万的商业项目!

我为什么放弃了 Linux 内核学习?

微学堂 


马洪光 新华三无线产品部物联网技术专家 

 

演讲时间:2017年12月21日【本周四】  20:00


内容简介:万物互联时代下,各种物联网联接技术竞相发展,在中国低功耗广域网(LPWAN)市场中,LoRa尽管不如NB-IoT关注度高,但无疑也是热门的LPWAN无线技术。本次课程将从以下几方面解析LoRa:LoRa的实际应用场景如何?技术本身有什么特点?相比于NB-IOT有什么差异?新华三如何应对LPWAN复杂的技术及业务需求?



点击阅读原文,即刻预约报名本期微学堂直播间~

原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2019-07-17

  • 博文量
    1982
  • 访问量
    17873