|

Addison-Wesley / Prentice Hall

Computer Science

My Instructor Resource Center :  Log in or request access

IA-64 Linux Kernel: Design and Implementation
David Mosberger
Stephane Eranian

ISBN-10: 0130610143
ISBN-13:  9780130610140

Publisher:  Prentice Hall
Copyright:  2002
Format:  Paper; 560 pp
Published:  01/30/2002
Status: Instock


Suggested retail price: $59.99
Buy from myPearsonStore



This book is an authoritative and full-length description of the IA-64 version of the Linux kernal. IA-64 is a high-performance microprocessor architecture co-designed by HP and Intel. The titanium chip is the first implementation of this new architecture. Intel already has outlined a roadmap of several chips to follow, such as the more powerful McKinley and Deerfield implementations. To emphasize the longevity of this book, as well as the Linux kernal it describes, it focuses on the IA-64 architecture rather than specific implementations, such as Itanium or McKinley.



List of Figures.


List of Tables.


Foreword.


Preface.


1. Introduction.

Microprocessors: From CISC to EPIC. Overview of the Linux Kernel. Summary.



2. IA-64 Architecture.

User-Level Instruction Set Architecture. Runtime and Software Conventions. System Instruction Set Architecture. The Register Stack Engine (RSE). Summary.



3. Processes, Tasks, and Threads.

Introduction to Linux Tasks. The Thread Interface. Thread Synchronization. Summary.



4. Virtual Memory.

Introduction to the Virtual Memory System. Address Space of a Linux Process. Page Tables. Translation Lookaside Buffer (TLB). Page Fault Handling. Memory Coherency. Switching Address Spaces. Discussion and Summary.



5. Kernel Entry and Exit.

Interruptions. System Calls. Signals. Kernel Access to User Memory. Summary.



6. Stack Unwinding.

IA-64 ELF Unwind Sections. The Kernel Unwind Interface. Embedding Unwind Information in Assembly Code. Implementation Aspects. Summary.



7. DEVICE I/O.

Introduction. Programmed I/O. Direct Memory Access (DMA). Device Interrupts. Summary.

8. Symmetric Multiprocessing. @@AHEADS = Introduction to Multiprocessing on Linux. Linux Locking Principles. Multiprocessor Support Interface. CPU-Specific Data Area. Tracking Wall-Clock Time with High Resolution. Summary.



9. Understanding System Performance.

IA-64 Performance Monitoring Unit Overview. Extending the PMU: The Itanium Example. Kernel Support for Performance Monitoring. Summary.



10. Booting.

IA-64 Firmware Overview. The Bootloader. Kernel Initialization. Summary.



11. IA-32 Compatibility.

Architectural Support for IA-32. Linux Support for IA-32 Applications. Summary.



Appendix A. IA-64 CPU Models.


Appendix B. Kernel Register Usage.


Appendix C. IA-64 Instructions.

Integer Instructions. Memory Instructions. Semaphore Instructions. Branch Instructions. Control Instructions. Multimedia Instructions. Floating-Point Instructions. Privileged Instructions.



Appendix D: Itanium PMU Events.


Glossary.


Bibliography.


Index.

View a Sample Chapter PDF:/samplechapter/0130610143.pdf

DAVID MOSBERGER is a Senior Research Scientist at HP Labs. In early 1998, he founded the project to bring Linux to the IA-64 platform, later developing the first IA-64 version of the GNU C compiler and GNU toolchain. He has been serving as lead architect, developer, and gatekeeper of the IA-64 Linux kernel source code.

STÉPHANE ERANIAN is a Senior Research Scientist at HP Labs. He has been working on the port of Linux to the IA-64 platform since late 1998. He is main architect of the kernel performance monitoring subsystem, and architect and maintainer of the Linux/IA-64 elilo boot loader.

The authoritative guide to the IA-64 Linux kernel implementation.

  • Authoritative and complete description of the Linux kernel for IA-64/IPF (Itanium Processor Family)
  • Provides an in-depth discussion of the ideas and concepts behind the Linux hardware abstraction interfaces, the IA-64 design space, and their actual realization
  • From the lead architects and developers of the IA-64 Linux kernel

The IA-64 architecture and Itanium processors are designed to offer unprecedented levels of performance, expandability, and reliability—and with the delivery of the IA-64 Linux kernel, that power is now accessible to every Linux developer. In this authoritative book, the IA-64 Linux kernel project's leaders take you "under the hood" with Linux for IA-64, demonstrating exactly how it makes the most of the IA-64's breakthrough capabilities.

They begin by introducing the IA-64 architecture, instruction set, and key features. Next, they cover every major Linux kernel subsystem in unprecedented detail, presenting the interfaces used by Linux to abstract hardware differences and showing how these interfaces have been realized in the IA-64 environment. Coverage includes:

  • Processes, tasks, and threads, including thread interfaces and synchronization
  • The virtual memory subsystem: address spaces, page tables, page fault handling, and coherency
  • Device support: programmed I/O, DMA, and interrupts
  • Symmetric multiprocessing: Linux locking principles and their implementation on IA-64
  • Kernel entry and exit: interruptions, system calls, signals, and user memory access
  • Bootstrapping: firmware, bootloader, and kernel initialization
  • System performance monitoring: usage, kernel support, and Itanium extensions
  • IA-32 compatibility: architectural support and Linux support for running legacy 32-bit applications

This book not only focuses on the ideas and concepts you need to work with this radically innovative architecture: it illuminates the key issues associated with Linux kernel operation on any platform, existing or new.

Interwrite Personal Response System
EduCue, Addison-Wesley & Benjamin Cummings
©2004 | Prentice Hall | Electronic Supplement | Instock
ISBN-10: 0321267354 | ISBN-13: 9780321267351


Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.