old-www/LDP/LG/issue37/tag/10.html

211 lines
8.2 KiB
HTML

<!--startcut ======================================================= -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<META NAME="generator" CONTENT="lgazmail v1.1H.i">
<TITLE>The Answer Guy 37: Hardware Info Under Linux: MSD.EXE Clone?</TITLE>
</HEAD><BODY BGCOLOR="#FFFFFF" TEXT="#000000"
LINK="#3366FF" VLINK="#A000A0">
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<H4>"The Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<center>
<H1><A NAME="answer">
<img src="../../gx/dennis/qbubble.gif" alt="(?)"
border="0" align="middle">
<font color="#B03060">The Answer Guy</font>
<img src="../../gx/dennis/bbubble.gif" alt="(!)"
border="0" align="middle">
</A></H1>
<BR>
<H4>By James T. Dennis,
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
Starshine Technical Services,
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A>
</H4>
</center>
<p><hr><p>
<!-- endcut ======================================================= -->
<!-- begin 10 -->
<H3 align="left"><img src="../../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Hardware Info Under Linux: MSD.EXE Clone?</H3>
<p><strong>From Stephen P. Smith on Mon, 28 Dec 1998
</strong></p>
<!-- ::
Hardware Info Under Linux: MSD.EXE Clone?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG><IMG SRC="../../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Is there a linux program(s) to would be equivelent to the msd.exe
program (in the dos/windows world).
</STRONG></P>
<P><STRONG>
I would like to know that interrupts, dma ranges, etc. my system
is using so that I can add another ethernet card to my system. I
currently have a 3Com 509B ISA card in the chasis and want to
install a second ethernet card.
</STRONG></P>
<P><STRONG>
Can you point me to an article, how-to, or FAQ. I have done some
searches and can't come up with anything.
</STRONG></P>
<P><STRONG>
Stephen Smith
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Quite a bit of that information is available from the output
of the 'dmesg' (dump boot-time kernel messages) command, and
from virtual files under the <TT>/proc</TT> directory.
</BLOCKQUOTE>
<BLOCKQUOTE>
Most of the info under <TT>/proc</TT> can be gained using common
shell commands, 'ls' and 'less' or 'cat' Some it is
summarized using the 'procinfo' command.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's also possible to get additional info using the 'lsdev'
command, the 'scanpci' command, and utilities from the
ISAPNP (plug &amp; play for the ISA bus), PCIUtils and PCMCIA
packages. You can use 'SuperProbe' for video cards.
</BLOCKQUOTE>
<BLOCKQUOTE>
Obviously there isn't a single, integrated and easy
menu driven interface for this information. I'd love to
see Quarterdeck and Symantec collaborate and put together
a combined Manifest (TM) and NDiags (TM) for Linux. I
personally think that these were the best utilities for
DOS in their class (although "System Sleuth" was pretty
good, too).
</BLOCKQUOTE>
<BLOCKQUOTE>
Some of the availability of this info is dependent on how
your kernel is configured. It's possible to compile a
stripped down Linux kernel (which can be very compact very
fast and somewhat more secure than a larger or more modular
one). Such a kernel may not recognize many of the devices
that you have installed, and Linux will generally leave
anything it doesn't recognize completely alone.
</BLOCKQUOTE>
<BLOCKQUOTE>
Generally, it is best to learn about your hardware from the
documentation provided with it. Naturally I don't practice
this as I'd like --- my systems are mostly hobbled together
from spare parts. Unfortunately most systems that most of
us purchase are <EM>woefully</EM> under-documented. The PC
industry churns through component designs and chipsets so
fast and furiously that most manufacturers can't keep track
of what they're using from on day to the next. It's a
sad and unnecessary state of affairs --- the naturally
result of <EM>too much</EM> competition and commoditization.
</BLOCKQUOTE>
<BLOCKQUOTE>
(However, without that competition and commoditization we'd
all still be paying $5,000 US for XT's --- so I can't
complain too much.)
</BLOCKQUOTE>
<BLOCKQUOTE>
Incidentally the 'ifconfig' command should tell you which
IRQ and I/O base your current card is using. If it's using
IRQ 10 and I/O base 0x300 (the default for most 3Com cards)
you can usually put the next one at IRQ 11, I/O base 0x280 or
0x320. It's pretty easy to run out of IRQ's on PC's. You
can sometimes disable your printer ports to grab IRQs 5 and
7 --- and sometimes (especially on servers) you can nix the
PS/2 mouse port to reclaim IRQ 12, and/or one or both of
your serial ports to get back 3 and 4. That gives you a
total of seven that you can distribute among SCSI and
ethernet cards in a big server. If you can take out both
IDE channels you might get back 14 and 15. Some systems
will let you use 9 and 13. As for I/O address spaces.
Those usually aren't too crowded.
</BLOCKQUOTE>
<!-- sig -->
<!-- end 10 -->
<!--startcut ======================================================= -->
<P> <hr> <P>
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
>Copyright &copy;</a> 1999, James T. Dennis
<BR>Published in <I>The Linux Gazette</I> Issue 37 February 1999</H5>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<P align="center">
<table width="98%"><tr valign="center" align="center">
<td rowspan="3" colspan="4"><A HREF="../lg_answer37.html"><IMG
SRC="../../gx/dennis/answernew.gif"
ALT="[ Answer Guy Index ]"></A></td>
<TD width="8%"><A HREF="./1.html">1</A></TD>
<TD width="8%"><A HREF="./2.html">2</A></TD>
<TD width="8%"><A HREF="./3.html">3</A></TD>
<TD width="8%"><A HREF="./4.html">4</A></TD>
<TD width="8%"><A HREF="./5.html">5</A></TD>
<TD width="8%"><A HREF="./6.html">6</A></TD>
<TD width="8%"><A HREF="./7.html">7</A></TD>
<TD width="8%"><A HREF="./8.html">8</A></TD>
<TD width="8%"><A HREF="./9.html">9</A></TD>
<TD width="8%"><A HREF="./10.html">10</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./11.html">11</A></TD>
<TD><A HREF="./12.html">12</A></TD>
<TD><A HREF="./14.html">14</A></TD>
<TD><A HREF="./15.html">15</A></TD>
<TD><A HREF="./16.html">16</A></TD>
<TD><A HREF="./17.html">17</A></TD>
<TD><A HREF="./18.html">18</A></TD>
<TD><A HREF="./19.html">19</A></TD>
<TD><A HREF="./21.html">21</A></TD>
<TD><A HREF="./22.html">22</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./23.html">23</A></TD>
<TD><A HREF="./28.html">28</A></TD>
<TD><A HREF="./29.html">29</A></TD>
<TD><A HREF="./30.html">30</A></TD>
<TD><A HREF="./31.html">31</A></TD>
<TD><A HREF="./32.html">32</A></TD>
<TD><A HREF="./33.html">33</A></TD>
<TD><A HREF="./34.html">34</A></TD>
<TD><A HREF="./37.html">37</A></TD>
<TD><A HREF="./38.html">38</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./39.html">39</A></TD>
<TD><A HREF="./41.html">41</A></TD>
<TD><A HREF="./42.html">42</A></TD>
<TD><A HREF="./43.html">43</A></TD>
<TD><A HREF="./44.html">44</A></TD>
<TD><A HREF="./45.html">45</A></TD>
<TD><A HREF="./46.html">46</A></TD>
<TD><A HREF="./47.html">47</A></TD>
<TD><A HREF="./48.html">48</A></TD>
<TD><A HREF="./49.html">49</A></TD>
</tr></table>
</P>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<P> <hr> <P>
<!-- begin lgnav ::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<A HREF="../index.html"
><IMG SRC="../../gx/indexnew.gif" ALT="[ Table Of Contents ]"></A>
<A HREF="../../index.html"
><IMG SRC="../../gx/homenew.gif" ALT="[ Front Page ]"></A>
<A HREF="../lg_bytes37.html"
><IMG SRC="../../gx/back2.gif" ALT="[ Previous Section ]"></A>
<A HREF="../york.html"
><IMG SRC="../../gx/fwd.gif" ALT="[ Next Section ]"></A>
<!-- end lgnav ::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
</BODY></HTML>
<!--endcut ========================================================= -->