Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 | \documentstyle{article} % % Adopt somewhat reasonable margins, so it doesn't take a million % pages to print... :-) If you're actually putting this in print, you % may wish to change these. % % $Id: devices.tex,v 1.7 1998/02/18 04:07:45 hpa Exp $ % \oddsidemargin=0in \textwidth=6.5in \topmargin=0in \headheight=0.5in \headsep=0.25in \textheight=7.5in \footskip=0.75in \footheight=0.5in % \begin{document} \newcommand{\file}{\tt} % Style to use for a filename \newcommand{\url}{\it} % Style to use for an URL \newcommand{\hex}{\tt} % Style to use for a hex number \newcommand{\ud}{(Under development)} % Abbreviation \newcommand{\1}{\({}^1\)} \newcommand{\2}{\({}^2\)} \newcommand{\3}{\({}^3\)} \newcommand{\4}{\({}^4\)} \newlength{\dig} \settowidth{\dig}{0} % Get width of digits \newcommand{\num}[2]{\makebox[#1\dig][r]{#2}} \newcommand{\major}[4]{\num{3}{#1}#2 \> #3 \> #4 \\} \newcommand{\minor}[3]{\> \> \num{3}{#1} \> {\file #2} \> #3 \\} \newcommand{\minordots}{\> \> \> \dots \\} \newenvironment{devicelist}% {\begin{tabbing}% 000--000 \= blockxxx \= 000 \= {\file /dev/crambamboli} \= foo \kill}% {\end{tabbing}} \newcommand{\link}[4]{{\file #1} \> {\file #2} \> #3 \> #4 \\} \newcommand{\vlink}[4]{{\file #1} \> {\em #2 \/} \> #3 \> #4 \\} \newcommand{\node}[3]{{\file #1} \> #2 \> #3 \\} \newcommand{\tum}{$''$} \newenvironment{nodelist}% {\begin{tabbing}% {\file /dev/crambamboli} \= {\file /proc/self/fd/99} \= symbolicxxx \= foo \kill}% {\end{tabbing}} % % If you reformat this document, *please* make sure this information % gets included! This list changes frequently, so it is crucial to % know the date of the revision. % \title{{\bf Linux Allocated Devices}} \author{Maintained by H. Peter Anvin $<$hpa@zytor.com$>$} \date{Last revised: February 17, 1998} \maketitle % \noindent This list is the Linux Device List, the official registry of allocated device numbers and {\file /dev} directory nodes for the Linux operating system. The latest version of this list is included with the Linux kernel sources in \LaTeX\ and ASCII form. It is also available separately from {\url ftp://ftp.kernel.org/pub/linux/docs/device-list/}. In case of discrepancy between the text and \LaTeX\ versions, the \LaTeX\ version is authoritative. This document is included by reference into the Linux Filesystem Standard (FSSTND). The FSSTND is available from {\url ftp://tsx-11.mit.edu/pub/linux/docs/linux-standards/fsstnd/}. Allocations marked (68k/Amiga) apply to Linux/68k on the Amiga platform only. Allocations marked (68k/Atari) apply to Linux/68k on the Atari platform only. This document is in the public domain. The author requests, however, that semantically altered versions are not distributed without permission of the author, assuming the author can be contacted without an unreasonable effort. In particular, please don't sent patches for this list to Linus, at least not without contacting me first. I do not have any information about these devices beyond what appears on this list. Any such information requests will be deleted without reply. \section{How to submit a device entry} To have a major number allocated, or a minor number in situations where that applies (e.g. busmice), please contact me with the appropriate device information. Also, if you have additional information regarding any of the devices listed below, or if I have made a mistake, I would greatly appreciate a note. I do, however, make two requests about the nature of your report. This is necessary for me to be able to keep this list up to date and correct in a timely manner. First of all, {\em please\/} include the word ``device'' in the subject so your mail won't accidentally get buried! I receive hundreds of email messages a day, so mail sent with other subjects may very well get lost in the avalanche. Second, please include a description of the device {\em in the same format as this list\/}. The reason for this is that it is the only way I have found to ensure I have all the requisite information to publish your device and avoid conflicts. Your cooperation is appreciated. \section{Major numbers} \begin{devicelist} \major{ 0}{}{ }{Unnamed devices (e.g. non-device mounts)} \major{ 1}{}{char }{Memory devices} \major{ }{}{block}{RAM disk} \major{ 2}{}{char }{Pseudo-TTY masters} \major{ }{}{block}{Floppy disks} \major{ 3}{}{char }{Pseudo-TTY slaves} \major{ }{}{block}{First MFM, RLL and IDE hard disk/CD-ROM interface} \major{ 4}{}{char }{TTY devices} \major{ 5}{}{char }{Alternate TTY devices} \major{ 6}{}{char }{Parallel printer devices} \major{ 7}{}{char }{Virtual console access devices} \major{ }{}{block}{Loopback devices} \major{ 8}{}{block}{SCSI disk devices} \major{ 9}{}{char }{SCSI tape devices} \major{ }{}{block}{Metadisk (RAID) devices} \major{10}{}{char }{Non-serial mice, misc features} \major{11}{}{char }{Raw keyboard device} \major{ }{}{block}{SCSI CD-ROM devices} \major{12}{}{char }{QIC-02 tape} \major{ }{}{block}{MSCDEX CD-ROM callback support} \major{13}{}{char }{PC speaker} \major{ }{}{block}{8-bit MFM/RLL/IDE controller} \major{14}{}{char }{Sound card} \major{ }{}{block}{BIOS harddrive callback support} \major{15}{}{char }{Joystick} \major{ }{}{block}{Sony CDU-31A/CDU-33A CD-ROM} \major{16}{}{char }{Non-SCSI scanners} \major{ }{}{block}{GoldStar CD-ROM} \major{17}{}{char }{Chase serial card} \major{ }{}{block}{Optics Storage CD-ROM} \major{18}{}{char }{Chase serial card -- alternate devices} \major{ }{}{block}{Sanyo CD-ROM} \major{19}{}{char }{Cyclades serial card} \major{ }{}{block}{Double compressed disk} \major{20}{}{char }{Cyclades serial card -- alternate devices} \major{ }{}{block}{Hitachi CD-ROM} \major{21}{}{char }{Generic SCSI access} \major{22}{}{char }{Digiboard serial card} \major{ }{}{block}{Second IDE hard disk/CD-ROM interface} \major{23}{}{char }{Digiboard serial card -- alternate devices} \major{ }{}{block}{Mitsumi proprietary CD-ROM} \major{24}{}{char }{Stallion serial card} \major{ }{}{block}{Sony CDU-535 CD-ROM} \major{25}{}{char }{Stallion serial card -- alternate devices} \major{ }{}{block}{First Matsushita (Panasonic/SoundBlaster) CD-ROM} \major{26}{}{char }{Quanta WinVision frame grabber} \major{ }{}{block}{Second Matsushita (Panasonic/SoundBlaster) CD-ROM} \major{27}{}{char }{QIC-117 tape} \major{ }{}{block}{Third Matsushita (Panasonic/SoundBlaster) CD-ROM} \major{28}{}{char }{Stallion serial card -- card programming} \major{ }{}{char }{Atari SLM ACSI laser printer (68k/Atari)} \major{ }{}{block}{Fourth Matsushita (Panasonic/SoundBlaster) CD-ROM} \major{ }{}{block}{ACSI disk (68k/Atari)} \major{29}{}{char }{Universal frame buffer} \major{ }{}{block}{Aztech/Orchid/Okano/Wearnes CD-ROM} \major{30}{}{char }{iBCS-2} \major{ }{}{block}{Philips LMS-205 CD-ROM} \major{31}{}{char }{MPU-401 MIDI} \major{ }{}{block}{ROM/flash memory card} \major{32}{}{char }{Specialix serial card} \major{ }{}{block}{Philips LMS-206 CD-ROM} \major{33}{}{char }{Specialix serial card -- alternate devices} \major{ }{}{block}{Third IDE hard disk/CD-ROM interface} \major{34}{}{char }{Z8530 HDLC driver} \major{ }{}{block}{Fourth IDE hard disk/CD-ROM interface} \major{35}{}{char }{tclmidi MIDI driver} \major{36}{}{char }{Netlink support} \major{ }{}{block}{MCA ESDI hard disk} \major{37}{}{char }{IDE tape} \major{ }{}{block}{Zorro II ramdisk} \major{38}{}{char }{Myricom PCI Myrinet board} \major{ }{}{block}{Reserved for Linux/AP+} \major{39}{}{char }{ML-16P experimental I/O board} \major{ }{}{block}{Reserved for Linux/AP+} \major{40}{}{char }{Matrox Meteor frame grabber} \major{ }{}{block}{Syquest EZ135 parallel port removable drive} \major{41}{}{char }{Yet Another Micro Monitor} \major{ }{}{block}{MicroSolutions BackPack parallel port CD-ROM} \major{42}{}{}{Demo/sample use} \major{43}{}{char }{isdn4linux virtual modem} \major{ }{}{block}{Network block devices} \major{44}{}{char }{isdn4linux virtual modem -- alternate devices} \major{ }{}{block}{Flash Translation Layer (FTL) filesystems} \major{45}{}{char }{isdn4linux ISDN BRI driver} \major{ }{}{block}{Reserved for parallel port IDE disk} \major{46}{}{char }{Comtrol Rocketport serial card} \major{ }{}{block}{Reserved for parallel port ATAPI CD-ROM} \major{47}{}{char }{Comtrol Rocketport serial card -- alternate devices} \major{ }{}{block}{Reserved for parallel port ATAPI disk} \major{48}{}{char }{SDL RISCom serial card} \major{48}{--55}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \major{49}{}{char }{SDL RISCom serial card -- alternate devices} \major{50}{}{char }{Reserved for GLINT} \major{51}{}{char }{Baycom radio modem} \major{52}{}{char }{Spellcaster DataComm/BRI ISDN card} \major{53}{}{char }{BDM interface for remote debugging MC683xx microcontrollers} \major{54}{}{char }{Electrocardiognosis Holter serial card} \major{55}{}{char }{DSP56001 digital signal processor} \major{56}{}{char }{Apple Desktop Bus} \major{57}{}{char }{Hayes ESP serial card} \major{58}{}{char }{Hayes ESP serial card -- alternate devices} \major{59}{}{char }{sf firewall package} \major{60}{--63}{}{Local/experimental use} \major{64}{}{char }{ENskip kernel encryption package} \major{65}{}{char }{Sundance ``plink'' Transputer boards} \major{66}{}{char }{YARC PowerPC PCI coprocessor card} \major{67}{}{char }{Coda network filesystem} \major{68}{}{char }{CAPI 2.0 interface} \major{69}{}{char }{MA16 numeric accelerator card} \major{70}{}{char }{SpellCaster Protocol Services Interface} \major{71}{}{char }{Computone IntelliPort II serial card} \major{72}{}{char }{Computone IntelliPort II serial card -- alternate devices} \major{73}{}{char }{Computone IntelliPort II serial card -- control devices} \major{74}{}{char }{SCI bridge} \major{75}{}{char }{Specialix IO8+ serial card} \major{76}{}{char }{Specialix IO8+ serial card -- alternate devices} \major{77}{}{char }{ComScire Quantum Noise Generator} \major{78}{}{char }{PAM Software's multimodem boards} \major{79}{}{char }{PAM Software's multimodem boards -- alternate devices} \major{80}{}{char }{Photometrics AT200 CCD camera} \major{81}{}{char }{Brooktree Bt848 frame grabbers} \major{82}{}{char }{WiNRADiO communications receiver card} \major{83}{}{char }{Teletext/videotext interfaces} \major{84}{}{char }{Ikon 1011[57] Versatec Greensheet Interface} \major{85}{}{char }{Linux/SGI shared memory input queue} \major{86}{}{char }{SCSI media changer} \major{87}{}{char }{Sony Control-A1 stereo control bus} \major{88}{}{char }{COMX synchronous serial card} \major{89}{}{char }{I$^2$C bus interface} \major{90}{}{char }{Memory Technology Device (RAM, ROM, Flash)} \major{91}{}{char }{CAN-Bus devices} \major{92}{}{char }{Reserved for ith Kommunikationstechnik MIC ISDN card} \major{93}{}{char }{IBM Smart Capture Card frame grabber} \major{94}{}{char }{miroVIDEO DC10/30 capture/playback device} \major{95}{}{char }{IP Filter} \major{96}{}{char }{Parallel port ATAPI tape} \major{97}{}{char }{Parallel port generic ATAPI interface} \major{98}{}{char }{Control and Measurement Device (comedi)} \major{99}{--119}{}{Unallocated} \major{120}{--127}{}{Local/experimental use} \major{128}{--239}{}{Unallocated} \major{240}{--254}{}{Local/experimental use} \major{255}{}{}{Reserved} \end{devicelist} \section{Minor numbers} \begin{devicelist} \major{0}{}{}{Unnamed devices (e.g. non-device mounts)} \minor{0}{}{reserved as null device number} \end{devicelist} \begin{devicelist} \major{1}{}{char}{Memory devices} \minor{1}{/dev/mem}{Physical memory access} \minor{2}{/dev/kmem}{Kernel virtual memory access} \minor{3}{/dev/null}{Null device} \minor{4}{/dev/port}{I/O port access} \minor{5}{/dev/zero}{Null byte source} \minor{6}{/dev/core}{OBSOLETE -- should be a link to {\file /proc/kcore}} \minor{7}{/dev/full}{Returns ENOSPC on write} \minor{8}{/dev/random}{Nondeterministic random number generator} \minor{9}{/dev/urandom}{Less secure, but faster random number generator} \\ \major{}{}{block}{RAM disk} \minor{0}{/dev/ram0}{First RAM disk} \minordots \minor{7}{/dev/ram7}{Eighth RAM disk} \minor{250}{/dev/initrd}{Initial RAM disk} \end{devicelist} \noindent Earlier kernels had {\file /dev/ramdisk} (1, 1) here. {\file /dev/initrd} refers to a RAM disk which was preloaded by the boot loader. \begin{devicelist} \major{2}{}{char}{Pseudo-TTY masters} \minor{0}{/dev/ptyp0}{First PTY master} \minor{1}{/dev/ptyp1}{Second PTY master} \minordots \minor{255}{/dev/ptyef}{256th PTY master} \end{devicelist} \noindent Pseudo-TTY's are named as follows: \begin{itemize} \item Masters are {\file pty}, slaves are {\file tty}; \item the fourth letter is one of {\file pqrstuvwxyzabcde} indicating the 1st through 16th series of 16 pseudo-ttys each, and \item the fifth letter is one of {\file 0123456789abcdef} indicating the position within the series. \end{itemize} \noindent In the future, it is likely that the PTY master multiplex ({\file /dev/ptmx}) device will be used to acquire a PTY on demand. If so, the actual PTY masters will be unnamed devices. \begin{devicelist} \major{}{}{block}{Floppy disks} \minor{0}{/dev/fd0}{Controller 1, drive 1 autodetect} \minor{1}{/dev/fd1}{Controller 1, drive 2 autodetect} \minor{2}{/dev/fd2}{Controller 1, drive 3 autodetect} \minor{3}{/dev/fd3}{Controller 1, drive 4 autodetect} \minor{128}{/dev/fd4}{Controller 2, drive 1 autodetect} \minor{129}{/dev/fd5}{Controller 2, drive 2 autodetect} \minor{130}{/dev/fd6}{Controller 2, drive 3 autodetect} \minor{131}{/dev/fd7}{Controller 2, drive 4 autodetect} \\ \major{}{}{}{To specify format, add to the autodetect device number} \minor{ 0}{/dev/fd?}{Autodetect format} \minor{}{}{} \minor{ 4}{/dev/fd?d360}{5.25\tum\ \num{4}{360}K in a \num{4}{360}K drive\1} \minor{ 20}{/dev/fd?h360}{5.25\tum\ \num{4}{360}K in a 1200K drive\1} \minor{ 48}{/dev/fd?h410}{5.25\tum\ \num{4}{410}K in a 1200K drive} \minor{ 64}{/dev/fd?h420}{5.25\tum\ \num{4}{420}K in a 1200K drive} \minor{ 24}{/dev/fd?h720}{5.25\tum\ \num{4}{720}K in a 1200K drive} \minor{ 80}{/dev/fd?h880}{5.25\tum\ \num{4}{880}K in a 1200K drive\1} \minor{ 8}{/dev/fd?h1200}{5.25\tum\ 1200K in a 1200K drive\1} \minor{ 40}{/dev/fd?h1440}{5.25\tum\ 1440K in a 1200K drive\1} \minor{ 56}{/dev/fd?h1476}{5.25\tum\ 1476K in a 1200K drive} \minor{ 72}{/dev/fd?h1494}{5.25\tum\ 1494K in a 1200K drive} \minor{ 92}{/dev/fd?h1600}{5.25\tum\ 1600K in a 1200K drive\1} \minor{}{}{} \minor{ 12}{/dev/fd?u360}{3.5\tum\ \num{4}{360}K Double Density\2} \minor{ 16}{/dev/fd?u720}{3.5\tum\ \num{4}{720}K Double Density\1} \minor{120}{/dev/fd?u800}{3.5\tum\ \num{4}{800}K Double Density\2} \minor{ 52}{/dev/fd?u820}{3.5\tum\ \num{4}{820}K Double Density} \minor{ 68}{/dev/fd?u830}{3.5\tum\ \num{4}{830}K Double Density} \minor{ 84}{/dev/fd?u1040}{3.5\tum\ 1040K Double Density\1} \minor{ 88}{/dev/fd?u1120}{3.5\tum\ 1120K Double Density\1} \minor{ 28}{/dev/fd?u1440}{3.5\tum\ 1440K High Density\1} \minor{124}{/dev/fd?u1600}{3.5\tum\ 1600K High Density\1} \minor{ 44}{/dev/fd?u1680}{3.5\tum\ 1680K High Density\3} \minor{ 60}{/dev/fd?u1722}{3.5\tum\ 1722K High Density} \minor{ 76}{/dev/fd?u1743}{3.5\tum\ 1743K High Density} \minor{ 96}{/dev/fd?u1760}{3.5\tum\ 1760K High Density} \minor{116}{/dev/fd?u1840}{3.5\tum\ 1840K High Density\3} \minor{100}{/dev/fd?u1920}{3.5\tum\ 1920K High Density\1} \minor{ 32}{/dev/fd?u2880}{3.5\tum\ 2880K Extra Density\1} \minor{104}{/dev/fd?u3200}{3.5\tum\ 3200K Extra Density} \minor{108}{/dev/fd?u3520}{3.5\tum\ 3520K Extra Density} \minor{112}{/dev/fd?u3840}{3.5\tum\ 3840K Extra Density\1} \minor{}{}{} \minor{36}{/dev/fd?CompaQ}{Compaq 2880K drive; probably obsolete} \\ \major{}{}{}{\1 Autodetectable format} \major{}{}{}{\2 Autodetectable format in a Double Density (720K) drive only} \major{}{}{}{\3 Autodetectable format in a High Density (1440K) drive only} \end{devicelist} NOTE: The letter in the device name ({\file d}, {\file q}, {\file h} or {\file u}) signifies the type of drive supported: 5.25\tum\ Double Density ({\file d}), 5.25\tum\ Quad Density ({\file q}), 5.25\tum\ High Density ({\file h}) or 3.5\tum\ (any type, {\file u}). The capital letters {\file D}, {\file H}, or {\file E} for the 3.5\tum\ models have been deprecated, since the drive type is insignificant for these devices. \begin{devicelist} \major{3}{}{char}{Pseudo-TTY slaves} \minor{0}{/dev/ttyp0}{First PTY slave} \minor{1}{/dev/ttyp1}{Second PTY slave} \minordots \minor{255}{/dev/ttyef}{256th PTY slave} \end{devicelist} \noindent In the future, Linux may adopt the Unix98 naming scheme {\file /dev/pts/0}, {\file /dev/pts/1}, ... \begin{devicelist} \major{}{}{block}{First MFM, RLL and IDE hard disk/CD-ROM interface} \minor{0}{/dev/hda}{Master: whole disk (or CD-ROM)} \minor{64}{/dev/hdb}{Slave: whole disk (or CD-ROM)} \\ \major{}{}{}{For partitions, add to the whole disk device number} \minor{0}{/dev/hd?}{Whole disk} \minor{1}{/dev/hd?1}{First partition} \minor{2}{/dev/hd?2}{Second partition} \minordots \minor{63}{/dev/hd?63}{63rd partition} \end{devicelist} \noindent For MS-DOS style partition tables (typically used by Linux/i386), partitions 1-4 are the primary partitions, partitions 5 and up are logical partitions. For other partitioning schemes, the meaning of the numbers vary. \begin{devicelist} \major{ 4}{}{char }{TTY devices} \minor{0}{/dev/tty0}{Current virtual console} \minor{1}{/dev/tty1}{First virtual console} \minordots \minor{63}{/dev/tty63}{63rd virtual console} \minor{64}{/dev/ttyS0}{First serial port} \minordots \minor{127}{/dev/ttyS63}{64th serial port} \minor{128}{/dev/ptyp0}{First old pseudo-tty master} \minordots \minor{191}{/dev/ptysf}{64th old pseudo-tty master} \minor{192}{/dev/ttyp0}{First old pseudo-tty slave} \minordots \minor{255}{/dev/ttysf}{64th old pseudo-tty slave} \end{devicelist} \noindent For compatibility with previous versions of Linux, the first 64 PTYs are replicated under this device number. This use is deprecated with the release of Linux 2.0 and may be removed in a future version of Linux. To ensure proper operation, do not mix old and new PTY devices. \begin{devicelist} \major{ 5}{}{char }{Alternate TTY devices} \minor{0}{/dev/tty}{Current TTY device} \minor{1}{/dev/console}{System console} \minor{2}{/dev/ptmx}{PTY master multiplex} \minor{64}{/dev/cua0}{Callout device corresponding to {\file ttyS0}} \minordots \minor{127}{/dev/cua63}{Callout device corresponding to {\file ttyS63}} \end{devicelist} \noindent (5,1) is {\file /dev/console} starting with Linux 2.1.71. See the section on terminal devices for more information on {\file /dev/console}. \begin{devicelist} \major{ 6}{}{char }{Parallel printer devices} \minor{0}{/dev/lp0}{First parallel printer ({\hex 0x3bc})} \minor{1}{/dev/lp1}{Second parallel printer ({\hex 0x378})} \minor{2}{/dev/lp2}{Third parallel printer ({\hex 0x278})} \end{devicelist} \noindent Not all computers have the {\hex 0x3bc} parallel port, hence the "first" printer may be either {\file /dev/lp0} or {\file /dev/lp1}. \begin{devicelist} \major{ 7}{}{char }{Virtual console access devices} \minor{0}{/dev/vcs}{Current vc text access} \minor{1}{/dev/vcs1}{tty1 text access} \minordots \minor{63}{/dev/vcs63}{tty63 text access} \minor{128}{/dev/vcsa}{Current vc text/attribute access} \minor{129}{/dev/vcsa1}{tty1 text/attribute access} \minordots \minor{191}{/dev/vcsa63}{tty63 text/attribute access} \end{devicelist} \noindent NOTE: These devices permit both read and write access. \begin{devicelist} \major{ }{}{block}{Loopback devices} \minor{0}{/dev/loop0}{First loopback device} \minor{1}{/dev/loop1}{Second loopback device} \minordots \end{devicelist} \noindent The loopback devices are used to mount filesystems not associated with block devices. The binding to the loopback devices is handled by {\bf mount}(8) or {\bf losetup}(8). \begin{devicelist} \major{ 8}{}{block}{SCSI disk devices} \minor{0}{/dev/sda}{First SCSI disk whole disk} \minor{16}{/dev/sdb}{Second SCSI disk whole disk} \minor{32}{/dev/sdc}{Third SCSI disk whole disk} \minordots \minor{240}{/dev/sdp}{Sixteenth SCSI disk whole disk} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3) except that the partition limit is 15 rather than 63 per disk. \begin{devicelist} \major{ 9}{}{char }{SCSI tape devices} \minor{0}{/dev/st0}{First SCSI tape, mode 0} \minor{1}{/dev/st1}{Second SCSI tape, mode 0} \minordots \minor{32}{/dev/st0l}{First SCSI tape, mode 1} \minor{33}{/dev/st1l}{Second SCSI tape, mode 1} \minordots \minor{64}{/dev/st0m}{First SCSI tape, mode 2} \minor{65}{/dev/st1m}{Second SCSI tape, mode 2} \minordots \minor{96}{/dev/st0a}{First SCSI tape, mode 3} \minor{97}{/dev/st1a}{Second SCSI tape, mode 4} \minordots \minor{128}{/dev/nst0}{First SCSI tape, mode 0, no rewind} \minor{129}{/dev/nst1}{Second SCSI tape, mode 0, no rewind} \minordots \minor{160}{/dev/nst0l}{First SCSI tape, mode 1, no rewind} \minor{161}{/dev/nst1l}{Second SCSI tape, mode 1, no rewind} \minordots \minor{192}{/dev/nst0m}{First SCSI tape, mode 2, no rewind} \minor{193}{/dev/nst1m}{Second SCSI tape, mode 2, no rewind} \minordots \minor{224}{/dev/nst0a}{First SCSI tape, mode 3, no rewind} \minor{225}{/dev/nst1a}{Second SCSI tape, mode 3, no rewind} \minordots \end{devicelist} \noindent ``No rewind'' refers to the omission of the default automatic rewind on device close. The {\file MTREW} or {\file MTOFFL} ioctl()s can be used to rewind the tape regardless of the device used to access it. \begin{devicelist} \major{ }{}{block}{Metadisk (RAID) devices} \minor{0}{/dev/md0}{First metadisk group} \minor{1}{/dev/md1}{Second metadisk group} \minordots \end{devicelist} \noindent The metadisk driver is used to span a filesystem across multiple physical disks. \begin{devicelist} \major{10}{}{char }{Non-serial mice, misc features} \minor{0}{/dev/logibm}{Logitech bus mouse} \minor{1}{/dev/psaux}{PS/2-style mouse port} \minor{2}{/dev/inportbm}{Microsoft Inport bus mouse} \minor{3}{/dev/atibm}{ATI XL bus mouse} \minor{4}{/dev/jbm}{J-mouse} \minor{4}{/dev/amigamouse}{Amiga mouse (68k/Amiga)} \minor{5}{/dev/atarimouse}{Atari mouse} \minor{6}{/dev/sunmouse}{Sun mouse} \minor{7}{/dev/amigamouse1}{Second Amiga mouse} \minor{8}{/dev/smouse}{Simple serial mouse driver} \minor{9}{/dev/pc110pad}{IBM PC-110 digitizer pad} \minor{128}{/dev/beep}{Fancy beep device} \minor{129}{/dev/modreq}{Kernel module load request} \minor{130}{/dev/watchdog}{Watchdog timer port} \minor{131}{/dev/temperature}{Machine internal temperature} \minor{132}{/dev/hwtrap}{Hardware fault trap} \minor{133}{/dev/exttrp}{External device trap} \minor{134}{/dev/apm\_bios}{Advanced Power Management BIOS} \minor{135}{/dev/rtc}{Real Time Clock} \minor{136}{/dev/qcam0}{QuickCam on {\file lp0}} \minor{137}{/dev/qcam1}{QuickCam on {\file lp1}} \minor{138}{/dev/qcam2}{QuickCam on {\file lp2}} \minor{139}{/dev/openprom}{SPARC OpenBoot PROM} \minor{140}{/dev/relay8}{Berkshire Products Octal relay card} \minor{141}{/dev/relay16}{Berkshire Products ISO-16 relay card} \minor{142}{/dev/msr}{x86 model specific registers} \minor{143}{/dev/pciconf}{PCI configuration space} \minor{144}{/dev/nvram}{Non-volatile configuration RAM} \minor{145}{/dev/hfmodem}{Soundcard shortwave modem control} \minor{146}{/dev/graphics}{Linux/SGI graphics device} \minor{147}{/dev/opengl}{Linux/SGI OpenGL pipe} \minor{148}{/dev/gfx}{Linux/SGI graphics effects device} \minor{149}{/dev/input/mouse}{Linux/SGI Irix emulation mouse} \minor{150}{/dev/input/keyboard}{Linux/SGI Irix emulation keyboard} \minor{151}{/dev/led}{Front panel LEDs} \minor{152}{/dev/radio}{Radio card (type?)} \end{devicelist} \begin{devicelist} \major{11}{}{char }{Raw keyboard device} \minor{0}{/dev/kbd}{Raw keyboard device} \end{devicelist} \noindent The raw keyboard device is used on Linux/SPARC only. \begin{devicelist} \major{ }{}{block}{SCSI CD-ROM devices} \minor{0}{/dev/sr0}{First SCSI CD-ROM} \minor{1}{/dev/sr1}{Second SCSI CD-ROM} \minordots \end{devicelist} \noindent The prefix {\file /dev/scd} instead of {\file /dev/sr} has been used as well, and might make more sense. \begin{devicelist} \major{12}{}{char }{QIC-02 tape} \minor{2}{/dev/ntpqic11}{QIC-11, no rewind-on-close} \minor{3}{/dev/tpqic11}{QIC-11, rewind-on-close} \minor{4}{/dev/ntpqic24}{QIC-24, no rewind-on-close} \minor{5}{/dev/tpqic24}{QIC-24, rewind-on-close} \minor{6}{/dev/ntpqic120}{QIC-120, no rewind-on-close} \minor{7}{/dev/tpqic120}{QIC-120, rewind-on-close} \minor{8}{/dev/ntpqic150}{QIC-150, no rewind-on-close} \minor{9}{/dev/tpqic150}{QIC-150, rewind-on-close} \end{devicelist} \noindent The device names specified are proposed -- if there are ``standard'' names for these devices, please let me know. \begin{devicelist} \major{ }{}{block}{MSCDEX CD-ROM callback support} \minor{0}{/dev/dos\_cd0}{First MSCDEX CD-ROM} \minor{1}{/dev/dos\_cd1}{Second MSCDEX CD-ROM} \minordots \end{devicelist} \begin{devicelist} \major{13}{}{char }{PC speaker} \minor{0}{/dev/pcmixer}{Emulates {\file /dev/mixer}} \minor{3}{/dev/pcsp}{Emulates {\file /dev/dsp} (8-bit)} \minor{4}{/dev/pcaudio}{Emulates {\file /dev/audio}} \minor{5}{/dev/pcsp16}{Emulates {\file /dev/dsp} (16-bit)} \\ \major{ }{}{block}{8-bit MFM/RLL/IDE controller} \minor{0}{/dev/xda}{First XT disk whole disk} \minor{64}{/dev/xdb}{Second XT disk whole disk} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3). \begin{devicelist} \major{14}{}{char }{Sound card} \minor{0}{/dev/mixer}{Mixer control} \minor{1}{/dev/sequencer}{Audio sequencer} \minor{2}{/dev/midi00}{First MIDI port} \minor{3}{/dev/dsp}{Digital audio} \minor{4}{/dev/audio}{Sun-compatible digital audio} \minor{6}{/dev/sndstat}{Sound card status information} \minor{8}{/dev/sequencer2}{Sequencer -- alternate device} \minor{16}{/dev/mixer1}{Second soundcard mixer control} \minor{17}{/dev/patmgr0}{Sequencer patch manager} \minor{18}{/dev/midi01}{Second MIDI port} \minor{19}{/dev/dsp1}{Second soundcard digital audio} \minor{20}{/dev/audio1}{Second soundcard Sun digital audio} \minor{33}{/dev/patmgr1}{Sequencer patch manager} \minor{34}{/dev/midi02}{Third MIDI port} \minor{50}{/dev/midi03}{Fourth MIDI port} \\ \major{ }{}{block}{BIOS harddrive callback support} \minor{0}{/dev/dos\_hda}{First BIOS harddrive whole disk} \minor{64}{/dev/dos\_hdb}{Second BIOS harddrive whole disk} \minor{128}{/dev/dos\_hdc}{Third BIOS harddrive whole disk} \minor{192}{/dev/dos\_hdd}{Fourth BIOS harddrive whole disk} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3). \begin{devicelist} \major{15}{}{char }{Joystick} \minor{0}{/dev/js0}{First analog joystick} \minor{1}{/dev/js1}{Second analog joystick} \minordots \minor{128}{/dev/djs0}{First digital joystick} \minor{129}{/dev/djs1}{Second digital joystick} \minordots \\ \major{ }{}{block}{Sony CDU-31A/CDU-33A CD-ROM} \minor{0}{/dev/sonycd}{Sony CDU-31A CD-ROM} \end{devicelist} \begin{devicelist} \major{16}{}{char }{Non-SCSI scanners} \minor{0}{/dev/gs4500}{Genius 4500 handheld scanner} \\ \major{ }{}{block}{GoldStar CD-ROM} \minor{0}{/dev/gscd}{GoldStar CD-ROM} \end{devicelist} \begin{devicelist} \major{17}{}{char }{Chase serial card} \minor{0}{/dev/ttyH0}{First Chase port} \minor{1}{/dev/ttyH1}{Second Chase port} \minordots \\ \major{ }{}{block}{Optics Storage CD-ROM} \minor{0}{/dev/optcd}{Optics Storage CD-ROM} \end{devicelist} \begin{devicelist} \major{18}{}{char }{Chase serial card -- alternate devices} \minor{0}{/dev/cuh0}{Callout device corresponding to {\file ttyH0}} \minor{1}{/dev/cuh1}{Callout device corresponding to {\file ttyH1}} \minordots \\ \major{ }{}{block}{Sanyo CD-ROM} \minor{0}{/dev/sjcd}{Sanyo CD-ROM} \end{devicelist} \begin{devicelist} \major{19}{}{char }{Cyclades serial card} \minor{0}{/dev/ttyC0}{First Cyclades port} \minordots \minor{31}{/dev/ttyC31}{32nd Cyclades port} \\ \major{ }{}{block}{``Double'' compressed disk} \minor{0}{/dev/double0}{First compressed disk} \minordots \minor{7}{/dev/double7}{Eighth compressed disk} \minor{128}{/dev/cdouble0}{Mirror of first compressed disk} \minordots \minor{135}{/dev/cdouble7}{Mirror of eighth compressed disk} \end{devicelist} \noindent See the Double documentation for an explanation of the ``mirror'' devices. \begin{devicelist} \major{20}{}{char }{Cyclades serial card -- alternate devices} \minor{0}{/dev/cub0}{Callout device corresponding to {\file ttyC0}} \minordots \minor{31}{/dev/cub31}{Callout device corresponding to {\file ttyC31}} \\ \major{ }{}{block}{Hitachi CD-ROM} \minor{0}{/dev/hitcd}{Hitachi CD-ROM} \end{devicelist} \begin{devicelist} \major{21}{}{char }{Generic SCSI access} \minor{0}{/dev/sg0}{First generic SCSI device} \minor{1}{/dev/sg1}{Second generic SCSI device} \minordots \end{devicelist} \noindent Most distributions name these {\file /dev/sga}, {\file /dev/sgb}... This sets an unneccesary limit of 26 SCSI devices in the system, and is counter to standard Linux device-naming practice. \begin{devicelist} \major{22}{}{char }{Digiboard serial card} \minor{0}{/dev/ttyD0}{First Digiboard port} \minor{1}{/dev/ttyD1}{Second Digiboard port} \minordots \major{ }{}{block}{Second IDE hard disk/CD-ROM interface} \minor{0}{/dev/hdc}{Master: whole disk (or CD-ROM)} \minor{64}{/dev/hdd}{Slave: whole disk (or CD-ROM)} \end{devicelist} \noindent Partitions are handled the same way as for the first interface (see major number 3). \begin{devicelist} \major{23}{}{char }{Digiboard serial card -- alternate devices} \minor{0}{/dev/cud0}{Callout device corresponding to {\file ttyD0}} \minor{1}{/dev/cud1}{Callout device corresponding to {\file ttyD1}} \minordots \major{ }{}{block}{Mitsumi proprietary CD-ROM} \minor{0}{/dev/mcd}{Mitsumi CD-ROM} \end{devicelist} \begin{devicelist}\ \major{24}{}{char }{Stallion serial card} \minor{0}{/dev/ttyE0}{Stallion port 0 board 0} \minor{1}{/dev/ttyE1}{Stallion port 1 board 0} \minordots \minor{64}{/dev/ttyE64}{Stallion port 0 board 1} \minor{65}{/dev/ttyE65}{Stallion port 1 board 1} \minordots \minor{128}{/dev/ttyE128}{Stallion port 0 board 2} \minor{129}{/dev/ttyE129}{Stallion port 1 board 2} \minordots \minor{192}{/dev/ttyE192}{Stallion port 0 board 3} \minor{193}{/dev/ttyE193}{Stallion port 1 board 3} \minordots \\ \major{ }{}{block}{Sony CDU-535 CD-ROM} \minor{0}{/dev/cdu535}{Sony CDU-535 CD-ROM} \end{devicelist} \begin{devicelist} \major{25}{}{char }{Stallion serial card -- alternate devices} \minor{0}{/dev/cue0}{Callout device corresponding to {\file ttyE0}} \minor{1}{/dev/cue1}{Callout device corresponding to {\file ttyE1}} \minordots \minor{64}{/dev/cue64}{Callout device corresponding to {\file ttyE64}} \minor{65}{/dev/cue65}{Callout device corresponding to {\file ttyE65}} \minordots \minor{128}{/dev/cue128}{Callout device corresponding to {\file ttyE128}} \minor{129}{/dev/cue129}{Callout device corresponding to {\file ttyE129}} \minordots \minor{192}{/dev/cue192}{Callout device corresponding to {\file ttyE192}} \minor{193}{/dev/cue193}{Callout device corresponding to {\file ttyE193}} \minordots \\ \major{ }{}{block}{First Matsushita (Panasonic/SoundBlaster) CD-ROM} \minor{0}{/dev/sbpcd0}{Panasonic CD-ROM controller 0 unit 0} \minor{1}{/dev/sbpcd1}{Panasonic CD-ROM controller 0 unit 1} \minor{2}{/dev/sbpcd2}{Panasonic CD-ROM controller 0 unit 2} \minor{3}{/dev/sbpcd3}{Panasonic CD-ROM controller 0 unit 3} \end{devicelist} \begin{devicelist} \major{26}{}{char }{Quanta WinVision frame grabber} \minor{0}{/dev/wvisfgrab}{Quanta WinVision frame grabber} \\ \major{ }{}{block}{Second Matsushita (Panasonic/SoundBlaster) CD-ROM} \minor{0}{/dev/sbpcd4}{Panasonic CD-ROM controller 1 unit 0} \minor{1}{/dev/sbpcd5}{Panasonic CD-ROM controller 1 unit 1} \minor{2}{/dev/sbpcd6}{Panasonic CD-ROM controller 1 unit 2} \minor{3}{/dev/sbpcd7}{Panasonic CD-ROM controller 1 unit 3} \end{devicelist} \begin{devicelist} \major{27}{}{char }{QIC-117 tape} \minor{0}{/dev/qft0}{Unit 0, rewind-on-close} \minor{1}{/dev/qft1}{Unit 1, rewind-on-close} \minor{2}{/dev/qft2}{Unit 2, rewind-on-close} \minor{3}{/dev/qft3}{Unit 3, rewind-on-close} \minor{4}{/dev/nqft0}{Unit 0, no rewind-on-close} \minor{5}{/dev/nqft1}{Unit 1, no rewind-on-close} \minor{6}{/dev/nqft2}{Unit 2, no rewind-on-close} \minor{7}{/dev/nqft3}{Unit 3, no rewind-on-close} \minor{16}{/dev/zqft0}{Unit 0, rewind-on-close, compression} \minor{17}{/dev/zqft1}{Unit 1, rewind-on-close, compression} \minor{18}{/dev/zqft2}{Unit 2, rewind-on-close, compression} \minor{19}{/dev/zqft3}{Unit 3, rewind-on-close, compression} \minor{20}{/dev/nzqft0}{Unit 0, no rewind-on-close, compression} \minor{21}{/dev/nzqft1}{Unit 1, no rewind-on-close, compression} \minor{22}{/dev/nzqft2}{Unit 2, no rewind-on-close, compression} \minor{23}{/dev/nzqft3}{Unit 3, no rewind-on-close, compression} \minor{32}{/dev/rawqft0}{Unit 0, rewind-on-close, no file marks} \minor{33}{/dev/rawqft1}{Unit 1, rewind-on-close, no file marks} \minor{34}{/dev/rawqft2}{Unit 2, rewind-on-close, no file marks} \minor{35}{/dev/rawqft3}{Unit 3, rewind-on-close, no file marks} \minor{36}{/dev/nrawqft0}{Unit 0, no rewind-on-close, no file marks} \minor{37}{/dev/nrawqft1}{Unit 1, no rewind-on-close, no file marks} \minor{38}{/dev/nrawqft2}{Unit 2, no rewind-on-close, no file marks} \minor{39}{/dev/nrawqft3}{Unit 3, no rewind-on-close, no file marks} \\ \major{ }{}{block}{Third Matsushita (Panasonic/SoundBlaster) CD-ROM} \minor{0}{/dev/sbpcd8}{Panasonic CD-ROM controller 2 unit 0} \minor{1}{/dev/sbpcd9}{Panasonic CD-ROM controller 2 unit 1} \minor{2}{/dev/sbpcd10}{Panasonic CD-ROM controller 2 unit 2} \minor{3}{/dev/sbpcd11}{Panasonic CD-ROM controller 2 unit 3} \end{devicelist} \begin{devicelist} \major{28}{}{char }{Stallion serial card -- card programming} \minor{0}{/dev/staliomem0}{First Stallion I/O card memory} \minor{1}{/dev/staliomem1}{Second Stallion I/O card memory} \minor{2}{/dev/staliomem2}{Third Stallion I/O card memory} \minor{3}{/dev/staliomem3}{Fourth Stallion I/O card memory} \\ \major{ }{}{char }{Atari SLM ACSI laser printer (68k/Atari)} \minor{0}{/dev/slm0}{First SLM laser printer} \minor{1}{/dev/slm1}{Second SLM laser printer} \minordots \\ \major{ }{}{block}{Fourth Matsushita (Panasonic/SoundBlaster) CD-ROM} \minor{0}{/dev/sbpcd12}{Panasonic CD-ROM controller 3 unit 0} \minor{1}{/dev/sbpcd13}{Panasonic CD-ROM controller 3 unit 1} \minor{2}{/dev/sbpcd14}{Panasonic CD-ROM controller 3 unit 2} \minor{3}{/dev/sbpcd15}{Panasonic CD-ROM controller 3 unit 3} \\ \major{ }{}{block}{ACSI disk/CD-ROM (68k/Atari)} \minor{0}{/dev/ada}{First ACSI disk whole disk} \minor{16}{/dev/adb}{Second ACSI disk whole disk} \minor{32}{/dev/adc}{Third ACSI disk whole disk} \minordots \minor{240}{/dev/adp}{Sixteenth ACSI disk whole disk} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3) except that the partition limit is 15 rather than 63 per disk (same as SCSI.) \begin{devicelist} \major{29}{}{char }{Universal frame buffer} \minor{0}{/dev/fb0}{First frame buffer} \minor{1}{/dev/fb0autodetect}{} \minor{24}{/dev/fb0user0}{} \minordots \minor{31}{/dev/fb0user7}{} \minor{32}{/dev/fb1}{Second frame buffer} \minor{33}{/dev/fb1autodetect}{} \minor{56}{/dev/fb1user0}{} \minordots \minor{63}{/dev/fb1user7}{} \minordots \end{devicelist} \noindent The universal frame buffer device is currently supported only on Linux/68k and Linux/SPARC. The plain device accesses the frame buffer at current resolution (Linux/68k calls this file {\file current}, e.g. {\file /dev/fb0current}); the {\file autodetect} one at bootup (default) resolution. Minor numbers 2--23 within each frame buffer assignment are used for specific device-dependent resolutions. There appears to be no standard naming for these devices. Finally, 24--31 within each device are reserved for user-selected modes, usually entered at boot time. Currently only Linux/68k uses the mode-specific devices. \begin{devicelist} \major{ }{}{block}{Aztech/Orchid/Okano/Wearnes CD-ROM} \minor{0}{/dev/aztcd}{Aztech CD-ROM} \end{devicelist} \begin{devicelist} \major{30}{}{char }{iBCS-2 compatibility devices} \minor{0}{/dev/socksys}{Socket access} \minor{1}{/dev/spx}{SVR3 local X interface} \minor{2}{/dev/inet/arp}{Network access} \minor{2}{/dev/inet/icmp}{Network access} \minor{2}{/dev/inet/ip}{Network access} \minor{2}{/dev/inet/udp}{Network access} \minor{2}{/dev/inet/tcp}{Network access} \end{devicelist} \noindent iBCS-2 requires {\file /dev/nfsd} to be a link to {\file /dev/socksys} and {\file /dev/X0R} to be a link to {\file /dev/null}. \begin{devicelist} \major{ }{}{block}{Philips LMS CM-205 CD-ROM} \minor{0}{/dev/cm205cd}{Philips LMS CM-205 CD-ROM} \end{devicelist} \noindent {\file /dev/lmscd} is an older name for this drive. This driver does not work with the CM-205MS CD-ROM. \begin{devicelist} \major{31}{}{char }{MPU-401 MIDI} \minor{0}{/dev/mpu401data}{MPU-401 data port} \minor{1}{/dev/mpu401stat}{MPU-401 status port} \\ \major{ }{}{block}{ROM/flash memory card} \minor{0}{/dev/rom0}{First ROM card (rw)} \minordots \minor{7}{/dev/rom7}{Eighth ROM card (rw)} \minor{8}{/dev/rrom0}{First ROM card (ro)} \minordots \minor{15}{/dev/rrom0}{Eighth ROM card (ro)} \minor{16}{/dev/flash0}{First flash memory card (rw)} \minordots \minor{23}{/dev/flash7}{Eighth flash memory card (rw)} \minor{24}{/dev/rflash0}{First flash memory card (ro)} \minordots \minor{31}{/dev/rflash7}{Eighth flash memory card (ro)} \end{devicelist} \noindent The read-write (rw) devices support back-caching written data in RAM, as well as writing to flash RAM devices. The read-only devices (ro) support reading only. \begin{devicelist} \major{32}{}{char }{Specialix serial card} \minor{0}{/dev/ttyX0}{First Specialix port} \minor{1}{/dev/ttyX1}{Second Specialix port} \minordots \\ \major{ }{}{block}{Philips LMS CM-206 CD-ROM} \minor{0}{/dev/cm206cd}{Philips LMS CM-206 CD-ROM} \end{devicelist} \begin{devicelist} \major{33}{}{char }{Specialix serial card -- alternate devices} \minor{0}{/dev/cux0}{Callout device corresponding to {\file ttyX0}} \minor{1}{/dev/cux1}{Callout device corresponding to {\file ttyX1}} \minordots \\ \major{ }{}{block}{Third IDE hard disk/CD-ROM interface} \minor{0}{/dev/hde}{Master: whole disk (or CD-ROM)} \minor{64}{/dev/hdf}{Slave: whole disk (or CD-ROM)} \end{devicelist} \noindent Partitions are handled the same way as for the first interface (see major number 3). \begin{devicelist} \major{34}{}{char }{Z8530 HDLC driver} \minor{0}{/dev/scc0}{First Z8530, first port} \minor{1}{/dev/scc1}{First Z8530, second port} \minor{2}{/dev/scc2}{Second Z8530, first port} \minor{3}{/dev/scc3}{Second Z8530, second port} \minordots \end{devicelist} \noindent In a previous version these devices were named {\file /dev/sc1} for {\file /dev/scc0}, {\file /dev/sc2} for {\file /dev/scc1}, and so on. \begin{devicelist} \major{ }{}{block}{Fourth IDE hard disk/CD-ROM interface} \minor{0}{/dev/hdg}{Master: whole disk (or CD-ROM)} \minor{64}{/dev/hdh}{Slave: whole disk (or CD-ROM)} \end{devicelist} \noindent Partitions are handled the same way as for the first interface (see major number 3). \begin{devicelist} \major{35}{}{char }{tclmidi MIDI driver} \minor{0}{/dev/midi0}{First MIDI port, kernel timed} \minor{1}{/dev/midi1}{Second MIDI port, kernel timed} \minor{2}{/dev/midi2}{Third MIDI port, kernel timed} \minor{3}{/dev/midi3}{Fourth MIDI port, kernel timed} \minor{64}{/dev/rmidi0}{First MIDI port, untimed} \minor{65}{/dev/rmidi1}{Second MIDI port, untimed} \minor{66}{/dev/rmidi2}{Third MIDI port, untimed} \minor{67}{/dev/rmidi3}{Fourth MIDI port, untimed} \minor{128}{/dev/smpte0}{First MIDI port, SMPTE timed} \minor{129}{/dev/smpte1}{Second MIDI port, SMPTE timed} \minor{130}{/dev/smpte2}{Third MIDI port, SMPTE timed} \minor{131}{/dev/smpte3}{Fourth MIDI port, SMPTE timed} \end{devicelist} \begin{devicelist} \major{36}{}{char }{Netlink support} \minor{0}{/dev/route}{Routing, device updates (kernel to user)} \minor{1}{/dev/skip}{enSKIP security cache control} \\ \major{ }{}{block}{MCA ESDI hard disk} \minor{0}{/dev/eda}{First ESDI disk whole disk} \minor{64}{/dev/edb}{Second ESDI disk whole disk} \minordots \end{devicelist} \noindent Partitions are handled the same way as for IDE disks (see major number 3). \begin{devicelist} \major{37}{}{char }{IDE tape} \minor{0}{/dev/ht0}{First IDE tape} \minor{128}{/dev/nht0}{First IDE tape, no rewind-on-close} \end{devicelist} \noindent Currently, only one IDE tape drive is supported. \begin{devicelist} \major{ }{}{block}{Zorro II ramdisk} \minor{0}{/dev/z2ram}{Zorro II ramdisk} \end{devicelist} \begin{devicelist} \major{38}{}{char }{Myricom PCI Myrinet board} \minor{0}{/dev/mlanai0}{First Myrinet board} \minor{1}{/dev/mlanai1}{Second Myrinet board} \minordots \end{devicelist} \noindent This device is used for board control, status query and ``user level packet I/O''. The board is also accessible as a regular {\file eth} networking device. \begin{devicelist} \major{ }{}{block}{Reserved for Linux/AP+} \end{devicelist} \begin{devicelist} \major{39}{}{char }{ML-16P experimental I/O board} \minor{0}{/dev/ml16pa-a0}{First card, first analog channel} \minor{1}{/dev/ml16pa-a1}{First card, second analog channel} \minordots \minor{15}{/dev/ml16pa-a15}{First card, 16th analog channel} \minor{16}{/dev/ml16pa-d}{First card, digital lines} \minor{17}{/dev/ml16pa-c0}{First card, first counter/timer} \minor{18}{/dev/ml16pa-c1}{First card, second counter/timer} \minor{19}{/dev/ml16pa-c2}{First card, third counter/timer} \minor{32}{/dev/ml16pb-a0}{Second card, first analog channel} \minor{33}{/dev/ml16pb-a1}{Second card, second analog channel} \minordots \minor{47}{/dev/ml16pb-a15}{Second card, 16th analog channel} \minor{48}{/dev/ml16pb-d}{Second card, digital lines} \minor{49}{/dev/ml16pb-c0}{Second card, first counter/timer} \minor{50}{/dev/ml16pb-c1}{Second card, second counter/timer} \minor{51}{/dev/ml16pb-c2}{Second card, third counter/timer} \minordots \\ \major{ }{}{block}{Reserved for Linux/AP+} \end{devicelist} \begin{devicelist} \major{40}{}{char }{Matrox Meteor frame grabber} \minor{0}{/dev/mmetfgrab}{Matrox Meteor frame grabber} \\ \major{ }{}{block}{Syquest EZ135 parallel port removable drive} \minor{0}{/dev/eza}{Parallel EZ135 drive whole disk} \end{devicelist} \noindent This device is obsolete and will be removed in a future version of Linux. It has been replaced with the parallel port IDE disk driver at major number 45. Partitions are handled the same way as for IDE disks (see major number 3). \begin{devicelist} \major{41}{}{char }{Yet Another Micro Monitor} \minor{0}{/dev/yamm}{Yet Another Micro Monitor} \\ \major{ }{}{block}{MicroSolutions BackPack parallel port CD-ROM} \minor{0}{/dev/bpcd}{BackPack CD-ROM} \end{devicelist} \noindent This device is obsolete and will be removed in a future version of Linux. It has been replaced with the parallel port ATAPI CD-ROM driver at major number 46. \begin{devicelist} \major{42}{}{}{Demo/sample use} \end{devicelist} \noindent This number is intended for use in sample code, as well as a general ``example'' device number. It should never be used for a device driver that is being distributed; either obtain an official number or use the local/experimental range. The sudden addition or removal of a driver with this number should not cause ill effects to the system (bugs excepted.) IN PARTICULAR, ANY DISTRIBUTION WHICH CONTAINS A DEVICE DRIVER USING MAJOR NUMBER 42 IS NONCOMPLIANT. \begin{devicelist} \major{43}{}{char }{isdn4linux virtual modem} \minor{0}{/dev/ttyI0}{First virtual modem} \minordots \minor{63}{/dev/ttyI63}{64th virtual modem} \\ \major{ }{}{block}{Network block devices} \minor{0}{/dev/nd0}{First network block device} \minor{1}{/dev/nd1}{Second network block device} \minordots \end{devicelist} \noindent Network Block Device is somewhat similar to the loopback device: if you read from it, it sends packets across the network asking a server for data. If you write to it, it sends packets telling the server to write. It could be used for mounting filesystems over the net, swapping over the net, implementing block devices in userland etc. \begin{devicelist} \major{44}{}{char }{isdn4linux virtual modem -- alternate devices} \minor{0}{/dev/cui0}{Callout device corresponding to {\file ttyI0}} \minordots \minor{63}{/dev/cui63}{Callout device corresponding to {\file ttyI63}} \\ \major{ }{}{block}{Flash Translation Layer (FTL) filesystems} \minor{0}{/dev/ftla}{FTL on first Memory Technology Device} \minor{16}{/dev/ftlb}{FTL on second Memory Technology Device} \minor{32}{/dev/ftlc}{FTL on third Memory Technology Device} \minordots \minor{240}{/dev/ftlp}{FTL on 16th Memory Technology Device} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3) expect that the partition limit is 15 rather than 63 per disk (same as SCSI.) \begin{devicelist} \major{45}{}{char }{isdn4linux ISDN BRI driver} \minor{0}{/dev/isdn0}{First virtual B channel raw data} \minordots \minor{63}{/dev/isdn63}{64th virtual B channel raw data} \minor{64}{/dev/isdnctrl0}{First channel control/debug} \minordots \minor{127}{/dev/isdnctrl63}{64th channel control/debug} \minor{128}{/dev/ippp0}{First SyncPPP device} \minordots \minor{191}{/dev/ippp63}{64th SyncPPP device} \minor{255}{/dev/isdninfo}{ISDN monitor interface} \\ \major{ }{}{block}{Parallel port IDE disk devices} \minor{0}{/dev/pda}{First parallel port IDE disk} \minor{16}{/dev/pdb}{Second parallel port IDE disk} \minor{32}{/dev/pdc}{Third parallel port IDE disk} \minor{48}{/dev/pdd}{Fourth parallel port IDE disk} \end{devicelist} \noindent Partitions are handled in the same way as for IDE disks (see major number 3) except that the partition limit is 15 rather than 63 per disk. \begin{devicelist} \major{46}{}{char }{Comtrol Rocketport serial card} \minor{0}{/dev/ttyR0}{First Rocketport port} \minor{1}{/dev/ttyR1}{Second Rocketport port} \minordots \\ \major{ }{}{block}{Parallel port ATAPI CD-ROM devices} \minor{0}{/dev/pcd0}{First parallel port ATAPI CD-ROM} \minor{1}{/dev/pcd1}{Second parallel port ATAPI CD-ROM} \minor{2}{/dev/pcd2}{Third parallel port ATAPI CD-ROM} \minor{3}{/dev/pcd3}{Fourth parallel port ATAPI CD-ROM} \end{devicelist} \begin{devicelist} \major{47}{}{char }{Comtrol Rocketport serial card -- alternate devices} \minor{0}{/dev/cur0}{Callout device corresponding to {\file ttyR0}} \minor{1}{/dev/cur1}{Callout device corresponding to {\file ttyR1}} \minordots \\ \major{ }{}{block}{Parallel port ATAPI disk devices} \minor{0}{/dev/pf0}{First parallel port ATAPI disk} \minor{1}{/dev/pf1}{Second parallel port ATAPI disk} \minor{2}{/dev/pf2}{Third parallel port ATAPI disk} \minor{3}{/dev/pf3}{Fourth parallel port ATAPI disk} \end{devicelist} \noindent This driver is intended for floppy disks and similar devices and hence does not support partitioning. \begin{devicelist} \major{48}{}{char }{SDL RISCom serial card} \minor{0}{/dev/ttyL0}{First RISCom port} \minor{1}{/dev/ttyL1}{Second RISCom port} \minordots \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{49}{}{char }{SDL RISCom serial card -- alternate devices} \minor{0}{/dev/cul0}{Callout device corresponding to {\file ttyL0}} \minor{1}{/dev/cul1}{Callout device corresponding to {\file ttyL1}} \minordots \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{50}{}{char}{Reserved for GLINT} \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{51}{}{char }{Baycom radio modem} \minor{0}{/dev/bc0}{First Baycom radio modem} \minor{1}{/dev/bc1}{Second Baycom radio modem} \minordots \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{52}{}{char }{Spellcaster DataComm/BRI ISDN card} \minor{0}{/dev/dcbri0}{First DataComm card} \minor{1}{/dev/dcbri1}{Second DataComm card} \minor{2}{/dev/dcbri2}{Third DataComm card} \minor{3}{/dev/dcbri3}{Fourth DataComm card} \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{53}{}{char }{BDM interface for remote debugging MC683xx microcontrollers} \minor{0}{/dev/pd\_bdm0}{PD BDM interface on {\file lp0}} \minor{1}{/dev/pd\_bdm1}{PD BDM interface on {\file lp1}} \minor{2}{/dev/pd\_bdm2}{PD BDM interface on {\file lp2}} \minor{4}{/dev/icd\_bdm0}{ICD BDM interface on {\file lp0}} \minor{5}{/dev/icd\_bdm1}{ICD BDM interface on {\file lp1}} \minor{6}{/dev/icd\_bdm2}{ICD BDM interface on {\file lp2}} \end{devicelist} \noindent This device is used for interfacing to the MC683xx microcontrollers via Background Debug Mode by use of a Parallel Port interface. PD is the Motorola Public Domain Interface and ICD is the commercial interface by P\&E. \begin{devicelist} \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{54}{}{char }{Electrocardiognosis Holter serial card} \minor{0}{/dev/holter0}{First Holter port} \minor{1}{/dev/holter1}{Second Holter port} \minor{2}{/dev/holter2}{Third Holter port} \end{devicelist} \noindent A custom serial card used by Electrocardiognosis SRL $<$mseritan@ottonel.pub.ro$>$ to transfer data from Holter 24-hour heart monitoring equipment. \begin{devicelist} \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{55}{}{char }{DSP56001 digital signal processor} \minor{0}{/dev/dsp56k}{First DSP56001} \\ \major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller} \end{devicelist} \begin{devicelist} \major{56}{}{char }{Apple Desktop Bus} \minor{0}{/dev/adb}{ADB bus control} \end{devicelist} \noindent Additional devices will be added to this number, all starting with {\file /dev/adb}. \begin{devicelist} \major{57}{}{char }{Hayes ESP serial card} \minor{0}{/dev/ttyP0}{First ESP port} \minor{1}{/dev/ttyP1}{Second ESP port} \minordots \end{devicelist} \begin{devicelist} \major{58}{}{char }{Hayes ESP serial card -- alternate devices} \minor{0}{/dev/cup0}{Callout device corresponding to {\file ttyP0}} \minor{1}{/dev/cup1}{Callout device corresponding to {\file ttyP1}} \minordots \end{devicelist} \begin{devicelist} \major{59}{}{char }{sf firewall package} \minor{0}{/dev/firewall}{Communication with sf kernel module} \end{devicelist} \begin{devicelist} \major{60}{--63}{}{Local/experimental use} \end{devicelist} \noindent For devices not assigned official numbers, these ranges should be used, in order to avoid conflict with future assignments. \begin{devicelist} \major{64}{}{char }{ENskip kernel encryption package} \minor{0}{/dev/enskip}{Communication with ENskip kernel module} \end{devicelist} \begin{devicelist} \major{65}{}{char }{Sundance ``plink'' Transputer boards} \minor{0}{/dev/plink0}{First plink device} \minor{1}{/dev/plink1}{Second plink device} \minor{2}{/dev/plink2}{Third plink device} \minor{3}{/dev/plink3}{Fourth plink device} \minor{64}{/dev/rplink0}{First plink device, raw} \minor{65}{/dev/rplink1}{Second plink device, raw} \minor{66}{/dev/rplink2}{Third plink device, raw} \minor{67}{/dev/rplink3}{Fourth plink device, raw} \minor{128}{/dev/plink0d}{First plink device, debug} \minor{129}{/dev/plink1d}{Second plink device, debug} \minor{130}{/dev/plink2d}{Third plink device, debug} \minor{131}{/dev/plink3d}{Fourth plink device, debug} \minor{192}{/dev/rplink0d}{First plink device, raw, debug} \minor{193}{/dev/rplink1d}{Second plink device, raw, debug} \minor{194}{/dev/rplink2d}{Third plink device, raw, debug} \minor{195}{/dev/rplink3d}{Fourth plink device, raw, debug} \end{devicelist} \noindent This is a commercial driver; contact James Howes $<$jth@prosig.demon.co.uk$>$ for information. \begin{devicelist} \major{66}{}{char }{YARC PowerPC PCI coprocessor card} \minor{0}{/dev/yppcpci0}{First YARC card} \minor{1}{/dev/yppcpci1}{Second YARC card} \minordots \end{devicelist} \begin{devicelist} \major{67}{}{char }{Coda network filesystem} \minor{0}{/dev/cfs0}{Coda cache manager} \end{devicelist} \noindent See {\url http://www.coda.cs.cmu.edu\/} for information about Coda. \begin{devicelist} \major{68}{}{char }{CAPI 2.0 interface} \minor{0}{/dev/capi20}{Control device} \minor{1}{/dev/capi20.00}{First CAPI 2.0 application} \minor{2}{/dev/capi20.01}{Second CAPI 2.0 application} \minordots \minor{20}{/dev/capi20.19}{19th CAPI 2.0 application} \end{devicelist} \noindent ISDN CAPI 2.0 driver for use with CAPI 2.0 applications; currently supports the AVM B1 card. \begin{devicelist} \major{69}{}{char }{MA16 numeric accelerator card} \minor{0}{/dev/ma16}{Board memory access} \end{devicelist} \begin{devicelist} \major{70}{}{char }{SpellCaster Protocol Services Interface} \minor{0}{/dev/apscfg}{Configuration interface} \minor{1}{/dev/apsauth}{Authentication interface} \minor{2}{/dev/apslog}{Logging interface} \minor{3}{/dev/apsdbg}{Debugging interface} \minor{64}{/dev/apsisdn}{ISDN command interface} \minor{65}{/dev/apsasync}{Async command interface} \minor{128}{/dev/apsmon}{Monitor interface} \end{devicelist} \begin{devicelist} \major{71}{}{char }{Computone IntelliPort II serial card} \minor{0}{/dev/ttyF0}{IntelliPort II board 0, port 0} \minor{1}{/dev/ttyF1}{IntelliPort II board 0, port 1} \minordots \minor{63}{/dev/ttyF63}{IntelliPort II board 0, port 63} \minor{64}{/dev/ttyF64}{IntelliPort II board 1, port 0} \minor{65}{/dev/ttyF65}{IntelliPort II board 1, port 1} \minordots \minor{127}{/dev/ttyF127}{IntelliPort II board 1, port 63} \minor{128}{/dev/ttyF128}{IntelliPort II board 2, port 0} \minor{129}{/dev/ttyF129}{IntelliPort II board 2, port 1} \minordots \minor{191}{/dev/ttyF191}{IntelliPort II board 2, port 63} \minor{192}{/dev/ttyF192}{IntelliPort II board 3, port 0} \minor{193}{/dev/ttyF193}{IntelliPort II board 3, port 1} \minordots \minor{255}{/dev/ttyF255}{IntelliPort II board 3, port 63} \end{devicelist} \begin{devicelist} \major{72}{}{char }{Computone IntelliPort II serial card -- alternate devices} \minor{0}{/dev/cuf0}{Callout device corresponding to {\file ttyF0}} \minor{1}{/dev/cuf1}{Callout device corresponding to {\file ttyF1}} \minordots \minor{63}{/dev/cuf63}{Callout device corresponding to {\file ttyF63}} \minor{64}{/dev/cuf64}{Callout device corresponding to {\file ttyF64}} \minor{65}{/dev/cuf65}{Callout device corresponding to {\file ttyF65}} \minordots \minor{127}{/dev/cuf127}{Callout device corresponding to {\file ttyF127}} \minor{128}{/dev/cuf128}{Callout device corresponding to {\file ttyF128}} \minor{129}{/dev/cuf129}{Callout device corresponding to {\file ttyF129}} \minordots \minor{191}{/dev/cuf191}{Callout device corresponding to {\file ttyF191}} \minor{192}{/dev/cuf192}{Callout device corresponding to {\file ttyF192}} \minor{193}{/dev/cuf193}{Callout device corresponding to {\file ttyF193}} \minordots \minor{255}{/dev/cuf255}{Callout device corresponding to {\file ttyF255}} \end{devicelist} \begin{devicelist} \major{73}{}{char }{Computone IntelliPort II serial card -- control devices} \minor{0}{/dev/ip2ipl0}{Loadware device for board 0} \minor{1}{/dev/ip2stat0}{Status device for board 0} \minor{4}{/dev/ip2ipl1}{Loadware device for board 1} \minor{5}{/dev/ip2stat1}{Status device for board 1} \minor{8}{/dev/ip2ipl2}{Loadware device for board 2} \minor{9}{/dev/ip2stat2}{Status device for board 2} \minor{12}{/dev/ip2ipl3}{Loadware device for board 3} \minor{13}{/dev/ip2stat3}{Status device for board 3} \end{devicelist} \begin{devicelist} \major{74}{}{char }{SCI bridge} \minor{0}{/dev/SCI/0}{SCI device 0} \minor{1}{/dev/SCI/1}{SCI device 1} \minordots \end{devicelist} \noindent Currently for Dolphin Interconnect Solutions' PCI-SCI bridge. \begin{devicelist} \major{75}{}{char }{Specialix IO8+ serial card} \minor{0}{/dev/ttyW0}{First IO8+ port, first card} \minor{1}{/dev/ttyW1}{Second IO8+ port, first card} \minordots \minor{8}{/dev/ttyW8}{First IO8+ port, second card} \minordots \end{devicelist} \begin{devicelist} \major{76}{}{char }{Specialix IO8+ serial card -- alternate devices} \minor{0}{/dev/cuw0}{Callout device corresponding to {\file ttyW0}} \minor{1}{/dev/cuw1}{Callout device corresponding to {\file ttyW1}} \minordots \minor{8}{/dev/cuw8}{Callout device corresponding to {\file ttyW8}} \minordots \end{devicelist} \begin{devicelist} \major{77}{}{char }{ComScire Quantum Noise Generator} \minor{0}{/dev/qng}{ComScire Quantum Noise Generator} \end{devicelist} \begin{devicelist} \major{78}{}{char }{PAM Software's multimodem boards} \minor{0}{/dev/ttyM0}{First PAM modem} \minor{1}{/dev/ttyM1}{Second PAM modem} \minordots \end{devicelist} \begin{devicelist} \major{79}{}{char }{PAM Software's multimodem boards -- alternate devices} \minor{0}{/dev/cum0}{Callout device corresponding to {\file ttyM0}} \minor{1}{/dev/cum1}{Callout device corresponding to {\file ttyM1}} \minordots \end{devicelist} \begin{devicelist} \major{80}{}{char }{Photometrics AT200 CCD camera} \minor{0}{/dev/at200}{Photometrics AT200 CCD camera} \end{devicelist} \begin{devicelist} \major{81}{}{char }{Brooktree Bt848 frame grabbers} \minor{0}{/dev/bttv0}{First Bt848 card} \minor{0}{/dev/bttv1}{Second Bt848 card} \minordots \minor{16}{/dev/bttvc0}{Control for first Bt848 card} \minor{17}{/dev/bttvc1}{Control for second Bt848 card} \minordots \minor{32}{/dev/bttv-vbi0}{VBI data of first Bt848 card} \minor{33}{/dev/bttv-vbi1}{VBI data of second Bt848 card} \minordots \end{devicelist} \begin{devicelist} \major{82}{}{char }{WiNRADiO communications receiver card} \minor{0}{/dev/winradio0}{First WiNRADiO card} \minor{1}{/dev/winradio1}{Second WiNRADiO card} \minordots \end{devicelist} \noindent The driver and documentation may be obtained from {\url http://www.proximity.com.au/~brian/winradio/\/}. \begin{devicelist} \major{83}{}{char }{Teletext/videotext interfaces} \minor{0}{/dev/vtx}{Teletext decoder} \minor{16}{/dev/vttuner}{TV tuner on teletext interface} \end{devicelist} \noindent Devices for the driver contained in the VideoteXt package. More information on {\url http://home.pages.de/~videotext/\/}. \begin{devicelist} \major{84}{}{char }{Ikon 1011[57] Versatec Greensheet Interface} \minor{0}{/dev/ihcp0}{First Greensheet port} \minor{1}{/dev/ihcp1}{Second Greensheet port} \end{devicelist} \begin{devicelist} \major{85}{}{char }{Linux/SGI shared memory input queue} \minor{0}{/dev/shmiq}{Master shared input queue} \minor{1}{/dev/qcntl0}{First device pushed} \minor{2}{/dev/qcntl1}{Second device pushed} \minordots \end{devicelist} \begin{devicelist} \major{86}{}{char }{SCSI media changer} \minor{0}{/dev/sch0}{First SCSI media changer} \minor{1}{/dev/sch1}{Second SCSI media changer} \minordots \end{devicelist} \begin{devicelist} \major{87}{}{char }{Sony Control-A1 stereo control bus} \minor{0}{/dev/controla0}{First device on chain} \minor{1}{/dev/controla1}{Second device on chain} \minordots \end{devicelist} \begin{devicelist} \major{88}{}{char }{COMX synchronous serial card} \minor{0}{/dev/comx0}{Channel 0} \minor{1}{/dev/comx1}{Channel 1} \minordots \end{devicelist} \begin{devicelist} \major{89}{}{char }{I$^2$C bus interface} \minor{0}{/dev/i2c0}{First I$^2$C adapter} \minor{1}{/dev/i2c1}{Second I$^2$C adapter} \minordots \end{devicelist} \begin{devicelist} \major{90}{}{char }{Memory Technology Device (RAM, ROM, Flash)} \minor{0}{/dev/mtd0}{First MTD (rw)} \minor{1}{/dev/mtdr0}{First MTD (ro)} \minordots \minor{30}{/dev/mtd15}{16th MTD (rw)} \minor{31}{/dev/mtdr15}{16th MTD (ro)} \end{devicelist} \begin{devicelist} \major{91}{}{char }{CAN-Bus controller} \minor{0}{/dev/can0}{First CAN-Bus controller} \minor{1}{/dev/can1}{Second CAN-Bus controller} \minordots \end{devicelist} \begin{devicelist} \major{92}{}{char }{Reserved for ith Kommunikationstechnik MIC ISDN card} \end{devicelist} \begin{devicelist} \major{93}{}{char }{IBM Smart Capture Card frame grabber} \minor{0}{/dev/iscc0}{First Smart Capture Card} \minor{1}{/dev/iscc1}{Second Smart Capture Card} \minordots \minor{128}{/dev/isccctl0}{First Smart Capture Card control} \minor{129}{/dev/isccctl1}{Second Smart Capture Card control} \minordots \end{devicelist} \begin{devicelist} \major{94}{}{char }{miroVIDEO DC10/30 capture/playback device} \minor{0}{/dev/dcxx0}{First capture card} \minor{1}{/dev/dcxx1}{Second capture card} \minordots \end{devicelist} \begin{devicelist} \major{95}{}{char }{IP filter} \minor{0}{/dev/ipl}{Filter control device/log file} \minor{1}{/dev/ipnat}{NAT control device/log file} \minor{2}{/dev/ipstate}{State information log file} \minor{3}{/dev/ipauth}{Authentication control device/log file} \end{devicelist} \begin{devicelist} \major{96}{}{char }{Parallel port ATAPI tape devices} \minor{0}{/dev/pt0}{First parallel port ATAPI tape} \minor{1}{/dev/pt1}{Second parallel port ATAPI tape} \minor{2}{/dev/pt2}{Third parallel port ATAPI tape} \minor{3}{/dev/pt3}{Fourth parallel port ATAPI tape} \minor{128}{/dev/npt0}{First parallel port ATAPI tape, no rewind} \minor{129}{/dev/npt1}{Second parallel port ATAPI tape, no rewind} \minor{130}{/dev/npt2}{Third parallel port ATAPI tape, no rewind} \minor{131}{/dev/npt3}{Fourth parallel port ATAPI tape, no rewind} \end{devicelist} \begin{devicelist} \major{97}{}{char }{Parallel port generic ATAPI interface} \minor{0}{/dev/pg0}{First parallel port ATAPI device} \minor{1}{/dev/pg1}{Second parallel port ATAPI device} \minor{2}{/dev/pg2}{Third parallel port ATAPI device} \minor{3}{/dev/pg3}{Fourth parallel port ATAPI device} \end{devicelist} \noindent These devices support the same API as the generic SCSI devices. \begin{devicelist} \major{98}{}{char }{Control and Mesurement Device (comedi)} \minor{0}{/dev/comedi0}{First comedi device} \minor{1}{/dev/comedi1}{Second comedi device} \minordots \end{devicelist} \noindent See {\url http://stm.lbl.gov/comedi/} or {\url http://www.llp.fu-berlin.de/}. \begin{devicelist} \major{99}{--119}{}{Unallocated} \end{devicelist} \begin{devicelist} \major{120}{--127}{}{Local/experimental use} \end{devicelist} \begin{devicelist} \major{128}{--239}{}{Unallocated} \end{devicelist} \begin{devicelist} \major{240}{--254}{}{Local/experimental use} \end{devicelist} \begin{devicelist} \major{255}{}{}{Reserved} \end{devicelist} \section{Additional /dev directory entries} This section details additional entries that should or may exist in the {\file /dev} directory. It is preferred that symbolic links use the same form (absolute or relative) as is indicated here. Links are classified as {\em hard\/} or {\em symbolic\/} depending on the preferred type of link; if possible, the indicated type of link should be used. \subsection{Compulsory links} These links should exist on all systems: \begin{nodelist} \link{/dev/fd}{/proc/self/fd}{symbolic}{File descriptors} \link{/dev/stdin}{fd/0}{symbolic}{Standard input file descriptor} \link{/dev/stdout}{fd/1}{symbolic}{Standard output file descriptor} \link{/dev/stderr}{fd/2}{symbolic}{Standard error file descriptor} \link{/dev/nfsd}{socksys}{symbolic}{Required by iBCS-2} \link{/dev/X0R}{null}{symbolic}{Required by iBCS-2} \end{nodelist} \noindent Note: The last device is: $<$letter {\tt X}$>$-$<$digit {\tt 0}$>$-$<$letter {\tt R}$>$. \subsection{Recommended links} It is recommended that these links exist on all systems: \begin{nodelist} \link{/dev/core}{/proc/kcore}{symbolic}{Backward compatibility} \link{/dev/ramdisk}{ram0}{symbolic}{Backward compatibility} \link{/dev/ftape}{qft0}{symbolic}{Backward compatibility} \link{/dev/scd?}{sr?}{hard}{Alternate name for CD-ROMs} \link{/dev/fd?D*}{fd?u*}{hard}{Backward compatibility} \link{/dev/fd?H*}{fd?u*}{hard}{Backward compatibility} \link{/dev/fd?E*}{fd?u*}{hard}{Backward compatibility} \end{nodelist} \subsection{Locally defined links} The following links may be established locally to conform to the configuration of the system. This is merely a tabulation of existing practice, and does not constitute a recommendation. However, if they exist, they should have the following uses. \begin{nodelist} \vlink{/dev/mouse}{mouse port}{symbolic}{Current mouse device} \vlink{/dev/tape}{tape device}{symbolic}{Current tape device} \vlink{/dev/cdrom}{CD-ROM device}{symbolic}{Current CD-ROM device} \vlink{/dev/cdwriter}{CD-writer}{symbolic}{Current CD-writer device} \vlink{/dev/scanner}{scanner device}{symbolic}{Current scanner device} \vlink{/dev/modem}{modem port}{symbolic}{Current dialout device} \vlink{/dev/root}{root device}{symbolic}{Current root filesystem} \vlink{/dev/swap}{swap device}{symbolic}{Current swap device} \end{nodelist} \noindent {\file /dev/modem} should not be used for a modem which supports dialin as well as dialout, as it tends to cause lock file problems. If it exists, {\file /dev/modem} should point to the appropriate dialout (alternate) device. For SCSI devices, {\file /dev/tape} and {\file /dev/cdrom} should point to the ``cooked'' devices ({\file /dev/st*} and {\file /dev/sr*}, respectively), whereas {\file /dev/cdwriter} and {\file /dev/scanner} should point to the appropriate generic SCSI devices ({\file /dev/sg*}). {\file /dev/mouse} may point to a primary serial TTY device, a hardware mouse device, or a socket for a mouse driver program (e.g. {\file /dev/gpmdata}). \subsection{Sockets and pipes} Non-transient sockets or named pipes may exist in {\file /dev}. Common entries are: \begin{nodelist} \node{/dev/printer}{socket}{{\file lpd} local socket} \node{/dev/log}{socket}{{\file syslog} local socket} \node{/dev/gpmdata}{socket}{{\file gpm} mouse multiplexer} \end{nodelist} \section{Terminal devices} Terminal, or TTY devices are a special class of character devices. A terminal device is any device that could act as a controlling terminal for a session; this includes virtual consoles, serial ports, and pseudoterminals (PTYs). All terminal devices share a common set of capabilities known as line diciplines; these include the common terminal line dicipline as well as SLIP and PPP modes. All terminal devices are named similarly; this section explains the naming and use of the various types of TTYs. Note that the naming conventions include several historical warts; some of these are Linux-specific, some were inherited from other systems, and some reflect Linux outgrowing a borrowed convention. A hash mark ($\#$) in a device name is used here to indicate a decimal number without leading zeroes. \subsection{Virtual consoles and the console device} Virtual consoles are full-screen terminal displays on the system video monitor. Virtual consoles are named {\file /dev/tty$\#$}, with numbering starting at {\file /dev/tty1}; {\file /dev/tty0} is the current virtual console. {\file /dev/tty0} is the device that should be used to access the system video card on those architectures for which the frame buffer devices ({\file /dev/fb*}) do not exist (including the x86). Do not use {\file /dev/console} for this purpose. The {\em console device\/}, {\file /dev/console}, is the device to which system messages should be sent, and on which logins should be permitted in single-user mode. Starting with Linux 2.1.71, {\file /dev/console} is managed by the kernel; for previous versions it should be a symbolic link to either {\file /dev/tty0}, a specific virtual console such as {\file /dev/tty1}, or to a serial port primary ({\file tty}) device, depending on the configuration of the system. \subsection{Serial ports} Serial ports are RS-232 serial ports and any device which simulates one, either in hardware (such as internal modems) or in software (such as the ISDN driver.) Under Linux, each serial port has two device names, the primary or callin device and the alternate or callout one. Each kind of device is indicated by a different letter. For any letter $X$, the names of the devices are {\file /dev/tty${X\#}$} and {\file /dev/cu${x\#}$}, respectively; for historical reasons, {\file /dev/ttyS$\#$} and {\file /dev/ttyC$\#$} correspond to {\file /dev/cua$\#$} and {\file /dev/cub$\#$}. In the future, it should be expected that multiple letters will be used; all letters will be upper case for the {\file tty} device and lower case for the {\file cu} device. The names {\file /dev/ttyQ$\#$} and {\file /dev/cuq$\#$} are reserved for local use. The alternate devices provide for kernel-based exclusion and somewhat different defaults than the primary devices. Their main purpose is to allow the use of serial ports with programs with no inherent or broken support for serial ports. For programs with proper knowledge of serial port operation, their use should probably be avoided. Arbitration of serial ports is provided by the use of lock files with the names {\file /var/lock/LCK..tty${X\#}$}. The contents of the lock file should be the PID of the locking process as an ASCII number. It is common practice to install links such as {\file /dev/modem\/} which point to serial ports. In order to ensure proper locking in the presence of these links, it is recommended that software chase symlinks and lock all possible names; additionally, it is recommended that a lock file be installed with the corresponding alternate device. In order to avoid deadlocks, it is recommended that the locks are acquired in the following order, and released in the reverse: \begin{itemize} \item{The symbolic link name, if any ({\file /var/lock/LCK..modem})} \item{The {\file tty} name ({\file /var/lock/LCK..ttyS2})} \item{The alternate device name ({\file /var/lock/LCK..cua2})} \end{itemize} In the case of nested symbolic links, the lock files should be installed in the order the symlinks are resolved. Under no circumstances should an application hold a lock while waiting for another to be released. In addition, applications which attempt to create lock files for the corresponding alternate device names should take into account the possibility of being used on a non-serial port TTY, for which no alternate device would exist. \subsection{Pseudoterminals (PTYs)} Pseudoterminals, or PTYs, are used to create login sessions or provide other capabilities requiring a TTY line dicipline (including SLIP or PPP capability) to arbitrary data-generation processes. Each PTY has a {\em master\/} side, named {\file /dev/pty[p-za-e][0-9a-f]\/}, and a {\em slave\/} side, named {\file /dev/tty[p-za-e][0-9a-f]\/}. The kernel arbitrates the use of PTYs by allowing each master side to be opened only once. Once the master side has been opened, the corresponding slave device can be used in the same manner as any TTY device. The master and slave devices are connected by the kernel, generating the equivalent of a bidirectional pipe with TTY capabilities. The entire namespace {\file /dev/[pt]ty[p-za-o][0-9a-z]\/} should be considered reserved for the future use of PTYs. Should more than 936 PTYs ever become a necessity, we will likely adopt a System V-like scheme by which PTYs use a subdirectory of {\file /dev}. \end{document} |