HP-UX Internals

( 1 )

Overview

HP-UX 11i Internals

Chris CooperChris Moore

  • Invaluable information for optimizing HP-UX performance, reliability, and efficiency
  • Find out how to approach system administration, tuning, and troubleshooting from a more informed perspective...
See more details below
Other sellers (Paperback)
  • All (7) from $5.13   
  • New (4) from $46.94   
  • Used (3) from $5.13   
Sending request ...

Overview

HP-UX 11i Internals

Chris CooperChris Moore

  • Invaluable information for optimizing HP-UX performance, reliability, and efficiency
  • Find out how to approach system administration, tuning, and troubleshooting from a more informed perspective
  • For every HP-UX sysadmin, programmer, and performance specialist

HP Professional Books

HP-UX 11i Internals

HP-UX under the hood: practical insight for optimization and troubleshooting

To maximize the performance, efficiency, and reliability of your HP-UX sysem, you need to know what's going on under the hood. HP-UX 11i Internals goes beyond generic UNIX internals, showing exactly how HP-UX works in PA-RISC environments.

HP experts Cooper and Moore systematically illuminate HP-UX kernel data structures and algorithms for memory management, process and thread scheduling, I/O control, files and file systems, resource management, and more. They focus on HP-UX 11i, while also offering valuable insight for those using earlier versions.

  • PA-RISC architecture: register set, virtual memory, key instructions, and procedure calling conventions
  • HP-UX kernel organization: hardware-dependent and independent data structures
  • Process and thread management: proc tables, memory management, scheduling, and the complete process/thread lifecycle
  • System-wide memory resources: allocation and mapping to physical memory
  • HP-UX paging and swapping
  • Files and filesystems: traditional UNIX filesystems, HFS, VFS, and dynamic buffer cache
  • I/O and device management: addressing, DMA, interrupts, device files, I/O configuration, device driver assignments, and I/O request pathways
  • Logical Volume Management (LVM): abstracting physical disks from the disk I/O system
  • HP-UX multiprocessing: challenges, data structures, and interfaces
  • Kernel communication services: semaphores, message queues, shared memory, signals, and the kernel "callout" system
  • Signaling in complex threaded environments
  • System initialization, from vmunix to init: running HP-UX on diverse platforms

Whether you administer HP-UX, tune it, troubleshoot it, or write kernel modules for it, you'll find HP-UX 11i Internals indispensable.

U.S. $59.99 Canada $90.99

PRENTICE HALL

Upper Saddle River, NJ 07458

www.phptr.com

Hewlett-Packard(R) Professional Books

A Prentice Hall Title

www.hp.com/hpbooks

ISBN: 0-13-032861-8

Read More Show Less

Product Details

  • ISBN-13: 9780130328618
  • Publisher: Prentice Hall
  • Publication date: 1/22/2004
  • Series: HP Professional Series
  • Pages: 432
  • Product dimensions: 6.92 (w) x 8.97 (h) x 0.86 (d)

Meet the Author

CHRIS COOPER, HP Senior Education Consultant, is a 19-year veteran with Hewlett-Packard Education Services. He has spent most of his HP career developing and delivering courses on programming, system administration, O/S internals, and networking. He has also served as a solution architect and consultant. CHRIS MOORE, Expert Center Engineer for HP's Global Solutions Engineering team, specializes in analyzing system core dumps and identifying the causes of failures. He teaches classes on First Pass Dump Analysis inside and outside HP.

Read More Show Less

Read an Excerpt

Whiile there are many books about the UNIX kernel in its various versions, this is the first

to deal specifically with HP-UX and Hewlett-Packard's PA-RISC architecture. This book is a technical resource for anyone who has to support HP-UX, write kernel modules, or just wants to know how it all works. It is suitable as a text for a class in operating system concepts or HP-UX internals.

Chapter 1 PA-RISC 2.0 Architecture

Chapter 1 presents some of the important features of the PA-RISC architecture, still the predominant hardware platform for HP-UX. It covers the register set and how the registers are used, then explains virtual memory concepts, address translation and caching, the mechanisms provided by the architecture to support virtual memory, and some of the most common PA-RISC instructions and their use.

Chapter 2 Procedure Calling Conventions

This chapter examines the conventions used when calling from one procedure to another: how the stack is used and how stack frames are set up, how the registers are used, how arguments are passed, and how results are returned to the calling process. Stack usage for both narrow and wide modes is explained.

Chapter 3 The Kernel: Basic Organization

This chapter examines the basic organization of the kernel data structures, both hardwaredependent and hardware-independent. The discussion includes tables, the kernel as a resource manager, and kernel memory allocation. In addition, many common kernel algorithms and methodologies are presented for the reader's consideration.

Chapter 4 Programs, Processes, and Threads

The process has long been the workhorse of the UNIX environment. Modern UNIX operating systems have adopted the thread as the new schedulable entity. Chapter 4 examines both the process and the thread, and their relationship to resources and task management. One of the most important aspects of understanding the process/thread environment is in flow of control followed when a system call is requested. The transistion from user mode to system mode and the return to user mode are examined in detail in Chapter 4.

Chapter 5 Process and Thread Management from the Process's Viewpoint

This chapter explores processes and threads: how they are created, how they are terminated, and how they are scheduled to run. The internal data structures that keep track of the processes and threads are explained. We cover how memory is managed for processes and how addresses are mapped, and we look at process priorities and how they change throughout the life of the process.

Chapter 6 Managing Memory

Chapter 6 looks further into memory management by looking at systemwide memory resources. It explains how the per-process memory areas are allocated from systemwide memory and how that memory is mapped to physical memory. This chapter addresses physical and virtual memory, page regions, and address aliasing.

Chapter 7 The HP-UX Paging System

To complete our tour of the kernel's memory management system, Chapter 7 discusses the HPUX paging system (commonly called the swapper). The following topics are included in the discussion:

Demand paging

Swap versus paging

lotsfree and vhand

Deallocation

Pseudo-swap

Swap chunks

Chapter 8 Files and File Systems

This chapter looks at the structures both in memory and on disk that make up the HP-UX file systems. HP-UX supports a number of file system layouts. This chapter looks in detail at the UNIX File System layout and the Virtual File System layer, which allows the kernel to work easily with the various file system types. It also explains various caching systems and how the dynamic buffer cache is used to complete disk transfers.

Although the Veritas File System (VxFS) is part of HP-UX, its internals are proprietary to Veritas and are not covered in depth. The merits of a journal file system and extent-based disk space allocation, however, are discussed in this chapter.

Chapter 9 The Process Life Cycle, Cradle to Grave

Chapter 9 explores the process's life cycle in detail: how it is created, how it is maintained, and how it is terminated. Shared objects are discussed from the process point of view and the following kernel routines and features are presented in detail:

fork()

exec()

wait()

exit()

Copy-on-write

Copy-on-access

Chapter 10 I/O and Device Management

Chapter 10 explores how the system performs I/O. It explains how I/O is performed at a low level in the PA-RISC architecture, including addressing, DMA, and interrupts. It then discusses how I/O works from the application's point of view, including device files and I/O configuration. We cover the steps in between with a discussion of how device drivers claim devices and how I/O requests make their way from the device files through the device drivers to the physical I/O devices. I/O is presented within the umbrella of the General I/O subsystem.

Chapter 11 The Logical Volume Manager

The logical volume manager (LVM) is a disk management subsystem. It provides a layer of abstraction between the physical disks and the disk I/O system. This chapter looks at how LVM combines physical disks into volume groups, divides those volume groups into logical disk volumes, and provides mirroring for data redundancy. The structures used within the kernel as well as the on-disk structures are discussed. Chapter 12 Multiprocessing and HP-UX

This chapter covers the elements of the kernel that facilitate multiprocessing. We look at some of the issues of having multiple processors sharing main memory and I/O devices. Then we look in detail at the data structures and interfaces that provide for consistent access to these resources among multiple processors. This includes spinlocks and semaphores for controlling exclusive access to resources and also load-balancing between processors.

Chapter 13 Kernel Services

Chapter 13 investigates the mechanisms in the kernel for supporting communication between processes: semaphores, message queues, shared memory, and signals. The kernel structures that support these features and the kernel tunables that control them are explained. We look at the user interfaces to these facilities and examine the kernel callout system, which allows a process to request a future signal from the kernel.

Chapter 14 Signals

Signals were traditionally sent from one process to another and usually meant that a process needed to terminate. With the advent of threads, the entire signal system has become more complex. Chapter 14 discusses both traditional and new uses and methods for signals. We will discuss in turn the following HP-UX kernel supported signaling schemes; System-V, Berkeley, and POSIX.

Chapter 15 System Initialization

HP-UX runs on many different platform designs, using a variety of boot sequences. Chapter 15 explains what takes place once the specific boot criteria has been satisfied and the kernel is off and running. This sequence of events is broken down into the real main, virtual main, and I/O initialization steps.

Chapter 16 Tools Overview

Chapter 16 explains the practical use of two important tools, adb and q4.

Read More Show Less

Table of Contents

Preface.

Acknowledgments.

List of Figures.

List of Tables.

List of Listings.

1. PA-RISC 2.0 Architecture.

RISC Architecture. Hardware Modules. Registers. Virtual Memory Support. Address Translation. Interruptions. Summary.

2. Procedure Calling Conventions.

Register Usage. PA-RISC Instructions. Procedure Call Model. Procedure Return Model. Stack Usage. Summary.

3. The Kernel: Basic Organization.

A Generic Overview. All I/O Is File I/O. Abstraction Layers. Some Generic Kernel Techniques. The HP-UX Kernel Overview. Fundamental Kernel Data Structures: A First Pass. Kernel Process Tables. The Kernel File System Tables. The Kernel Input/Output Tables. Drivers and Switch Tables. Summary.

4. Programs, Processes, and Threads.

The Players. A Process and Its Threads. Threading Models and HP-UX. The System Call Interface. Summary.

5. Process and Thread Management from the Process's Viewpoint.

A Process and Its Resources. The proc Table. The kthread Table. The Process's Logical View. Memory Windows. Building the Logical map. Process/Thread Scheduling. Run Queues. Summary.

6. Managing Memory.

Types of Memory. The System's Virtual Address Space. Virtual-to-Physical Page Tables. The Kernel View: The Hashtable. Shared Objects. The b-tree. broot, bnodes, and chunks. Page Lists. Connecting the Kernel View to the Process View. Keeping Track of Free Physical Page Frames. Variable Page Size. Physical Memory Allocator at HP-UX 11.0. Summary.

7. The HP-UX Paging System.

Pages on Demand. Monitoring Free Memory. A Thief in the Night: vhand. Reservation Versus Allocation. Pseudo-Swap. Device Swap. File System Swap. Swap Priority. Tracking swap in the Kernel Structures. Summary.

8. Files and File Systems.

File System Concepts. The New and Improved UNIX File System. The Kernel View of File Systems. Summary.

9. The Process Life Cycle, Cradle to Grave.

The Birth of a Process. A Historic Look at the fork() Call. The fork1() Kernel Routine. Process and Thread States: Idle Hands. Process Identity Crisis: The exec() System Call. Shared Memory Objects Revisited. The exit() System Call Mechanics. Summary.

10. I/O and Device Management.

PA-RISC I/O Architecture. I/O Framework. I/O Odds and Ends. Summary.

11. The Logical Volume Manager.

LVM Design Concept. Disk-Resident Data Structures. LVM: The Kernel View. Summary.

12. Multiprocessing and HP-UX.

Hardware Overview. Multiprocessing Data Structures. Synchronization. Summary.

13. Kernel Services.

The Callout Table. Kernel Memory Allocation. Summary.

14. Signals.

Signal Data Structures. Signal Anticipation. Signal Delivery. Signal Recognition. Signal Handler Launch. Summary.

15. System Initialization.

ISL: The Initial System Loader. HPUXBOOT: The Secondary Loader. Real-Mode Initialization. Virtual Mode Initialization. Summary.

16. Tools Overview.

adb. q4. Summary.

Index.

Read More Show Less

Preface

Whiile there are many books about the UNIX kernel in its various versions, this is the first to deal specifically with HP-UX and Hewlett-Packard’s PA-RISC architecture. This book is a technical resource for anyone who has to support HP-UX, write kernel modules, or just wants to know how it all works. It is suitable as a text for a class in operating system concepts or HP-UX internals.

Chapter 1 PA-RISC 2.0 Architecture

Chapter 1 presents some of the important features of the PA-RISC architecture, still the predominant hardware platform for HP-UX. It covers the register set and how the registers are used, then explains virtual memory concepts, address translation and caching, the mechanisms provided by the architecture to support virtual memory, and some of the most common PA-RISC instructions and their use.

Chapter 2 Procedure Calling Conventions

This chapter examines the conventions used when calling from one procedure to another: how the stack is used and how stack frames are set up, how the registers are used, how arguments are passed, and how results are returned to the calling process. Stack usage for both narrow and wide modes is explained.

Chapter 3 The Kernel: Basic Organization

This chapter examines the basic organization of the kernel data structures, both hardwaredependent and hardware-independent. The discussion includes tables, the kernel as a resource manager, and kernel memory allocation. In addition, many common kernel algorithms and methodologies are presented for the reader’s consideration.

Chapter 4 Programs, Processes, and Threads

The process has long been the workhorse of the UNIX environment. Modern UNIX operating systems have adopted the thread as the new schedulable entity. Chapter 4 examines both the process and the thread, and their relationship to resources and task management. One of the most important aspects of understanding the process/thread environment is in flow of control followed when a system call is requested. The transistion from user mode to system mode and the return to user mode are examined in detail in Chapter 4.

Chapter 5 Process and Thread Management from the Process’s Viewpoint

This chapter explores processes and threads: how they are created, how they are terminated, and how they are scheduled to run. The internal data structures that keep track of the processes and threads are explained. We cover how memory is managed for processes and how addresses are mapped, and we look at process priorities and how they change throughout the life of the process.

Chapter 6 Managing Memory

Chapter 6 looks further into memory management by looking at systemwide memory resources. It explains how the per-process memory areas are allocated from systemwide memory and how that memory is mapped to physical memory. This chapter addresses physical and virtual memory, page regions, and address aliasing.

Chapter 7 The HP-UX Paging System

To complete our tour of the kernel’s memory management system, Chapter 7 discusses the HPUX paging system (commonly called the swapper). The following topics are included in the discussion:

Demand paging

Swap versus paging

lotsfree and vhand

Deallocation

Pseudo-swap

Swap chunks

Chapter 8 Files and File Systems

This chapter looks at the structures both in memory and on disk that make up the HP-UX file systems. HP-UX supports a number of file system layouts. This chapter looks in detail at the UNIX File System layout and the Virtual File System layer, which allows the kernel to work easily with the various file system types. It also explains various caching systems and how the dynamic buffer cache is used to complete disk transfers.

Although the Veritas File System (VxFS) is part of HP-UX, its internals are proprietary to Veritas and are not covered in depth. The merits of a journal file system and extent-based disk space allocation, however, are discussed in this chapter.

Chapter 9 The Process Life Cycle, Cradle to Grave

Chapter 9 explores the process’s life cycle in detail: how it is created, how it is maintained, and how it is terminated. Shared objects are discussed from the process point of view and the following kernel routines and features are presented in detail:

fork()

exec()

wait()

exit()

Copy-on-write

Copy-on-access

Chapter 10 I/O and Device Management

Chapter 10 explores how the system performs I/O. It explains how I/O is performed at a low level in the PA-RISC architecture, including addressing, DMA, and interrupts. It then discusses how I/O works from the application’s point of view, including device files and I/O configuration. We cover the steps in between with a discussion of how device drivers claim devices and how I/O requests make their way from the device files through the device drivers to the physical I/O devices. I/O is presented within the umbrella of the General I/O subsystem.

Chapter 11 The Logical Volume Manager

The logical volume manager (LVM) is a disk management subsystem. It provides a layer of abstraction between the physical disks and the disk I/O system. This chapter looks at how LVM combines physical disks into volume groups, divides those volume groups into logical disk volumes, and provides mirroring for data redundancy. The structures used within the kernel as well as the on-disk structures are discussed. Chapter 12 Multiprocessing and HP-UX

This chapter covers the elements of the kernel that facilitate multiprocessing. We look at some of the issues of having multiple processors sharing main memory and I/O devices. Then we look in detail at the data structures and interfaces that provide for consistent access to these resources among multiple processors. This includes spinlocks and semaphores for controlling exclusive access to resources and also load-balancing between processors.

Chapter 13 Kernel Services

Chapter 13 investigates the mechanisms in the kernel for supporting communication between processes: semaphores, message queues, shared memory, and signals. The kernel structures that support these features and the kernel tunables that control them are explained. We look at the user interfaces to these facilities and examine the kernel callout system, which allows a process to request a future signal from the kernel.

Chapter 14 Signals

Signals were traditionally sent from one process to another and usually meant that a process needed to terminate. With the advent of threads, the entire signal system has become more complex. Chapter 14 discusses both traditional and new uses and methods for signals. We will discuss in turn the following HP-UX kernel supported signaling schemes; System-V, Berkeley, and POSIX.

Chapter 15 System Initialization

HP-UX runs on many different platform designs, using a variety of boot sequences. Chapter 15 explains what takes place once the specific boot criteria has been satisfied and the kernel is off and running. This sequence of events is broken down into the real main, virtual main, and I/O initialization steps.

Chapter 16 Tools Overview

Chapter 16 explains the practical use of two important tools, adb and q4.

Read More Show Less

Customer Reviews

Average Rating 5
( 1 )
Rating Distribution

5 Star

(1)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted January 30, 2004

    Fine detail, excellent presentation: a great book

    This book delivers. Packed with useful diagrams, adb and q4 samples and output, and detailed structures, this text thoroughly covers the 'guts' of HP-UX. The chapters and sections are presented coherently, making it easy to navigate, which maintaining the flow required for deep reading. Every author should strive to present this level of detail in such an accessible manner.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)