The Linux Programming Interface
   HOME
*





The Linux Programming Interface
''The Linux Programming Interface: A Linux and UNIX System Programming Handbook'' is a book written by Michael Kerrisk, which documents the APIs of the Linux kernel and of the GNU C Library (glibc). Book It covers a wide array of topics dealing with the Linux operating system and operating systems in general, as well as providing a brief history of Unix and how it led to the creation of Linux. It provides many samples of code written in the C programming language, and provides learning exercises at the end of many chapters. Kerrisk is a former writer for the Linux Weekly News and the current maintainer for the Linux man pages project. ''The Linux Programming Interface'' is widely regarded as the definitive work on Linux system programming and has been translated into several languages. Jake Edge, writer for LWN.net, in his review of the book, said, "I found it to be extremely useful and expect to return to it frequently. Anyone who has an interest in programming for Linux wi ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Michael Kerrisk
Michael Kerrisk is a technical author, programmer and, since 2004, maintainer of the Linux man-pages project, succeeding Andries Brouwer. He was born in 1961 in New Zealand and lives in Munich, Germany. Kerrisk has worked for Digital Equipment, Google, The Linux Foundation and, as an editor and writer, for LWN.net. Currently, he works as a freelance consultant and trainer. He is best known for his book ''The Linux Programming Interface'', published by No Starch Press in 2010. This book is widely regarded as the definitive work on Linux system programming and has been translated into several languages. As the maintainer of the Linux man-pages project, Kerrisk has authored or co-authored about a third of the man pages and worked on improving the project's infrastructure. For his contributions he received a Special Award of the 2016 New Zealand Open Source Awards The New Zealand Open Source Awards celebrate open source developments in New Zealand at a biannual awards ceremony, h ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

OpenSUSE
openSUSE () is a free and open-source software, free and open source RPM Package Manager, RPM-based Linux distribution developed by the openSUSE project. The initial release of the community project was a beta version of SUSE Linux 10.0. Additionally the project creates a variety of tools, such as YaST, Open Build Service, openQA, Snapper, Machinery, Portus, KIWI (openSUSE), KIWI and OSEM. Product history In the past, the SUSE Linux company had focused on releasing the SUSE Linux Personal and SUSE Linux Professional box sets which included extensive printed documentation that was available for sale in retail stores. The company's ability to sell an open source product was largely due to the closed-source development process used. Although SUSE Linux had always been free software product licensed with the GNU General Public License (GNU GPL), it was only freely possible to retrieve the source code of the next release 2 months after it was ready for purchase. SUSE Linux' strate ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

2010 Non-fiction Books
1 (one, unit, unity) is a number representing a single or the only entity. 1 is also a numerical digit and represents a single unit of counting or measurement. For example, a line segment of ''unit length'' is a line segment of length 1. In conventions of sign where zero is considered neither positive nor negative, 1 is the first and smallest positive integer. It is also sometimes considered the first of the infinite sequence of natural numbers, followed by  2, although by other definitions 1 is the second natural number, following  0. The fundamental mathematical property of 1 is to be a multiplicative identity, meaning that any number multiplied by 1 equals the same number. Most if not all properties of 1 can be deduced from this. In advanced mathematics, a multiplicative identity is often denoted 1, even if it is not a number. 1 is by convention not considered a prime number; this was not universally accepted until the mid-20th century. Additionally, 1 is the ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Books About Linux
A book is a medium for recording information in the form of writing or images, typically composed of many page (paper), pages (made of papyrus, parchment, vellum, or paper) bookbinding, bound together and protected by a book cover, cover. The technical term for this physical arrangement is ''codex'' (plural, ''codices''). In the history of hand-held physical supports for extended written compositions or records, the codex replaces its predecessor, the scroll. A single sheet in a codex is a Recto, leaf and each side of a leaf is a page (paper), page. As an intellectual object, a book is prototypically a composition of such great length that it takes a considerable investment of time to compose and still considered as an investment of time to read. In a restricted sense, a book is a self-sufficient section or part of a longer composition, a usage reflecting that, in antiquity, long works had to be written on several scrolls and each scroll had to be identified by the book it co ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Computer Programming Books
A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations (computation) automatically. Modern digital electronic computers can perform generic sets of operations known as programs. These programs enable computers to perform a wide range of tasks. A computer system is a nominally complete computer that includes the hardware, operating system (main software), and peripheral equipment needed and used for full operation. This term may also refer to a group of computers that are linked and function together, such as a computer network or computer cluster. A broad range of industrial and consumer products use computers as control systems. Simple special-purpose devices like microwave ovens and remote controls are included, as are factory devices like industrial robots and computer-aided design, as well as general-purpose devices like personal computers and mobile devices like smartphones. Computers power the Internet, which links bill ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Programming Linux Games
Loki Software, Inc. (Loki Entertainment) was an American video game developer based in Tustin, California, that ported several video games from Microsoft Windows to Linux. It took its name from the Norse deity Loki. Although successful in its goal of bringing games to the Linux platform, the company folded in January 2002 after filing for bankruptcy. History Loki Software was founded on November 9, 1998, by Scott Draeker, a former lawyer who became interested in porting games to Linux after being introduced to the system through his work as a software licensing attorney. By December of that year Loki had gained the rights to produce a port of Activision's then-upcoming strategy game '' Civilization: Call to Power'' for Linux. This was to become Loki's first actual product, with the game hitting stores in May 1999. From there they gained contracts to port many other titles, such as '' Myth II: Soulblighter'', ''Railroad Tycoon II'', and ''Eric's Ultimate Solitaire''. Throughout th ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Linux Kernel Interfaces
The Linux kernel provides several interfaces to user-space applications that are used for different purposes and that have different properties by design. There are two types of application programming interface (API) in the Linux kernel that are not to be confused: the "kernel–user space" API and the "kernel internal" API. Linux API The Linux API is the kernel–user space API, which allows programs in user space to access system resources and services of the Linux kernel. It is composed out of the System Call Interface of the Linux kernel and the subroutines in the GNU C Library (glibc). The focus of the development of the Linux API has been to provide the ''usable features'' of the specifications defined in POSIX in a way which is reasonably compatible, robust and performant, and to provide additional useful features not defined in POSIX, just as the kernel–user space APIs of other systems implementing the POSIX API also provide additional features no ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

FOSDEM
Free and Open source Software Developers' European Meeting (FOSDEM) is a non-commercial, volunteer-organized European event centered on free and open-source software development. It is aimed at developers and anyone interested in the free and open-source software movement. It aims to enable developers to meet and to promote the awareness and use of free and open-source software. FOSDEM is held annually, usually during the first weekend of February, at the Université Libre de Bruxelles Solbosch campus in the southeast of Brussels, Belgium. History FOSDEM was started in 2000 under the name Open Source Developers of Europe Meeting (OSDEM) by Raphael Bauduin. Bauduin said that since he felt he lacked the brains to properly contribute to the open-source community, he wanted to contribute by launching a European event in Brussels. Bauduin teamed up with Damien Sandras. The team repeated the event. The F (of FOSDEM) was added at the request of Richard Stallman. The event has ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Application Binary Interface
In computer software, an application binary interface (ABI) is an interface between two binary program modules. Often, one of these modules is a library or operating system facility, and the other is a program that is being run by a user. An ''ABI'' defines how data structures or computational routines are accessed in machine code, which is a low-level, hardware-dependent format. In contrast, an ''API'' defines this access in source code, which is a relatively high-level, hardware-independent, often human-readable format. A common aspect of an ABI is the calling convention, which determines how data is provided as input to, or read as output from, computational routines. Examples of this are the x86 calling conventions. Adhering to an ABI (which may or may not be officially standardized) is usually the job of a compiler, operating system, or library author. However, an application programmer may have to deal with an ABI directly when writing a program in a mix of programming l ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


System Call
In computing, a system call (commonly abbreviated to syscall) is the programmatic way in which a computer program requests a service from the operating system on which it is executed. This may include hardware-related services (for example, accessing a hard disk drive or accessing the device's camera), creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system. In most systems, system calls can only be made from userspace processes, while in some systems, OS/360 and successors for example, privileged system code also issues system calls. Privileges The architecture of most modern processors, with the exception of some embedded systems, involves a security model. For example, the ''rings'' model specifies multiple privilege levels under which software may be executed: a program is usually limited to its own address space so that ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Systemd
systemd is a software suite that provides an array of system components for Linux operating systems. Its main aim is to unify service configuration and behavior across Linux distributions; Its primary component is a "system and service manager"—an init system used to bootstrap user space and manage user processes. It also provides replacements for various daemons and utilities, including device management, login management, network connection management, and event logging. The name ''systemd'' adheres to the Unix convention of naming daemons by appending the letter ''d''. It also plays on the term "System D", which refers to a person's ability to adapt quickly and improvise to solve problems. Since 2015, the majority of Linux distributions have adopted systemd, having replaced other init systems such as SysV init. It has been praised by developers and users of distributions that adopted it for providing a stable, fast out-of-the-box solution for issues that had existed i ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

PulseAudio
PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, various BSD distributions such as FreeBSD and OpenBSD, macOS, as well as Illumos distributions and the Solaris operating system. PulseAudio is free and open-source software, and is licensed under the terms of the LGPL-2.1-or-later. It was created in 2004 under the name Polypaudio but was renamed in 2006 to PulseAudio. History Microsoft Windows was previously supported via MinGW (an implementation of the GNU toolchain, which includes various tools such as GCC and binutils). The Windows port has not been updated since 2011, however. Software architecture In broad terms ALSA is a kernel subsystem that provides the sound hardware driver, and PulseAudio is the interface engine between applications and ALSA. However, its use is not mandatory and audio can still be played and mixed together without PulseAudio. PulseAudio acts as a sound server, where a b ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]