AIX Documentation: Books:
AIX 5L Version 5.1 General Programming Concepts: Writing and Debugging Programs
- Current View:
Books
- Views: [ Books | Commands | Programmer's Reference | Tasks and Topics ]
Back
- AIX 5L Version 5.1 Books
- Programming Guides
- AIX 5L Version 5.1 General Programming Concepts: Writing and Debugging Programs
- About This Book
- Who Should Use This Book
- Highlighting
- ISO 9000
- Related Publications
- Trademarks
- Chapter 1. Tools and Utilities
- Entering a Program into the System
- Checking a Program
- Compiling and Linking a Program
- Subroutines
- Shell Commands
- Chapter 2. The Curses Library
- Terminology
- Naming Conventions
- Structure of a Curses Program
- Initializing Curses
- Windows in the Curses Environment
- Manipulating Window Data with Curses
- Controlling the Cursor with Curses
- Manipulating Characters with Curses
- Understanding Terminals with curses
- Working with Color
- Manipulating Video Attributes
- Manipulating Soft Labels
- Obsolete Curses Subroutines
- AIX 3.2 Curses Compatibility
- List of Additional Curses Subroutines
- Chapter 3. Debugging Programs
- adb Debug Program Overview
- Getting Started with the adb Debug Program
- Controlling Program Execution
- Using adb Expressions
- Customizing the adb Debug Program
- Computing Numbers and Displaying Text
- Displaying and Manipulating the Source File with the adb Program
- adb Debug Program Reference Information
- Example adb Program: adbsamp
- Example adb Program: adbsamp2
- Example adb Program: adbsamp3
- Example of Directory and i-node Dumps in adb Debugging
- Example of Data Formatting in adb Debugging
- Example of Tracing Multiple Functions in adb Debugging
- dbx Symbolic Debug Program Overview
- Using the dbx Debug Program
- Displaying and Manipulating the Source File with the dbx debug Program
- Examining Program Data
- Debugging at the Machine Level with dbx
- Customizing the dbx Debugging Environment
- List of dbx Subcommands
- Chapter 4. Error Notification
- Security
- Examples
- Error Logging Facility
- Error Logging Overview
- Managing Error Logging
- Error Logging Tasks
- Error Logging and Alerts
- Error Logging Controls
- Chapter 5. File Systems and Directories
- Related Information
- File Types
- JFS Directories
- JFS2 Directories
- Working with JFS i-nodes
- Working with JFS2 i-nodes
- JFS File Space Allocation
- JFS2 File Space Allocation
- Writing Programs That Access Large Files
- Linking for Programmers
- Using File Descriptors
- File Creation and Removal
- Working with File I/O
- File Status
- File Accessibility
- JFS File System Layout
- JFS2 File System Layout
- Creating New File System Types
- Major Control Block Header Files
- Chapter 6. Floating-Point Exceptions
- Floating-Point Exception Subroutines
- Floating-Point Trap Handler Operation
- Chapter 7. Input and Output Handling
- Low-Level I/O Interfaces
- Stream I/O Interfaces
- Terminal I/O Interfaces
- Asynchronous I/O Interfaces
- Chapter 8. Large Program Support
- Understanding the Large Address-Space Model
- Understanding the Very Large Address-Space Model
- Enabling the Large Address-Space Models
- Executing Programs with Large Data Areas
- Chapter 9. Parallel Programming
- Related Information
- Understanding Threads
- Thread Programming Concepts
- Writing Reentrant and Thread-Safe Code
- Developing Multi-Threaded Programs
- Developing Multi-Threaded Program which examines and modifies pthread library objects
- Developing Multi-Threaded Program Debuggers
- Multi-Threaded Call Back Functions
- Benefits of Threads
- Chapter 10. Programming on Multiprocessor Systems
- Related Information
- Identifying Processors
- Controlling Processor Use
- Dynamic Processor Deallocation
- Creating Locking Services
- Kernel Programming
- Performance Monitor API Programming Concepts
- Chapter 11. Threads Programming Guidelines
- Related Information
- Thread Implementation Model
- Thread-safe and Threaded Libraries in AIX
- Threads Versions On AIX
- Threads Basic Operation Overview
- Creating Threads
- Terminating Threads
- List of Threads Basic Operation Subroutines
- Synchronization Overview
- Using Mutexes
- Using Condition Variables
- Joining Threads
- List of Synchronization Subroutines
- Scheduling Overview
- Threads Scheduling
- Synchronization Scheduling
- List of Scheduling Subroutines
- Threads Advanced Features
- One-Time Initializations
- Thread-Specific Data
- Advanced Attributes
- Making Complex Synchronization Objects
- List of Threads Advanced-Feature Subroutines
- Threads-Processes Interactions Overview
- Signal Management
- Process Duplication and Termination
- Scheduling
- List of Threads-Processes Interactions Subroutines
- Threads Library Options
- Threads Library Quick Reference
- Chapter 12. lex and yacc Program Information
- Creating an Input Language with the lex and yacc Commands
- Using the lex Program with the yacc Program
- Example Program for the lex and yacc Programs
- Chapter 13. Logical Volume Programming
- Related Information
- List of Logical Volume Subroutines
- Chapter 14. make Command
- Creating a Description File
- Internal Rules for the make Program
- Defining and Using Macros in a Description File
- How the make Command Creates a Target File
- Using the make Command with Source Code Control System (SCCS) Files
- Description Files Stored in the Source Code Control System (SCCS)
- Using the make Command with Non-Source Code Control System (SCCS) Files
- How the make Command Uses the Environment Variables
- Example of a Description File
- Chapter 15. m4 Macro Processor Overview
- Using the m4 Macro Processor
- Creating a User-Defined Macro
- Using a Built-In m4 Macro
- List of Additional m4 Macros
- Chapter 16. National Language Support
- NLS Capabilities
- Overview of Chapter Contents
- Locale Overview for Programming
- National Language Support Subroutines Overview
- Locale Subroutines
- Time Formatting Subroutines
- Monetary Formatting Subroutines
- Multibyte and Wide Character Subroutines
- Internationalized Regular Expression Subroutines
- Layout (Bidirectional Text and Character Shaping) Overview
- Use of the libcur Package
- Code Set Overview
- Converters Overview for Programming
- Writing Converters Using the iconv Interface
- Input Method Overview
- Programming Input Methods
- Working with Keyboard Mapping
- Using Callbacks
- Bidirectional Input Method
- Cyrillic Input Method (CIM)
- Greek Input Method (GIM)
- Japanese Input Method (JIM)
- Korean Input Method (KIM)
- Latvian Input Method (LVIM)
- Lithuanian Input Method (LTIM)
- Thai Input Method (THIM)
- Vietnamese Input Method (VNIM)
- Simplified Chinese Input Method (ZIM)
- Simplified Chinese Input Method (ZIM-UCS)
- Single-Byte Input Method
- Traditional Chinese Input Method (TIM)
- Universal Input Method
- List of Reserved Keysyms
- Message Facility Overview for Programming
- Culture-Specific Data Processing
- NLS Sample Program
- National Language Support (NLS) Quick Reference
- Related Information
- List of National Language Support Subroutines
- List of Locale Subroutines
- List of Time and Monetary Formatting Subroutines
- List of Multibyte Character Subroutines
- List of Wide Character Subroutines
- List of Layout Library Subroutines
- List of Message Facility Subroutines
- List of Converter Subroutines
- List of Input Method Subroutines
- List of Regular Expression Subroutines
- Chapter 17. Object Data Manager (ODM)
- ODM Object Classes and Objects
- ODM Descriptors
- ODM Object Searches
- List of ODM Commands and Subroutines
- ODM Example Code and Output
- Chapter 18. sed Program Information
- Manipulating Strings with sed
- Chapter 19. Shared Libraries, Shared Memory, and The malloc Subsystem
- Related Information
- Shared Objects and Runtime Linking
- Shared Libraries and Lazy Loading
- Creating a Shared Library
- Program Address Space Overview
- Understanding Memory Mapping
- IPC (Inter-Process Communication) Limits
- Shared Memory Segments
- Creating a Mapped Data File with the shmat Subroutine
- Creating a Copy-On-Write Mapped Data File with the shmat Subroutine
- Creating a Shared Memory Segment with the shmat Subroutine
- System Memory Allocation Using the malloc Subsystem
- User Defined Malloc Replacement
- Debug Malloc
- Malloc Multiheap
- Malloc Buckets
- Paging Space Programming Requirements
- List of Memory Manipulation Services
- List of Memory Mapping Services
- Chapter 20. Packaging Software for Installation
- Installation Procedure Requirements
- Package Control Information Requirements
- Package Partitioning Requirements
- Software Product Packaging Parts
- Format of a Software Package
- Package and Fileset Naming Conventions
- Fileset Revision Level Identification
- Contents of a Software Package
- The lpp_name Package Information File
- The liblpp.a Installation Control Library File
- Further Description of Installation Control Files
- Installation Control Files Specifically for Repackaged Products
- Installation Files for Supplemental Disk Subsystems
- Format of Distribution Media
- Tape
- CD-ROM
- Diskette
- The Table of Contents File
- The installp Processing of Product Packages
- Installation Commands Used During Installation and Update Processing
- Chapter 21. Documentation Library Service
- Language Support
- Writing your HTML Documents
- Making your Documents Printable
- Calling the Documentation Library Service From Your Documentation
- Creating Indexes of your Documentation
- Removing Indexes of your Documentation
- Packaging your Application's Documentation
- Chapter 22. Software Vital Product Data (SWVPD)
- Object Classes
- Chapter 23. Source Code Control System (SCCS)
- Introduction to SCCS
- SCCS Flag and Parameter Conventions
- Creating, Editing, and Updating an SCCS File
- Controlling and Tracking SCCS File Changes
- Detecting and Repairing Damaged SCCS Files
- List of Additional SCCS Commands
- Chapter 24. Subroutines, Example Programs, and Libraries
- Related Information
- 128-Bit Long Double Floating-Point Data Type
- List of Character Manipulation Subroutines
- List of Executable Program Creation Subroutines
- List of Files and Directories Subroutines
- List of FORTRAN BLAS Level 1: Vector-Vector Subroutines
- List of FORTRAN BLAS Level 2: Matrix-Vector Subroutines
- List of FORTRAN BLAS Level 3: Matrix-Matrix Subroutines
- List of Numerical Manipulation Subroutines
- List of Long Long Integer Numerical Manipulation Subroutines
- List of 128-Bit Long Double Numerical Manipulation Subroutines
- List of Processes Subroutines
- List of Multi-threaded Programming Subroutines
- List of Programmer's Workbench Library Subroutines
- List of Security and Auditing Subroutines
- List of String Manipulation Subroutines
- Programming Example for Manipulating Characters
- Searching and Sorting Example Program
- List of Operating System Libraries
- librs2.a Library
- Chapter 25. System Management Interface Tool (SMIT)
- Related Information
- SMIT Screen Types
- SMIT Object Classes
- SMIT Aliases and Fast Paths
- SMIT Information Command Descriptors
- SMIT Command Generation and Execution
- Adding Tasks to the SMIT Database
- Debugging SMIT Database Extensions
- Creating SMIT Help Information for a New Task
- sm_menu_opt (SMIT Menu) Object Class
- sm_name_hdr (SMIT Selector Header) Object Class
- sm_cmd_opt (SMIT Dialog/Selector Command Option) Object Class
- sm_cmd_hdr (SMIT Dialog Header) Object Class
- SMIT Example Program
- Chapter 26. System Resource Controller
- Subsystem Interaction with the SRC
- SRC Objects
- SRC Communication Types
- Programming Subsystem Communication with the SRC
- Defining Your Subsystem to the SRC
- List of Additional SRC Subroutines
- Chapter 27. Trace Facility
- The Trace Facility Overview
- Controlling the Trace
- Recording Trace Event Data
- Generating a Trace Report
- Extracting trace data from a dump
- Trace Facility Commands
- Start the Trace Facility
- Trace Hook IDs: 001 through 10A
- Trace Hook IDs: 10B through 14E
- Trace Hook IDs: 152 through 19C
- Trace Hook IDs: 1A4 through 1BF
- Trace Hook IDs: 1C8 through 1CE
- Trace Hook IDs: 1CF through 211
- Trace Hook IDs: 212 through 220
- Trace Hook IDs: 221 through 223
- Trace Hook IDs: 224 through 226
- Trace Hook IDs: 230 through 233
- Trace Hook IDs: 240 through 252
- Trace Hook IDs: 253 through 25A
- Trace Hook IDs: 271 through 280
- Trace Hook IDs: 301 through 315
- Trace Hook IDs: 3C5 through 3E2
- Trace Hook IDs: 401
- Trace Hook IDs: 402
- Trace Hook IDs: 403
- Trace Hook IDs: 404
- Trace Hook IDs: 405
- Trace Hook IDs: 406
- Trace Hook IDs: 407
- Trace Hook IDs: 408
- Trace Hook IDs: 409
- Trace Hook IDs: 411 through 418
- Trace Hook IDs: 460 through 46E
- Chapter 28. tty Subsystem
- TTY Subsystem Objectives
- Line Discipline Module (ldterm)
- Converter Modules
- TTY Drivers
- Chapter 29. High-Resolution Time Measurements Using POWER-based Time Base or POWER family Real-Time Clock
- Chapter 30. Loader Domains
- Using Loader Domains
- Creating/Deleting Loader Domains
- Chapter 31. Power Management-Aware Application Program
- Chapter 32. ELF Object Files and Dynamic Linking
- Section 1. ELF Object File General Information
- ELF Header
- Sections
- String Table
- System V Application Binary Interface
- Relocation
- Symbol Table
- Section 2. ELF Program and Dynamic Linking General Information
- Program Header
- Program Loading (Processor-Specific)
- Dynamic Linking
- Appendix A. Character Maps
- ISO Code Sets
- IBM Code Sets
- Appendix B. Notices