LIO (SCSI target)

Short description: Open-source version of SCSI target

For information on the maintainer of LIO, see Datera.

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)

The neutrality of this article is disputed. Please do not remove this message until conditions to do so are met. (June 2014) (Learn how and when to remove this template message)

|

This article contains wording that promotes the subject in a subjective manner without imparting real information. Please remove or replace such wording and instead of making proclamations about a subject's importance, use facts and attribution to demonstrate that importance. (June 2014) (Learn how and when to remove this template message)

|

(Learn how and when to remove this template message)

LIO Target

LIO Linux SCSI Target

Original author(s)| Nicholas Bellinger
Jerome Martin
Developer(s)| Datera, Inc.
Initial release| January 14, 2011 (2011-01-14)
Repository| github.com/open-iscsi
Written in| C, Python
Operating system| Linux
Type| Block storage
License| GNU General Public License
Website| linux-iscsi.org

In computing, Linux-IO (LIO) Target is an open-source implementation of the SCSI target that has become the standard one included in the Linux kernel.[1][better source needed] Internally, LIO does not initiate sessions, but instead provides one or more Logical Unit Numbers (LUNs), waits for SCSI commands from a SCSI initiator, and performs required input/output data transfers. LIO supports common storage fabrics, including FCoE, Fibre Channel, IEEE 1394, iSCSI, iSCSI Extensions for RDMA (iSER), SCSI RDMA Protocol (SRP) and USB. It is included in most Linux distributions; native support for LIO in QEMU/KVM, libvirt, and OpenStack makes LIO also a storage option for cloud deployments.[2][3]

LIO is maintained by Datera, Inc., a Silicon Valley vendor of storage systems and software. On January 15, 2011, LIO SCSI target engine was merged into the Linux kernel mainline, in kernel version 2.6.38,[4][5] which was released on March 14, 2011. Additional fabric modules have been merged into subsequent Linux releases.

A competing generic SCSI target module for Linux is SCST.[6] For the narrower purpose providing a Linux iSCSI target, the older IET ("iSCSI Enterprise Target") and STGT ("SCSI Target FrameWork") modules also enjoy industry support.[7][8]

## Contents

* 1 Background
* 2 Architecture
* 2.1 SCSI target
* 2.2 Backstores
* 2.3 Fabric modules
* 2.3.1 FCoE
* 2.3.2 Fibre Channel
* 2.3.3 IEEE 1394
* 2.3.4 iSCSI
* 2.3.5 iSER
* 2.3.6 SRP
* 2.3.7 USB
* 2.4 targetcli
* 3 Linux distributions
* 4 See also
* 5 Notes
* 6 References
* 7 External links

## Background

The SCSI standard provides an extensible semantic abstraction for computer data storage devices, and as such has become a "lingua franca" for data storage systems. The SCSI T10 standards[9] define the commands[10] and protocols of the SCSI command processor (sent in SCSI CDBs), and the electrical and optical interfaces for various implementations.

A SCSI initiator is an endpoint that initiates a SCSI session. A SCSI target is the endpoint that waits for initiator commands and executes the required I/O data transfers. The SCSI target usually exports one or more LUNs for initiators to operate on.

The LIO Linux SCSI Target implements a generic SCSI target that provides remote access to most data storage device types over all prevalent storage fabrics and protocols. LIO neither directly accesses data nor does it directly communicate with applications. LIO provides a highly efficient, fabric-independent and fabric-transparent abstraction for the semantics of numerous data storage device types.

## Architecture

LIO Architecture

LIO implements a modular and extensible architecture around a versatile and highly efficient, parallelized SCSI command processing engine. The SCSI target engine implements the semantics of a SCSI target.[11]

The LIO SCSI target engine is independent of specific fabric modules or backstore types. Thus, LIO supports mixing and matching any number of fabrics and backstores at the same time. The LIO SCSI target engine implements a comprehensive SPC-3/SPC-4[12] feature set with support for high-end features, including SCSI-3/SCSI-4 Persistent Reservations (PRs), SCSI-4 Asymmetric Logical Unit Assignment (ALUA), VMware vSphere APIs for Array Integration (VAAI),[13] T10 DIF, etc.

LIO is configurable via a configfs-based[14] kernel API, and can be managed via a command-line interface and API (targetcli).

### SCSI target

The concept of a SCSI target isn't narrowly restricted to physical devices on a SCSI bus, but instead provides a generalized model for all receivers on a logical SCSI fabric. This includes SCSI sessions across interconnects with no physical SCSI bus at all. Conceptually, the SCSI target provides a generic block storage service or server in this scenario.

### Backstores

Backstores provide the SCSI target with generalized access to data storage devices by importing them via corresponding device drivers. Backstores don't need to be physical SCSI devices.

The most important backstore media types are:

* Block: The block driver allows using raw Linux block devices as backstores for export via LIO. This includes physical devices, such as HDDs, SSDs, CDs/DVDs, RAM disks, etc., and logical devices, such as software or hardware RAID volumes or LVM volumes.
* File: The file driver allows using files that can reside in any Linux file system or clustered file system as backstores for export via LIO.
* Raw: The raw driver allows using unstructured memory as backstores for export via LIO.

As a result, LIO provides a generalized model to export block storage.

### Fabric modules

Fabric modules implement the frontend of the SCSI target by encapsulating and abstracting the properties of the various supported interconnect. The following fabric modules are available.

#### FCoE

Combined storage and local area network

The Fibre Channel over Ethernet (FCoE) fabric module allows the transport of Fibre Channel protocol (FCP) traffic across lossless Ethernet networks. The specification, supported by a large number of network and storage vendors, is part of the Technical Committee T11 FC-BB-5 standard.[15]

LIO supports all standard Ethernet NICs.

The FCoE fabric module was contributed by Cisco and Intel, and released with Linux 3.0 on July 21, 2011.[16]

#### Fibre Channel

Fibre Channel is a high-speed network technology primarily used for storage networking. It is standardized in the Technical Committee T11[17] of the InterNational Committee for Information Technology Standards (INCITS).

The QLogic Fibre Channel fabric module supports 4- and 8-gigabit speeds with the following HBAs:

* QLogic 2400 Series (QLx246x), 4GFC
* QLogic 2500 Series (QLE256x), 8GFC (fully qual'd)

The Fibre Channel fabric module[18] and low-level driver[19] (LLD) were released with Linux 3.5 on July 21, 2012.[20]

With Linux 3.9, the following QLogic HBAs and CNAs are also supported:

* QLogic 2600 Series (QLE266x), 16GFC, SR-IOV
* QLogic 8300 Series (QLE834x), 16GFS/10 GbE, PCIe Gen3 SR-IOV
* QLogic 8100 Series (QLE81xx), 8GFC/10 GbE, PCIe Gen2

This makes LIO the first open source target to support 16-gigabit Fibre Channel.

#### IEEE 1394

LIO Firewire Target for Mac OS X

The FireWire SBP-2 fabric module enables Linux to export local storage devices via IEEE 1394, so that other systems can mount them as an ordinary IEEE 1394 storage device.

IEEE 1394 is a serial-bus interface standard for high-speed communications and isochronous real-time data transfer. It was developed by Apple as "FireWire" in the late 1980s and early 1990s, and Macintosh computers have supported "FireWire target disk mode" since 1999.[21]

The FireWire SBP-2 fabric module was released with Linux 3.5 on July 21, 2012.[20][22]

#### iSCSI

The Internet Small Computer System Interface (iSCSI) fabric module allows the transport of SCSI traffic across standard IP networks.

By carrying SCSI sessions across IP networks, iSCSI is used to facilitate data transfers over intranets and to manage storage over long distances. iSCSI can be used to transmit data over local area networks (LANs), wide area networks (WANs), or the Internet, and can enable location-independent and location-transparent data storage and retrieval.

The LIO iSCSI fabric module also implements a number of advanced iSCSI features that increase performance and resiliency, such as Multiple Connections per Session (MC/S) and Error Recovery Levels 0-2 (ERL=0,1,2).

LIO supports all standard Ethernet NICs.

The iSCSI fabric module was released with Linux 3.1 on October 24, 2011.[23]

#### iSER

Networks supporting remote direct memory access (RDMA) can use the iSCSI Extensions for RDMA (iSER) fabric module to transport iSCSI traffic. iSER permits data to be transferred directly into and out of remote SCSI computer memory buffers without intermediate data copies (direct data placement or DDP) by using RDMA.[24] RDMA is supported on InfiniBand networks, on Ethernet with data center bridging (DCB) networks via RDMA over Converged Ethernet (RoCE), and on standard Ethernet networks with iWARP enhanced TCP offload engine controllers.

The iSER fabric module was developed together by Datera and Mellanox Technologies, and first released with Linux 3.10 on June 30, 2013.[25]

#### SRP

The SCSI RDMA Protocol (SRP) fabric module allows the transport of SCSI traffic across RDMA (see above) networks. As of 2013, SRP was more widely used than iSER, although it is more limited, as SCSI is only a peer-to-peer protocol, whereas iSCSI is fully routable. The SRP fabric module supports the following Mellanox host channel adapters (HCAs):

* Mellanox ConnectX-2 VPI PCIe Gen2 HCAs (x8 lanes), single/dual-port QDR 40 Gbit/s
* Mellanox ConnectX-3 VPI PCIe Gen3 HCAs (x8 lanes), single/dual-port FDR 56 Gbit/s
* Mellanox ConnectX-IB PCIe Gen3 HCAs (x16 lanes), single/dual-port FDR 56 Gbit/s

The SRP fabric module was released with Linux 3.3 on March 18, 2012.[26]

In 2012, c't magazine measured almost 5000 MB/s throughput with LIO SRP Target over one Mellanox ConnectX-3 port in 56 Gbit/s FDR mode on a Sandy Bridge PCI Express 3.0 system with four Fusion-IO ioDrive PCI Express flash memory cards.

#### USB

The USB Gadget fabric module enables Linux to export local storage devices via the Universal Serial Bus (USB), so that other systems can mount them as an ordinary storage device.

USB was designed in the mid-1990s to standardize the connection of computer peripherals, and has also become common for data storage devices.

The USB Gadget fabric module was released with Linux 3.5 on July 21, 2012.[27]

### targetcli

targetcli is a user space single-node management command line interface (CLI) for LIO.[28] It supports all fabric modules and is based on a modular, extensible architecture, with plug-in modules for additional fabric modules or functionality.

targetcli provides a CLI that uses an underlying generic target library through a well-defined API. Thus the CLI can easily be replaced or complemented by a UI with other metaphors, such as a GUI.

targetcli is implemented in Python and consists of three main modules:

* the underlying rtslib and API.[29]
* the configshell, which encapsulates the fabric-specific attributes in corresponding 'spec' files.
* the targetcli shell itself.

Detailed instructions on how to set up LIO targets can be found on the LIO wiki.[28]

## Linux distributions

targetcli and LIO are included in most Linux distributions per default. Here is an overview over the most popular ones, together with the initial inclusion dates:

Distribution  | Version[lower-alpha 1] | Release  | Archive  | Installation  | Source git  | Documentation

|
|
|
|
|
|

Alpine Linux | 2.5  | 2011-11-07  | Alpine Linux mirror | `apk add targetcli-fb` | targetcli-fb.git | How-to
CentOS | 6.2  | 2011-12-20  | CentOS mirror | `su -c 'yum install fcoe-target-utils'` | targetcli-fb.git | Tech Notes
Debian | 7.0 ("wheezy")  | 2013-05-04  | Debian pool | `su -c 'apt-get install targetcli'` | targetcli.git | LIO Wiki
Fedora | 16 | 2011-11-08  | Fedora Rawhide | `su -c 'yum install targetcli'` | targetcli-fb.git | Target Wiki
openSUSE | 12.1  | 2011-11-08  | Requires manual installation from Datera targetcli.git repos.
RHEL[lower-alpha 2] | 6.2  | 2011-11-16  | Fedora Rawhide | `su -c 'yum install fcoe-target-utils'` | targetcli-fb.git | Tech Notes
Scientific Linux | 6.2 | 2012-02-16  | SL Mirror | `su -c 'yum install fcoe-target-utils'` | targetcli-fb.git | Tech Notes
SLES | 11 SP3 MR  | 2013-12  | \-  | `su -c 'zypper in targetcli'` | targetcli.git | LIO Wiki
Ubuntu | 12.04 LTS (precise) | 2012-04-26  | Ubuntu universe | `sudo apt-get install targetcli` | targetcli.git | LIO Wiki

## See also

* The SCST Linux SCSI target software stack
* Fibre Channel
* Fibre Channel over Ethernet (FCoE)
* IEEE 1394 / Firewire
* InfiniBand
* iSCSI
* iSCSI Extensions for RDMA (iSER)
* SCSI RDMA Protocol (SRP)
* USB

## Notes

1. ↑ The distribution release where LIO was included first.
2. ↑ RHEL 6 included LIO, but it was the default only for FCoE targets, while STGT was used for iSCSI. In RHEL 7 beta, LIO is the default for FCoE, iSCSI, and for Mellanox InfiniBand iSER/SRP.[30]

## References

1. ↑ Target. 323328-001. linux-iscsi.org. 2012-10-23. http://linux-iscsi.org/wiki/Target. Retrieved 2012-12-25.
2. ↑ Eric Harney (2012-12-17). "Support LIO as an iSCSI backend". launchpad.net. https://blueprints.launchpad.net/cinder/+spec/lio-iscsi-support.
3. ↑ IBM, Red Hat (February 2013). "KVM Virtualized I/O Performance". http://public.dhe.ibm.com/linux/pdfs/KVM_Virtualized_IO_Performance_Paper_v2.pdf.
4. ↑ Linus Torvalds (2011-01-14). "Trivial merge". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=38567333a6dabd0f2b4150e9fb6dd8e3ba2985e5.
5. ↑ Thorsten Leemhuis (2011-03-02). "Kernel Log: Coming in 2.6.38 (Part 4) - Storage". Heise Online. http://www.h-online.com/open/features/Kernel-Log-Coming-in-2-6-38-Part-4-Storage-1199926.html.
6. ↑ "A tale of two SCSI targets". Lwn.net. https://lwn.net/Articles/424004/.
7. ↑ Haas, Florian (May 2012). "Replicate Everything! Highly Available iSCSI Storage with DRBD and Pacemaker". Linux Journal. http://porky.linuxjournal.com:8080/LJ/217/11275.html.
8. ↑ Bolkhovitin, Vladislav (2018-04-11). "SCST vs STGT". Generic SCSI Target Subsystem for Linux. http://scst.sourceforge.net/scstvsstgt.html.
9. ↑ Technical Committee T10. "SCSI Storage Interfaces". t10.org. http://www.t10.org/.
10. ↑ SCSI Commands Reference Manual. 100293068, Rev. C. Scotts Valley: Seagate Technology. April 2010. http://www.seagate.com/staticfiles/support/disc/manuals/Interface manuals/100293068c.pdf. Retrieved 2012-12-25.
11. ↑ Bellinger, Nicholas (2009). "Current Status and Future of iSCSI on the Linux platform". Linux Plumbers Conference. http://linuxplumbersconf.org/2009/slides/Nicholas-A.-Bellinger-LIO-LPC-2009.pdf.
12. ↑ Ralph Weber (2011-01-17). "SCSI Primary Commands - 4 (SPC-4)". t10.org. http://www.t10.org/members/w_spc4.htm.
13. ↑ LIO Linux SCSI Target (2012-12-23). "VAAI". linux-iscsi.org. http://linux-iscsi.org/wiki/VAAI.
14. ↑ Jonathan Corbet (2005-08-24). "Configfs - an introduction". lwn.net. https://lwn.net/Articles/148973/.
15. ↑ "Fibre Channel: Backbone - 5 revision 2.00". American National Standard for Information Technology International Committee for Information Technology Standards Technical Group T11. June 4, 2009. http://www.t11.org/ftp/t11/pub/fc/bb-5/09-056v5.pdf.
16. ↑ Linus Torvalds (2011-04-18). "[SCSI] tcm_fc: Adding FC_FC4 provider (tcm_fc) for FCoE target (TCM - target core) support". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=3699d92a4d7b649bde67dff3cc681400992e0254.
17. ↑ "T11 Home Page". t11.org. http://www.t11.org/index.html.
18. ↑ Linus Torvalds (2012-05-15). "[SCSI] tcm_qla2xxx: Add >= 24xx series fabric module for target-core". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=75f8c1f693eefacc17a65614eb4ed1ee0f84fda6.
19. ↑ Linus Torvalds (2012-05-15). "[SCSI] qla2xxx: Add LLD target-mode infrastructure for >= 24xx series". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2d70c103fd2a066f904712b14239a5ce141f8236.
20. ↑ 20.0 20.1 Thorsten Leemhuis (2012-07-03). "Kernel Log: Coming in 3.5 (Part 2) - Filesystems and storage". Heise Online. http://www.h-online.com/open/features/Kernel-Log-Coming-in-3-5-Part-2-Filesystems-and-storage-1630816.html.
21. ↑ "How to use and troubleshoot FireWire target disk mode". apple.com. http://support.apple.com/kb/HT1661.
22. ↑ Linus Torvalds (2012-04-15). "sbp-target: Initial merge of firewire/ieee-1394 target mode support". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a511ce3397803558a3591e55423f3ae6aa28c9db.
23. ↑ Linus Torvalds (2011-07-27). "iSCSI merge". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=91d41fdf31f74e6e2e5f3cb018eca4200e36e202.
24. ↑ RFC 5041
25. ↑ Linus Torvalds (2013-04-30). "Merge branch 'for-next-merge'". Kernel.org. https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=6da6dc2380c3cfe8d6b59d7c3c55fdd7a521fe6c.
26. ↑ Linus Torvalds (2012-01-18). "InfiniBand/SRP merge". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f59e842fc0871cd5baa213dc32e0ce8e5aaf4758.
27. ↑ "Merge branch 'usb-target-merge'". Kernel.org. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ba01a87e37d3ca9efe141e2907c2ec3f89490b4f.
28. ↑ 28.0 28.1 LIO Linux SCSI Target (2012-12-09). "Targetcli". linux-iscsi.org. http://linux-iscsi.org/wiki/Targetcli.
29. ↑ Jerome Martin (2011-08-03). "Package rtslib". daterainc.com. https://github.com/Datera/targetcli.git.
30. ↑ "Chapter 6. Storage". Access.redhat.com. https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/7-Beta/html/7.0_Release_Notes/chap-storage.html.

## External links

* Datera website

Release | Details | 2011 | 2012 | 2013 | 2014

|
|
|
|
|

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
4.x | Version | 4.1  |
Feature | Target Core | Loopback | FCoE | iSCSI | Perf | SRP
| CM WQ | FC
USB
1393 | vHost | Perf | Misc | 16 GFC | iSER | Misc | VAAI | Misc | DIF
Ref's
NPIV | iSER DIF
Linux | 2.6.38 | 2.6.39 | 3.0 | 3.1 | 3.2 | 3.3 | 3.4 | 3.5 | 3.6 | 3.7 | 3.8 | 3.9 | 3.10 | 3.11 | 3.12 | 3.13 | 3.14 | 3.15

* v
* t
* e

Technical and de facto standards for wired computer buses

General|

* System bus
* Front-side bus
* Back-side bus
* Daisy chain
* Control bus
* Address bus
* Bus contention
* Bus mastering
* Network on a chip
* Plug and play
* List of bus bandwidths

Standards|

* SS-50 bus
* S-100 bus
* Multibus
* Unibus
* VAXBI
* MBus
* STD Bus
* SMBus
* Q-Bus
* Europe Card Bus
* ISA
* STEbus
* Zorro II
* Zorro III
* CAMAC
* FASTBUS
* LPC
* HP Precision Bus
* EISA
* VME
* VXI
* VXS
* NuBus
* TURBOchannel
* MCA
* SBus
* VLB
* PCI
* PXI
* HP GSC bus
* InfiniBand
* UPA
* PCI Extended (PCI-X)
* AGP
* PCI Express (PCIe)
* Compute Express Link (CXL)
* Direct Media Interface (DMI)
* RapidIO
* Intel QuickPath Interconnect
* NVLink
* HyperTransport
* Infinity Fabric
* Intel Ultra Path Interconnect

Storage|

* ST-506
* ESDI
* IPI
* SMD
* Parallel ATA (PATA)
* SSA
* DSSI
* HIPPI
* Serial ATA (SATA)
* SCSI
* Parallel
* SAS
* Fibre Channel
* SATAe
* PCI Express (via AHCI or NVMe logical device interface)

Peripheral|

* Apple Desktop Bus
* DCB
* Commodore bus
* HP-IL
* HIL
* MIDI
* RS-232
* RS-422
* RS-423
* RS-485
* DMX512-A
* IEEE-488 (GPIB)
* IEEE-1284 (parallel port)
* UNI/O
* ACCESS.bus
* 1-Wire
* D²B
* I²C
* SPI
* I3C
* Parallel SCSI
* Profibus
* IEEE 1394 (FireWire)
* USB
* Camera Link
* External PCIe
* Thunderbolt

Audio|

* ADAT Lightpipe
* AES3
* Intel HD Audio
* I²S
* MADI
* McASP
* S/PDIF
* TOSLINK

Portable|

* PC Card
* ExpressCard

Embedded|

* Multidrop bus
* CoreConnect
* AMBA (AXI)
* Wishbone
* SLIMbus

Interfaces are listed by their speed in the (roughly) ascending order, so the interface at the end of each section should be the fastest.
Category

* v
* t
* e

Linux kernel

Organization|

| Kernel|

* Linux Foundation
* Linux Mark Institute
* Linus's law
* Tanenbaum–Torvalds debate
* Tux
* SCO disputes
* Linaro
* GNU GPL v2
* menuconfig
* Supported computer architectures
* Kernel names
* Criticism

|

Support|

* Developers
* The Linux Programming Interface
* kernel.org
* LKML
* Linux conferences
* Users
* Linux User Group (LUG)

Technical|

| Debugging|

* CRIU
* ftrace
* kdump
* Linux kernel oops
* SystemTap
* BPF

|

Startup|

* vmlinux
* System.map
* dracut
* initrd
* initramfs

ABIs|

* Linux Standard Base
* x32 ABI

APIs|

| Of
userspace|

| FS,
daemons|

* devfs
* devpts
* debugfs
* procfs
* sysfs
* systemd
* udev
* Kmscon

|

Wrapper
libraries|

* C standard library
* glibc
* uClibc
* Bionic
* libhybris
* dietlibc
* EGLIBC
* klibc
* musl
* Newlib
* libcgroup
* libdrm
* libalsa
* libevdev
* libusb

kernel|

| System Call
Interface|

* POSIX
* ioctl
* select
* open
* read
* close
* sync
* …
* Linux-only
* futex
* epoll
* splice
* dnotify
* inotify
* readahead
* …

|

In-kernel|

* ALSA
* Crypto API
* DRM
* kernfs
* Memory barrier
* New API
* RCU
* Video4Linux

Components|

* Kernel modules
* BlueZ
* cgroups
* Console
* bcache
* Device mapper
* dm-cache
* dm-crypt
* DRM
* EDAC
* evdev
* Kernel same-page merging (KSM)
* LIO
* Framebuffer
* LVM
* KMS driver
* Netfilter
* Netlink
* nftables
* Network scheduler
* perf
* SLUB
* zram
* zswap

* Process and I/O schedulers:
* O(n) scheduler
* O(1) scheduler
* Completely Fair Scheduler (CFQ)
* Brain Fuck Scheduler
* Noop scheduler
* SCHED_DEADLINE

* Security Modules: AppArmor
* Exec Shield
* grsecurity
* PaX
* seccomp
* SELinux
* Smack
* Tomoyo Linux
* Linux PAM

* Device drivers
* 802.11
* graphics
* Raw device

* initramfs
* KernelCare
* kexec
* kGraft
* kpatch
* Ksplice

Variants|

* Mainline
* Linux kernel
* Linux-libre
* High-performance computing
* INK
* Compute Node Linux
* SLURM
* Real-time computing
* RTLinux
* RTAI
* Xenomai
* Carrier Grade Linux
* MMU-less
* μClinux
* PSXLinux

| Virtualization|

* Hypervisor
* KVM
* Xen
* OS-level virtualization
* Linux-VServer
* Lguest
* LXC
* OpenVZ
* Other
* L4Linux
* ELinOS
* User-mode Linux
* MkLinux
* coLinux

|

Adoption|

| Range
of use|

* Desktop
* Embedded
* Gaming
* Thin client:
* LTSP
* Thinstation
* Server:
* LAMP
* LYME-LYCE
* Devices

|

Adopters|

* List of Linux adopters
* GENIVI Alliance
* Proprietary software for Linux

* Category
* Commons
* Book
* Wikiversity
* Portal

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/LIO (SCSI target). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Software:LIO_(SCSI_target)&oldid=704138"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template