Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Linux System Programming: Talking Directly to the Kernel and C Library

This book is about writing software that makes the most effective use of the system you're running on -- code that interfaces directly with the kernel and core system libraries, including the shell, text editor, compiler, debugger, core utilities, and system daemons. The majority of both Unix and Linux code is still written at the system level, and Linux System Programming focuses on everything above the kernel, where applications such as Apache, bash, cp, vim, Emacs, gcc, gdb, glibc, ls, mv, and X exist.

Written primarily for engineers looking to program (better) at the low level, this book is an ideal teaching tool for any programmer. Even with the trend toward high-level development, either through web software (such as PHP) or managed code (C#), someone still has to write the PHP interpreter and the C# virtual machine. Linux System Programming gives you an understanding of core internals that makes for better code, no matter where it appears in the stack. Debugging high-level code often requires you to understand the system calls and kernel behavior of your operating system, too.

Key topics include:
  • An overview of Linux, the kernel, the C library, and the C compiler
  • Reading from and writing to files, along with other basic file I/O operations, including how the Linux kernel implements and manages file I/O
  • Buffer size management, including the Standard I/O library
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • File and directories-creating, moving, copying, deleting, and managing them
  • Memory management -- interfaces for allocating memory, managing the memory you have, and optimizing your memory access
  • Signals and their role on a Unix system, plus basic and advanced signal interfaces
  • Time, sleeping, and clock management, starting with the basics and continuing through POSIX clocks and high resolution timers
With Linux System Programming, you will be able to take an in-depth look at Linux from both a theoretical and an applied perspective as you cover a wide range of programming topics.

About the Author

Robert Love has been a Linux user and hacker since the early days. He is active in, and passionate about, both the Linux kernel and GNOME desktop communities. His recent contributions to the Linux kernel include work on the kernel event layer and inotify. GNOME-related contributions include Beagle, GNOME Volume Manager, NetworkManager, and Project Utopia. Currently Robert works in the Open Source Program Office at Google.

As an author, Robert is responsible for Linux Kernel Development (SAMS), now in its second edition, and Linux System Programming (O'Reilly). He is also a coauthor of the fifth edition of O'Reilly's Linux in a Nutshell. He's a Contributing Editor for Linux Journal, has written numerous articles, and has been invited to speak around the world on Linux.

Robert graduated from the University of Florida with a B.A. in Mathematics and a B.S. in Computer Science. Hailing from South Florida, he currently calls Boston home.
(HTML tags aren't allowed.)

Microfluidics for Biotechnology (Microelectromechanical Systems)
Microfluidics for Biotechnology (Microelectromechanical Systems)
Since the concept of the first DNA biochip, biotechnologies have soared, deeply changing the world of biology. In fact, they have already had direct implications on each of us. Since the very beginning of this science in the 1980s, spectacular advances have been made, such as the analysis of the human DNA genome sequence, while...
Zend Framework 1.8 Web Application Development
Zend Framework 1.8 Web Application Development

The Zend Framework has a flexible architecture that lets you build modern web applications and web services easily. The MVC components make the maintenance and testing of your applications easier. However, it is not only an MVC framework for developers. It also provides an easy-to-use high-quality component library that is designed to be used...

Computerized Adaptive Testing: Theory and Practice
Computerized Adaptive Testing: Theory and Practice
Modern computer technology has opened up several new possibilities for optimizing the administration of educational and psychological tests. In computer adaptive testing (CAT), tests are automatically tailored to the proficiency level of the individual examinees. Currently, nearly all large-scale testing programs in the western world are already...

Essential SharePoint 2007
Essential SharePoint 2007
Collaboration. Portals. Knowledge Management. Search. Document Management. These are terms that are thrown around when talking about Microsoft Office SharePoint Server 2007 (MOSS). But what do they really mean?

Most books are designed to address the “how” behind SharePoint, from either an administrative perspective or a
Managing TCP/IP Networks: Techniques, Tools and Security
Managing TCP/IP Networks: Techniques, Tools and Security

Managing TCP/IP Networks Techniques, Tools and Security Considerations
Gilbert Held, 4-Degree Consulting, Macon, Georgia, USA

  • Focuses on the techniques, tools, diagnostic testing, and security
  • Addresses the practical methods to manage a TCP/IP network
  • Helps readers to...
Visual Basic Developer’s Guide to ASP and IIS
Visual Basic Developer’s Guide to ASP and IIS
As Visual Basic developers, we have seen a distinct move away from single, monolithic executables to distributed, component-based architectures. With this shift has come the need to think differently. We need to think of applications as a set of components working together to provide the needed solution.  
 As technology
©2020 LearnIT (support@pdfchm.net) - Privacy Policy