Shuah Khan

Last updated
Shuah Khan
Shuah Khan 2018.png
Khan in 2018
Occupation Software Engineer
Employer Linux Foundation
Website www.gonehiking.org/ShuahLinuxBlogs/

Shuah Khan is an American software engineer recognized for her contributions to the Linux kernel. In 2019, she became the first female Linux Foundation Fellow, joining notable figures such as Linus Torvalds and Greg Kroah-Hartman as the third fellow at the time. [1] [2] [3]

Contents

Early life and education

Born in India, [1] Khan obtained a bachelor's degree in Electronic engineering and a master's degree in computer science from Colorado State University. [3] After completing her education, she worked at Bell Labs, followed by 13 years at Hewlett Packard Enterprise and 5 years at Samsung. [1] [4]

Linux kernel contributions

Khan made her first contribution to the Linux kernel in 2011, [1] by adding a new device driver for the LED sub-system as part of the Android Driver Mainlining effort. [5]

Khan has served on the Linux Technical Advisory Board (TAB) [6] [1] [5] and as chair of the ELISA Project Technical Steering Committee. [7] As of October 2024, she maintains the Kernel Selftest (kselftest) framework, the USB over IP driver, the CPU power monitoring subsystem, and the Virtual Media Controller driver. [8] She has significantly contributed to kselftest, a regression testing suite for the Linux kernel. [9] [4]

In the early stages, testing in the kernel was mostly limited to build and boot tests. Khan introduced a more comprehensive testing framework to detect regressions earlier, before they could impact users. Her efforts resulted in "kselftest," which enables developers to run sanity tests and ensure the stability of their changes. [9] This framework is now integrated into KernelCI and the 0-day test service. [10] Describing herself as a generalist, she has also contributed to the media subsystem by working on the Media Controller Device Allocator API to solve shared device resource management problems across different subsystems. [11]

Advocacy for inclusive terminology

In 2020, Khan provided a "Signed-off-by" tag for a patch recommending inclusive terminology in the Linux kernel. [12] This change was approved and merged by Linus Torvalds. [13] [14] The patch advised developers to avoid terms such as "master," "slave," "blacklist," and "whitelist." [12] [15] Alternatives such as primary/secondary, denylist/allowlist, and blocklist/passlist are suggested. [13]

Community involvement

Khan also leads the Community Bridge Program, which aims to empower open-source developers by providing tools for funding, improving security, and promoting diversity. [1] She advocates for increasing the participation of women in the kernel community. [11]

Publications

Related Research Articles

<span class="mw-page-title-main">Linus Torvalds</span> Creator and lead developer of the Linux kernel (born 1969)

Linus Benedict Torvalds is a Finnish and American software engineer who is the creator and lead developer of the Linux kernel. He also created the distributed version control system Git.

The GNU C Library, commonly known as glibc, is the GNU Project implementation of the C standard library. It provides a wrapper around the system calls of the Linux kernel and other kernels 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.

μClinux Linux distribution

μClinux is a variation of the Linux kernel, previously maintained as a fork, that targets microcontrollers without a memory management unit (MMU). It was integrated into the mainline kernel as of 2.5.46; the project continues to develop patches and tools for microcontrollers. The homepage lists Linux kernel releases for 2.0, 2.4 and 2.6.

The Linux kernel mailing list (LKML) is the main electronic mailing list for Linux kernel development, where the majority of the announcements, discussions, debates, and flame wars over the kernel take place. Many other mailing lists exist to discuss the different subsystems and ports of the Linux kernel, but LKML is the principal communication channel among Linux kernel developers. It is a very high-volume list, usually receiving about 1,000 messages each day, most of which are kernel code patches.

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">Monotone (software)</span> Revision control software

Monotone is an open source software tool for distributed revision control. It tracks revisions to files, groups sets of revisions into changesets, and tracks history across renames. The focus of the project is on integrity over performance. Monotone is designed for distributed operation, and makes heavy use of cryptographic primitives to track file revisions and to authenticate user actions.

<span class="mw-page-title-main">David S. Miller</span> American software programmer

David Stephen Miller is an American software developer working on the Linux kernel, where he is the primary maintainer of the networking subsystem and individual networking drivers, the SPARC implementation, and the IDE subsystem. With other people, he co-maintains the crypto API, KProbes, IPsec, and is also involved in other development work.

sysfs is a pseudo file system provided by the Linux kernel that exports information about various kernel subsystems, hardware devices, and associated device drivers from the kernel's device model to user space through virtual files. In addition to providing information about various devices and kernel subsystems, exported virtual files are also used for their configuration.

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

The Linux kernel provides multiple interfaces to user-space and kernel-mode code 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.

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.

<span class="mw-page-title-main">Rusty Russell</span> Australian computer programmer

Rusty Russell is an Australian free software programmer and advocate, known for his work on the Linux kernel's networking subsystem and the Filesystem Hierarchy Standard.

kernel.org is the main distribution point of source code for the Linux kernel, which is the base of the Linux operating system.

<span class="mw-page-title-main">Tux (mascot)</span> Mascot of Linux

Tux is a penguin character and the official brand character of the Linux kernel. Originally created as an entry to a Linux logo competition, Tux is the most commonly used icon for Linux, although different Linux distributions depict Tux in various styles. The character is used in many other Linux programs and as a general symbol of Linux.

<span class="mw-page-title-main">Linux kernel</span> Free Unix-like operating system kernel

The Linux kernel is a free and open source, UNIX-like kernel that is used in many computer systems worldwide. The kernel was created by Linus Torvalds in 1991 and was soon adopted as the kernel for the GNU operating system (OS) which was created to be a free replacement for Unix. Since the late 1990s, it has been included in many operating system distributions, many of which are called Linux. One such Linux kernel operating system is Android which is used in many mobile and embedded devices.

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

zswap is a Linux kernel feature that provides a compressed write-back cache for swapped pages, as a form of virtual memory compression. Instead of moving memory pages to a swap device when they are to be swapped out, zswap performs their compression and then stores them into a memory pool dynamically allocated in the system RAM. Later writeback to the actual swap device is deferred or even completely avoided, resulting in a significantly reduced I/O for Linux systems that require swapping; the tradeoff is the need for additional CPU cycles to perform the compression.

RPMsg is a protocol enabling inter-processor communication inside multi-core processors.

Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems. Its primary developer, Kent Overstreet, first announced it in 2015, and it was added to the Linux kernel beginning with 6.7. It is intended to compete with the modern features of ZFS or Btrfs, and the speed and performance of ext4 or XFS.

This article documents the version history of the Linux kernel.

<span class="mw-page-title-main">Rust for Linux</span> Project for adding Rust language to the Linux kernel

Rust for Linux is an ongoing project started in 2020 to add Rust as a programming language that can be used within the Linux kernel software, which has been written using C and assembly only. This project aims to leverage Rust's memory safety to reduce bugs when writing kernel drivers. Progress has been slower than hoped by both Rust advocates and Linus Torvalds, lead of the Linux kernel project. In December 2023 the first drivers written in Rust were accepted, and released in version 6.8.

References

  1. 1 2 3 4 5 6 Vaughan-Nichols S (13 March 2019). "Shuah Khan becomes the third Linux Foundation Fellow". ZDNET. Retrieved 20 September 2024.
  2. "Leadership: Fellows". The Linux Foundation. 7 October 2024. Archived from the original on 7 October 2024. Retrieved 7 October 2024.
  3. 1 2 Bhartiya S (14 March 2019). "Meet The First Female Linux Foundation Fellow: Shuah Khan". TFiR.io. Retrieved 9 October 2024.
  4. 1 2 Daily SE (14 March 2019). "Linux Kernel Development with Shuah Khan". Software Engineering Daily. Retrieved 7 October 2024.
  5. 1 2 "Challenging, Rewarding, and Fulfilling: A Q&A With Shuah Khan on Linux Kernel Development". The Linux Foundation. 9 December 2015. Retrieved 10 October 2024 via Linux.com.
  6. Corbet J (28 September 2024). "Results of the 2024 TAB election September 28". LWN.net. Retrieved 9 October 2024.
  7. Nass R (23 June 2021). "Embedded Executive: Shuah Khan, Linux Kernel Fellow, Linux Foundation". Embedded Computing Design. Retrieved 10 October 2024.
  8. Torvalds L (5 October 2024). "MAINTAINERS - kernel/git/torvalds/linux.git - Linux kernel source tree". Archived from the original on 5 October 2024. Retrieved 5 October 2024.
  9. 1 2 Corbet J (20 August 2014). "Kernel self tests". LWN.net. Archived from the original on 5 October 2024. Retrieved 5 October 2024.
  10. Corbet J (2 November 2017). "A kernel self-testing update". LWN.net. Retrieved 9 October 2024.
  11. 1 2 Perlow J (29 January 2021). "Interview with Shuah Khan, Kernel Maintainer & Linux Fellow". Linux.com. Retrieved 10 October 2024.
  12. 1 2 "Subject: CodingStyle: Inclusive Terminology". git.kernel.org. 3 July 2020. Retrieved 28 October 2024. Signed-off-by: Shuah Khan
  13. 1 2 Cimpanu, Catalin (July 11, 2020). "Linux team approves new terminology, bans terms like 'blacklist' and 'slave'". ZDNET . Retrieved October 28, 2024.
  14. Sharwood, Simon (13 July 2020). "Linus Torvalds banishes masters, slaves and blacklists from the Linux kernel, starting now". The Register . Retrieved October 28, 2024.
  15. "LKML: Dan Williams: Re: [Tech-board-discuss][PATCH] CodingStyle: Inclusive Terminology". lkml.org. July 6, 2020. Retrieved October 28, 2024. Please add my Signed-off-by: Shuah Khan