Michael Kerrisk

Last updated
Michael Kerrisk
Michael Kerrisk.jpg
Born1961
NationalityNew Zealander
EducationBSc (hons) Computer Science, BA Psychology, University of Canterbury
Occupation(s)Author and Programmer
Known for The Linux Programming Interface , Linux man-pages project
Website man7.org

Michael Kerrisk is a technical author, programmer and, since 2004, maintainer of the Linux man-pages project, [1] succeeding Andries Brouwer. [2] He was born in 1961 in New Zealand and lives in Munich, Germany.

Kerrisk has worked for Digital Equipment, Google, The Linux Foundation [3] and, as an editor and writer, for LWN.net. [4] Currently, he works as a freelance consultant and trainer.

He is best known for his book The Linux Programming Interface , [5] published by No Starch Press [6] in 2010. This book is widely regarded [7] as the definitive work on Linux system programming and has been translated into several languages. [8]

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. [9]

Related Research Articles

The GNU C Library, commonly known as glibc, is the GNU Project's implementation of the C standard library. It is a wrapper around the system calls of the Linux kernel for application use. Despite its name, it now also directly supports C++. It was started in the 1980s by the Free Software Foundation (FSF) for the GNU operating system.

Robert M. Love is an American author, speaker, Google engineer, and open source software developer.

<span class="mw-page-title-main">Pseudoterminal</span>

In some operating systems, including Unix and Linux, a pseudoterminal, pseudotty, or PTY is a pair of pseudo-device endpoints (files) which establish asynchronous, bidirectional communication (IPC) channel between two or more processes. The master provides means by which a terminal emulator process controls the slave. The slave emulates a hardware text terminal device. PTY are similar to bidirectional pipes.

The Direct Rendering Manager (DRM) is a subsystem of the Linux kernel responsible for interfacing with GPUs of modern video cards. DRM exposes an API that user-space programs can use to send commands and data to the GPU and perform operations such as configuring the mode setting of the display. DRM was first developed as the kernel-space component of the X Server Direct Rendering Infrastructure, but since then it has been used by other graphic stack alternatives such as Wayland and standalone applications and libraries such as SDL2 and Kodi.

<span class="mw-page-title-main">Linux kernel interfaces</span> An overview and comparison of the Linux kernal APIs and ABIs.

The Linux kernel provides multiple interfaces to user-space applications that are used for varying purposes and that have varying properties by design. There are two types of application programming interface (API) in the Linux kernel

  1. the "kernel–user space" API; and
  2. the "kernel internal" API.

"Zero-copy" describes computer operations in which the CPU does not perform the task of copying data from one memory area to another or in which unnecessary data copies are avoided. This is frequently used to save CPU cycles and memory bandwidth in many time consuming tasks, such as when transmitting a file at high speed over a network, etc., thus improving the performance of programs (processes) executed by a computer.

seccomp is a computer security facility in the Linux kernel. seccomp allows a process to make a one-way transition into a "secure" state where it cannot make any system calls except exit , sigreturn , read and write to already-open file descriptors. Should it attempt any other system calls, the kernel will either just log the event or terminate the process with SIGKILL or SIGSYS. In this sense, it does not virtualize the system's resources but isolates the process from them entirely.

The device mapper is a framework provided by the Linux kernel for mapping physical block devices onto higher-level virtual block devices. It forms the foundation of the logical volume manager (LVM), software RAIDs and dm-crypt disk encryption, and offers additional features such as file system snapshots.

inotify is a Linux kernel subsystem created by John McCutchan, which monitors changes to the filesystem, and reports those changes to applications. It can be used to automatically update directory views, reload configuration files, log changes, backup, synchronize, and upload. The inotifywait and inotifywatch commands allow using the inotify subsystem from the command line. One major use is in desktop search utilities like Beagle, where its functionality permits reindexing of changed files without scanning the filesystem for changes every few minutes, which would be very inefficient.

<span class="mw-page-title-main">Greg Kroah-Hartman</span> American Linux kernel developer

Greg Kroah-Hartman is a major Linux kernel developer. As of April 2013 he is the Linux kernel maintainer for the -stable branch, the staging subsystem, USB, driver core, debugfs, kref, kobject, and the sysfs kernel subsystems, Userspace I/O, and TTY layer. He also created linux-hotplug, the udev project, and the Linux Driver Project. He worked for Novell in the SUSE Labs division and, as of 1 February 2012, works at the Linux Foundation.

<span class="mw-page-title-main">Kernel-based Virtual Machine</span> Virtualization module in the Linux kernel

Kernel-based Virtual Machine (KVM) is a free and open-source virtualization module in the Linux kernel that allows the kernel to function as a hypervisor. It was merged into the mainline Linux kernel in version 2.6.20, which was released on February 5, 2007. KVM requires a processor with hardware virtualization extensions, such as Intel VT or AMD-V. KVM has also been ported to other operating systems such as FreeBSD and illumos in the form of loadable kernel modules.

nouveau (software) Open source software driver for Nvidia GPU

nouveau is a free and open-source graphics device driver for Nvidia video cards and the Tegra family of SoCs written by independent software engineers, with minor help from Nvidia employees.

<span class="mw-page-title-main">Linux kernel</span> Operating system kernel

The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally written in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU operating system, which was written to be a free (libre) replacement for Unix.

Readahead is a system call of the Linux kernel that loads a file's contents into the page cache. This prefetches the file so that when it is subsequently accessed, its contents are read from the main memory (RAM) rather than from a hard disk drive (HDD), resulting in much lower file access latencies.

nftables is a subsystem of the Linux kernel providing filtering and classification of network packets/datagrams/frames. It has been available since Linux kernel 3.13 released on 19 January 2014.

cgroups is a Linux kernel feature that limits, accounts for, and isolates the resource usage of a collection of processes.

perf is a performance analyzing tool in Linux, available from Linux kernel version 2.6.31 in 2009. Userspace controlling utility, named perf, is accessed from the command line and provides a number of subcommands; it is capable of statistical profiling of the entire system.

<span class="mw-page-title-main">The Linux Programming Interface</span> Book by Michael Kerrisk

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).

devpts

devpts is a virtual filesystem directory available in the Linux kernel since version 2.1.93. It is normally mounted at /dev/pts and contains solely devices files which represent slaves to the multiplexing master located at /dev/ptmx which in turn is used to implement terminal emulators.

Sage Sharp is a software engineer who has worked on the Linux kernel, including serving on the Linux Foundation's Technical Advisory Board for two years.

References

  1. "The Linux man-pages project". kernel.org . Retrieved 2014-05-01.
  2. "Maintaining Linux man-pages". kernel.org . Retrieved 2014-05-01.
  3. "Michael Kerrisk - O'Reilly Media". O'Reilly Media . Retrieved 2014-05-01.
  4. "A goodbye note from Michael Kerrisk". LWN.net . Retrieved 2014-05-01.
  5. "The Linux Programming Interface". man7.org. Retrieved 2014-05-01.
  6. Kerrisk, Michael (2010). The Linux Programming Interface (1 ed.). No Starch Press. ISBN   978-1-59327-220-3.
  7. Kerrisk, Michael (October 2010). Amazon's Readers Review. No Starch Press. ISBN   978-1593272203.
  8. "Translations of 'The Linux Programming Interface'". man7.org. Retrieved 2014-05-01.
  9. "Winners of the 2016 New Zealand Open Source Awards Announced" . Retrieved 2016-11-12.