沃尔夫冈·梅乌尔纳探讨Linux内核架构:专业深度解析

5星 · 超过95%的资源 需积分: 0 10 下载量 103 浏览量 更新于2024-07-31 收藏 9.06MB PDF 举报
《Linux架构:深入解析与实践》是由量子物理学家Wolfgang Mauerer撰写的专业著作,他专注于量子密码学、量子电动力学以及针对量子架构的编译器研究。尽管在实验操作上表现不佳,Mauerer专注于理论工作,对Linux内核的深入理解和文档化是他长达数十年的兴趣所在。他在1997年开始的系列文章中分享了他对Linux内核的见解,并出版了一本关于LaTeX排版的书籍,其文章被翻译成七种语言。 本书详细探讨了Linux内核的核心组成部分,包括进程管理与调度(Chapter 1)、内存管理(Chapter 3)、虚拟进程内存(Chapter 4)、锁定与进程间通信(Chapter 5)、设备驱动程序(Chapter 6)和模块(Chapter 7)。此外,还涵盖了虚拟文件系统(Chapter 8)、扩展文件系统家族(Chapter 9)、无持久存储的文件系统(Chapter 10)、元数据和访问控制(Chapter 11)、网络功能(Chapter 12)、系统调用(Chapter 13),以及内核活动管理和时间管理(Chapters 14 和 15)等内容。页缓存、数据同步(Chapter 16)、页面回收和交换(Chapter 18)、审计机制(Chapter 19)也在书中有所涉及。 附录部分提供了关于体系结构细节(Appendix A)、源代码使用指南(Appendix B)、C语言笔记(Appendix C)、系统启动过程(Appendix D)、ELF二进制格式(Appendix E)以及内核开发流程(Appendix F)的深入讲解。这本书不仅是技术爱好者和Linux内核开发者的重要参考,也适合对操作系统底层原理感兴趣的读者深入了解Linux架构的复杂性和内在运作机制。 Mauerer的生活除了学术研究外,他还热爱户外探险,特别是登山,视首次登顶东格陵兰巨大的极地冰川为人生的重大成就。他的多方面兴趣和深厚的技术积累使得本书不仅具有学术价值,也充满了个人故事和经验分享,使读者在学习专业知识的同时感受到Linux内核的魅力。
2009-02-05 上传
Publisher: Wrox Page : 1371 This book discusses the concepts, structure, and implementation of the Linux kernel. In particular, the individual chapters cover the following topics: ❑ Chapter 1 provides an overview of the Linux kernel and describes the big picture that is investigated more closely in the following chapters. ❑ Chapter 2 talks about the basics of multitasking, scheduling, and process management, and investigates how these fundamental techniques and abstractions are implemented. ❑ Chapter 3 discusses how physical memory is managed. Both the interaction with hardware and the in-kernel distribution of RAM via the buddy system and the slab allocator are covered. ❑ Chapter 4 proceeds to describe how userland processes experience virtual memory, and the comprehensive data structures and actions required from the kernel to implement this view. ❑ Chapter 5 introduces the mechanisms required to ensure proper operation of the kernel on multiprocessor systems. Additionally, it covers the related question of how processes can communicate with each other. ❑ Chapter 6 walks you through the means for writing device drivers that are required to add support for new hardware to the kernel. ❑ Chapter 7 explains how modules allow for dynamically adding new functionality to the kernel. ❑ Chapter 8 discusses the virtual filesystem, a generic layer of the kernel that allows for supporting a wide range of different filesystems, both physical and virtual. ❑ Chapter 9 describes the extended filesystem family, that is, the Ext2 and Ext3 filesystems that are the standard workhorses of many Linux installations. ❑ Chapter 10 goes on to discuss procfs and sysfs, two filesystems that are not designed to store information, but to present meta-information about the kernel to userland. Additionally, a number of means to ease writing filesystems are presented. ❑ Chapter 11 shows how extended attributes and access control lists that can help to improve system security are implemented. ❑ Chapter 12 discusses the networking implementation of the kernel, with a specific focus on IPv4, TCP, UDP, and netfilter. ❑ Chapter 13 introduces how systems calls that are the standard way to request a kernel action from userland are implemented. ❑ Chapter 14 analyzes how kernel activities are triggered with interrupts, and presents means of deferring work to a later point in time. ❑ Chapter 15 shows how the kernel handles all time-related requirements, both with low and high resolution. ❑ Chapter 16 talks about speeding up kernel operations with the help of the page and buffer caches. ❑ Chapter 17 discusses how cached data in memory are synchronized with their sources on persistent storage devices. ❑ Chapter 18 introduces how page reclaim and swapping work.