# User-mode Linux

> Linux feature to run a kernel virtualized as a user-space process

**Wikidata**: [Q1269956](https://www.wikidata.org/wiki/Q1269956)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/User-mode_Linux)  
**Source**: https://4ort.xyz/entity/user-mode-linux

## Summary
User-mode Linux (UML) is a Linux kernel feature that enables running a virtualized Linux kernel as a user-space process on a host system. It provides software-based virtualization without requiring hardware support, allowing multiple isolated virtual machines to operate on a single physical machine.

## Key Facts
- **Core Function**: Runs a Linux kernel virtualized as a user-space process, enabling OS-level virtualization.
- **License**: Distributed under the GNU General Public License.
- **Classification**: Instance of free software, virtualization software, and a software feature of the Linux kernel.
- **Aliases**: Known as UML, ユーザーモードLinux, and ユーザーモードリナックス.
- **Availability**: Packaged in Debian (user-mode-linux), openSUSE (uml-utilities), and Gentoo.
- **Project Hosting**: Hosted on SourceForge under the project name "user-mode-linux".
- **Documentation**: Features Wikipedia articles in 10 languages (Catalan, German, English, Spanish, Persian, Finnish, French, Japanese, Norwegian, Polish).
- **Implementation**: Written in the C programming language.
- **Website**: Official project site at http://user-mode-linux.sourceforge.net/.

## FAQs
### Q: What is User-mode Linux used for?
A: User-mode Linux enables virtualization by running a Linux kernel as a user-space process, allowing users to create isolated virtual machines for testing, development, or server consolidation without hardware virtualization support.

### Q: How does User-mode Linux differ from hardware virtualization?
A: Unlike hardware-assisted virtualization (e.g., Intel VT-x), User-mode Linux operates entirely in software, leveraging the host kernel’s user-space capabilities to emulate virtual machines without specialized CPU extensions.

### Q: Is User-mode Linux the same as Unified Modeling Language?
A: No, despite sharing the "UML" abbreviation, User-mode Linux is a virtualization technology, while Unified Modeling Language is a standardized modeling language for software design. They are distinct entities.

### Q: What are the system requirements for User-mode Linux?
A: It requires a host Linux system and is compatible with standard x86 architectures. No hardware virtualization support is needed, making it accessible on conventional hardware.

## Why It Matters
User-mode Linux pioneered accessible virtualization by enabling kernel-level virtualization in user space, democratizing virtual technology before hardware-assisted solutions became mainstream. It solved critical challenges for developers and system administrators by providing lightweight, isolated environments for software testing, debugging, and security research without dedicated hardware. Its role in the Linux ecosystem fostered innovation in containerization and cloud infrastructure, demonstrating how software abstraction could replace physical hardware dependencies. This approach remains relevant in resource-constrained scenarios and educational settings where hardware virtualization is impractical.

## Notable For
- **Software-Only Virtualization**: First widely adopted virtualization solution operating entirely in user space, eliminating hardware dependency.
- **Kernel-in-a-Process**: Unique architecture running a full Linux kernel as a standard process, enabling seamless integration with host system tools.
- **Cross-Distribution Support**: Pre-packaged in major Linux distributions (Debian, openSUSE, Gentoo), ensuring broad accessibility.
- **Multilingual Documentation**: Comprehensive Wikipedia presence across 10 languages, reflecting its global adoption and community engagement.
- **Open-Source Pioneer**: Early example of free software virtualization, licensed under GPL and hosted on SourceForge since its inception.

## Body
### Overview
User-mode Linux (UML) is a Linux kernel feature that virtualizes a Linux kernel to run as a user-space process on a host system. This allows multiple isolated virtual machines to operate concurrently on a single physical machine without hardware virtualization support.

### Technical Implementation
- **Architecture**: The virtualized kernel executes in user mode, leveraging the host kernel’s process management and memory isolation features.
- **Programming Language**: Implemented entirely in C.
- **Virtualization Type**: Operating system-level virtualization, providing process-level isolation between virtual machines.
- **Licensing**: Governed by the GNU General Public License, ensuring free software compliance.

### Availability and Distribution
- **Package Management**: 
  - Debian: `user-mode-linux`
  - openSUSE: `uml-utilities`
  - Gentoo: Available via Gentoo Wiki documentation.
- **Project Hosting**: Hosted on SourceForge under the project name "user-mode-linux".
- **Online Resources**: 
  - Official website: http://user-mode-linux.sourceforge.net/
  - Arch Wiki article: "User-mode_Linux" (English, page ID 1147)
  - Gentoo Wiki article: "User-mode_Linux" (English, page ID 5633)

### Community and Documentation
- **Wikipedia Presence**: Articles available in 10 languages, including English, German, French, Japanese, and Spanish.
- **Community Engagement**: Maintained as open-source software with active community contributions via SourceForge.
- **Differentiation**: Explicitly distinguished from Unified Modeling Language (UML) through Wikidata qualifiers clarifying the abbreviation context.

### Licensing and Compliance
- **Copyright Status**: Copyrighted software distributed under free software terms.
- **License Type**: GNU General Public License, permitting modification and redistribution.
- **Software Classification**: Recognized as both free software and virtualization software in technical taxonomies.

## References

1. [The uml Open Source Project on Open Hub: Languages Page. Open Hub](https://www.openhub.net/p/uml/analyses/latest/languages_summary)
2. Freebase Data Dumps. 2013