Linux内核深度解析:基于ARM64架构的Linux4.x内核mobi电子书下载

简介: 基于ARM64架构的Linux 4.x内核,大量图例描述数据结构之间的关系和函数的执行流程 结合代码分析,以通俗化语言全面剖析Linux内核。

*文中代码字体版权说明

本书基于4.x版本的Linux内核,介绍了Linux内核的若干关键子系统的技术原理。本书主要内容包括内核的引导过程、内核管理和调度进程的技术原理、内核管理虚拟内存和物理内存的技术原理、内核处理异常和中断的技术原理,以及系统调用的实现方式等。此外,本书还详细讲解了内核实现的各种保护临界区的互斥技术,以及内核的文件系统。本书内容丰富,深入浅出,通过大量的图例来描述数据结构之间的关系和函数的执行流程,并结合代码分析,引导读者阅读和理解内核源代码。

本书适用于负责维护和开发Linux内核或基于Linux内核开发设备驱动程序的专业人士,以及想要学习了解Linux内核的软件工程师,也适合作为高等院校计算机专业的师生用书和培训学校的教材。

作为一个优秀的开源系统,Linux在业界有很广泛的应用。从1994年发布1.0正式版本开始,Linux内核一直在发展,代码越来越庞大,参伍以变,错综其数,要想深入掌握它,并不是一件轻松的事情。

对于在Linux上开发程序、想修改Linux内核或者理解并用好Linux的软件开发工程师而言,迫切需要这样一本书:从main函数开始,深入浅出地一步步剖析Linux内核,并解释其中的函数关系和数据结构。

我与华兵共事十余年了,两年前听说他开始写一本关于Linux内核的书,我就一直期待这本书的出版。华兵从事Linux内核开发工作十余年,有着丰富的实践经验,使用过不同的版本和硬件平台,从2.x到4.x,从MIPS、x86到ARM。伴随着研发大楼的华灯,当年初出校门的学子,如今萧萧两鬓生华,成为一个在Linux领域有深厚积累的专家。更难得的是,他愿意将这些经验写成一本书,与同道中人共享,并醉心于此,力求至简。

当然,我们在市场上陆续能看到关于Linux内核的技术著作,各有特点,其中也不乏经典。不少作者和华兵一样,既是Linux技术的爱好者,也是长期的实践者,并将知识与经验提炼成文,与读者分享。与已上市的Linux图书相比,《Linux内核深度解析》在内容上有其独特之处。

本书剖析的代码基于Linux 4.12版本,发布于2017年,是Linux内核史上变动较大的版本之一。基于这个版本进行内核代码解析并出版成书,是比较新颖的,既不失通用性,又兼顾4.x版本中引入的不少新技术点。同时,它基于ARM64硬件平台,将两者结合的书,目前还是比较少的。

另外,本书没有过多地介绍操作系统的基础原理,而更多地是以实际代码来解读在Linux内核中是如何实现操作系统的各个子系统的。对于熟悉操作系统基础的读者来说,可以快速地切入到具体代码的理解与实现中。从内核引导和初始化开始,到进程管理、内存管理、中断/异常/系统调用、内核互斥技术和文件系统,本书比较系统地对内核代码进行了深度解析。

Linux内核的知识点相当繁多,很难在一本书中面面俱到,也没有必要。所以,在这本书中,看似不经意间逐层展开的知识点,都是比较基础和常用的。作者以他的实践经历尽量通俗地进行解读,并抓住了其中的重点,可以让读者在实际的开发、调试和维护工作中学以致用。

“行是知之始,知是行之成”,学习Linux内核技术尤其如此。要真正消化理解Linux内核,离不开大量的工程实践。希望本书可以成为你前进路上的好帮手!

锐捷网络研究院副院长 林东豪

2019年2月

我很荣幸接受华兵的邀请,为他的新书作序。

作为国内数通厂商的一位资深人士,华兵经历了数通厂商操作系统的大变化。早些年数通领域各厂商(包括思科和华为)的操作系统,都是基于传统的嵌入式操作系统(如典型的VxWorks操作系统)开发的。2010年以后,Linux内核在数通厂商中快速生长,迅速成为数通设备网络操作系统的内核。就像基于Linux内核的安卓系统已经成为智能手机领域的领头羊一样,在数通设备领域,Linux内核也大有一统江湖之势。

版权:人民邮电出版社