Beginning Linux Programming

Beginning Linux Programming

3.7 (127 ratings by Goodreads)
  • Paperback
By (author)  , By (author) 

List price: US$39.98

Currently unavailable

Add to wishlist

AbeBooks may have this title (opens in new window).

Try AbeBooks


If you've installed Linux, or have access to a version of UNIX, you've probably got used to the environment and its configuration, but if you want to start programming, most Linux books leave you on your own. This book takes off where they stop, showing you how to make the most of the tools UNIX offers (which are included as standard with any distribution of Linux) and start programming UNIX for real. We concentrate on C programming, looking at the GNU tools, and the UNIX C libraries, to teach you step by step how to write, build, and debug serious application code. Throughout the book, well develop a fully featured CD Database application, allowing you to see the theory of each new topic applied to a real application. As well as handling basic file operations, input and output and dealing with the way UNIX handles data, well introduce such advanced topics as inter-process communication, networking, and using CGI scripting to build a web interface all the elements of client-server programming. We also introduce the GTK+ and show how to build rich graphical user interfaces for X with GNOME.
Finally, theres an introduction to device drivers, to give you a window into the way the Linux kernel itself works. you'll also learn shell scripting for BASH, and well introduce two more powerful scripting languages Tcl and Perl. Who is this book for? you'll need to be comfortable with the basics of using Linux, with a good working knowledge of how to use and configure your system. You should also know some simple C. If you're familiar with basic programming concepts, the working examples in the book will soon give you the confidence to explore Linuxs C libraries. you'll find the programming tools used in this book are included with virtually any Linux distribution, so this book is all you need to get started as a Linux programmer. What does this book cover? The Perl Language Programmming for GNOME POSIX Threads Kernel Programming Latest Linux Kernel, current tools and C libraries
show more

Product details

  • Paperback | 1008 pages
  • 186.4 x 229.6 x 53.3mm | 1,365.33g
  • Hungry Minds Inc,U.S.
  • Foster City, United States
  • New ed of 2 Revised ed
  • 0764543733
  • 9780764543739

About Neil Matthew

Neil Matthew has been interested in and has programmed computers since 1974. A mathematics graduate from the University of Nottingham, Neil is just plain keen on programming languages and likes to explore new ways of solving computing problems. He's written systems to program in BCPL, FP (Function Programming), Lisp, Prolog and a structured BASIC. He even wrote a 6502 microprocessor emulator to run BBC microcomputer programs on UNIX systems. In terms of UNIX experience, Neil has used almost every flavor since Version 6, including Xenix, SCO flavors, Ultrix, BSD 4.2, Microport, System V, SunOS 4, Solaris and, of course, Linux. He's been a UNIX system administrator on-and-off since 1983. Neil is familiar with the internals of UNIX-like systems and was involved in the design and implementation of a intelligent communications controller for DEC Ultrix. He can claim to have been using Linux since August 1993, when he acquired a floppy disk distribution of Soft Landing (SLS) from Canada, with kernel version 0.99.11. He's used Linux-based computers for hacking C, C++, Icon, Prolog and Tcl, at home and at work. He also uses and recommends Linux for Internet connections, usua lly as a proxy caching server for Windows LANs and also as a file server to Windows 3.11/95 using SAMBA. He's sold a number of Internet firewall systems to UK companies (including Wrox!). Most of Neil's 'home' projects were originally implemented in SCO UNIX, but they've been ported to Linux with little or no trouble. He says Linux is much easier because it supports quite a lot of features from other systems, so that both BSD and System V targeted programs will generally compile with little or no change. As the head of software and principal engineer at Camtec Electronics in the Eighties, Neil programmed in C and C++ for real-time embedded systems environments. Since then, he's worked on software development techniques and quality assurance both as a consultant in communications software development with Scientific Generics and as a software QA specialist for GEHE UK. Richard Stones started programming at school, more years ago than he cares to remember, on a BBC micro, which with the help a few spare parts continued functioning for the next 15 years. He graduated from the University of Nottingham with an Electronic Engineering degree, by which time he had decided that software was more fun than hardware. Over the years he has worked for a variety of companies, from the very small with just a few dozen employees, to multinationals, including the IT services giant EDS. Along the way he has worked on a wide range of different projects, from embedded real-time communications systems, through accounting systems, to large help desk systems with multi-gigabyte databases. Many of these projects have either been hosted on UNIX, or UNIX was the development environment. On one project the entire embedded software was developed and tested on Linux, and only ported to the target hardware and minimal real-time executive in the final stages. He is currently employed by the IT department of a pan-European wholesale and distribution company as a systems architect. Rick's first experience of a UNIX style operating system was on a PDP 11/23+, after which BSD4.2 on a VAX came as a pleasant improvement. After spells using UNIX System V.2, Xenix, SCO UNIX, AIX and a few others, he first met Linux back in the kernel .99 days, and has been a fan ever since. A bit of a programming linguist, he has programmed systems in SL-1, a couple of assemblers, Fortran, Pascal, C, C++, Java, SQL and Perl. Under pressure he has also been known to admit to some familiarity with Visual Basic, but tries not to advertise this aberration. Finally, both authors were co-authors of Instant UNIX (Wrox Press).
show more

Table of contents

Foreward. Introduction. Chapter 1. Getting Started. Chapter 2. Shell Programming. Chapter 3. Working with Files. Chapter 4. The UNIX Environment. Chapter 5. Terminals. Chapter 6. Curses. Chapter 7. Data Management. Chapter 8. Development Tools. Chapter 9. Debugging. Chapter 10. Processes and Signals. Chapter 11. POSIX Threads. Chapter 12. Inter-process Communication: Pipes. Chapter 13. Semaphores, Message Queues and Shared Memory. Chapter 14. Sockets. Chapter 15. Tcl: Tool Command Language. Chapter 16. Programming for X. Chapter 17. Programming GNOME using GTK+. Chapter 18. The Perl Programming Language. Chapter 19. Programming for the Internet: HTML. Chapter 20. Internet Programming 2: CGI. Chapter 21. Device Drivers. Appendix A. Portability. Appendix B. FSF and the GNU Project. Appendix C. Internet Resources. Appendix D. Bibliography.
show more

Rating details

127 ratings
3.7 out of 5 stars
5 22% (28)
4 36% (46)
3 33% (42)
2 8% (10)
1 1% (1)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X