嵌入式Linux有哪些好书推荐?|知乎好书分享

最近在知乎上看到一个问题,“嵌入式Linux有哪些好书推荐?” 在我研究生期间,我也喜欢收集一些书籍。每次看到京东的活动,都忍不住想买些书回去。

随着时间的推移,我买的书越来越多,但把它们都读完是不现实的。后来发现这本书不是更多,而是经典。

买书搬家很麻烦。我从网上收集了一套电脑电子书,挑选了我读过的好书与大家分享。

在这里我推荐我读过的更好的书,从入门到进阶。

以下是我在学生时代买的一些书,其中大部分我还没有读过:

我编的书可以在这里免费使用。都是嵌入式领域的经典书籍。从入门到深入了解,都是整理的!

我推荐一个 github 仓库,里面包含了数百本经典的嵌入式和计算机书籍。你可以给它加星。下次找书时,可以直接在上面搜索:

github链接:

gitee 链接:

@

数据结构与算法ARM系统与架构操作系统计算机组成原理计算机网络Linux环境Linux驱动Linux内核编程语言C《C入门加》

本书几乎涵盖了C语言的所有知识点,书中每一个语法细节都有很多生动简单的例子。同时给出程序的运行结果。学习起来会很舒服,不会那么无聊。

我一直认为,能把printf函数解释清楚的书一定是好书。从本书对printf函数的讲解篇幅,可以看出它的专业性。

这本600多页的书是我仔细阅读的第一本C语言书。如果不是因为它有趣且专业,详细但不是手册类型的书,我当然不会阅读它。

总觉得厚厚的书通常废话很多,但这本书还是值得细细阅读的。很多时候,书中提到的问题恰好是困扰你很久的问题。看完有种想抱抱作者亲亲的冲动!!

总的来说,前者比较基础,后者难度稍大。前面很简单,但有很多东西比其他书更胜一筹,后面有点难度,但不虎头蛇尾,这部分通常很有趣。

强烈建议想学好C语言的人一定要读这本书。如果你也能汇编知识,有探究的精神,那么这本书真的会给你一种成就感和共鸣!

新手学习的时候,每个例子都要自己打,要想学好,距离看懂代码和会写还是有很大差距的。

“C 和指针”

在学习了C的基础理论之后,如果你想从初级到中级,这本书无疑是最好的参考书。指针可以说是C语言的灵魂。如果你查看 Linux 内核源代码,你会发现指针无处不在。许多引人注目的技能都是通过指针来实现的。

这里需要提醒一下,虽然这本书的书名是《C与指针》,其他的C语法都有详细的介绍,但是关于指针的介绍更多的是书中的内容。

《C 陷阱与缺陷》

本书是根据 Andrew Koenig 于 1985 年在贝尔实验室发表的一篇论文,结合他自己的工作经历改编而成。作者写这本书的出发点不是批评C语言,而是帮助C程序员绕过编程过程中的陷阱和障碍。

与那些大的电脑书相比,这本只有100多页的小册子会让你想读一读。本书内容短小精悍。

全书共分8章,从词法分析、语法语义、连接、库函数、预处理器、可移植性缺陷等方面分析了C编程中可能遇到的问题。

读完这本书,在自己写代码的时候,一定要回想一下这本书,防止自己犯同样的错误!

《C 专家编程》

本书展示了最优秀的 C 程序员使用的编码技术,并有专门的章节介绍了 C++ 的基础知识。

书中对C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了深入的讲解和分析。全书抽取几十个例子进行讲解,对C程序员有很高的实用价值。

C++《C++入门》

这本书完全是从专业开发人员的角度编写的。深入透彻的讲解了基础知识,让你了解什么是C++开发思路,讲解实际开发中的很多用法、问题和注意事项。等待。

可以感受到作者的高水准和认​​真的态度。读完本书,你会对整个C++语言、代码的标准化、内存管理机制、效率问题等有更清晰的认识。少加点。

《有效的C++》

这是一本 C++ 入门书,Lippman 之所以写这本书,是因为 C++ Primer 对于初学者来说太笨重了,但这本书是从一个不同的角度——对 C++ 的性质和组织进行讲解,可以帮助初学者对这门语言有一个大致的了解。

对于初学者,不要一开始就陷入C++的细节,否则会有一种“不知道庐山真面目,就因为你在这山里”的感觉,也有C ++中的许多语法。. .

《STL源码解析》

我无法用简单的语言来描述这本经典书籍。我只能说,如果学过C/C++的人没有读过这本书,那就太可惜了。

在这本书中,侯杰老师分析了STL中的各种组件,给出了一些STL的使用例子c语言从入门到精通电子书下载,并解释了STL中几乎所有的功能,并分析了容器部分使用的数据结构。详细解释。

尤其值得一提的是,书中有大量的插图,可以帮助读者事半功倍地理解数据结构和算法。看得出来,侯杰先生下了不少功夫。每个 C++ 程序员都应该阅读这本书。

数据结构与算法《大华数据结构》

如果您不是像我这样的计算机科学专业的学生,​​并且想自学数据结构并对算法有基本的了解,那么请从此类书籍开始。

一本非常不错的数据结构入门书,每章都会有场景示例帮助理解数据结构,书中的代码也可以边调试边学习。

《数据结构与算法分析-C语言描述》

学完C语言,别耽误太久,直接看吧,书很好,讲解透彻简洁,虽然范围有点广,但是比国内大部分的要好很多。挑战运动技能。

虽然这本关于算法的书只有 300 多页,没有算法介绍那么大,但涵盖了很多算法设计技术。

ARM架构与架构《ARM架构与编程》

本书可视为ARM参考手册的中文翻译版。如果阅读 ARM 英文手册有困难,可以参考这本书。

《嵌入式 Linux 应用程序开发完整手册》

魏老师写的完整手册非常全面。从裸机到驱动程序再到嵌入式应用程序。结合开发板和视频吃效果更好。

操作系统“现代操作系统”

这是一本介绍计算机操作系统的非常好的书。当我读到它时,我有一种崇拜的感觉。是入门级操作系统的必读书籍。

各个层面的介绍够广,够深。上一章各方面的综合介绍也很有意思,最后的相关书籍推荐也好评如潮。这也是我认为关于操作系统原理的最好的书。非常适合初学者阅读操作系统,能全面了解操作系统原理。

缺点:中文翻译版本不强,有些地方可能会影响理解,但基本意思是不会有明显的出入。如果时间和精力允许,建议慢慢吃原版;如果你真的没有那么多精力,翻译版也可以。

《操作系统——本质与设计原则》

这本书类似于《现代操作系统》,只需阅读两本书中的一本,另一本可以作为参考书。

《操作系统真相还原》

强烈推荐这本书,但建议阅读前先阅读操作系统原理教材。你会发现很多在阅读教材的过程中出现的问题,都被本书解答了。

教科书为了让操作系统原理通用,会刻意抽象很多原理,回避细节,所以读起来常常感觉云里雾里。而且为了显得权威,语言会更加生硬和晦涩。

本书将解答所有因知识限制而难以描述的疑惑,让你对操作系统有更清晰、更全面的认识。

曾经对操作系统的很多实现细节有疑问,但在谷歌上找了半天也找不到满意的答案。因为是很详细的东西,缺少关键词就像大海捞针。如果关键字太多,结果往往很少,答案是无关紧要的。,就算我能找到很多,我都会讲,我就不深入讨论了。

总之,这本书非常适合对操作系统有浓厚兴趣的同学,读完一定受益匪浅。

我推荐一个 github 仓库,里面包含了数百本经典的嵌入式和计算机书籍。你可以给它加星。下次找书时,可以直接在上面搜索:

github链接:

gitee 链接:

计算机组成原理“程序如何运行”

计算机的本质并没有那么复杂,都是由很多没人愿意学的专家教授的外星语言做成的。

本书简单介绍了cpu、内存、硬盘、操作系统等基本概念,以及它们是如何演变成今天的样子,使用人类可以理解的语言并举例说明。解释一个概念并不难,但很难向别人解释一个概念。

看完这本书,印象最深的就是里面对补语的描述。“将二进制数的所有位取反,然后将结果加1”,这个描述和我看过的教科书很不一样。

看过的教科书都说“取反除第一个以外的其他位”,这促使我上网多学习,终于明白为什么我记不住补码的计算方法了。. . 因为原教科书给出的方法是非常不自然和生硬的做法。. . .

“编码 – 隐藏在计算机软件和硬件背后的语言”

作为电子专业的学生,​​读这本书感觉很亲切,电路+数字电学+微机原理的科普版。涉及模拟电路、数字电路、组成原理、汇编语言、操作系统、高级编程语言等计算机专业课程。特别强调模拟电路和数字电路。

如果我大二读这本书,我的数学知识结构、计算机原理,甚至整个大学生涯的科学知识结构都会发生翻天覆地的变化。

作者用丰富的想象力和清晰的笔墨,将看似复杂的理论,通俗易懂地解释,你一点也不觉得枯燥和生硬。更重要的是,您将对计算机的工作方式有更深入的了解。这种理解不是抽象的,而是有一定深度的。深入讲解!从逻辑门到操作系统!

《理解计算机系统》

CSAPP yyds,被誉为计算机科学的圣经。要学习这本书,你必须上正式的实验课。如果只看书,大概能学到40%,看书+做实验室能学到70%或80%。

所以每个人都必须完成实验,而这些实验非常有趣,比如拆弹、缓冲区溢出攻击、代理服务器等。

实验室链接:

视频教程:

读完之后,你会对计算机的底层机制有一个大概的了解,清楚地知道编写、编译、链接,最后运行一个“hello world”程序的全过程。

作者在开篇就提到,“如果你潜心学习本书的概念,充分理解底层的计算机系统及其对应用的理解,你将走上成为少数大牛之一的道路。”

没错,就是“加紧”,“逐渐成为”一头大牛。CSAPP是一本非常基础的书,结合了计算机组成原理、操作系统、体系结构、网络编程、并行编程原理等课程的基础知识。

除第一章外,每一章甚至一个小节都可以展开成一本书来教授。对于刚接触编程的人,或者像我这样不是 CS 专业的人,这是一本方向性的书。它将告诉你,要成为一名优秀的程序员,你应该专注于理解计算机的底层原理,告诉你在未来的自学过程中应该关注哪些课程。

不了解底层,永远不可能写出好的C程序,更不可能写出高效的程序。计算机没有那么智能,不会思考,只能根据数字逻辑模型判断问题,这就需要程序员对计算机原理有一定的了解。

计算机网络 网络是如何连接的

把一颗又大又硬的核桃砸碎,掰开,砸成碎片,喂给你吃,你还能要求什么?读起来真的很过瘾,很少有晦涩难懂的单词和句子需要反复咀嚼,更多的基本上都是简单易懂的解释和解释。

开头给出了全书的整体架构结构。在章节的开头,我会分析我们到达了多少层,还剩下多少层,并指出了一些关键点。段落之间也有一些小总结。重要的是插图做得很好。现在,抽象变成具体的图表发挥了很大的作用。阅读它让我觉得我已经学到并获得了它,这真的很棒。

计算机网络:自上而下的方法

很适合自学的一本书,讲解详细,条理清晰,同时省略了很多细枝末节的信息,以免迷惑初学者。可以说是学习计算机网络最好的书,没有之一。

无论是对每一层的解释,还是对整个计算机网络的整体描述,由浅入深都很容易理解。第七版还更新了sdn等比较新的内容,以与时俱进。唯一的缺点就是有些地方翻译不够。说真的,有能力的话还是看原版比较好。

《TCP/IP详解》

计算机网络入门书籍,综合性还是不错的,虽然例子有点老了。如果想对网络协议有更全面的了解,可以看一下,不过第1卷侧重于协议部分。

我推荐一个 github 仓库,里面包含了数百本经典的嵌入式和计算机书籍。你可以给它加星。下次找书时,可以直接在上面搜索:

github链接:

gitee 链接:

Linux环境《鸟哥的LINUX私房菜》

最好的中文Linux入门书c语言从入门到精通电子书下载,办公桌必备的工具书,内容很全,想知道的都可以在里面找到,适合作为参考书参考,不适合阅读。

《UNIX 环境中的高级编程》

百科全书式的书籍,思路清晰。把各种系统调用的流程介绍了一圈,基本上每个api背后的实现也讲到了。

翻译有点生涩。建议先快速浏览一下,然后在需要时浏览需要的章节。

《UNIX网络编程》

unix网络编程的书,这是一本很厚的书(800页),但是如果你学了这本书就认为自己精通网络编程,那就错了。

网络编程很深奥,读完这本书只是开始。我个人认为很多章节不需要仔细阅读,但大致了解就足够了。遇到他们,可以有图,然后翻过来详细看,当说明书用。

《Linux命令行与Shell脚本编程百科全书》

在嵌入式开发中,偶尔会使用 shell 脚本。这本书既有基础又有高级。在日常工作中很难系统地学习,本书可以帮助你找到并填补空白。

用shell写的一些脚本估计比Python快,前提是shell足够熟悉!总的来说,这本书还不错!

Linux驱动《Linux设备驱动开发详解》

这本书很好地介绍了驱动程序开发。尤其是其中提到的设备树和平台总线部分,解释了之前的一些疑惑。

总体来说,这本书还可以,比较实用,可以作为入门,但不适合深入学习。

“Linux 设备驱动程序”

对于任何编写 Linux 驱动程序的人来说,这本书应该是教科书级别的!经典书籍一时难以理解。建议您练习后回头看。

虽然现在的linux设备驱动的接口和作者写书时有很大的不同,但是主要的框架基本没变。

大家可以根据自己的兴趣阅读一个完整的驱动,然后从驱动模型的角度理解一个驱动在模型中是如何表示的,进而理解整个驱动框架。剩下的就是熟悉特定类型驱动程序的功能和相应的接口。

Linux内核《Linux内核全解析——基于0.12内核》

首先向赵博士致敬。通过这本书,我可以感受到他的研究态度和无私的成果分享。

如果你想了解一个操作系统的实现过程,那么本书是你的最佳选择。它选择了Linux 0.12 内核来解释整个内核代码。一个简单的操作系统是这样的!

强烈建议所有想学习系统编程的同学通读一遍。一方面,他们会对x86系统有比较深入的了解,另一方面,对于提高他们阅读代码的能力会有很大的帮助。

《Linux内核设计与实现》

对于想玩Linux内核开发的人来说,本书可以算是一本入门书。它基本上涵盖了Linux内核开发所需的知识。虽然有些部分写得不够深入,但现在每看一遍都有新的认识和收获。

《深入了解LINUX内核》

经典不用说!内核设计中有很多精美的设计值得学习和琢磨!

本书主要内容包括进程管理、内存管理、虚拟文件系统、设备驱动等。阅读本书后,对Linux中断硬件原理、进程调度原理三个技术内容有了更深入的了解类型时间片,以及内存缺页中断的处理流程。

唯一的缺点就是翻译有点生硬,建议和英文原版一起看。

《深入的 Linux 内核架构》

根据2.6的源代码进行了非常详细的解释,但是几乎所有的东西都仍然适用于5.0。这本书与“理解内核”完美结合。

《Linux内核源码场景分析》

跟着笔者基于场景阅读内核源码,学习效果还是很不错的。笔者从入口到出口,一步步详细讲解了各个核心的功能,并根据功能将各个功能连接起来,形成清晰的主线,形成一个有机的整体。

虽然书很厚,但是读起来很过瘾,就像看小说一样。这本书不仅仅是分析代码,而是非常清楚地解释了这个概念。别管它的源码版本老了,核心框架还是一样的。

这本书非常清楚地描述了相关细节。缺点是在一堆代码中找不到森林,很容易迷失自我。这就像使用源洞察力来跟踪功能。懒得看源码的朋友可以先看这本书。

. . . . 有待继续,后续会更完整、更系统。

我编的书可以在这里免费使用。都是嵌入式领域的经典书籍。从入门到深入了解,都是整理的!

我推荐一个 github 仓库,里面包含了数百本经典的嵌入式和计算机书籍。你可以给它加星。下次找书时,可以直接在上面搜索:

github链接:

gitee 链接:

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论