掌握Linux内核是程序员进阶关键,推荐《Linux是怎样工作的》助你从实践中理解底层。
原文标题:程序员口碑爆棚的入门神书,太多人都在推荐了!
原文作者:图灵编辑部
冷月清谈:
怜星夜思:
2、文章推荐的学习方法是“图、文、码”结合,并且强调“只有动手才能真正掌握”。你们在学习新技术的时候,更偏爱哪种方式?是先看书啃理论,还是直接上手敲代码,或者有其他独门秘籍?
3、文中说精通Linux的程序员在学多线程、高并发时能快人一步,大家觉得这个说法靠谱吗?除了多线程高并发,掌握Linux底层知识还能给程序员带来哪些意想不到的“加成”呢?
原文内容
我们的日常早已离不开刷短视频、点外卖、用地图导航等各种 App。而这些应用大多运行在 Android 系统上,而 Android 的核心正是 Linux 内核。直到有一天手机卡死、无响应时,我们才会意识到:原来 Linux 才是支撑这一切的幕后功臣。
最近读到一本《Linux是怎样工作的(增订版)》,书中深入讲解了进程管理、进程调度、内存管理等核心机制。掌握这些内核知识后,就能更高效地定位和解决各种复杂问题。
在操作系统中,从最早的 Unix 到 Minux 再到如今的 Linux。Linux 之父林纳斯·托瓦兹从不靠 Linux 来赚钱,而是坚持开源、自由,因此他在技术圈获得了神一样的地位。
那些靠 Linux 内核上市的公司比如 Red Hat 赚得盆满钵满。再看看微软,Windows 一直是它赚钱的法宝,和 Linux 不同的是它闭源,也就是代码不公开。而林纳斯是纯粹的技术理想主义者,单从他坚持开源的角度 Linux 真值得大家学习一下。
大家都知道,水平差不多的程序员,如果有人精通 Linux,那他在学多线程、高并发时往往能快人一步,差距立刻就显现出来。所以,想要成长为真正的技术大牛,先搞懂 Linux 是怎么工作的就对了。
Linux 内核全景图
增订版还增加了当前火得不行的 Linux 技术:虚拟化、容器等内容,介绍了Docker、Kubernetes 容器背后的 cgroup 技术。cgroup 作为 Linux 内核提供的一种资源限制、隔离和统计机制,它与命名空间都是容器技术能够高效运行的重要基础。
这是我照着书上的图用DrawIO网页版画的,具体文章请看:https://juejin.cn/post/7537327299316662272
作者在 GitHub 上整理了需要安装和配置的软件包,在图灵社区上还能看到用 Go 和 Python 写的示例源码,带你一步步实践 Linux 的复杂机制。果然,只有动手才能真正掌握!
就像是煮米饭,要想知道放多少水煮的米饭软硬正好。怎样才会发现?你不用去米厂看加工过程,只要不断调整水量,观察与米饭口感的关系即可。
Linux 也一样,不用直接看内核代码,认真阅读一本书了解 Linux 内核的原理和流程,就可以知道系统调用背后到底做了什么。
安装软件包和进行用户设置
对于读者来说,这本书最好的地方是将 Linux 的内核用“图、文、码”并茂的方式进行讲解。
通过图解来一图胜千言,搭配文字来理解底层逻辑,对实践的代码进行逐行批注与解析。
与图灵其他“XX 是怎样 YY 的”系列书一脉相承,这本书特别适合操作系统入门的读者--就算你是计算机专业的大一学生,这门基础课程也只讲理论化的知识,那些原理很多老师也只是照本宣科地教授。
如果想无痛快速建立对 Linux 的认知,读这本书《Linux是怎样工作的(增订版)》就可以了!增订版全彩印刷,阅读体验还是很棒的。同时在 Linux 进行实践操作,让知识学以致用才能记得牢记得住。
《Linux是怎样工作的(增订版)》
[日]武内觉 | 著
曹栩 | 译
本书通过丰富的插图、表格和代码示例,结合动手实验及结果分析,通俗易懂地讲解了 Linux 操作系统的基础知识和运行原理,包括进程管理、进程调度、内存管理、设备访问、文件系统、虚拟化和容器等机制,以及这些机制如何与硬件协同工作。
增订版升级为彩色排版和印刷,200 余幅插图更加清晰易懂。新增 4 章内容,涵盖设备访问、虚拟化、容器及 cgroup,开辟 20 多个“技术专栏”,进一步深入探讨 Linux 相关知识,书中源代码使用 Go 和 Python 重新实现,并加入大量注释,方便读者学习和理解。
矢泽久雄 | 著,周自恒 | 译
户根勤 | 著,周自恒 | 译
[日]平泽章 | 著,侯振龙 | 译
安永辽真 | 著,尹修远 | 译









