Advanced Programming in the UNIX Environment (3rd Edition) by W. Richard Stevens, Stephen A. Rago

By W. Richard Stevens, Stephen A. Rago

For greater than 20 years, severe C programmers have depended on one e-book for sensible, in-depth wisdom of the programming interfaces that force the UNIX and Linux kernels: W. Richard Stevens’ Advanced Programming within the UNIX® Environment . Now, once more, Rich’s colleague Steve Rago has completely up-to-date this vintage paintings. the hot 3rd variation helps today’s prime structures, displays new technical advances and most sensible practices, and aligns with model four of the one UNIX Specification.

Steve conscientiously keeps the spirit and process that experience made this booklet so worthwhile. construction on Rich’s pioneering paintings, he starts off with documents, directories, and methods, conscientiously laying the basis for extra complex recommendations, equivalent to sign dealing with and terminal I/O. He additionally completely covers threads and multithreaded programming, and socket-based IPC.

This variation covers greater than seventy new interfaces, together with POSIX asynchronous I/O, spin locks, boundaries, and POSIX semaphores. such a lot out of date interfaces were got rid of, aside from a number of which are ubiquitous. approximately all examples were demonstrated on 4 glossy structures: Solaris 10, Mac OS X model 10.6.8 (Darwin 10.8.0), FreeBSD 8.0, and Ubuntu model 12.04 (based on Linux 3.2).

As in past versions, you’ll research via examples, together with greater than 10000 traces of downloadable, ISO C resource code. greater than 400 method calls and services are verified with concise, entire courses that basically illustrate their utilization, arguments, and go back values. To tie jointly what you’ve discovered, the booklet provides numerous chapter-length case reviews, each one reflecting modern environments.

Advanced Programming within the UNIX® surroundings has helped generations of programmers write code with unprecedented energy, functionality, and reliability. Now up to date for today’s platforms, this 3rd variation may be much more important.

Show description

Read Online or Download Advanced Programming in the UNIX Environment (3rd Edition) (Addison-Wesley Professional Computing Series) PDF

Best unix books

Linux Desk Reference

* thoroughly up-to-date with hundreds and hundreds of recent examples! * the single Linux reference with examples for each command * All-new chapters at the Apache internet server, tc shell, and Emacs editor * equipped through activity, so that you can locate it speedy! the sensible, convenient table reference for each Linux user-now thoroughly up to date!

UNIX … im Alleingang: Für Einsteiger und Umsteiger

1. 1. Noch ein Buch über UNIX! Wo doch bereits so viele geschrieben worden sind - von der kurzen Einführung bis hin zum umfassenden Kompendium. Es gibt eine große Zahl spezieller UNIX-Themen, die eigene Bücher wert sind. Viele davon sind ebenfalls schon geschrieben. was once ist additionally das Besondere an dem vorliegenden Buch "UNIX .

UNIX System Security: A Guide for Users and System Administrators

As the UNIX procedure used to be initially designed by means of programmers to be used through different programmers, it was once utilized in an atmosphere of open cooperation the place safeguard was once of minimum drawback. Now that its use has unfold to universities, companies, and executive, the private and delicate nature of the knowledge saved on UNIX structures has made the safety of those structures of paramount value.

UNIX network programming, vol.1: Networking APIs

This revised consultant to Unix networking APIs updates assurance of programming criteria and debugging suggestions, and covers working platforms together with pink Hat nine, Solaris nine, HP-UX, unfastened BSD four. 8/5. zero, AIX five. x and Mac OS X.

Extra resources for Advanced Programming in the UNIX Environment (3rd Edition) (Addison-Wesley Professional Computing Series)

Example text

On some systems, the definitions are split into multiple header files. h, which defines the dirent structure (and is actually stored in /usr/include/x86_64-linux-gnu/bits). • The declaration of the main function uses the style supported by the ISO C standard. ) • We take an argument from the command line, argv[1], as the name of the directory to list. In Chapter 7, we’ll look at how the main function is called and how the command-line arguments and environment variables are accessible to the program.

When the program is done, it calls the function exit with an argument of 0. The function exit terminates a program. By convention, an argument of 0 means OK, and an argument between 1 and 255 means that an error occurred. 5, we show how any program, such as a shell or a program that we write, can obtain the exit status of a program that it executes. 8 UNIX System Overview Chapter 1 Working Directory Every process has a working directory, sometimes called the current working directory. This is the directory from which all relative pathnames are interpreted.

We can execute ls only on the working directory. To allow arguments would require that we parse the input line, separating the arguments by some convention, probably spaces or tabs, and then pass each argument as a separate parameter to the execlp function. Nevertheless, this program is still a useful demonstration of the UNIX System’s process control functions. If we run this program, we get the following results. Note that our program has a different prompt — the percent sign—to distinguish it from the shell’s prompt.

Download PDF sample

Rated 4.97 of 5 – based on 23 votes