Plasma Mobile is a Plasma variant for smartphones . It is currently available for the Pinephone , and supported devices for postmarketOS such as the OnePlus 6 .
61-462: It is shipped by several Linux distributions , such as postmarketOS and Manjaro . After Plasma Active sponsor Coherent Theory (under the Make·Play·Live brand) had given up their ambitions to release a tablet computer , Blue Systems emerged as a new sponsor in 2015 and shifted the focus of Plasma's handheld work towards smartphones. The official announcement of the new form-factor interface
122-527: A Wayland compositor such as Sway , KDE 's KWin , or GNOME 's Mutter ), a desktop environment (most commonly GNOME , KDE Plasma , or Xfce ), a sound server (usually either PulseAudio or more recently PipeWire ), and other related programs may be included or installed by the user. Typically, most of the included software is free and open-source software – made available both as binary for convenience and as source code to allow for modifying it. A distro may also include proprietary software that
183-618: A message-based protocol for communicating with their devices—as user-mode drivers. If such drivers malfunction, they do not cause system instability. The Kernel-Mode Driver Framework (KMDF) model continues to allow development of kernel-mode device drivers, but attempts to provide standard implementations of functions that are known to cause problems, including cancellation of I/O operations, power management, and plug and play device support. Apple has an open-source framework for developing drivers on macOS , called I/O Kit. In Linux environments, programmers can build device drivers as parts of
244-439: A CD with only a small amount of data on it. New users tend to begin by partitioning a hard drive in order to keep their previously installed operating system. The Linux distribution can then be installed on its own separate partition without affecting previously saved data. In a Live CD setup, the computer boots the entire operating system from CD without first installing it on the computer's hard disk. Many distributions have
305-520: A Live CD installer , where the computer boots the operating system from the disk, and it can then be installed on the computer's hard disk, providing a seamless transition from the OS running from the CD to the OS running from the hard disk. Both servers and personal computers that come with Linux already installed are available from vendors including Hewlett-Packard , Dell and System76 . On embedded devices, Linux
366-424: A conscious effort to use a different operating system, and they must either perform the actual installation themselves, or depend on support from a friend, relative, or computer professional. Device driver In the context of an operating system , a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton . A driver provides
427-452: A container on the device. This Linux -related article is a stub . You can help Misplaced Pages by expanding it . This free and open-source software article is a stub . You can help Misplaced Pages by expanding it . Linux distribution A Linux distribution (often abbreviated as distro ) is an operating system that includes the Linux kernel for its kernel functionality. Although
488-512: A distribution, an administrator may create a "distributionless" installation. It is possible to build such systems from scratch, avoiding distributions altogether. One needs a way to generate the first binaries until the system is self-hosting . This can be done via compilation on another system capable of building binaries for the intended target (possibly by cross-compilation ). For example, see Linux From Scratch . In broad terms, Linux distributions may be: The diversity of Linux distributions
549-419: A hardware device and the applications or operating systems that use it. Programmers can write higher-level application code independently of whatever specific hardware the end-user is using. For example, a high-level application for interacting with a serial port may simply have two functions for "send data" and "receive data". At a lower level, a device driver implementing these functions would communicate to
610-637: A new SLS-based distribution, Slackware , was released by Patrick Volkerding . Also dissatisfied with SLS, Ian Murdock set to create a free distribution by founding Debian in August 1993, with first public BETA released in January 1994 and first stable version in June 1996. Users were attracted to Linux distributions as alternatives to the DOS and Microsoft Windows operating systems on IBM PC compatible computers, Mac OS on
671-464: A package are present (and either notify the user to install them, or install them automatically). The package can also be provided as source code to be compiled on the system. Most distributions install packages, including the kernel and other core operating system components, in a predetermined configuration. A few now require or permit configuration adjustments at first install time. This makes installation less daunting, particularly for new users, but
SECTION 10
#1733085891937732-404: A proprietary operating system or by translating proprietary API calls (e.g., calls to Microsoft's Win32 or DirectX APIs) into native Linux API calls. A virtual machine can also be used to run a proprietary OS (like Microsoft Windows) on top of Linux. Computer hardware is usually sold with an operating system other than Linux already installed by the original equipment manufacturer (OEM). In
793-419: A software interface to hardware devices, enabling operating systems and other computer programs to access hardware functions without needing to know precise details about the hardware being used. A driver communicates with the device through the computer bus or communications subsystem to which the hardware connects. When a calling program invokes a routine in the driver, the driver issues commands to
854-462: A specific instruction set , while some (such as Gentoo ) are distributed mostly in source code form and must be built before installation. Linus Torvalds developed the Linux kernel and distributed its first version, 0.01, in 1991. Linux was initially distributed as source code only, and later as a pair of downloadable floppy disk images: one bootable and containing the Linux kernel itself, and
915-713: A specific application or service. Examples of packages are a library for handling the PNG image format, a collection of fonts, and a web browser . The package is typically provided as compiled code, with installation and removal of packages handled by a package management system (PMS) rather than a simple file archiver . Each package intended for such a PMS contains meta-information such as its description, version number, and its dependencies (other packages it requires to run). The package management system evaluates this meta-information to allow package searches, perform automatic upgrades to newer versions, and to check that all dependencies of
976-413: A system if the device is erroneously programmed . These factors make it more difficult and dangerous to diagnose problems. The task of writing drivers thus usually falls to software engineers or computer engineers who work for hardware-development companies. This is because they have better information than most outsiders about the design of their hardware. Moreover, it was traditionally considered in
1037-437: A target for exploits . Bring Your Own Vulnerable Driver (BYOVD) uses signed, old drivers that contain flaws that allow hackers to insert malicious code into the kernel. Drivers that may be vulnerable include those for WiFi and Bluetooth, gaming/graphics drivers, and drivers for printers. There is a lack of effective kernel vulnerability detection tools, especially for closed-source OSes such as Microsoft Windows where
1098-416: Is a Linux distribution that can be booted from removable storage media such as optical discs or USB flash drives , instead of being installed on and booted from a hard disk drive . The portability of installation-free distributions makes them advantageous for applications such as demonstrations, borrowing someone else's computer, rescue operations, or as installation media for a standard distribution. When
1159-757: Is a Linux distribution; others, such as Google engineer Patrick Brady, disagree by noting the lack of support for many GNU tools in Android, including glibc . Other Linux-kernel-based operating systems include Tizen , Mer / Sailfish OS , KaiOS and Amazon's Kindle firmware . Lightweight Linux distributions are those that have been designed with support for older hardware in mind, allowing older hardware to still be used productively, or, for maximum possible speed in newer hardware by leaving more resources available for use by applications. Examples include Tiny Core Linux , Puppy Linux and Slitaz . Other distributions target specific niches, such as: The Free Standards Group
1220-496: Is about 3.67%. Many Linux distributions provide an installation system akin to that provided with other modern operating systems. Other distributions, including Gentoo Linux , provide only the binaries of a basic kernel, compilation tools, and an installer; the installer compiles all the requested software for the specific architecture of the user's computer, using these tools and the software's source code. Distributions are normally segmented into packages . Each package contains
1281-531: Is an organization formed by major software and hardware vendors that aims to improve interoperability between different distributions. Among their proposed standards are the Linux Standard Base , which defines a common ABI and packaging system for Linux, and the Filesystem Hierarchy Standard which recommends a standard filenaming chart, notably the basic directory names found on the root of
SECTION 20
#17330858919371342-671: Is due to technical, organizational, and philosophical variation among vendors and users. The permissive licensing of free software means that users with sufficient knowledge and interest can customize any existing distribution, or design one to suit their own needs. Rolling Linux distributions are kept current using small and frequent updates . The terms partially rolling and partly rolling (along with synonyms semi-rolling and half-rolling ), fully rolling , truly rolling and optionally rolling are sometimes used by software developers and users. Repositories of rolling distributions usually contain very recent software releases —often
1403-563: Is important that the hardware manufacturer provide information on how the device communicates. Although this information can instead be learned by reverse engineering , this is much more difficult with hardware than it is with software. Microsoft has attempted to reduce system instability due to poorly written device drivers by creating a new framework for driver development, called Windows Driver Frameworks (WDF). This includes User-Mode Driver Framework (UMDF) that encourages development of certain types of drivers—primarily those that implement
1464-407: Is improved stability, since a poorly written user-mode device driver cannot crash the system by overwriting kernel memory. Because of the diversity of modern hardware and operating systems, drivers operate in many different environments. Drivers may interface with: Common levels of abstraction for device drivers include: So choosing and installing the correct device drivers for given hardware
1525-489: Is not always acceptable. For specific requirements, much software must be carefully configured to be useful, to work correctly with other software, or to be secure, and local administrators are often obliged to spend time reviewing and reconfiguring it. Some (but not all) distributions go to considerable lengths to adjust and customize the software they include, and some provide configuration tools to help users do so. By obtaining and installing everything normally provided in
1586-545: Is not available in source code form, such as a device driver binary . A distro may be described as a particular assortment of application and utility software (various GNU tools and libraries, for example), packaged with the Linux kernel in such a way that its capabilities meet users' needs. The software is usually adapted to the distribution and then combined into software packages by the distribution's maintainers. The software packages are available online in repositories , which are storage locations usually distributed around
1647-472: Is often a key component of computer system configuration. Virtual device drivers represent a particular variant of device drivers. They are used to emulate a hardware device, particularly in virtualization environments, for example when a DOS program is run on a Microsoft Windows computer or when a guest operating system is run on, for example, a Xen host. Instead of enabling the guest operating system to dialog with hardware, virtual device drivers take
1708-424: Is often referred to as "distro hopping". Virtual machine software such as VirtualBox and VMware Workstation virtualize hardware allowing users to test live media on a virtual machine without installing to the real system. Some websites like DistroWatch offer lists of distributions, and link to screenshots of operating systems as a way to get a first impression of various distributions. Some distributions let
1769-513: Is sometimes possible on closely related distributions. There are several ways to install a Linux distribution. The most common method of installing Linux is by booting from a live USB memory stick , which can be created by using a USB image writer application and the ISO image, which can be downloaded from various Linux distribution websites. DVD disks, CD disks, network installations and even other hard drives can also be used as "installation media". In
1830-457: Is that they can be loaded only when necessary and then unloaded, thus saving kernel memory. Depending on the operating system, device drivers may be permitted to run at various different privilege levels . The choice of which level of privilege the drivers are in is largely decided by the type of kernel an operating system uses. An operating system which uses a monolithic kernel , such as the Linux kernel , will typically run device drivers with
1891-462: Is typically held in the device's firmware and may or may not be consumer-accessible. Anaconda , one of the more popular installers, is used by Red Hat Enterprise Linux , Fedora (which uses the Fedora Media Writer ) and other distributions to simplify the installation process. Debian, Ubuntu and many others use Debian-Installer . The process of constantly switching between distributions
Plasma Mobile - Misplaced Pages Continue
1952-400: Is via protection rings . On many systems, such as those with x86 and ARM processors, switching between rings imposes a performance penalty, a factor that operating system developers and embedded software engineers consider when creating drivers for devices which are preferred to be run with low latency, such as network interface cards . The primary benefit of running a driver in user mode
2013-529: The Apple Macintosh , and proprietary versions of Unix . Most early adopters were familiar with Unix from work or school. They embraced Linux distributions for their low (or absent) cost, and the availability of the source code for most or all of their software. As of 2024, Linux has become more popular in server and embedded devices markets than in the desktop market. It is used in approximately 58.9% of web servers; its current operating system market share
2074-609: The PCI bus or USB is identified by two IDs which consist of two bytes each. The vendor ID identifies the vendor of the device. The device ID identifies a specific device from that manufacturer/vendor. A PCI device has often an ID pair for the main chip of the device, and also a subsystem ID pair that identifies the vendor, which may be different from the chip manufacturer. Computers often have many diverse and customized device drivers running in their operating system (OS) kernel which often contain various bugs and vulnerabilities , making them
2135-477: The kernel , separately as loadable modules , or as user-mode drivers (for certain types of devices where kernel interfaces exist, such as for USB devices). Makedev includes a list of the devices in Linux, including ttyS (terminal), lp ( parallel port ), hd (disk), loop, and sound (these include mixer , sequencer , dsp , and audio). Microsoft Windows .sys files and Linux .ko files can contain loadable device drivers. The advantage of loadable device drivers
2196-425: The software development process , standard releases require significant development effort to keep old versions up-to-date by propagating bug fixes back to the newest branch, versus focusing on the newest development branch . Also, unlike rolling releases, standard releases require more than one code branch to be developed and maintained, which increases the workload of the software developers and maintainers. On
2257-400: The 1990s, Linux distributions were installed using sets of floppy disks but this has been abandoned by all major distributions. By the 2000s many distributions offered CD and DVD sets with the vital packages on the first disc and less important packages on later ones. Some distributions, such as Debian also enabled installation over a network after booting from either a set of floppy disks or
2318-461: The Linux kernel. Commonly, it includes a package manager , an init system (such as systemd , OpenRC , or runit ), GNU tools and libraries , documentation, IP network configuration utilities, the getty TTY setup program, and many more. To provide a desktop experience (most commonly the Mesa userspace graphics drivers) a display server (the most common being the X.org Server , or, more recently,
2379-590: The case of IBM PC compatibles , the OS is usually Microsoft Windows ; in the case of Apple 's Mac computers, it has always been macOS ; Sun Microsystems sold SPARC hardware with the Solaris installed; video game consoles such as the Xbox , PlayStation , Wii , and the Nintendo Switch each have their own proprietary OS. This limits Linux's market share: consumers are unaware that an alternative exists, they must make
2440-417: The device (drives it). Once the device sends data back to the driver, the driver may invoke routines in the original calling program. Drivers are hardware dependent and operating-system-specific. They usually provide the interrupt handling required for any necessary asynchronous time-dependent hardware interface. The main purpose of device drivers is to provide abstraction by acting as a translator between
2501-587: The hardware manufacturer 's interest to guarantee that their clients can use their hardware in an optimal way. Typically, the Logical Device Driver (LDD) is written by the operating system vendor, while the Physical Device Driver (PDD) is implemented by the device vendor. However, in recent years, non-vendors have written numerous device drivers for proprietary devices, mainly for use with free and open source operating systems . In such cases, it
Plasma Mobile - Misplaced Pages Continue
2562-459: The latest stable versions available. They have pseudo-releases and installation media that are simply snapshots of the distribution at the time of the installation image's release. Typically, a rolling-release OS installed from older installation medium can be fully updated after it is installed. Depending on the usage case, there can be pros and cons to both standard release and rolling release software development methodologies . In terms of
2623-517: The name does not imply product distribution per se, a distro, if distributed on its own, is often obtained via a website intended specifically for the purpose. Distros have been designed for a wide variety of systems ranging from personal computers (for example, Linux Mint ) to servers (for example, Red Hat Enterprise Linux ) and from embedded devices (for example, OpenWrt ) to supercomputers (for example, Rocks Cluster Distribution ). A distro typically includes many components in addition to
2684-435: The need to change the contents of the system's hard disk drive. The website DistroWatch lists many Linux distributions and displays some of the ones that have the most web traffic on the site. The Wikimedia Foundation released an analysis of the browser User Agents of visitors to WMF websites until 2015, which includes details of the most popular Operating System identifiers, including some Linux distributions. Many of
2745-797: The operating system is booted from a read-only medium such as a CD or DVD, any user data that needs to be retained between sessions cannot be stored on the boot device but must be written to another storage device, such as a USB flash drive or a hard disk drive. Many Linux distributions provide a "live" form in addition to their conventional form, which is a network-based or removable-media image intended to be used only for installation; such distributions include SUSE , Ubuntu, Linux Mint , MEPIS and Fedora Linux . Some distributions, including Knoppix , Puppy Linux , Devil-Linux, SuperGamer , SliTaz GNU/Linux and dyne:bolic , are designed primarily for live use. Additionally, some minimal distributions can be run directly from as little space as one floppy disk without
2806-446: The opposite role and emulates a piece of hardware, so that the guest operating system and its drivers running inside a virtual machine can have the illusion of accessing real hardware. Attempts by the guest operating system to access the hardware are routed to the virtual device driver in the host operating system as e.g., function calls . The virtual device driver can also send simulated processor-level events like interrupts into
2867-450: The other hand, software features and technology planning are easier in standard releases due to a better understanding of upcoming features in the next version(s). Software release cycles can also be synchronized with those of major upstream software projects, such as desktop environments . As for the user experience , standard releases are often viewed as more stable and bug-free since software conflicts can be more easily addressed and
2928-446: The other with a set of GNU utilities and tools for setting up a file system. Since the installation procedure was complicated, especially in the face of growing amounts of available software, distributions sprang up to simplify it. Early distributions included: The two oldest, still active distribution projects started in 1993. The SLS distribution was not well maintained, so in July 1993
2989-402: The particular serial port controller installed on a user's computer. The commands needed to control a 16550 UART are much different from the commands needed to control an FTDI serial port converter, but each hardware-specific device driver abstracts these details into the same (or similar) software interface. Writing a device driver requires an in-depth understanding of how the hardware and
3050-467: The popular distributions are listed below. Several operating systems include the Linux kernel, but have a userland that differs significantly from that of mainstream Linux distributions: Whether such operating systems count as a "Linux distribution" is a controversial topic. They use the Linux kernel, so the Linux Foundation and Chris DiBona , Google's former open-source chief, agree that Android
3111-448: The rolling release model can have advantages in timely security updates, fixing system or application security bugs and vulnerabilities , that standard releases may have to wait till the next release for or patch in various versions. In a rolling release distribution, where the user has chosen to run it as a highly dynamic system, the constant flux of software packages can introduce new unintended vulnerabilities. A "live" distribution
SECTION 50
#17330858919373172-509: The same privilege as all other kernel objects. By contrast, a system designed around microkernel , such as Minix , will place drivers as processes independent from the kernel but that use it for essential input-output functionalities and to pass messages between user programs and each other. On Windows NT , a system with a hybrid kernel , it is common for device drivers to run in either kernel-mode or user-mode . The most common mechanism for segregating memory into various privilege levels
3233-507: The software stack more thoroughly tested and evaluated, during the software development cycle. For this reason, they tend to be the preferred choice in enterprise environments and mission-critical tasks. However, rolling releases offer more current software which can also provide increased stability and fewer software bugs along with the additional benefits of new features, greater functionality, faster running speeds, and improved system and application security . Regarding software security ,
3294-444: The software works for a given platform function. Because drivers require low-level access to hardware functions in order to operate, drivers typically operate in a highly privileged environment and can cause system operational issues if something goes wrong. In contrast, most user-level software on modern operating systems can be stopped without greatly affecting the rest of the system. Even drivers executing in user mode can crash
3355-452: The source code of the device drivers is mostly not public (open source) and drivers often have many privileges. A group of security researchers considers the lack of isolation as one of the main factors undermining kernel security , and published an isolation framework to protect operating system kernels, primarily the monolithic Linux kernel whose drivers they say get ~80,000 commits per year. An important consideration in
3416-435: The tree of any Linux filesystem. Those standards, however, see limited use, even among the distributions developed by members of the organization. The diversity of Linux distributions means that not all software runs on all distributions, depending on what libraries and other system attributes are required. Packaged software and software repositories are usually specific to a particular distribution, though cross-installation
3477-462: The user install Linux on top of their current system, such as WinLinux or coLinux . Linux is installed to the Windows hard disk partition, and can be started from inside Windows itself. Virtual machines (such as VirtualBox or VMware ) also make it possible for Linux to be run inside another OS. The VM software simulates a separate computer onto which the Linux system is installed. After installation,
3538-640: The virtual machine can be booted as if it were an independent computer. Various tools are also available to perform full dual-boot installations from existing platforms without a CD, most notably: Some specific proprietary software products are not available in any form for Linux. As of September 2015, the Steam gaming service has over 1,500 games available on Linux, compared to 2,323 games for Mac and 6,500 Windows games. Emulation and API-translation projects like Wine and CrossOver make it possible to run non-Linux-based software on Linux systems, either by emulating
3599-451: The virtual machine. Virtual devices may also operate in a non-virtualized environment. For example, a virtual network adapter is used with a virtual private network , while a virtual disk device is used with iSCSI . A good example for virtual device drivers can be Daemon Tools . There are several variants of virtual device drivers, such as VxDs , VLMs , and VDDs. Solaris descriptions of commonly used device drivers: A device on
3660-724: The world. Beside "glue" components, such as the distribution installers (for example, Debian-Installer and Anaconda ) and the package management systems, very few packages are actually written by a distribution's maintainers. Distributions have been designed for a wide range of computing environments, including desktops , servers , laptops , netbooks , mobile devices (phones and tablets), and embedded systems . There are commercially backed distributions, such as Fedora Linux ( Red Hat ), openSUSE ( SUSE ) and Ubuntu ( Canonical Ltd. ), and entirely community-driven distributions, such as Debian , Slackware , Gentoo and Arch Linux . Most distributions come ready-to-use and prebuilt for
3721-537: Was on 25 July 2015 at Akademy , accompanied by a working prototype running on a Nexus 5 . Pine64 began sales of their PinePhone mobile device, with the KDE Community Edition being made available as pre-orders on 1 December 2020. Plasma Mobile uses KWin 's Wayland session and the Qt framework . Distributions shipping Plasma Mobile can choose to support Android applications through Waydroid , which runs Android in
SECTION 60
#1733085891937#936063