您好,欢迎光临本网站![请登录][注册会员]  
文件名称: under standing kernel.pdf英文原版
  所属分类: Linux
  开发工具:
  文件大小: 5mb
  下载次数: 0
  上传时间: 2015-03-06
  提 供 者: zw423******
 详细说明: 英文原版 作者:Andy Oram Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 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 6 7 8 12 19 2. Memory Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Memory Addresses Segmentation in Hardware Segmentation in Linux Paging in Hardware Paging in Linux 35 36 41 45 57 3. Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Processes, Lightweight Processes, and Threads Process Descriptor Process Switch Creating Processes Destroying Processes 79 81 102 114 126 4. Interrupts and Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 The Role of Interrupt Signals Interrupts and Exceptions 132 133 vNested 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 143 145 148 151 171 180 183 5. Kernel Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 How the Kernel Services Requests Synchronization Primitives Synchronizing Accesses to Kernel Data Structures Examples of Race Condition Prevention 189 194 217 222 6. Timing Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 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 228 232 240 241 244 252 7. Process Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 Scheduling Policy The Scheduling Algorithm Data Structures Used by the Scheduler Functions Used by the Scheduler Runqueue Balancing in Multiprocessor Systems System Calls Related to Scheduling 258 262 266 270 284 290 8. Memory Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Page Frame Management Memory Area Management Noncontiguous Memory Area Management 294 323 342 9. Process Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 The Process’s Address Space The Memory Descriptor Memory Regions vi | Table of Contents 352 353 357Page Fault Exception Handler Creating and Deleting a Process Address Space Managing the Heap 376 392 395 10. System Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 POSIX APIs and System Calls System Call Handler and Service Routines Entering and Exiting a System Call Parameter Passing Kernel Wrapper Routines 398 399 401 409 418 11. Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 The Role of Signals Generating a Signal Delivering a Signal System Calls Related to Signal Handling 420 433 439 450 12. The Virtual Filesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 The Role of the Virtual Filesystem (VFS) VFS Data Structures Filesystem Types Filesystem Handling Pathname Lookup Implementations of VFS System Calls File Locking 456 462 481 483 495 505 510 13. I/O Architecture and Device Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519 I/O Architecture The Device Driver Model Device Files Device Drivers Character Device Drivers 519 526 536 540 552 14. Block Device Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 Block Devices Handling The Generic Block Layer The I/O Scheduler Block Device Drivers Opening a Block Device File 560 566 572 585 595 Table of Contents | vii15. The Page Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 The Page Cache Storing Blocks in the Page Cache Writing Dirty Pages to Disk The sync( ), fsync( ), and fdatasync() System Calls 600 611 622 629 16. Accessing Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 Reading and Writing a File Memory Mapping Direct I/O Transfers Asynchronous I/O 632 657 668 671 17. Page Frame Reclaiming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 The Page Frame Reclaiming Algorithm Reverse Mapping Implementing the PFRA Swapping 676 680 689 712 18. The Ext2 and Ext3 Filesystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738 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 738 741 750 753 755 757 766 19. Process Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775 Pipes FIFOs System V IPC POSIX Message Queues 776 787 789 806 20. Program Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808 Executable Files Executable Formats Execution Domains The exec Functions viii | Table of Contents 809 824 827 828A. System Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 B. Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 Source Code Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: linux 英文原版
 输入关键字,在本站1000多万海量源码库中尽情搜索: