推荐阅读以更好地了解Unix / Linux内部[关闭]


54

在过去的四年中,我作为应用程序开发人员(主要是C语言)在* nix环境中工作。

请建议一些书籍/博客等,以提高我的* nix内部知识。


1
根据您的经验,仅阅读内核源代码会有所帮助。)
Eimantas 2010年

3
RTFS始终是最好的,但是有时阅读一些精简版的内容会使源代码更容易理解。
Stephen Jazdzewski 2010年

具有编辑权限的人确实应该编辑该标题。
jjclarkson

1
我目前正在马特·威特(Matt Might)的文章《每个计算机科学专业应该知道的知识》中听从建议。他推荐了Kernighan和Pike的《 Unix编程环境》,Nemeth,Synder,Hein和Whaley的《 Linux服务器黑客》,《 UNIX和Linux系统管理手册》,Love的Linux内核开发以及Stevens,Fenner和Rudoff的《 Unix网络编程》。
安东尼

1
@Anthony,这些都是很棒的资源,但是更面向用户界面/命令行。此外,尤其是Linux现在变化非常快,您需要保持最新状态。不错的资源是LWNkernelnewbies
vonbrand

Answers:


36

除了在以前的帖子中已经做过的一些很好的建议之外,还有一些关于如何理解Unix的“精神”的建议:

  • Kernighan和Pike撰写的“ Unix编程环境”:一本旧书,但它展示了Unix环境的实质。它还将帮助您成为有效的Shell用户。

  • “不耐烦的Unix”是学习导航Unix环境的有用资源。我最喜欢的之一。

如果您想成为高级用户,没有什么比O'Reilly的“ Unix Power Tools”更好,它包含Unix专业人士的集体技巧和窍门。

我还没有看到的另一本有趣且具有教育意义的书是《操作系统,设计和实现》,这是安迪·塔南鲍姆(Andy Tanenbaum)的书,其中以12k行代码包含了完整的Unix操作系统的源代码。


9
为什么一本有864页的书叫做“为不耐烦的人”?
两栖游戏2013年

12
@两栖动物我认为您还没有看过“为病人”版。
Christopher Poile 2013年

3
这不是“内部” ....
user997112



8

我经常使用的书籍/网站/手册:

  • Linux内核:本书作为TLDP(Linux文档项目)的一部分在线出版。它不是最新的,也不是内部手册,而是提供了有关内核原理和机制的有用信息和入门资料。

  • 了解Linux内核:恕我直言,这是具有操作系统设计和概念背景的初学者的最佳书。它是最新的,涵盖了2.6版的内核。网上有这本书的HTML版本,但我认为它很可能是warez。

  • 一些有关虚拟内存管理的书

在研究linux内核内部结构时,通常需要学习硬件的工作方式以及抽象提供的硬件。英特尔为此提供了出色的手册。

如果您需要研究操作系统的设计和概念,建议您阅读以下书籍: 操作系统概念


1
还有另一本关于Linux虚拟内存管理器的书。它包括源代码说明。网址:ptgmedia.pearsoncmg.com/images/0131453483/downloads/...(法律下载)
dirtybit

+1。关于“虚拟内存管理器”的书 看起来很有趣。谢谢 :-)。
赫曼特





2

Linux设备驱动程序是另一个很好的资源。这将为您提供另一种进入内部运作方式的方法。从序言:

从表面上看,这是一本有关为Linux系统编写设备驱动程序的书。当然,这是一个值得的目标。新硬件产品的流量可能不会很快放缓,并且有人将不得不使所有这些新小工具都可以在Linux上使用。但是本书还涉及Linux内核如何工作以及如何使其工作适应您的需求或兴趣。Linux是一个开放系统。希望通过这本书,它对更多的开发人员社区更加开放和易于使用。



1

我也可以建议以下两本书(其他书籍除外):

我已经广泛提及了第一个(如果我有更好的记忆力和更多的时间,我会比现在知道更多;但这是另一个故事)。我目前正在阅读第二本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.