全部商品分类

您现在的位置: 全部商品分类 > 电子电脑 > 计算机技术 > 操作系统

深入理解LINUX内核(影印版第3版涵盖2.6版)(英文版)

  • 定价: ¥168
  • ISBN:9787564183417
  • 开 本:16开 平装
  •  
  • 折扣:
  • 出版社:东南大学
  • 页数:923页
  • 作者:(美)丹尼尔·P.博...
  • 立即节省:
  • 2019-05-01 第1版
  • 2019-05-01 第1次印刷
我要买:
点击放图片

导语

  

内容提要

  

    为了透彻理解Linux的工作机理,以及为何它在各种系统上能顺畅运行,你需要深入到内核的心脏。cPu与外部世界的所有交互活动都是由内核处理的,哪些程序会分享处理器的时间,以什么样的顺序来分享。内核不遗余力地管理有限的内存,以使数以千计的进程有效地共享系统资源。内核还精心组织数据传送,使得cPu不再受限于慢速硬盘。本书将引领你畅游内核中用到的主要数据结构、算法和编程技巧。如果你的确想了解计算机内部的实现机理,那么作者透过现象探寻本质,提供了颇有价值的深入分析。本书针对具体的Intel平台,讨论了其重要特征,逐行剖析了相关的代码片段。但是,本书涵盖的内容不仅仅局限于代码的机理,还解释了Linux运作方式的理论支撑。

目录

Preface
1. Introduction
  Linux Versus Other Unix-Like Kernels
  Hardware Dependency
  Linux Versions
  Basic Operating System Concepts
  An Overview of the Unix Filesystem
  An Overview of Unix Kernels
2. Memory Addressing
  Memory Addresses
  Segmentation in Hardware
  Segmentation in Linux
  Paging in Hardware
  Paging in Linux
3. Processes
  Processes, Lightweight Processes, and Threads
  Process Descriptor
  Process Switch
  Creating Processes
  Destroying Processes
4. Interrupts and Exceptions
  The Role of Interrupt Signals
  Interrupts and Exceptions
  Nested Execution of Exception and Interrupt Handlers
  Initializing the Interrupt Descriptor Table
  Exception Handling
  Interrupt Handling
  Softirqs and Tasklets
  Work Queues
  Returning from Interrupts and Exceptions
5. Kernel Synchronization
  How the Kernel Services Requests
  Synchronization Primitives
  Synchronizing Accesses to Kernel Data Structures
  Examples of Race Condition Prevention
6. Timing Measurements
  Clock and Timer Circuits
  The Linux Timekeeping Architecture
  Updating the Time and Date
  Updating System Statistics
  Software Timers and Delay Functions
  System Calls Related to Timing Measurements
7. Process Scheduling  
  Scheduling Policy
  The Scheduling Algorithm
  Data Structures Used by the Scheduler
  Functions Used by the Scheduler
  Runqueue Balancing in Muhiprocessor Systems
  System Calls Related to Scheduling
8. Memory Management
  Page Frame Management
  Memory Area Management
  Noncontiguous Memory Area Management
9. Process Address Space
  The Process's Address Space
  The Memory Descriptor
  Memory Regions
  Page Fault Exception Handler
  Creating and Deleting a Process Address Space
  Managing the Heap
10. System Calls
  POSIX APls and System Calls
  System Call Handler and Service Routines
  Entering and Exiting a System Call
  Parameter Passing
  Kernel Wrapper Routines
11. Signals
  The Role of Signals
  Generating a Signal
  Delivering a Signal
  System Calls Related to Signal Handling
12. The Virtual Filesystem
  The Role of the Virtual Filesystem (VFS)
  VFS Data Structures
  Filesystem Types
  Filesystem Handling
  Pathname Lookup
  Implementations of VFS System Calls
  File Locking
13. I/0 Architecture and Device Drivers
  I/0 Architecture
  The Device Driver Model
  Device Files
  Device Drivers
  Character Device Drivers
14. Block Device Drivers
  Block Devices Handling
  The Generic Block Layer
  The I/0 Scheduler
  Block Device Drivers
  Opening a Block Device File
15. The Page Cache
  The Page Cache
  Storing Blocks in the Page Cache
  Writing Dirty Pages to Disk
  The sync(), fsync(), and fdatasync() System Calls
16. Accessing Files
  Reading and Writing a File
  Memory Mapping
  Direct I/O Transfers
  Asynchronous I/O
17. Page Frame Reclaiming
  The Page Frame Reclaiming Algorithm
  Reverse Mapping
  Implementing the PFRA
  Swapping
18. The Ext2 and Ext3 Filesystems
  General Characteristics of Ext2
  Ext2 Disk Data Structures
  Ext2 Memory Data Structures
  Creating the Ext2 Filesystem
  Ext2 Methods
  Managing Ext2 Disk Space
  The Ext3 Filesystem
19. Process Communication
  Pipes
  FIFOs
  System V IPC
  POSIX Message Queues
20. Program Execution
  Executable Files
  Executable Formats
  Execution Domains
  The exec Functions
  A. System Startup
  B. Modules
Bibliography
Source Code Index
Index