479:
2513:
1245:
157:
2525:
25:
2499:
1231:
498:
socket) to uevents the kernel sends out if a new device is initialized or a device is removed from the system. The udev package comes with an extensive set of rules that match against exported values of the event and properties of the discovered device. A matching rule will possibly name and create a
712:
HAL is obsolete and only used by legacy code. Ubuntu 10.04 shipped without HAL. Initially a new daemon DeviceKit was planned to replace certain aspects of HAL, but in March 2009, DeviceKit was deprecated in favor of adding the same code to udev as a package: udev-extras, and some functions have now
502:
udev rules can match on properties like the kernel subsystem, the kernel device name, the physical location of the device, or properties like the device's serial number. Rules can also request information from external programs to name a device or specify a custom name that will always be the same,
349:
The complexity of doing so forced application authors to re-implement hardware support logic. Some hardware devices also required privileged helper programs to prepare them for use. These often have to be invoked in ways that could be awkward to express with the Unix permissions model (for example,
760:
Yes, doing it in the kernel is "more robust". But don't play games, and stop the lying. It's more robust because we have maintainers that care, and because we know that regressions are not something we can play fast and loose with. If something breaks, and we don't know what the right fix for that
321:
are part of the Linux kernel, in which their primary functions include device discovery, detecting device state changes, and similar low-level hardware functions. After loading a device driver into memory from the kernel, detected events are sent out to the userspace daemon udevd. It is the device
400:
udev supports persistent device naming, which does not depend on, for example, the order in which the devices are plugged into the system. The default udev setup provides persistent names for storage devices. Any hard disk is recognized by its unique filesystem id, the name of the disk and the
412:. One consequence is that udev moved the naming policy out of the kernel and can run arbitrary programs to compose a name for the device from the device's properties, before the node is created; there, the whole process is also interruptible and it runs with a lower priority.
707:
565:
upower (formerly known as DeviceKit-power) is a daemon that sits on top of libudev and other kernel interfaces and provides a high-level interface to power management and is accessible via dbus to applications.
562:
udisks (formerly known as DeviceKit-disks) is a daemon that sits on top of libudev and other kernel interfaces and provides a high-level interface to storage devices and is accessible via dbus to applications.
571:
is a daemon that sits on top of libudev and other kernel interfaces (and a couple of other daemons) and provides a high-level interface to network configuration and setup and is accessible via dbus to apps.
765:
the thing that broke. So yes, we're clearly better off doing it in the kernel. Not because firmware loading cannot be done in user space. But simply because udev maintenance since Greg gave it up has gone
510:, which would perform further device-specific actions. For example, HAL would notify other software running on the system that the new hardware had arrived by issuing a broadcast message on the
816:
starts to be utilized by udev; at that point, the plan was to switch udev to use kdbus as the underlying messaging system, and to get rid of the userspace-to-userspace netlink-based transport.
345:
is notified by the kernel and itself notifies the
NetworkManager-daemon. The NetworkManager-daemon could start dhclient for that NIC, or configure according to some manual configuration.
875:
2075:
808:
On May 29, 2014, support for firmware loading through udev was dropped from systemd, as it has been decided that it is the kernel's task to load firmware. Two days later,
548:
desktop environments, among others. The functionality previously embodied in HAL has been integrated into udev itself, or moved to separate software such as udisks and
581:
388:
directory have been a static set of files, the Linux udev device manager dynamically provides only the nodes for the devices actually present on a system. Although
1364:
556:
udev provides low-level access to the linux device tree. Allows programs to enumerate devices and their properties and get notifications when devices come and go.
1031:
2561:
2164:
575:
udev receives messages from the kernel, and passes them on to subsystem daemons such as
Network Manager. Applications talk to Network Manager over D-Bus.
2571:
2159:
559:
dbus is a framework to allow programs to communicate with each other, securely, reliably, and with a high-level object-oriented programming interface.
46:
33:
2556:
1289:
925:
2517:
1250:
478:
368:
was created to deal with these challenges, but is now deprecated in most Linux distributions, its functionality being replaced by udevd.
330:
has a very comprehensive set of configuration files, which can all be adjusted by the computer administrator, according to their needs.
729:
interface. A system using a new version of udev will not boot with kernels older than 2.6.13 unless udev is disabled and a traditional
306:-capable in a user-friendly way, a part of handling all of these hotplug-capable hardware devices was handed over from the kernel to a
1896:
1664:
883:
1098:
2551:
1394:
2566:
2006:
1334:
784:
and it makes udev functionality available without systemd. A stated goal of the project is to keep eudev independent of any
2440:
2321:
1369:
722:
136:
1723:
775:
514:
110:
1035:
2422:
2236:
1354:
1282:
1173:
491:
206:
778:
of systemd's udev codebase in order to avoid dependency on the systemd architecture. The resulting fork is called
38:
2427:
2069:
1405:
276:
362:
to provide their own access control and privilege separation, potentially introducing security holes each time.
338:
is notified by the kernel and itself notifies the udisksd-daemon. That daemon could then mount the file systems.
1990:
1975:
1891:
1679:
1484:
796:
eudev is a fork of systemd-udev with the goal of obtaining better compatibility with existing software such as
170:
986:
291:
are part of the Linux kernel, and make up more than half of its source code. Hardware can be accessed through
279:
that is responsible for providing an abstract interface of the hardware to the rest of the software. Being a
2333:
2132:
1768:
1656:
1611:
1561:
1545:
1522:
526:
1344:
1212:
1198:
544:
By the middle of 2011 HAL had been deprecated by most Linux distributions as well as by the KDE, GNOME and
2478:
2455:
2450:
2285:
2251:
2241:
2113:
2058:
1935:
1474:
2529:
2432:
1275:
463:
2462:
2064:
1626:
1324:
448:
1057:
506:
In the past a common way to use udev on Linux systems was to let it send events through a socket to
2258:
1737:
1596:
1530:
518:
420:
189:
833:
804:, older kernels, various toolchains and anything else required by users and various distributions.
2412:
2246:
1832:
1732:
1669:
1591:
1586:
1374:
929:
921:
825:
809:
801:
785:
702:{\displaystyle {\ce {Kernel -> udev -> Network Manager <=> D-Bus <=> Firefox}}}
434:
393:
359:
307:
77:
2383:
2031:
2001:
1996:
1847:
1502:
1464:
280:
2137:
1699:
1420:
1410:
1319:
726:
351:
272:
259:
events raised when hardware devices are added into the system or removed from it, including
201:
177:
1072:
2373:
2041:
1822:
534:
852:
1147:
156:
2403:
2308:
2219:
2096:
2091:
2086:
2081:
1864:
1689:
1684:
1329:
745:
568:
538:
507:
365:
354:
only if they are logged into the video console). Application authors resorted to using
326:, that catches all of these events and then decides what shall happen next. For this,
2545:
2338:
2154:
1960:
1950:
1709:
1581:
1459:
318:
310:
running in user-space. Running in user space serves security and stability purposes.
288:
962:
744:
source tree, making systemd 183 the first version to include udev. In
October 2012,
2503:
2224:
2142:
2036:
1980:
1339:
1298:
1236:
771:
530:
409:
284:
238:
2229:
2122:
1704:
1601:
829:
749:
381:
296:
292:
246:
194:
81:
1260:
2316:
2291:
2278:
2183:
2171:
2101:
2011:
1497:
1400:
1359:
1226:
934:
405:
256:
72:
725:. The Linux kernel version 2.6.13 introduced or updated a new version of the
2178:
2147:
2016:
1852:
1641:
1512:
1469:
499:
device node and run configured programs to set up and configure the device.
24:
2296:
2117:
2106:
2026:
1970:
1965:
1911:
1859:
1748:
1674:
753:
737:
260:
1177:
2378:
2363:
2273:
2263:
2203:
2127:
2021:
1945:
1886:
1800:
1763:
1694:
1636:
1631:
1535:
1492:
1213:"[systemd-devel] [PATCH] Drop the udev firmware loader"
1199:"[systemd-devel] [PATCH] Drop the udev firmware loader"
741:
495:
483:
459:
427:
426:
that allows access to device information; it was incorporated into the
303:
1122:
2368:
2353:
2343:
2198:
2193:
1955:
1906:
1879:
1842:
1812:
1779:
1758:
1507:
1454:
1349:
1152:
797:
549:
355:
242:
145:
1010:
2498:
2188:
2051:
1985:
1940:
1901:
1869:
1837:
1795:
1790:
1753:
1621:
1616:
1576:
1571:
1230:
906:
813:
780:
522:
511:
389:
251:
233:
182:
2268:
2046:
1874:
1449:
789:
545:
377:
1271:
1267:
341:
In case a new
Ethernet cable is plugged into the Ethernet NIC,
2348:
2326:
503:
regardless of the order devices are discovered by the system.
18:
752:'s approach to udev maintenance and bug fixing related to
396:
cited a number of reasons for preferring udev over devfs:
792:
system. The Gentoo project describes eudev as follows:
676:
625:
218:
1058:"Relationship between udev, hal, Dbus and DeviceKit?"
584:
401:
physical location on the hardware it is connected to.
334:
In case a new storage device is connected over USB,
302:
To be able to deal with peripheral devices that are
2471:
2411:
2402:
2307:
2212:
1928:
1821:
1731:
1722:
1655:
1560:
1553:
1544:
1521:
1483:
1442:
1435:
1383:
1312:
1305:
876:"Are top Linux developers losing the will to code?"
416:The udev, as a whole, is divided into three parts:
255:directory. At the same time, udev also handles all
212:
200:
188:
176:
166:
135:
109:
87:
71:
1032:"Thunar-volman and the deprecation of HAL in Xfce"
701:
684:
683:
666:
665:
633:
632:
615:
614:
794:
758:
1174:"Gentoo Linux Projects – Gentoo eudev project"
490:udev is a generic device manager running as a
1283:
533:to browse the file systems of newly attached
8:
66:
2408:
2304:
1728:
1557:
1550:
1439:
1309:
1290:
1276:
1268:
458:The system gets calls from the kernel via
155:
65:
685:
678:
677:
675:
667:
660:
658:
657:
655:
647:
634:
627:
626:
624:
616:
609:
607:
606:
604:
585:
583:
2518:Free and open-source software portal
2076:Earliest eligible virtual deadline first
812:suggested this patch be postponed until
477:
263:loading as required by certain devices.
49:of all important aspects of the article.
844:
659:
608:
494:on a Linux system and listening (via a
392:used to provide similar functionality,
45:Please consider expanding the lead to
733:directory is used for device access.
7:
1251:Free and open-source software portal
1099:"Commit importing udev into systemd"
1073:"The future of the udev source tree"
957:
955:
953:
245:and hotplug, udev primarily manages
987:"Dynamic Device Management in Udev"
16:Device manager for the Linux kernel
2562:Linux file system-related software
14:
2572:Unix file system-related software
1056:Lennart Poettering (2010-04-25).
926:"udev and devfs - The final word"
466:, adding a link to themselves in
2524:
2523:
2511:
2497:
1365:Supported computer architectures
1243:
1229:
905:Pennington, Havoc (2003-07-10),
521:. In this way, desktops such as
482:udev has been incorporated into
23:
1395:The Linux Programming Interface
37:may be too short to adequately
2557:Interfaces of the Linux kernel
686:
661:
635:
610:
595:
589:
462:socket. Earlier versions used
237:) is a device manager for the
47:provide an accessible overview
1:
1121:Linus Torvalds (2012-10-03).
1034:. 2010-01-17. Archived from
992:. Linux Magazine. 2006-10-01
1071:Sievers, Kay (2012-04-03).
93:; 20 years ago
2588:
2237:High-performance computing
2059:Process and I/O schedulers
1148:"gentoo/eudev – README.md"
874:Marti, Don (2 July 2007).
404:udev executes entirely in
2491:
2070:Completely Fair Scheduler
1335:Tanenbaum–Torvalds debate
908:Making Hardware Just Work
517:system to all interested
440:that manages the virtual
131:
105:
1991:Kernel same-page merging
408:, as opposed to devfs's
358:binaries or run service
2334:OS-level virtualization
721:udev was introduced in
527:K Desktop Environment 3
350:allowing users to join
116:256.4 / 24 July 2024
2552:Computer configuration
2479:List of Linux adopters
1421:Linux User Group (LUG)
832:, with much help from
824:udev was developed by
806:
768:
736:In April 2012, udev's
713:moved to udev proper.
703:
487:
468:/etc/hotplug.d/default
241:. As the successor of
2567:Linux kernel features
704:
481:
118:; 50 days ago
2065:Brain Fuck Scheduler
1325:Linux Mark Institute
1123:"Re: udev breakages"
740:was merged into the
582:
449:command-line utility
430:183 software bundle.
2259:Real-time computing
1531:Linux Standard Base
672:
621:
470:with this purpose.
380:systems, where the
376:Unlike traditional
287:does exactly that:
68:
2247:Compute Node Linux
1833:C standard library
922:Greg Kroah-Hartman
826:Greg Kroah-Hartman
810:Lennart Poettering
786:Linux distribution
774:project created a
756:loading, stating:
699:
691:
640:
488:
394:Greg Kroah-Hartman
91:November 2003
78:Greg Kroah-Hartman
2539:
2538:
2487:
2486:
2398:
2397:
2394:
2393:
2032:Network scheduler
1924:
1923:
1920:
1919:
1718:
1717:
1465:Linux kernel oops
1431:
1430:
1411:Linux conferences
963:"systemd/systemd"
697:
693:
654:
646:
642:
603:
600:
594:
588:
352:wireless networks
281:monolithic kernel
226:
225:
64:
63:
2579:
2527:
2526:
2516:
2515:
2514:
2504:Linux portal
2502:
2501:
2409:
2305:
2114:Security Modules
1729:
1558:
1551:
1440:
1320:Linux Foundation
1310:
1292:
1285:
1278:
1269:
1264:
1263:
1261:Official website
1253:
1248:
1247:
1246:
1239:
1234:
1233:
1217:
1216:
1209:
1203:
1202:
1195:
1189:
1188:
1186:
1185:
1176:. Archived from
1170:
1164:
1163:
1161:
1160:
1144:
1138:
1137:
1135:
1134:
1118:
1112:
1111:
1110:
1109:
1094:
1088:
1087:
1085:
1084:
1068:
1062:
1061:
1053:
1047:
1046:
1044:
1043:
1028:
1022:
1021:
1019:
1018:
1007:
1001:
1000:
998:
997:
991:
983:
977:
976:
974:
973:
959:
948:
947:
945:
944:
938:
928:. Archived from
918:
912:
911:
902:
896:
895:
893:
891:
882:. Archived from
871:
865:
864:
862:
860:
849:
836:, among others.
761:breakage is, we
732:
708:
706:
705:
700:
698:
695:
694:
692:
690:
689:
682:
674:
673:
671:
664:
656:
652:
651:
644:
643:
641:
639:
638:
631:
623:
622:
620:
613:
605:
601:
598:
592:
586:
535:USB flash drives
529:could start the
469:
454:for diagnostics.
453:
443:
439:
387:
344:
337:
329:
325:
273:operating system
254:
236:
222:
221:
219:Official website
178:Operating system
159:
154:
151:
149:
147:
126:
124:
119:
101:
99:
94:
69:
59:
56:
50:
27:
19:
2587:
2586:
2582:
2581:
2580:
2578:
2577:
2576:
2542:
2541:
2540:
2535:
2512:
2510:
2496:
2483:
2467:
2414:
2390:
2374:User-mode Linux
2303:
2208:
1916:
1824:
1817:
1736:
1714:
1651:
1563:
1540:
1517:
1479:
1427:
1379:
1370:Version history
1301:
1296:
1259:
1258:
1249:
1244:
1242:
1235:
1228:
1225:
1220:
1211:
1210:
1206:
1197:
1196:
1192:
1183:
1181:
1172:
1171:
1167:
1158:
1156:
1146:
1145:
1141:
1132:
1130:
1120:
1119:
1115:
1107:
1105:
1096:
1095:
1091:
1082:
1080:
1070:
1069:
1065:
1055:
1054:
1050:
1041:
1039:
1030:
1029:
1025:
1016:
1014:
1009:
1008:
1004:
995:
993:
989:
985:
984:
980:
971:
969:
961:
960:
951:
942:
940:
932:
920:
919:
915:
904:
903:
899:
889:
887:
886:on 19 July 2016
880:ComputerworldUK
873:
872:
868:
858:
856:
853:"Release 256.4"
851:
850:
846:
842:
822:
730:
719:
580:
579:
476:
467:
451:
447:Administrative
441:
437:
385:
374:
342:
335:
327:
323:
316:
269:
250:
232:
217:
216:
162:
144:
127:
122:
120:
117:
97:
95:
92:
88:Initial release
60:
54:
51:
44:
32:This article's
28:
17:
12:
11:
5:
2585:
2583:
2575:
2574:
2569:
2564:
2559:
2554:
2544:
2543:
2537:
2536:
2534:
2533:
2521:
2507:
2492:
2489:
2488:
2485:
2484:
2482:
2481:
2475:
2473:
2469:
2468:
2466:
2465:
2460:
2459:
2458:
2453:
2445:
2444:
2443:
2435:
2430:
2425:
2419:
2417:
2406:
2400:
2399:
2396:
2395:
2392:
2391:
2389:
2388:
2387:
2386:
2381:
2376:
2371:
2366:
2358:
2357:
2356:
2351:
2346:
2341:
2331:
2330:
2329:
2324:
2313:
2311:
2309:Virtualization
2302:
2301:
2300:
2299:
2294:
2283:
2282:
2281:
2276:
2271:
2266:
2256:
2255:
2254:
2249:
2244:
2234:
2233:
2232:
2227:
2216:
2214:
2210:
2209:
2207:
2206:
2201:
2196:
2191:
2186:
2181:
2175:
2174:
2169:
2168:
2167:
2162:
2155:Device drivers
2151:
2150:
2145:
2140:
2135:
2130:
2125:
2120:
2110:
2109:
2104:
2099:
2097:SCHED_DEADLINE
2094:
2092:O(1) scheduler
2089:
2087:O(n) scheduler
2084:
2082:Noop scheduler
2079:
2073:
2067:
2062:
2055:
2054:
2049:
2044:
2039:
2034:
2029:
2024:
2019:
2014:
2009:
2004:
1999:
1994:
1988:
1983:
1978:
1973:
1968:
1963:
1958:
1953:
1948:
1943:
1938:
1936:Kernel modules
1932:
1930:
1926:
1925:
1922:
1921:
1918:
1917:
1915:
1914:
1909:
1904:
1899:
1894:
1889:
1884:
1883:
1882:
1877:
1872:
1867:
1862:
1857:
1856:
1855:
1845:
1840:
1829:
1827:
1819:
1818:
1816:
1815:
1810:
1809:
1808:
1798:
1793:
1788:
1785:
1782:
1777:
1774:
1771:
1766:
1761:
1756:
1751:
1746:
1742:
1740:
1726:
1720:
1719:
1716:
1715:
1713:
1712:
1707:
1702:
1697:
1692:
1690:Memory barrier
1687:
1682:
1677:
1672:
1667:
1661:
1659:
1653:
1652:
1650:
1649:
1648:
1647:
1644:
1639:
1634:
1629:
1624:
1619:
1609:
1608:
1607:
1604:
1599:
1594:
1589:
1584:
1579:
1568:
1566:
1555:
1548:
1542:
1541:
1539:
1538:
1533:
1527:
1525:
1519:
1518:
1516:
1515:
1510:
1505:
1500:
1495:
1489:
1487:
1481:
1480:
1478:
1477:
1472:
1467:
1462:
1457:
1452:
1446:
1444:
1437:
1433:
1432:
1429:
1428:
1426:
1425:
1424:
1423:
1415:
1414:
1413:
1408:
1403:
1398:
1387:
1385:
1381:
1380:
1378:
1377:
1372:
1367:
1362:
1357:
1352:
1347:
1342:
1337:
1332:
1327:
1322:
1316:
1314:
1307:
1303:
1302:
1297:
1295:
1294:
1287:
1280:
1272:
1266:
1265:
1255:
1254:
1240:
1224:
1223:External links
1221:
1219:
1218:
1204:
1190:
1165:
1139:
1129:(Mailing list)
1113:
1097:Sievers, Kay,
1089:
1079:(Mailing list)
1063:
1048:
1023:
1002:
978:
949:
913:
897:
866:
855:. 24 July 2024
843:
841:
838:
821:
818:
746:Linus Torvalds
718:
715:
710:
709:
688:
681:
670:
663:
650:
637:
630:
619:
612:
597:
591:
573:
572:
569:NetworkManager
566:
563:
560:
557:
475:
472:
456:
455:
445:
431:
414:
413:
402:
373:
370:
347:
346:
339:
319:Device drivers
315:
312:
295:or over their
289:device drivers
268:
265:
224:
223:
214:
210:
209:
204:
198:
197:
192:
186:
185:
180:
174:
173:
168:
164:
163:
161:
160:
141:
139:
133:
132:
129:
128:
115:
113:
111:Stable release
107:
106:
103:
102:
89:
85:
84:
75:
62:
61:
41:the key points
31:
29:
22:
15:
13:
10:
9:
6:
4:
3:
2:
2584:
2573:
2570:
2568:
2565:
2563:
2560:
2558:
2555:
2553:
2550:
2549:
2547:
2532:
2531:
2522:
2520:
2519:
2508:
2506:
2505:
2500:
2494:
2493:
2490:
2480:
2477:
2476:
2474:
2470:
2464:
2461:
2457:
2454:
2452:
2449:
2448:
2446:
2442:
2439:
2438:
2437:Thin client:
2436:
2434:
2431:
2429:
2426:
2424:
2421:
2420:
2418:
2416:
2410:
2407:
2405:
2401:
2385:
2382:
2380:
2377:
2375:
2372:
2370:
2367:
2365:
2362:
2361:
2359:
2355:
2352:
2350:
2347:
2345:
2342:
2340:
2339:Linux-VServer
2337:
2336:
2335:
2332:
2328:
2325:
2323:
2320:
2319:
2318:
2315:
2314:
2312:
2310:
2306:
2298:
2295:
2293:
2290:
2289:
2287:
2284:
2280:
2277:
2275:
2272:
2270:
2267:
2265:
2262:
2261:
2260:
2257:
2253:
2250:
2248:
2245:
2243:
2240:
2239:
2238:
2235:
2231:
2228:
2226:
2223:
2222:
2221:
2218:
2217:
2215:
2211:
2205:
2202:
2200:
2197:
2195:
2192:
2190:
2187:
2185:
2182:
2180:
2177:
2176:
2173:
2170:
2166:
2163:
2161:
2158:
2157:
2156:
2153:
2152:
2149:
2146:
2144:
2141:
2139:
2136:
2134:
2131:
2129:
2126:
2124:
2121:
2119:
2115:
2112:
2111:
2108:
2105:
2103:
2100:
2098:
2095:
2093:
2090:
2088:
2085:
2083:
2080:
2077:
2074:
2071:
2068:
2066:
2063:
2060:
2057:
2056:
2053:
2050:
2048:
2045:
2043:
2040:
2038:
2035:
2033:
2030:
2028:
2025:
2023:
2020:
2018:
2015:
2013:
2010:
2008:
2005:
2003:
2000:
1998:
1995:
1992:
1989:
1987:
1984:
1982:
1979:
1977:
1974:
1972:
1969:
1967:
1964:
1962:
1961:Device mapper
1959:
1957:
1954:
1952:
1949:
1947:
1944:
1942:
1939:
1937:
1934:
1933:
1931:
1927:
1913:
1910:
1908:
1905:
1903:
1900:
1898:
1895:
1893:
1890:
1888:
1885:
1881:
1878:
1876:
1873:
1871:
1868:
1866:
1863:
1861:
1858:
1854:
1851:
1850:
1849:
1846:
1844:
1841:
1839:
1836:
1835:
1834:
1831:
1830:
1828:
1826:
1820:
1814:
1811:
1807:
1804:
1803:
1802:
1799:
1797:
1794:
1792:
1789:
1786:
1783:
1781:
1778:
1775:
1772:
1770:
1767:
1765:
1762:
1760:
1757:
1755:
1752:
1750:
1747:
1744:
1743:
1741:
1739:
1734:
1730:
1727:
1725:
1721:
1711:
1708:
1706:
1703:
1701:
1698:
1696:
1693:
1691:
1688:
1686:
1683:
1681:
1678:
1676:
1673:
1671:
1668:
1666:
1663:
1662:
1660:
1658:
1654:
1645:
1643:
1640:
1638:
1635:
1633:
1630:
1628:
1625:
1623:
1620:
1618:
1615:
1614:
1613:
1610:
1605:
1603:
1600:
1598:
1595:
1593:
1590:
1588:
1585:
1583:
1580:
1578:
1575:
1574:
1573:
1570:
1569:
1567:
1565:
1559:
1556:
1552:
1549:
1547:
1543:
1537:
1534:
1532:
1529:
1528:
1526:
1524:
1520:
1514:
1511:
1509:
1506:
1504:
1501:
1499:
1496:
1494:
1491:
1490:
1488:
1486:
1482:
1476:
1473:
1471:
1468:
1466:
1463:
1461:
1458:
1456:
1453:
1451:
1448:
1447:
1445:
1441:
1438:
1434:
1422:
1419:
1418:
1416:
1412:
1409:
1407:
1404:
1402:
1399:
1397:
1396:
1392:
1391:
1389:
1388:
1386:
1382:
1376:
1373:
1371:
1368:
1366:
1363:
1361:
1358:
1356:
1353:
1351:
1348:
1346:
1343:
1341:
1338:
1336:
1333:
1331:
1328:
1326:
1323:
1321:
1318:
1317:
1315:
1311:
1308:
1304:
1300:
1293:
1288:
1286:
1281:
1279:
1274:
1273:
1270:
1262:
1257:
1256:
1252:
1241:
1238:
1232:
1227:
1222:
1215:. 2014-05-31.
1214:
1208:
1205:
1201:. 2014-05-29.
1200:
1194:
1191:
1180:on 2015-09-04
1179:
1175:
1169:
1166:
1155:
1154:
1149:
1143:
1140:
1128:
1124:
1117:
1114:
1104:
1100:
1093:
1090:
1078:
1077:linux-hotplug
1074:
1067:
1064:
1059:
1052:
1049:
1038:on 2017-12-26
1037:
1033:
1027:
1024:
1012:
1006:
1003:
988:
982:
979:
968:
964:
958:
956:
954:
950:
939:on 2011-07-09
936:
931:
927:
923:
917:
914:
910:
909:
901:
898:
885:
881:
877:
870:
867:
854:
848:
845:
839:
837:
835:
831:
827:
819:
817:
815:
811:
805:
803:
799:
793:
791:
787:
783:
782:
777:
773:
770:In 2012, the
767:
764:
757:
755:
751:
747:
743:
739:
734:
728:
724:
716:
714:
679:
668:
648:
628:
617:
578:
577:
576:
570:
567:
564:
561:
558:
555:
554:
553:
551:
547:
542:
540:
536:
532:
528:
524:
520:
516:
513:
509:
504:
500:
497:
493:
485:
480:
473:
471:
465:
461:
450:
446:
436:
432:
429:
425:
422:
419:
418:
417:
411:
407:
403:
399:
398:
397:
395:
391:
383:
379:
371:
369:
367:
363:
361:
357:
353:
340:
333:
332:
331:
320:
313:
311:
309:
305:
300:
298:
294:
290:
286:
282:
278:
274:
266:
264:
262:
258:
253:
248:
244:
240:
235:
230:
220:
215:
211:
208:
205:
203:
199:
196:
193:
191:
187:
184:
181:
179:
175:
172:
169:
165:
158:
153:
143:
142:
140:
138:
134:
130:
114:
112:
108:
104:
90:
86:
83:
79:
76:
74:
70:
58:
55:November 2014
48:
42:
40:
35:
30:
26:
21:
20:
2528:
2509:
2495:
2225:Linux kernel
2143:Tomoyo Linux
1805:
1738:File systems
1393:
1345:SCO disputes
1306:Organization
1299:Linux kernel
1237:Linux portal
1207:
1193:
1182:. Retrieved
1178:the original
1168:
1157:. Retrieved
1151:
1142:
1131:. Retrieved
1127:linux-kernel
1126:
1116:
1106:, retrieved
1102:
1092:
1081:. Retrieved
1076:
1066:
1051:
1040:. Retrieved
1036:the original
1026:
1015:. Retrieved
1013:. 2011-06-28
1011:"HALRemoval"
1005:
994:. Retrieved
981:
970:. Retrieved
966:
941:. Retrieved
930:the original
916:
907:
900:
888:. Retrieved
884:the original
879:
869:
857:. Retrieved
847:
834:Dan Stekloff
823:
807:
795:
779:
772:Gentoo Linux
769:
762:
759:
735:
720:
711:
574:
543:
531:file browser
505:
501:
489:
457:
423:
415:
410:kernel space
382:device nodes
375:
364:
348:
317:
301:
297:device nodes
293:system calls
285:Linux kernel
270:
247:device nodes
239:Linux kernel
228:
227:
123:24 July 2024
73:Developer(s)
52:
36:
34:lead section
2230:Linux-libre
2123:Exec Shield
2002:Framebuffer
1705:Video4Linux
1562:System Call
1390:Developers
1330:Linus's law
830:Kay Sievers
750:Kay Sievers
748:criticized
433:User space
231:(userspace
195:Device node
82:Kay Sievers
2546:Categories
2317:Hypervisor
2279:PREEMPT_RT
2184:KernelCare
2172:Raw device
2102:SCHED_FIFO
2012:KMS driver
1929:Components
1784:securityfs
1670:Crypto API
1612:Linux-only
1498:System.map
1401:kernel.org
1360:menuconfig
1355:GNU GPL v2
1184:2017-12-25
1159:2017-12-25
1133:2014-10-28
1108:2013-05-22
1083:2013-05-22
1042:2017-12-25
1017:2011-09-13
996:2008-07-14
972:2016-08-21
943:2008-01-24
935:Plain text
840:References
406:user space
257:user space
167:Written in
137:Repository
2456:LYME-LYCE
2179:initramfs
2148:Linux PAM
2017:Netfilter
1887:libcgroup
1853:libhybris
1825:libraries
1773:hugetlbfs
1724:Userspace
1657:In-kernel
1642:readahead
1564:Interface
1513:initramfs
1470:SystemTap
1443:Debugging
1436:Technical
1375:Criticism
766:downhill.
723:Linux 2.5
687:⇀
680:−
669:−
662:↽
649:−
636:⇀
629:−
618:−
611:↽
596:⟶
590:⟶
519:processes
474:Operation
322:manager,
271:It is an
267:Rationale
39:summarize
2530:Category
2472:Adopters
2447:Server:
2428:Embedded
2404:Adoption
2297:PSXLinux
2220:Mainline
2213:Variants
2165:graphics
2118:AppArmor
2107:SCHED_RR
2027:nftables
1971:dm-crypt
1966:dm-cache
1912:liburing
1902:libevdev
1860:dietlibc
1749:configfs
1675:io uring
754:firmware
738:codebase
539:SD cards
372:Overview
261:firmware
152:/systemd
150:/systemd
2463:Devices
2423:Desktop
2384:coLinux
2379:MkLinux
2364:L4Linux
2292:ÎĽClinux
2274:Xenomai
2264:RTLinux
2204:Ksplice
2133:SELinux
2128:seccomp
2078:(EEVDF)
2022:Netlink
1951:Console
1946:cgroups
1897:libalsa
1823:Wrapper
1801:systemd
1764:debugfs
1733:Daemons
1695:New API
1637:inotify
1632:dnotify
1536:x32 ABI
1493:vmlinux
1485:Startup
1384:Support
1103:systemd
859:28 July
820:Authors
802:Upstart
742:systemd
717:History
696:Firefox
602:Manager
599:Network
496:netlink
484:systemd
464:hotplug
460:netlink
452:udevadm
428:systemd
424:libudev
421:Library
384:in the
360:daemons
304:hotplug
249:in the
213:Website
202:License
121: (
98:2003-11
96: (
2433:Gaming
2415:of use
2369:ELinOS
2360:Other
2354:OpenVZ
2344:Lguest
2288:-less
2199:kpatch
2194:kGraft
2160:802.11
1956:bcache
1907:libusb
1892:libdrm
1880:Newlib
1865:EGLIBC
1848:Bionic
1843:uClibc
1813:Kmscon
1787:sockfs
1780:procfs
1776:pipefs
1759:devpts
1685:kernfs
1627:splice
1582:select
1554:Kernel
1508:initrd
1503:dracut
1455:ftrace
1417:Users
1350:Linaro
1313:Kernel
1153:GitHub
967:GitHub
890:2 June
798:OpenRC
763:revert
727:uevent
587:Kernel
550:upower
492:daemon
435:daemon
356:setuid
314:Design
308:daemon
283:, the
277:kernel
243:devfsd
146:github
2413:Range
2252:SLURM
2189:kexec
2138:Smack
2072:(CFS)
2052:zswap
1993:(KSM)
1986:evdev
1941:BlueZ
1870:klibc
1838:glibc
1796:tmpfs
1791:sysfs
1754:devfs
1745:bpffs
1622:epoll
1617:futex
1597:close
1577:ioctl
1572:POSIX
1460:kdump
990:(PDF)
814:kdbus
781:eudev
523:GNOME
512:D-Bus
438:udevd
390:devfs
343:udevd
336:udevd
328:udevd
324:udevd
207:GPLv2
183:Linux
2451:LAMP
2441:LTSP
2269:RTAI
2047:zram
2042:SLUB
2037:perf
1981:EDAC
1875:musl
1806:udev
1769:FUSE
1665:ALSA
1602:sync
1592:read
1587:open
1546:APIs
1523:ABIs
1450:CRIU
1406:LKML
892:2024
861:2024
828:and
800:and
790:init
776:fork
731:/dev
593:udev
546:Xfce
537:and
486:183
442:/dev
386:/dev
378:Unix
252:/dev
234:/dev
229:udev
190:Type
148:.com
80:and
67:udev
2349:LXC
2327:Xen
2322:KVM
2286:MMU
2242:INK
2007:LVM
1997:LIO
1976:DRM
1710:IIO
1700:RCU
1680:DRM
1475:BPF
1340:Tux
788:or
653:Bus
525:or
515:IPC
508:HAL
366:HAL
275:'s
2548::
2116::
1150:.
1125:.
1101:,
1075:.
965:.
952:^
924:.
878:.
552:.
541:.
299:.
2061::
1735:,
1646:…
1606:…
1291:e
1284:t
1277:v
1187:.
1162:.
1136:.
1086:.
1060:.
1045:.
1020:.
999:.
975:.
946:.
937:)
933:(
894:.
863:.
645:D
444:.
171:C
125:)
100:)
57:)
53:(
43:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.