Vai al contenuto principale della pagina
Autore: |
Kerrisk Michael <1961->
![]() |
Titolo: |
The Linux programming interface [[electronic resource] ] : a Linux and UNIX system programming handbook / / Michael Kerrisk
![]() |
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 ![]() |
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 |