old-www/FAQ/Linux-FAQ/kernel.html

1328 lines
25 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>The Linux Kernel</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="The Linux FAQ"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="General Information"
HREF="general.html"><LINK
REL="NEXT"
TITLE="Disk Drives"
HREF="disk-drives.html"></HEAD
><BODY
CLASS="sect1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>The Linux FAQ</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="general.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="disk-drives.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="sect1"
><H1
CLASS="sect1"
><A
NAME="kernel"
></A
>3. The Linux Kernel</H1
><DIV
CLASS="qandaset"
><DL
><DT
>Q: <A
HREF="kernel.html#platform-support"
>What Platforms Does Linux Support?</A
></DT
><DT
>Q: <A
HREF="kernel.html#does-linux-run-on-my-computer"
>What Hardware Is Supported?</A
></DT
><DT
>Q: <A
HREF="kernel.html#what-ports-to-other-processors-are-there"
>Ports to Other Processors</A
></DT
><DT
>Q: <A
HREF="kernel.html#linux-versioning"
>How Does Linux Kernel Versioning Work?</A
></DT
><DT
>Q: <A
HREF="kernel.html#where-can-i-get-the-latest-kernel-version"
>Where Is the Latest Kernel Version on the Internet?</A
></DT
><DT
>Q: <A
HREF="kernel.html#threads-or-lightweight-processes"
>Does Linux Support Threads or Lightweight Processes?</A
></DT
><DT
>Q: <A
HREF="kernel.html#version-of-linux-and-what-machine"
>What Version of Linux and What Machine Name Is This?</A
></DT
><DT
>Q: <A
HREF="kernel.html#bogomip"
>What is a BogoMip?</A
></DT
><DT
>Q: <A
HREF="kernel.html#does-linux-support-the-usb-bus"
>Does Linux Support USB Devices?</A
></DT
><DT
>Q: <A
HREF="kernel.html#serial-ports-by-sharing"
>Can Linux Use More than 3 Serial Ports by Sharing Interrupts?</A
></DT
></DL
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="platform-support"
></A
><B
>Q: </B
>What Platforms Does Linux Support?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Linux runs on almost every general-purpose computer made in the
last 10 years. It runs on systems as small as PDAs (for example,
the Sharp Zaurus) and on systems as large as IBM mainframes.
</P
><P
>There are Linux distributions specifically for mobile and handheld platforms.
Information on the Linux distribution for the Compaq iPAQ is at <A
HREF="http://www.handhelds.org"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.handhelds.org</I
></A
>.
</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Linux was written originally for Intel processor based PC's,
using the hardware facilities of the 80386 processor and its successors to implement its features.
The 80386 family includes the 80486 and all of the Pentium chips.
However, there are now many ports to other hardware platforms.
See <A
HREF="kernel.html#what-ports-to-other-processors-are-there"
><I
>Ports to Other Processors</I
></A
>.
</P
><P
>Refer also to the Linux <I
CLASS="citetitle"
>INFO-SHEET</I
> for more details as
well as the answers to
<A
HREF="online-resources.html#howtos-and-other-documentation"
><I
>Where Is the Documentation?</I
></A
>,
<A
HREF="kernel.html#does-linux-run-on-my-computer"
><I
>What Hardware Is Supported?</I
></A
>, and
<A
HREF="kernel.html#what-ports-to-other-processors-are-there"
><I
>Ports to Other Processors</I
></A
>, below.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="does-linux-run-on-my-computer"
></A
><B
>Q: </B
>What Hardware Is Supported?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>A minimal Linux installation requires a machine for which a port exists,
at least 2Mb of RAM, and a single floppy drive, but to do anything even
remotely useful, more RAM and disk space are needed. Refer to:
<A
HREF="kernel.html#what-ports-to-other-processors-are-there"
><I
>Ports to Other Processors</I
></A
>,
<A
HREF="linux-distributions.html#how-much-hard-disk-space-does-linux-need"
><I
>What are the Disk Space Requirements for Minimal, Server, and Workstation Use?</I
></A
>, and
<A
HREF="linux-distributions.html#how-much-memory-does-linux-need"
><I
>What are the Minimum and Maximum Memory Requirements?</I
></A
>.
</P
><P
>Intel CPU, PC-compatible machines require at least an 80386 processor to run
the standard Linux kernel.
</P
><P
>Linux, including the X Window System GUI, runs on most current laptops. Refer
to the answer for: <A
HREF="common-problems.html#my-notebook-runs-linux"
><I
>How Do I Find Out If a Notebook Runs Linux?</I
></A
>.
There are numerous sources of information
about specific PC's, video cards, disk controllers, and other hardware. Refer
to the <I
CLASS="citetitle"
>INFO-SHEET</I
>, <I
CLASS="citetitle"
>Laptop-HOWTO</I
>,
and the <I
CLASS="citetitle"
>Unix-Hardware-Buyer-HOWTO</I
>.
See <A
HREF="online-resources.html#howtos-and-other-documentation"
><I
>Where Is the Documentation?</I
></A
>.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="what-ports-to-other-processors-are-there"
></A
><B
>Q: </B
>Ports to Other Processors</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Ports are currently available for:
</P
><P
></P
><UL
><LI
><P
><A
HREF="http://www.linuxalpha.org"
TARGET="_top"
><I
CLASS="citetitle"
>Compaq Alpha AXP</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.ultralinux.org"
TARGET="_top"
><I
CLASS="citetitle"
>Sun SPARC and UltraSPARC</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.linux-m68k.org"
TARGET="_top"
><I
CLASS="citetitle"
>Motorola 68000</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://penguinppc.org"
TARGET="_top"
><I
CLASS="citetitle"
>PowerPC</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://linuxppc64.org"
TARGET="_top"
><I
CLASS="citetitle"
>PowerPC64</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.arm.linux.org"
TARGET="_top"
><I
CLASS="citetitle"
>ARM</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://linuxsh.sourceforge.net"
TARGET="_top"
><I
CLASS="citetitle"
>Hitachi SuperH</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.ibm.com/s390/linux"
TARGET="_top"
><I
CLASS="citetitle"
>IBM zSeries and S/390</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.linux-mips.org"
TARGET="_top"
><I
CLASS="citetitle"
>MIPS</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.parisc-linux.org"
TARGET="_top"
><I
CLASS="citetitle"
>HP PA-RISC</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.linuxia64.org"
TARGET="_top"
><I
CLASS="citetitle"
>Intel IA-64</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://linux-vax.sourceforge.net"
TARGET="_top"
><I
CLASS="citetitle"
>DEC VAX</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://www.x86-64.org"
TARGET="_top"
><I
CLASS="citetitle"
>AMD x86-64</I
></A
>
</P
></LI
><LI
><P
><A
HREF="http://developer.axis.com/software/linux"
TARGET="_top"
><I
CLASS="citetitle"
>CRIS</I
></A
>
</P
></LI
></UL
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>There are always efforts underway to port Linux onto new processors.
Linux Online maintains a
<A
HREF="http://www.linux.org/projects/ports.html:list of ports currently in development"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linux.org/projects/ports.html:list of ports currently in development</I
></A
>.
</P
><P
>In addition, the following information is available about specific ports:
</P
><P
>On Intel platforms, VESA Local Bus and PCI bus are supported.
</P
><P
>MCA (IBM's proprietary bus) and ESDI hard drives are mostly supported. There
is further information on the MCA bus and what cards Linux supports on the
Micro Channel Linux Web page, <A
HREF="http://www.dgmicro.com/mca"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.dgmicro.com/mca</I
></A
>. Refer also to
the answer for: <A
HREF="online-resources.html#world-wide-web-for-linux-stuff"
><I
>Where Is the Linux Stuff on the World Wide Web?</I
></A
>.
</P
><P
>There is a port of Linux to the 8086, known as the Embeddable Linux Kernel
Subset (ELKS). This is a 16-bit subset of the Linux kernel which will mainly
be used for embedded systems, at: <A
HREF="http://www.linux.org.uk/Linux8086.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linux.org.uk/Linux8086.html</I
></A
>.
Standard Linux does not run 8086 or 80286 processors, because it requires
task-switching and memory management facilities found on 80386 and later
processors.
</P
><P
>Linux supports multiprocessing with Intel MP architecture. See the file
<TT
CLASS="filename"
>Documentation/smp.tex</TT
> in the Linux kernel source code distribution.
</P
><P
>An API specification and developers kit for the Crusoe Smart Microprocessor developed
by Transmeta Corporation are at <A
HREF="http://www.transmeta.com"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.transmeta.com</I
></A
>.
</P
><P
>A project has been underway for a while to port Linux to suitable
68000-series based systems like Amigas and Ataris. The Linux/m68K FAQ is
located at <A
HREF="http://www.clark.net/pub/lawrencc/linux/faq/faq.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.clark.net/pub/lawrencc/linux/faq/faq.html</I
></A
>. The URL
of the Linux/m68k home page is <A
HREF="http://www.linux-m68k.org/faq/faq.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linux-m68k.org/faq/faq.html</I
></A
>.
</P
><P
>There is also a linux-680x0 mailing list.
See <A
HREF="online-resources.html#what-mailing-lists-are-there"
><I
>What Mailing Lists Are There?</I
></A
>.
</P
><P
>There is (or was) a FTP site for the Linux-m68k project on
<A
HREF="ftp://ftp.phil.uni-sb.de/pub/atari/linux-68k"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.phil.uni-sb.de/pub/atari/linux-68k</I
></A
>, but this address may no longer be
current.
</P
><P
>Debian GNU/Linux has ports to Alpha, Sparc, Motorola 68k, PowerPC, ARM,
IBM S/390, MIPS, HP PA-RISC, and IA-64.
A Port to amd64 is being developed.
There are mailing lists for all of them.
See <A
HREF="http://www.debian.org/MailingLists/"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.debian.org/MailingLists/</I
></A
> for general information, then follow
the "subscription" link, and find the mailing list you are interested in.
</P
><P
>One of the Linux-PPC project pages is <A
HREF="http://www.linuxppc.org"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linuxppc.org</I
></A
>,
and the archive site is <A
HREF="ftp://ftp.linuxppc.org/linuxppc"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.linuxppc.org/linuxppc</I
></A
>.
</P
><P
>There are two sites for the Linux iMac port:
<A
HREF="http://w3.one.net/~johnb/imaclinux"
TARGET="_top"
><I
CLASS="citetitle"
>http://w3.one.net/~johnb/imaclinux</I
></A
>, and
<A
HREF="http://www.imaclinux.net:8080/content/index.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.imaclinux.net:8080/content/index.html</I
></A
>.
</P
><P
>A port to the 64-bit DEC Alpha/AXP is at
<A
HREF="http://www.azstarnet.com/~axplinux/"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.azstarnet.com/~axplinux/</I
></A
>. There is a mailing list at
<TT
CLASS="literal"
>vger.redhat.com</TT
>: see <A
HREF="online-resources.html#what-mailing-lists-are-there"
><I
>What Mailing Lists Are There?</I
></A
>.
</P
><P
>Ralf Baechle is working on a port to the MIPS, initially for the R4600 on
Deskstation Tyne machines. The <I
CLASS="citetitle"
>Linux-MIPS</I
> FTP sites
are <A
HREF="ftp://ftp.fnet.fr/linux-mips"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.fnet.fr/linux-mips</I
></A
> and
<A
HREF="ftp://ftp.linux.sgi.com/pub/mips-linux"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.linux.sgi.com/pub/mips-linux</I
></A
>. Interested people may mail their
questions and offers of assistance to <A
HREF="mailto:linux@waldorf-gmbh.de"
TARGET="_top"
><I
CLASS="citetitle"
>linux@waldorf-gmbh.de</I
></A
>.
</P
><P
>There is (or was) also a MIPS channel on the Linux Activists mail server and
a linux-mips mailing list. See <A
HREF="online-resources.html#what-mailing-lists-are-there"
><I
>What Mailing Lists Are There?</I
></A
>.
</P
><P
>There are currently two ports of Linux to the ARM family of processors. One
of these is for the ARM3, fitted to the Acorn A5000, and it includes I/O
drivers for the 82710/11 as appropriate. The other is to the ARM610 of the
Acorn RISC PC. The RISC PC port is currently in its early to middle stages,
owing to the need to rewrite much of the memory handling. The A5000 port is
in restricted beta testing. A release is likely soon.
</P
><P
>For more, up-to-date information, read the newsgroup
<A
HREF="news:comp.sys.acorn.misc"
TARGET="_top"
><I
CLASS="citetitle"
>news:comp.sys.acorn.misc</I
></A
>.
There is a FAQ at <A
HREF="http://www.arm.uk.linux.org"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.arm.uk.linux.org</I
></A
>.
</P
><P
>The Linux SPARC project is a hotbed of activity. There is a FAQ and plenty of
other information available from the UltraLinux page,
<A
HREF="http://www.ultralinux.org"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.ultralinux.org</I
></A
>.
</P
><P
>The Home Page of the UltraSPARC port ("UltraPenguin") is located at
<A
HREF="http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/"
TARGET="_top"
><I
CLASS="citetitle"
>http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/</I
></A
>, although the URL may
not be current.
</P
><P
>There is also a port to SGI/Indy machines ("Hardhat"). The URL is
<A
HREF="http://www.linux.sgi.com"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linux.sgi.com</I
></A
>.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="linux-versioning"
></A
><B
>Q: </B
>How Does Linux Kernel Versioning Work?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>At any given time, there are several "stable" versions of Linux, and one
"development" version. Unlike most proprietary software, older stable versions
continue to be supported for as long as there is interest, which is why multiple versions exist.
</P
><P
>Linux version numbers follow a longstanding tradition. Each version has three numbers,
i.e., X.Y.Z. The "X" is only incremented when a really significant change happens,
one that makes software written for one version no longer operate correctly on the other.
This happens very rarely -- in Linux's history it has happened exactly once.
</P
><P
>The "Y" tells you which development "series" you are in. A stable kernel will
always have an even number in this position, while a development kernel will
always have an odd number.
</P
><P
>The "Z" specifies which exact version of the kernel you have, and it is
incremented on every release.
</P
><P
>The current stable series is 2.4.x, and the current development series is 2.5.x.
However, many people continue to run 2.2.x and even 2.0.x kernels, and they als
o continue to receive bugfixes. The development series is the code that the Linu
x developers are actively working on, which is always available for public
viewing, testing, and even use, although production use is not recommended!
This is part of the "open source development" method.
</P
><P
>Eventually, the 2.5.x development series will be "sprinkled with holy penguin
pee" and become the 2.6.0 kernel and a new stable series will then be established,
and a 2.7.x development series begun. Or, if any really major changes happen,
it might become 3.0.0 instead, and a 3.1.x series begun.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="where-can-i-get-the-latest-kernel-version"
></A
><B
>Q: </B
>Where Is the Latest Kernel Version on the Internet?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>The easiest way to update your kernel is to get the update directly
from the distribution which you are running.
</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>If you need or want to configure and compile your own kernel, the web page at
<A
HREF="http://www.kernel.org/"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.kernel.org/</I
></A
> lists the current versions of the development and production kernels.
</P
><P
>If you want to download the source code, FTP to
<TT
CLASS="literal"
>ftp.xx.kernel.org</TT
>, where <TT
CLASS="literal"
>xx</TT
> is the
two-letter Internet domain abbreviation of your country; e.g.,
<TT
CLASS="literal"
>us</TT
> for United States, <TT
CLASS="literal"
>ca</TT
> for
Canada, or <TT
CLASS="literal"
>de</TT
> for Germany. Kernel versions 2.2.x are
archived in the directory <TT
CLASS="filename"
>pub/linux/kernel/v2.2</TT
>, as are
patches for the prerelease versions. The kernel source code is archived as a
<TT
CLASS="literal"
>.tar.gz</TT
> file, and as a <TT
CLASS="literal"
>.tar.bz2</TT
> file.
</P
><P
>Follow the instructions in any of the standard references to compile the
kernel, as you would with any other custom kernel. The
<TT
CLASS="filename"
>Documentation</TT
> subdirectory contains information by the
authors of various subsystems and drivers, and much of that information is
not documented elsewhere.
</P
><P
>If you want to participate in kernel development, make sure that you sign on
to the linux-kernel mailing list to find out what people are working on.
Refer to the answer: <A
HREF="online-resources.html#what-mailing-lists-are-there"
><I
>What Mailing Lists Are There?</I
></A
>.
</P
><P
>There is a story about the features of the 2.4 series kernels at
<A
HREF="http://features.linuxtoday.com/stories/8191.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://features.linuxtoday.com/stories/8191.html</I
></A
>.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="threads-or-lightweight-processes"
></A
><B
>Q: </B
>Does Linux Support Threads or Lightweight Processes?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>As well as the Unix multiprocessing model involving heavyweight processes, which is of course
part of the standard Linux kernel, there are several implementations of
lightweight processes or threads. Recent kernels implement a thread model,
kthreads. In addition, there are the following packages available for Linux.
</P
><P
></P
><UL
><LI
><P
>GNU glibc2 for Linux has optional support for threads.
The archive is available from the same place as glibc2, <A
HREF="ftp://ftp.gnu.org/pub/gnu/"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.gnu.org/pub/gnu/</I
></A
>
</P
></LI
><LI
><P
>In <A
HREF="ftp://sipb.mit.edu/pub/pthread/"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://sipb.mit.edu/pub/pthread/</I
></A
> or <A
HREF="ftp://ftp.ibp.fr:/pub/unix/threads/pthreads"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.ibp.fr:/pub/unix/threads/pthreads</I
></A
>.
Documentation isn't in the package, but is available on the World Wide Web at
<A
HREF="http://www.mit.edu:8001/people/proven/home_page.html"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.mit.edu:8001/people/proven/home_page.html</I
></A
>.
Newer Linux libc's contain the pthreads source. The GNU Ada compiler on
<A
HREF="ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/</I
></A
>
contains binaries made from that source code.
</P
></LI
><LI
><P
>In <A
HREF="ftp://ftp.cs.washington.edu/pub/qt-001.tar.Z"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.cs.washington.edu/pub/qt-001.tar.Z</I
></A
> is QuickThreads.
More information can be found in the technical report,
available on the same site is <TT
CLASS="filename"
>/tr/1993/05/UW-CSE-93-05-06.PS.Z.</TT
>
</P
></LI
><LI
><P
>In <A
HREF="ftp://ftp.cs.fsu.edu/pub/PART/"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://ftp.cs.fsu.edu/pub/PART/</I
></A
>, an Ada
implementation. This is useful mainly because it has a lot of Postscript
papers that you'll find useful in learning more about threads. This is not
directly usable under Linux.
</P
></LI
></UL
><P
>Please contact the authors of the packages in question for details.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="version-of-linux-and-what-machine"
></A
><B
>Q: </B
>What Version of Linux and What Machine Name Is This?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Type:
</P
><P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
> $ uname -a </PRE
></FONT
></TD
></TR
></TABLE
>
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="bogomip"
></A
><B
>Q: </B
>What is a BogoMip?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>"BogoMips" is a combination of <EM
>Bogus</EM
> and
<EM
>Mips</EM
>. MIPS stands for (depending on who you ask)
<EM
>Millions of Instructions per Second</EM
>, or
<EM
>Meaningless Indication of Processor Speed</EM
>.
</P
><P
>The number printed at boot time is the result of a kernel timing
calibration, used for very short delay loops by some device drivers.
</P
><P
>According to the <I
CLASS="citetitle"
>BogoMips mini-HOWTO</I
>, the
rating for your machine will be:
</P
><P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;Common BogoMips Ratings
Processor BogoMips Comparison
--------- -------- ----------
Intel 8088 clock * 0.004 0.02
Intel/AMD 386SX clock * 0.14 0.8
Intel/AMD 386DX clock * 0.18 1 (definition)
Motorola 68030 clock * 0.25 1.4
Cyrix/IBM 486 clock * 0.34 1.8
Intel Pentium clock * 0.40 2.2
Intel 486 clock * 0.50 2.8
AMD 5x86 clock * 0.50 2.8
Mips R4000/R4400 clock * 0.50 2.8
Nexgen Nx586 clock * 0.75 4.2
PowerPC 601 clock * 0.84 4.7
Alpha 21064/21064A clock * 0.99 5.5
Alpha 21066/21066A clock * 0.99 5.5
Alpha 21164/21164A clock * 0.99 5.5
Intel Pentium Pro clock * 0.99 5.5
Cyrix 5x86/6x86 clock * 1.00 5.6
Intel Pentium II/III clock * 1.00 5.6
Intel Celeron clock * 1.00 5.6
Mips R4600 clock * 1.00 5.6
Alpha 21264 clock * 1.99 11.1
AMD K5/K6/K6-2/K6-III clock * 2.00 11.1
UltraSparc II clock * 2.00 11.1
Pentium MMX clock * 2.00 11.1
PowerPC 604/604e/750 clock * 2.00 11.1
Motorola 68060 clock * 2.01 11.2
Motorola 68040 Not enough data (yet).
AMD Athlon Not enough data (yet).
IBM S390 Not enough data (yet).
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>If the number is wildly lower, you may have the Turbo button or CPU speed set incorrectly,
or have some kind of caching problem (as described in
<A
HREF="troubleshooting.html#add-memory-system-slows"
><I
>Why Does the System Slow to a Crawl When Adding More Memory?</I
></A
>).
</P
><P
>For values people have seen with other, rarer, chips, or to
calculate your own BogoMips rating, please refer to the <I
CLASS="citetitle"
>BogoMips
Mini-HOWTO</I
>, on <A
HREF="ftp://metalab.unc.edu/"
TARGET="_top"
><I
CLASS="citetitle"
>ftp://metalab.unc.edu/</I
></A
>.
See <A
HREF="online-resources.html#howtos-and-other-documentation"
><I
>Where Is the Documentation?</I
></A
>.
</P
><P
>[Wim van Dorst]
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="does-linux-support-the-usb-bus"
></A
><B
>Q: </B
>Does Linux Support USB Devices?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Linux supports a few dozen USB devices at present,
and work is underway to develop additional device drivers.
There is a Web page devoted to the subject, at
<A
HREF="http://www.linux-usb.org"
TARGET="_top"
><I
CLASS="citetitle"
>http://www.linux-usb.org</I
></A
>. There is also LDP documentation, at:
<A
HREF="online-resources.html#world-wide-web-for-linux-stuff"
><I
>Where Is the Linux Stuff on the World Wide Web?</I
></A
>.
</P
><P
>Support for USB version 2.0 was recently added to development kernels, but is
not yet available in the 2.4 series.
</P
></DIV
></DIV
><DIV
CLASS="qandaentry"
><DIV
CLASS="question"
><P
><A
NAME="serial-ports-by-sharing"
></A
><B
>Q: </B
>Can Linux Use More than 3 Serial Ports by Sharing Interrupts?</P
></DIV
><DIV
CLASS="answer"
><P
><B
>A: </B
>Yes, but you won't be able to use simultaneously two ordinary ports which share an interrupt
(without some trickery). This is a limitation of the ISA Bus architecture.
</P
><P
>See the <I
CLASS="citetitle"
>Serial HOWTO</I
> for information
about possible solutions and workarounds for this problem.
</P
></DIV
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="general.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="disk-drives.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>General Information</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Disk Drives</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>