Beginning
Linux® Programming
4th Edition
Neil Matthew
Richard Stones
Wiley Publishing, Inc.
47627ffirs.qxd:WroxPro 10/1/07 7:07 AM Page v
47627ffirs.qxd:WroxPro 10/1/07 7:07 AM Page ii
Beginning Linux® Programming 4th Edition
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Foreword. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv
Chapter 1: Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chapter 2: Shell Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Chapter 3: Working with Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Chapter 4: The Linux Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Chapter 5: Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Chapter 6: Managing Text-Based Screens with curses . . . . . . . . . . . . . . . . 211
Chapter 7: Data Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Chapter 8: MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Chapter 9: Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Chapter 10: Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Chapter 11: Processes and Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
Chapter 12: POSIX Threads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
Chapter 13: Inter-Process Communication: Pipes . . . . . . . . . . . . . . . . . . . . 525
Chapter 14: Semaphores, Shared Memory, and Message Queues. . . . . . . . . 577
Chapter 15: Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
Chapter 16: Programming GNOME Using GTK+ . . . . . . . . . . . . . . . . . . . . . . 645
Chapter 17: Programming KDE Using Qt. . . . . . . . . . . . . . . . . . . . . . . . . . . 701
Chapter 18: Standards for Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761
47627ffirs.qxd:WroxPro 10/1/07 7:07 AM Page i
47627ffirs.qxd:WroxPro 10/1/07 7:07 AM Page ii