Vai al contenuto principale della pagina

The Linux programming interface [[electronic resource] ] : a Linux and UNIX system programming handbook / / Michael Kerrisk



(Visualizza in formato marc)    (Visualizza in BIBFRAME)

Autore: Kerrisk Michael <1961-> Visualizza persona
Titolo: The Linux programming interface [[electronic resource] ] : a Linux and UNIX system programming handbook / / Michael Kerrisk Visualizza cluster
Pubblicazione: San Francisco, : No Starch Press, c2010
Edizione: 1st edition
Descrizione fisica: 1 online resource (1556 p.)
Disciplina: 005.4/32
Soggetto topico: Operating systems (Computers)
Note generali: Description based upon print version of record.
Nota di bibliografia: Includes bibliographical references (p. [1437]-1445) and index.
Nota di contenuto: Brief Contents; Contents in Detail; Preface; 1: History and Standards; 1.1 A Brief History of UNIX and C; 1.2 A Brief History of Linux; 1.2.1 The GNU Project; 1.2.2 The Linux Kernel; 1.3 Standardization; 1.3.1 The C Programming Language; 1.3.2 The First POSIX Standards; 1.3.3 X/Open Company and The Open Group; 1.3.4 SUSv3 and POSIX.1-2001; 1.3.5 SUSv4 and POSIX.1-2008; 1.3.6 UNIX Standards Timeline; 1.3.7 Implementation Standards; 1.3.8 Linux, Standards, and the Linux Standard Base; 1.4 Summary; 2: Fundamental Concepts; 2.1 The Core Operating System: The Kernel; 2.2 The Shell
2.3 Users and Groups 2.4 Single Directory Hierarchy, Directories, Links, and Files; 2.5 File I/O Model; 2.6 Programs; 2.7 Processes; 2.8 Memory Mappings; 2.9 Static and Shared Libraries; 2.10 Interprocess Communication and Synchronization; 2.11 Signals; 2.12 Threads; 2.13 Process Groups and Shell Job Control; 2.14 Sessions, Controlling Terminals, and Controlling Processes; 2.15 Pseudoterminals; 2.16 Date and Time; 2.17 Client-Server Architecture; 2.18 Realtime; 2.19 The /proc File System; 2.20 Summary; 3: System Programming Concepts; 3.1 System Calls; 3.2 Library Functions
3.3 The Standard C Library The GNU C Library ( glibc); 3.4 Handling Errors from System Calls and Library Functions; 3.5 Notes on the Example Programs in This Book; 3.5.1 Command-Line Options and Arguments; 3.5.2 Common Functions and Header Files; 3.6 Portability Issues; 3.6.1 Feature Test Macros; 3.6.2 System Data Types; 3.6.3 Miscellaneous Portability Issues; 3.7 Summary; 3.8 Exercise; 4: File I/O: The Universal I/O Model; 4.1 Overview; 4.2 Universality of I/O; 4.3 Opening a File: open(); 4.3.1 The open flags Argument; 4.3.2 Errors from open; 4.3.3 The create System Call
4.4 Reading from a File: read 4.5 Writing to a File: write; 4.6 Closing a File: close; 4.7 Changing the File Offset: l seek; 4.8 Operations Outside the Universal I/O Model: ioctl; 4.9 Summary; 4.10 Exercises; 5: File I/O: Further Details; 5.1 Atomicity and Race Conditions; 5.2 File Control Operations: fcntl; 5.3 Open File Status Flags; 5.4 Relationship Between File Descriptors and Open Files; 5.5 Duplicating File Descriptors; 5.6 File I/O at a Specified Offset: pread and pwrite; 5.7 Scatter-Gather I/O: readv and writev; 5.8 Truncating a File: truncate and ftruncate
5.9 Nonblocking I/O5.10 I/O on Large Files; 5.11 The /dev/fd Directory; 5.12 Creating Temporary Files; 5.13 Summary; 5.14 Exercises; 6: Processes; 6.1 Processes and Programs; 6.2 Process ID and Parent Process ID; 6.3 Memory Layout of a Process; 6.4 Virtual Memory Management; 6.5 The Stack and Stack Frames; 6.6 Command-Line Arguments (argc, argv); 6.7 Environment List; 6.8 Performing a Nonlocal Goto: setjmp() and long jmp; 6.9 Summary; 6.10 Exercises; 7: Memory Allocation; 7.1 Allocating Memory on the Heap; 7.1.1 Adjusting the Program Break: brk and sbrk
7.1.2 Allocating Memory on the Heap: malloc and free
Sommario/riassunto: The Linux Programming Interface describes the Linux API (application programming interface)-the system calls, library functions, and other low-level interfaces that are used, directly or indirectly, by every program that runs on Linux. Programs that explicitly use these interfaces are commonly called system programs, and include applications such as shells, editors, windowing systems, terminal emulators, file managers, compilers, database management systems, virtual machines, network servers, and much of the other software that is employed on a daily basis on Linux systems. Extensively indexed
Titolo autorizzato: The Linux programming interface  Visualizza cluster
ISBN: 1-59327-291-X
Formato: Materiale a stampa
Livello bibliografico Monografia
Lingua di pubblicazione: Inglese
Record Nr.: 9910789335103321
Lo trovi qui: Univ. Federico II
Opac: Controlla la disponibilità qui