系统与基础设施makelinux.net
Linux 内核交互式地图
Interactive map of Linux kernel
2010 — 2018,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
这是一张 Linux 内核的交互式地图,以图形化方式展示内核各子系统(如设备驱动、内存管理、网络等)及其相互关系,帮助读者理解内核源码的整体结构。页面多年来多次登上 Hacker News 首页,被视为学习内核架构的经典入门参考。
为什么经久不衰:内核源码庞大而缺乏全局视图,这张地图多年来一直是少数能直观呈现 Linux 内核整体架构的可视化资料,对初学者和资深开发者都有参考价值。
HN 评论精选
惊讶于内核核心层包含大量设备驱动,并猜测其用于引导/回退
这张图很有意思。Linux 内核核心里内嵌的设备驱动比我预想的多,我猜大部分是用于引导或回退(比如加载“真正的”驱动)?比如 ext4、ipw2100、ac97、i8042 等。我的疑问是为什么它们在源码树中位置这么靠上。
Someone1234查看英文原文
That's a fun map. The Linux kernel has more device drivers embedded in the core than I anticipated. I'm guessing most are used for bootstrapping/fallback (e.g. loading the "actual" drivers)? Such as ext4, ipw2100, ac97, i8042, etc. Just to be clear, I'd imagine most of the above are common enough to have on almost all but the most niche Linux distributions. My question relates around having them this high up in the source tree, rather than why they're useful/what they do.
批评 Linux 架构混乱、技术债重,并以 Dragonfly BSD 的设计作对比
Linux 乱到需要一张地图。难怪它在偿还巨额技术债:在结构良好的系统里几小时能完成的工作,在 Linux 上要花几个月。Dragonfly BSD 开发者虽少却在网络吞吐量上胜过 Linux,并不奇怪——他们采用了组件化的无锁并发系统服务器方案,而不是像 Linux 那样用复杂的细粒度锁。
snvzz查看英文原文
Linux is such a mess that it needs a map. It's no surprise they're paying massive technical debt over it. Work that would take a few hours in a well-structured system does take months on Linux. Isn't surprising either that Dragonfly BSD's outperforming Linux in network throughput, despite its small number of developers. They went for a components as concurrent lockless system servers approach [1] instead of a complex mess of fine-grained locks like Linux (and FreeBSD, following them) did. [1] https://www.dragonflybsd.org/presentations/
建议从 Linux 0.0.1 版本源码入手学习内核
入门内核源码的一个好方法是阅读 0.0.1 版本,可以在这里找到:http://www.kernel.org/pub/linux/kernel/Historic/
dfc查看英文原文
It looks neat at first but I'm not sure what it is supposed to do? Maybe it does not function well with Firefox. Respectfully I am more comfortable with just using lxr myself...if not plain old tree, ack-grep, etc.
认为交互功能细节不足,实用性有限,但主站链接合集有价值
我觉得自己缺少一些关键信息,导致这张图用处不大。缩放和导航似乎没什么意义,放大后细节不够。不过主页面像是一个不错的链接合集,至少我从中有所收获。
jlarocco查看英文原文
I feel like I'm missing some key information that would make it more useful. I guess it's the "interactive map" part that throws me off. The zooming and navigation just seems pointless. It doesn't zoom into enough detail to make it worthwhile. The main page [1] seems like a nice collection of links, though, so I got something out of it, at least. [1] http://www.makelinux.net/reference
历次讨论
同类还值得读
TTY 揭秘(2008)
The TTY demystified (2008)
经典文章深入剖析了 Unix/Linux 中 TTY 子系统的工作原理,包括线路规程、终端驱动、信号与控制字符等机制。
系统与基础设施上首页 11 次 · 2009–2025linusakesson.net编辑精选为什么 GNU grep 这么快
Why GNU grep is Fast
FreeBSD 邮件列表上一篇广为流传的帖子,解释 GNU grep 为什么快:核心在于 Boyer-Moore 字符串搜索算法配合精心优化的内部循环和 I/O,让程序在搜索时“…
系统与基础设施上首页 9 次 · 2010–2022lists.freebsd.orgXplain:为普通人讲解 X11
Xplain – Explaining X11 for the rest of us
《Xplain》是作者(HN 用户 Jasper_)写的一系列 X11 长文,用他在浏览器中重建的 X11 绘图模型做交互演示,讲解 X11 的绘图模型与窗口系统设计。
系统与基础设施上首页 6 次 · 2013–2020magcius.github.io编辑精选旋风教程:为 Linux 创建极小 ELF 可执行文件(1999)
A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux (1999)
breadbox 写于 1999 年的经典教程,主题是如何为 Linux 手工构造并裁剪出体积极小的 ELF 可执行文件。
系统与基础设施上首页 6 次 · 2007–2025muppetlabs.comPostgreSQL 内部原理
The internals of PostgreSQL
《The Internals of PostgreSQL》是一本免费在线书籍,系统讲解 PostgreSQL 的内部实现,包括查询处理、并发控制、WAL、缓冲区管理等核心机制。
系统与基础设施上首页 5 次 · 2017–2025interdb.jp编辑精选