Table of Contents

book cover
Linux Application Development, Second Edition
By Michael K. Johnson, Erik W. Troan
...............................................
Publisher: Addison Wesley Professional
Pub Date: November 17, 2004
Print ISBN-10: 0-321-21914-7
Print ISBN-13: 978-0-321-21914-5
Pages: 736
 
start reading online

Table of Contents  | Index


    Copyright
    List of Tables
    Code Examples
    Preface
      Second Edition
      Acknowledgments
    Part 1:  Getting Started
      Chapter 1.  History of Linux Development
      Section 1.1.  A Short History of Free Unix Software
      Section 1.2.  Development of Linux
      Section 1.3.  Notional Lineage of Unix Systems
      Section 1.4.  Linux Lineage
      Chapter 2.  Licenses and Copyright
      Section 2.1.  Copyright
      Section 2.2.  Licensing
      Section 2.3.  Free Software Licenses
      Chapter 3.  Online System Documentation
      Section 3.1.  The man Pages
      Section 3.2.  The Info Pages
      Section 3.3.  Other Documentation
    Part 2:  Development Tools and Environment
      Chapter 4.  Development Tools
      Section 4.1.  Editors
      Section 4.2.  Make
      Section 4.3.  The GNU Debugger
      Section 4.4.  Tracing Program Actions
      Chapter 5.  gcc Options and Extensions
      Section 5.1.  gcc Options
      Section 5.2.  Header Files
      Chapter 6.  The GNU C Library
      Section 6.1.  Feature Selection
      Section 6.2.  POSIX Interfaces
      Section 6.3.  Compatibility
      Chapter 7.  Memory Debugging Tools
      Section 7.1.  Buggy Code
      Section 7.2.  Memory-Checking Tools Included in glibc
      Section 7.3.  Finding Memory Leaks with mpr
      Section 7.4.  Investigating Memory Errors with Valgrind
      Section 7.5.  Electric Fence
      Chapter 8.  Creating and Using Libraries
      Section 8.1.  Static Libraries
      Section 8.2.  Shared Libraries
      Section 8.3.  Designing Shared Libraries
      Section 8.4.  Building Shared Libraries
      Section 8.5.  Installing Shared Libraries
      Section 8.6.  Using Shared Libraries
      Chapter 9.  Linux System Environment
      Section 9.1.  The Process Environment
      Section 9.2.  Understanding System Calls
      Section 9.3.  Finding Header and Library Files
    Part 3:  System Programming
      Chapter 10.  The Process Model
      Section 10.1.  Defining a Process
      Section 10.2.  Process Attributes
      Section 10.3.  Process Information
      Section 10.4.  Process Primitives
      Section 10.5.  Simple Children
      Section 10.6.  Sessions and Process Groups
      Section 10.7.  Introduction to ladsh
      Section 10.8.  Creating Clones
      Chapter 11.  Simple File Handling
      Section 11.1.  The File Mode
      Section 11.2.  Basic File Operations
      Section 11.3.  Querying and Changing Inode Information
      Section 11.4.  Manipulating Directory Entries
      Section 11.5.  Manipulating File Descriptors
      Section 11.6.  Creating Unnamed Pipes
      Section 11.7.  Adding Redirection to ladsh
      Chapter 12.  Signal Processing
      Section 12.1.  Signal Concepts
      Section 12.2.  The Linux (and POSIX) Signal API
      Section 12.3.  Available Signals
      Section 12.4.  Writing Signal Handlers
      Section 12.5.  Reopening Log Files
      Section 12.6.  Real-Time Signals
      Section 12.7.  Learning About a Signal
      Chapter 13.  Advanced File Handling
      Section 13.1.  Input and Output Multiplexing
      Section 13.2.  Memory Mapping
      Section 13.3.  File Locking
      Section 13.4.  Alternatives to read() and write()
      Chapter 14.  Directory Operations
      Section 14.1.  The Current Working Directory
      Section 14.2.  Changing the Root Directory
      Section 14.3.  Creating and Removing Directories
      Section 14.4.  Reading a Directory's Contents
      Section 14.5.  File Name Globbing
      Section 14.6.  Adding Directories and Globbing to ladsh
      Section 14.7.  Walking File System Trees
      Section 14.8.  Directory Change Notification
      Chapter 15.  Job Control
      Section 15.1.  Job Control Basics
      Section 15.2.  Job Control in ladsh
      Chapter 16.  Terminals and Pseudo Terminals
      Section 16.1.  tty Operations
      Section 16.2.  termios Overview
      Section 16.3.  termios Examples
      Section 16.4.  termios Debugging
      Section 16.5.  termios Reference
      Section 16.6.  Pseudo ttys
      Chapter 17.  Networking with Sockets
      Section 17.1.  Protocol Support
      Section 17.2.  Utility Functions
      Section 17.3.  Basic Socket Operations
      Section 17.4.  Unix Domain Sockets
      Section 17.5.  Networking Machines with TCP/IP
      Section 17.6.  Using UDP Datagrams
      Section 17.7.  Socket Errors
      Section 17.8.  Legacy Networking Functions
      Chapter 18.  Time
      Section 18.1.  Telling Time and Dates
      Section 18.2.  Using Timers
      Chapter 19.  Random Numbers
      Section 19.1.  Pseudo-Random Numbers
      Section 19.2.  Cryptography and Random Numbers
      Chapter 20.  Programming Virtual Consoles
      Section 20.1.  Getting Started
      Section 20.2.  Beeping
      Section 20.3.  Determining Whether the Terminal Is a VC
      Section 20.4.  Finding the Current VC
      Section 20.5.  Managing VC Switching
      Section 20.6.  Example: The open Command
      Chapter 21.  The Linux Console
      Section 21.1.  Capability Databases
      Section 21.2.  Glyphs, Characters, and Maps
      Section 21.3.  Linux Console Capabilities
      Section 21.4.  Direct Screen Writing
      Chapter 22.  Writing Secure Programs
      Section 22.1.  When Security Matters
      Section 22.2.  Minimizing the Opportunity for Attack
      Section 22.3.  Common Security Holes
      Section 22.4.  Running as a Daemon
    Part 4:  Development Libraries
      Chapter 23.  String Matching
      Section 23.1.  Globbing Arbitrary Strings
      Section 23.2.  Regular Expressions
      Chapter 24.  Terminal Handling with S-Lang
      Section 24.1.  Input Handling
      Section 24.2.  Output Handling
      Chapter 25.  A Hashed Database Library
      Section 25.1.  Overview
      Section 25.2.  Basic Operations
      Section 25.3.  Reading Records
      Section 25.4.  Modifying the Database
      Section 25.5.  Example
      Chapter 26.  Parsing Command-Line Options
      Section 26.1.  The Option Table
      Section 26.2.  Using the Option Table
      Section 26.3.  Using Callbacks
      Section 26.4.  Error Handling
      Section 26.5.  Option Aliasing
      Section 26.6.  Parsing Argument Strings
      Section 26.7.  Handling Extra Arguments
      Section 26.8.  Sample Application
      Chapter 27.  Dynamic Loading at Run Time
      Section 27.1.  The dl Interface
      Chapter 28.  User Identification and Authentication
      Section 28.1.  ID-to-Name Translation
      Section 28.2.  Pluggable Authentication Modules
    Appendices
      Appendix A.  Header Files
      Appendix B.  ladsh Source Code
    Glossary
    Bibliography
    Index

top

 

 


Linux Application Development
Linux Application Development (paperback) (2nd Edition)
ISBN: 0321563220
EAN: 2147483647
Year: 2003
Pages: 168

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net