000 04853nam a2200373Ia 4500
005 20260803094057.0
008 251212s2005 xx 000 0 und d
245 1 _aLINUX application development /
_cMichael K. Johnson.
100 _aJohnson, Michael K.
700 _aTroan, Erik W.
260 _aBoston :
_bPearson Education,
_c2005.
250 _a2nd
300 _axxxi, 702 p.:
300 _c24 cm.
500 _aIncludes index
020 _a0-321-21914-7
650 _aApplication software
_xDevelopment
650 _aLinux
650 _aOperating systems (Computers)
050 _a005.1 J61l
943 _b0
_c0
_d0
_e1
_f0
_g0
_h0
_i0
_j0
944 _b1
_c1
_d0
953 _pHED3637
546 _aEnglish
953 _cCollLib
505 _aList of Tables. Code Examples. Preface. I. GETTING STARTED. 1. History of Linux Development. A Short History of Free Unix Software. Development of Linux. Notional Lineage of Unix Systems. Linux Lineage. 2. Licenses and Copyright. Copyright. Licensing. Free Software Licenses. 3. Online System Documentation. The man Pages. The Info Pages. Other Documentation. II. DEVELOPMENT TOOLS AND ENVIRONMENT. 4. Development Tools. Editors. Make. The GNU Debugger. Tracing Program Actions. 5. gcc Options and Extensions. gcc Options. Header Files. 6. The GNU C Library. Feature Selection. POSIX Interfaces. Compatibility. 7. Memory Debugging Tools. Buggy Code. Memory-Checking Tools Included in glibc. Finding Memory Leaks with mpr. Investigating Memory Errors with Valgrind. Electric Fence. 8. Creating and Using Libraries. Static Libraries. Shared Libraries. Designing Shared Libraries. Building Shared Libraries. Installing Shared Libraries. Using Shared Libraries. 9. Linux System Environment. The Process Environment. Understanding System Calls. Finding Header and Library Files. III. SYSTEM PROGRAMMING. 10. The Process Model. Defining a Process. Process Attributes. Process Information. Process Primitives. Simple Children. Sessions and Process Groups. Introduction to l a d s h. Creating Clones. 11. Simple File Handling. The File Mode. Basic File Operations. Querying and Changing Inode Information. Manipulating Directory Entries. Manipulating File Descriptors. Creating Unnamed Pipes. Adding Redirection to l a d s h. 12. Signal Processing. Signal Concepts. The Linux (and POSIX) Signal API. Available Signals. Writing Signal Handlers. Reopening Log Files. Real-Time Signals. Learning About a Signal. 13. Advanced File Handling. Input and Output Multiplexing. Memory Mapping. File Locking. Alternatives to read() and write(). 14. Directory Operations. The Current Working Directory. Changing the Root Directory. Creating and Removing Directories. Reading a Directory`s Contents. File Name Globbing. Adding Directories and Globbing to ladsh. Walking File System Trees. Directory Change Notification. 15. Job Control. Job Control Basics. Job Control in ladsh. 16. Terminals and Pseudo Terminals. tty Operations. termios Overview. termios Examples. termios Debugging. termios Reference. Pseudo ttys. 17. Networking with Sockets. Protocol Support. Utility Functions. Basic Socket Operations. Unix Domain Sockets. Networking Machines with TCP/IP. Using UDP Datagrams. Socket Errors. Legacy Networking Functions. 18. Time. Telling Time and Dates. Using Timers. 19. Random Numbers. Pseudo-Random Numbers. Cryptography and Random Numbers. 20. Programming Virtual Consoles. Getting Started. Beeping. Determining Whether the Terminal Is a VC. Finding the Current VC. Managing VC Switching. Example: The open Command. 21. The Linux Console. Capability Databases. Glyphs, Characters, and Maps. Linux Console Capabilities. Direct Screen Writing. 22. Writing Secure Programs. When Security Matters. Minimizing the Opportunity for Attack. Common Security Holes. Running as a Daemon. IV. DEVELOPMENT LIBRARIES. 23. String Matching. Globbing Arbitrary Strings. Regular Expressions. 24. Terminal Handling with S-Lang. Input Handling. Output Handling. 25. A Hashed Database Library. Overview. Basic Operations. Reading Records. Modifying the Database. Example. 26. Parsing Command-Line Options. The Option Table. Using the Option Table. Using Callbacks. Error Handling. Option Aliasing. Parsing Argument Strings. Handling Extra Arguments. Sample Application. 27. Dynamic Loading at Run Time. The dl Interface. 28. User Identification and Authentication. ID-to-Name Translation. Pluggable Authentication Modules. APPENDICES. Appendix A. Header Files. Appendix B. ladsh Source Code. Glossary. Bibliography. Index.
520 _a"Linux Application Development" provides explanations of all areas of the Linux userspace API.
591 _a0
336 _aText
337 _aUnmediated
338 _aVolume
942 _2lcc
_cBK
_arizal
_b2015-04-07 23:18:22
_drizal
_e2015-04-07 23:18:22
998 _a4253
999 _c4236
_d4236