LDP/LDP/howto/linuxdoc/SPARC-HOWTO.sgml

1088 lines
35 KiB
Plaintext

<!doctype linuxdoc system>
<article>
<title>SPARC-HOWTO.
<author>Lionel, trollhunter Bouchpan-Lerust-Ju&eacute;ry
<htmlurl url ="mailto:trollhunter@linuxfr.org" name="&lt;trollhunter@linuxfr.org&gt;">
<date>v0.0.3 November 2000
<abstract>
The SPARC family of microprocessors is a very good implementation
of the RISC design,
SPARC based workstations are usually very well engineered products,
thus Linux on SPARC is a
winning combination both in performance and ease of use. Actually
this combination is not as widspread as the Linux/x86; this HOWTO
should help you step by step to make an informed decision: try it you will not
regret it.
</abstract>
<toc>
<sect>Preface.
<p>
This document is a step by step guide meant to
provide information in order
to help you running Linux on SPARC based workstations,
As these computers are quite different from PCs there is
an hardware section, this should help you on understanding, how they
work, what to expect from the various CPUs and models.
<p>
I am not a SPARC specialist, nor a Solaris or Linux guru, I am just
someone who is realy found of well engineered product, and I wish to
help you in choosing your hardware and finding information. Thus I
have tried to write down this document in order to ease your path.
<p>
I hope this document will help you and you will have a lot of fun
with your SPARC Workstation.
<sect>SPARC, which one ?
<p>
We are only dealing with, SPARC based
workstations, in order to check, just
type <tt>uname -m</tt> command and you should read
something like <tt>sparc4x</tt> where x is blank,c,d,m,u
if the system runs Solaris, or <tt>sparc</tt> for 32 bits SPARC architectures
and <tt>sparc64</tt> for 64 bits SPARC architectures if it runs Linux.
2.2.x
<p>
SPARC stands for Scalable Processor ARChitecture,
it derives from research done between 1984-1988
on the RISC architecture at UC Berkeley.
It exists 3 versions of this archiecture, SPARC-V7, SPARC-V8
( 32 bits ) and SPARC-V9 ( 64 bits ).
As you are likely to encounter a lot of implementations of
the SPARC architecture, I have summarized the main features
of theses processors.
<sect1>Sun SPARC
<p>
This is quite obsolete, it is an implementation of the
SPARC-V7 ; its main feature are an Integer unit ( IU ), an external Floating Point Unit ( FPU ),
an unified data + instruction 64KB direct associative cache, and an Memory Managment Unit ( MMU ).
There is a 4 stage pipeline for the integer instructions
( fetch F, decode D, exec E, update WB )
FPU and IU are synchronized
<sect1>Super SPARC
<p>
This is Texas Instrument and Sun's brainchild, it is usualy found at clok rates around 50Mhz
featuring up to 1MB L2 cache, it is available both on single and dual processor modules
( SparcStation 10 and SparcStation 20 ). The higher clock frequency I
have encountered is 60Mhz.
<p>
On a technical point of view this is a SPARC-V8 implementation,
it is a superscalar processor,
having 2 caches, one for instruction the other one for data.
<itemize>
<item>The 20kB instruction cache is a 5 way associative.
<item>The 16KB data cache is 4 way associative.
</itemize>
<sect1>Micro SPARC
<p>
This is once again Texas Instrument and Sun's brainchild, you can find
it in the SparcStation Classic, SparcStation LX, at frequency up to
50Mhz. Its derivative the Micro SPARC II can be found in SparcStation
4, SparcStation 5 at frequencies up to 110Mhz.
<p>
On a technical point of view, its main features are a high level of
integration, having 2 caches, one for instructions, the other one for
data.
<itemize>
<item>A 4KB instruction direct associative cache.
<item>A 2KB data direct associative cache.
</itemize>
It is not possible to had an L2 cache.
If wish to learn more about the MicroSPARC processor you can browse
Sun's
<htmlurl
url="http://www.sun.com/microelectronics/microSPARC/"
name=" Ultra SPARC"> ressources.
<sect1>Hyper SPARC
<p>
This processor was introduced by ROSS in 1993, it is usualy found in the
SparcStation 10, and SparcStation 20, at frequencies up to 150Mhz
( I have heard of 200Mhz dual processor modules, but Have not
witnessed one yet ). It can be found on single or dual
processor modules.
<p>
On a technical point of view it is an implementation of the SPARC-V8,
it is superscalar. It can be found with L2 cache up to 512KB
<sect1>Ultra SPARC
<p>
The Ultra SPARC processor is an extension of the SPARC-V9
architecture, it is a 64 bits processor, it features some video
processing instructions. It is found in all the workstation whose name
start with Ultra.
<p>
The Ultra SPARC II is an improvement of the Ultra SPARC, the
Ultra SPARCIII is actually the second generation of Ultra SPARC
processors, it was first introduced in the SunBlade 1000 Workstation.
If wish to learn more about the UltraSPARC processors you can browse
Sun's
<htmlurl
url="http://www.sun.com/microelectronics/UltraSPARC/"
name=" Ultra SPARC"> ressources.
<p>
You may read the
<htmlurl
url="http://linuxdoc.org/HOWTO/CPU-Design-HOWTO.html"
name="CPU-Design-HOWTO">, this HOWTO has a lot of interesting links
when it comes to studying the CPUs.
<p>
To summarize, the 32 bits workstations are the:
<itemize>
<item>
The sun4 workstation is the
sun4/330 model.
<item>
The sun4c workstations are the
SparcStation 1,2, IPC and IPX models.
<item>
The sun4m workstations are the
SparcStation 5, 10 and 20.
</itemize>
Only the SparcStation 10 and SparcStation 20 are SMP
capable: up to 2 CPU modules.
For more information on the SparcStation 5, 10, 20
you can read Sun's
<htmlurl
url="http://docs.sun.com/ab2/"
name=" documentation ">online or download it available.
<p>
The following model have an 64 bits UltraSPARC
architecture ( sun4u ).
SunUltra 1, 2, 5, 10, 30, 60, 80 and SunBlade 1000.
The SunUltra 2, 60, 80 and SunBlade 1000 are SMP capable,
with the Ultra 80 and SunBlade 1000 accepting up to 4 CPU modules,
the SunUltra 2 and 60 accepting only 2 CPU modules.
<p>
The SunBlade 1000 is the latest one featuring Sun's latest marvel
the Ultra III CPU, at a premium price of course.
You can have a summary of the UltraWorkstation still in production
at
<htmlurl
url="http://www.sun.com/desktop/products/ultrafeatures.html"
name="Sun's"> website.
<p>
A lot of information has been compiled in
the
<htmlurl
url="http://www.aceshardware.com/files/sun-hardware-faq.txt"
name="Sun hardware reference"> that is found on AcesHardware's website,
or on
<htmlurl
url="http://www.sunhelp.org/pages.php?page=info-ref"
name="SunHelp"> 's website.
<sect1>Deciphering the CPUs
<p>
At first, a reference like SM61 or RT-200-D-125/512 seems
to be, to say the least, quite cryptic.
Actually, understanding theses references is really easy.
<sect2>Ross Technology.
<p>
Theses CPUs's naming scheme is <tt>RT-a00-b-freq/cache</tt>
where
<itemize>
<item><tt>a</tt> is a digit:
<itemize>
<item><tt>1</tt> SparcStation 10.
<item><tt>2</tt> SparcStation 20.
<item><tt>6</tt> SPARC MP600 ( not exactly a workstation ).
</itemize>
<item><tt>b</tt> is a letter:
<itemize>
<item><tt>D</tt> Dual CPU.
<item><tt>Q</tt> Quad CPU.
<item><tt>S</tt> Single CPU.
</itemize>
<item><tt>freq</tt> The frequency expressed in Megahertz.
<item><tt>cache</tt> The amount of cache memory expressed in Kilobytes.
</itemize>
When theses modules are in a workstations the naming convention is
HSxy, for example <tt>ywing</tt> is a SparcStation 20 HS22,
thus it is easier to have a look inside the workstation.
<sect2>SM modules.
<p>
This table is extracted from the
<htmlurl
url="http://faqaboss.sunhelp.org/"
name="FAQABOSS" >
<code>
Name Speed( MHz ) Cache( MB ) Number of SuperSparc
Processors Series
SM20 33 0 1 I
SM30 36 0 1 I
SM40 40 0 1 I
SM41 40 1 1 I
SM50 50 0 1 I
SM51 50 1 1 I
SM512 50 1 2 I
SM51-2 50 2 1 I
SM61 60 1 1 I
SM61-2 60 2 1 I
SM71 75 1 1 II
SM71-2 75 2 1 II
SM81 85 1 1 II
SM81-5 85 2 1 II
</code>
Warning: the <tt>SM100</tt> is a <tt>RT-600-D-40</tt>
<p>
<sect2>Cypress.
<p>
Cypress manufactured SPARC compliants processors;
AFAIK their naming scheme is CYnnn.
As you can see, this is easy to understand.
<sect>Buying a SPARC workstation.
<p>
You have decided to buy a SPARC based workstation, now you
can tell what CPU each model sports, but can you tell how that
particuliar model looks like? How its is inside?
<p>
Do not worry, this section will help you on that topic as well as
providing you with some hints on how to inspect and test the hardware.
<sect1>Gaigning a visual familiarity with SPARC hardware
<p>
PC hardware is everywhere and usualy one is quite
familiar with it, this is not exactly the case with SPARC based hardware,
even more when it comes to the innards of a workstation. The good news
is that it exists some sites on the web, where you can find pictures
of Sun hardware, with some very detailed shots, thus you should be
able to instantly identify the model and its condition prior to buy it.
The two main site where I usualy go are:
<itemize>
<item> <htmlurl url="http://www.sun.com/"
name="sun ">In Sun's database, you can find technical data as well as
picture of some of Sun's product, the pictures are crisp, and the
hardware is always at its best, this is technicaly interesting, in
order to compare brand new hardware and the used one that is usualy
featured on the two sites below.
<item> <htmlurl
url="http://www.black-cube.net/Sun/"
name="HAL"> This site features very detailed pictures of a lot of
hardware, from CPU modules to Servers, even mice.
<item><htmlurl
url="http://www.obsolyte.com/sunPICS/"
name="obsolyte"> This site has different pictures, it is very useful too.
</itemize>
<sect1>Sun made hardware or clones ?
<p>
On the one hand, it is very easy to find information on Sun hardware, while it can be
difficult to find it for clone systems on the other hand it should be
more fun to work with exotic hardware.
<p>
Clone systems have been or are still manufactured, at least by:
<itemize>
<item>Fujitsu.
<item>Ross
<item>Tadpole/RDI manufactures SPARC based laptops.
<item><htmlurl
url="http://www.tsti.com"
name="Tatung">
<item>Toshiba, used to manufacture SPARC based laptops:
The AS1000.
</itemize>
<sect1>Where to buy.
<p>
Of course if you buy first hand hardware everything should be fine,
but if you decide to go for second hand hardware, you will have to
decide how you want to buy it, and you should be able to test it by yourself.
<p>
Second hand hardware can be brought from Sun as
refurbished hardware, at auction websites, or in
specialised stores, or directly from companys that upgrade their
hardware.
<sect1>Checklist
<p>
When it comes to second hand hardware one has to be as cautious as
possible about the source, and the condition of that hardware.
<p>
For the source of the hardware, if you can track it, it is a very good
point. If you can't track it, it is up to you to decide if you trust
the seller or not ( If the seller cannot give you the reference of the
hardwre and if, obviously he/she is clueless about Sun hardware, you
should switch to condition red ).
<p>
Another interesting point is to see if check is accepted as a
payement.
<p>
If you can check the hardware before buying it
then first have a general look at it, search for
cracks, for stains; check the connector's pin. If this first
inspection is OK, then ask to see the inside, look for spills, watch
carefuly the connectors, then if it is OK ask to see it running,
watch carefully boot messages, issue the <tt>dmesg|more</tt>
or if it runs Solaris you can issue the <tt>more /var/adm/messages</tt> command,
and also very important listen to your computer, do you hear unusual
noises? Does it smell OK?. Then enter the OpenBoot by the
<tt>stop+a</tt> command and run some tests ( see the OpenBoot section
).
When you have decided to purchase it, it is very important that you
always make sure that the workstation you are purchasing is the one
you have tested: always keep an eye on it, do not let someone go to
the backoffice with it for example, do not accept to leave without
your workstation.
<p>
Then, when you are at home, recheck it as if it was the first time you
see it.
If it comes with CDROM drive, try to mount/umount a few CDs
and read them in order to check that device. If there is a floppy disk
read/write/format a few floppys, this should be a good test.
<p>
Of course, it exists tools to automaticaly test the hardware, but
usualy you do not have them when you need them, thus the script
below relies only on ressources provided by a Linux base system.
<p>
You should run the following script for three days, basicaly it
is going to use the CDROM, floppy and hard drive, and to reboot
the computer every 3 hours. This should stress it,
<code>
#
# Enter this in the crontab(5)
# run the torture.sh script every 3 hours if possible
#
0 */3 * * * /root/torture.sh
</code>
Where <tt>torture.sh</tt> is
<code>
#!/bin/sh
#
# these are for controlling the loops
# the CDLIMITS and FDLIMITS
# are for the CD and FD loops
#
CPT=1
CDLIMIT=3
FDLIMIT=10
#
# to which devices are
# CDROM and floppy attached
#
CDROM=/dev/sr0
FLOPPY=/dev/fd0
#
# where is the program we
# intend to compile
PATH=/path_to_big_package_to_compile
#
# this section si meant to
# test the CDROM and floppy drives
# comment what you do not need to
# test
while [ $CPT -le $CDLIMIT ]
do
#
# CDROM drive
#
mount -rt iso9660 $CDROM /cdrom
find /cdrom -exec cat {} \; >>/dev/null 2>/dev/null &
umount /cdrom
CPT=$(($CPT+1))
done
#
# floppy drive
#
CPT=1
while [ $CPT -le $FDLIMIT ]
do
mke2fs -c $FLOPPY >/dev/null 2>&1
mount -t ext2 $FLOPPY /floppy
cd /bin/
cp dd ps echo sh /floppy
find /floppy -exec cat {} \; >>/dev/null 2>/dev/null &
umount /floppy
CPT=$(($CPT+1))
done
#
# The big, intensive
# compilation
#
cd $PATH
#
# now compile
#
make
#
#
# we remove every .a .o .s and every executable
#
find $PATH -name "*.[aos]" -exec rm -f {} \; >/dev/null 2>&1
find $PATH -exec test -x {} \; -exec rm -f {} \; >/dev/null 2>&1
#
# time to reboot
#
reboot
</code>
Of course you should run this script once in order to know how
much time it takes to complete, this is just an idea on how to
automate things.
<sect>Linux on SPARC: 2 kernels.
<p>
Actually Linux on SPARC architecture comes in two flavors:
<itemize>
<item>A 32 bits kernel for the Sun SPARC, Super SPARC, Micro SPARC and
Hyper SPARC Processors.
<item>A 64 bits kernel for UltraSPARC based workstations.
</itemize>
In both case most applications run in 32 bit ( 32 bit userland ).
There is a comprehensive
<htmlurl
url="http://www.ultralinux.org/faq.html"
name=" FAQ "> on
<htmlurl
url="http://www.ultralinux.org"
name="UltraLinux">'s website.
<sect>Choosing a distribution.
<p>
You are very lucky, it seems that you can pick the one you like.
In order to help you with this task here are some links, that should
help you to make an informed decision.
<p>
<sect1>Caldera Open Linux.
<p>
The 2.2 release of OpenLinux for SPARC platform can be downloaded at
<htmlurl
url="ftp://ftp.openlinux.org/pub/sparclinux/"
name="ftp://ftp.openlinux.org/pub/sparclinux/">
You can join the mailing list by sending a mail to
<htmlurl url ="mailto:majordomo@openlinux.org" name="&lt;
majordomo@openlinux.org &gt;"> with subscribe sparclinux in the body.
<sect1>Debian GNU/Linux.
<p>
Debian GNU/Linux runs on SPARC platform;
you can find a lot of informations about this port at the
<htmlurl
url="http://www.debian.org/ports/sparc/"
name="http://www.debian.org/ports/sparc/"> webpage
You can join the mailing list by sending a mail to
<htmlurl url ="mailto:debian-sparc-request@lists.debian.org" name="&lt;
debian-sparc-request@lists.debian.org &gt;"> with subscribe as the subject.
<sect1>Linux Mandrake.
<p>
Mandrake corporate server for SPARC can be downloaded at
<htmlurl
url="ftp://rpmfind.net/linux/Mandrake/iso/corporate-1.0/sparc"
name="ftp://rpmfind.net/linux/Mandrake/iso/corporate-1.0/sparc">
It consists of two ISOs, the core distribution is the *inst.iso one and
the other one, *ext.iso, is the extension CD.
<sect1>RedHat Linux.
<p>
The latest RedHat Linux distriution is the 6.2; you can download it
at
<htmlurl
url="ftp://rufus.w3.org/linux/redhat/redhat-6.2/sparc/"
name="ftp://rufus.w3.org/linux/redhat/redhat-6.2/sparc/"> for example.
The mailing list can be joined by sending a mail at
<htmlurl url ="mailto:sparc-list-request@redhat.com" name="&lt;
sparc-list-request@redhat.com &gt;"> with subscribe as the subject.
At the time of this writting
RedHat has announced its intention not to support anymore SPARC Linux in
the future.
<sect1>Slackware Linux.
<p>
This distribution is unsupported at the time of this writting,
and is not available as ISO.
You can download it at
<htmlurl
url="ftp://ftp.slackware.com/pub/slackware/unsupported/protopkg/"
name="ftp://ftp.slackware.com/pub/slackware/unsupported/protopkg/">
<sect1>SuSe Linux.
<p>
The SuSe Linux 7.0 distribution is quite complete, you have 4 ISOs to
download. You can grab it at
the following URL:
<htmlurl
url="ftp://ftp.suse.com/pub/suse/sparc"
name="ftp://ftp.suse.com/pub/suse/sparc">
You can join the mailing list by sending a blank mail to
<htmlurl url="mailto:suse-sparc-subscribe@suse.com" name="&lt;
suse-sparc-subscribe@suse.com &gt;">
<sect1>TurboLinux.
<p>
<htmlurl url="http://www.turbolinux.com"
name="TurboLinux ">
Workstation 6.1 for intel ships with a
SPARC developper release CD.
<p>
To install Linux on a SPARC based computer, should be strightforward
if you follow the informations provided by your distribution.
<p>
To boot from a floppy drive you have to have an install image on a
floppy disk and to issue the <tt>boot floppy</tt> from the OpenBoot.
<p>
If your workstation does not have a CDROM or a floppy drive, you can always try
to perform a network installation using <tt>NFS</tt> as explained by
this French document:
<htmlurl
url="http://www.linux-france.org/article/materiel/sparc-install/Sparc-netinstall.html"
name="http://www.linux-france.org/article/materiel/sparc-install/Sparc-netinstall.html">
. Basicaly, you have to set up an <tt>NFS</tt> server and to boot your
workstation using the
<tt>boot net vmlinux nfsroot=192.168.52.12:/tmp</tt>
in order to access the image that is exported by the
<tt>192.168.52.12</tt> workstation on the <tt>/tmp</tt> directory.
<sect>Working with the Openboot.
<p>
In this section, I will give you an overview of what is the OpenBoot,
and
you will be given the main commands you need to know in order to test
your hardware and to install Linux.
<sect1>What is the OpenBoot?
<p>
If you are used to PC hardware, you are used to interact with
its BIOS. SPARC computers have an Openoot, it may seem to be like
your BIOS, but it is actually far more powerfull.
The Openoot performs the following tasks:
<itemize>
<item>Testing and initializing the hardware.
<item>Starting the operating System.
<item>Giving you acces to a set of tools to program and to debug it.
</itemize>
The programming language is FCode, if you can program the Forth
langage, you can program it.
<p>
In this section, we will juste use a small set of the OpenBoot's
capabilities, in order to test hardware and to boot the system.
First you have to enter in the OpenBoot, just hit the <tt>stop</tt>
and <tt>a</tt> keys simultaneously. Then you should see a <tt>ok</tt>
prompt, if instead you see the <tt>&gt;</tt> prompt then type
<tt>n</tt>. Now you can proceed to the next section.
<sect1>Diagnostics commands.
<p>
The OpenBoot, gives you a lot of commands to test
and to gather information about your hardware.
<itemize>
<item><tt>.version</tt> Displays version and date of the startup PROM.
<item><tt>banner</tt> You will see the banner, that is displayed at
power-on. It is useful to gather some data about CPUs.
<item><tt>pcia-probe-list</tt> Test PCI on computers that have a PCI bus.
<item><tt>module-info</tt> This will display the Buses clockspeed,
and processors frequency and amount of cache.
<item><tt>probe-scsi</tt> This will test all devices connected to the on board
SCSI controler.
<item><tt>probe-scsi-all</tt> This will test all devices connected to all
the SCSI controlers.
<item><tt>show-devs</tt> This displays all installed and probed devices.
<item><tt>show-sbus</tt> Use this, if you just want to display a list of
installed and probed SBus devices.
<item><tt>test-all</tt> This will test all devices in the
system that have a self test program.
<item><tt>test floppy</tt> If a floppy drive is installed, it will test it
reminding you to have a formated floppy disk inside.
<item><tt>test-memory</tt> If the system <tt>diag-switch?</tt> is set to
<tt>true</tt>, this will test the memory.
<item><tt>test net</tt> This will test the network interfaces
<item><tt>watch-aui</tt> This will test the AUI ethernet link.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort.
<item><tt>watch-clock</tt> This will test the real time clock chip, it
will tick once a second. To stop this test strike any key.
<item><tt>watch-net</tt> This will check the network connection ( both
AUI and TP ). You will see '.' for good packets and 'X" for bad
ones. Strike any key to abort.
<item><tt>watch-net-all</tt> This will test all Ethernet interfaces.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort. When you abort one, it will test the next one.
<item><tt>watch-tpe</tt> This will check the TPE ethernet interface.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort.
</itemize>
<sect1>Boot commands.
<p>
The OpenBoot allows you to boot from various devices, the command
you are the more likely to enter are below.
<itemize>
<item><tt>boot</tt> Boot kernel from default device.
<item><tt>boot cdrom</tt> Boot kernel from CDROM drive.
<item><tt>boot net-tpe</tt> Boot kernel from network urnel from CDROM drive, this is the
command you are the more likely to type when installing Linux.
<item><tt>boot net</tt> Boot kernel from network using auto-selected
interface.
<item><tt>boot net-aui</tt> Boot kernel from network using AUI
interface.
<item><tt>boot net-tpe</tt> Boot kernel from network using TPE
interface.
<item><tt>boot tape</tt> Boot default file from tape.
</itemize>
<sect1>Misc commands.
<p>
<itemize>
<item><tt>eject-floppy</tt> Ejects the floppy.
<item><tt>power-off</tt> Poweroff the workstation.
</itemize>
You can poweroff your workstation, when you are working with the
OpenBoot : just type <tt>power-off</tt>
For more informations on the OpenBoot you can read it's
<htmlurl
url="http://www.sunworld.com/swol-10-1995/swol-10-openboot.html"
name=" FAQ">
<sect>Hard drive buses.
<p>
Depending on their architecture, the worstations are likely to feature
one of the following hard drive buses.
<sect1>SCSI-SCA.
<p>
An SCSI connector is located at the rear of the Workstation;
the SCA chanel is found on the internal bus of the SPARC Worstations, it
can be basicaly seen as an SCSI bus that provides power supply and
assigns SCSI ID to the peripherals.
<sect1>EIDE.
<p>
This is found for example in an Ultra 5 or Ultra 10 workstations
<sect1>FC-AL
<p>
It is used by the SunBlade 1000 workstation.
<sect>CDROM: specific settings.
<p>
The easiest way to install linux on SPARC workstation is to use a
CDROM. If your workstation does not have a CDROM you can plug an
external SCSI CDROM drive, but there are two things to do or you
are doomed to fail:
<itemize>
<item>When you issue the <tt>boot cdrom</tt> command, the CDROM is
mapped to ID6.
<item>Your CDROM player's block size should be setted up on 512.
</itemize>
As a rule of thumb, nearly all CDROM drives can be assigned to ID #6 but be
carefull about the block size setting.
<sect>SILO.
<p>
The Sparc Improved Boot LOader ( SILO ), is the boot loader that is
used in the SPARC architecture. It allows you to boot Linux, Solaris
or SunOS. It can load a Linux kernel from ext2, iso9660, UFS or
ROMFS. From the SILO's README:
<p>
This is the first attempt at a complete boot loader for Linux
on the Sparc. Because of the lack of space on the bootblock, we have
to do it in two steps, the first step is a very simple loader based on
Peter Zaitcev's silo (we will call this the first stage loader) which
should fit in 512B and its sole purpose is to load a more
complete bootstrap loader, herein refered to as the second stage boot
loader. The cool thing about the second stage loader we implemented is
that it makes use of the ext2 library (provided with the ext2fs tools) and
some ufs code, and thus allows the loader to access any file on a ext2 fs
and ufs, uses silo.conf, handles gunzipping and a lot of other things.
This is different from Linux/i386 lilo which needs a map for each
kernel. In silo we just keep one map file for the second stage
loader, we don't expect you to be changing the second stage loader on
your daily routine (you can do so, you will just need to use a tool to
reinstall the maps).
<p>
Actually, IMHO it is easier to use than LILO.
<sect>Keyboard and mouse.
<p>
Most of the sun4m workstation have a special connector for the
keyboard. In this case the mouse is connected indifferently to
left or the right side of the keyboard. Some workstations have a
PS2 connector, it is very easy to spot the difference.
The keyboards you are the more likely to encounter are the type4 and type5.
<sect>X Window.
<p>
XFree, usualy, runs fine on theses systems.
The XServer for the Sun hardware should be the Xsun, XsunMono or Xsun24 one.
<sect>SMP.
<p>
Ouaich, SMP is supported, and I am sure that ROSS's dual CPU
modules are supported as you can see by yourself:
<code>
piou@ywing:~ > cat /proc/cpuinfo
cpu : ROSS HyperSparc RT625 or RT626
fpu : ROSS HyperSparc combined IU/FPU
promlib : Version 3 Revision 2
prom : 2.25
type : sun4m
ncpus probed : 2
ncpus active : 2
Cpu0Bogo : 125.33
Cpu1Bogo : 125.33
MMU type : ROSS HyperSparc
invall : 0
invmm : 0
invrnge : 0
invpg : 0
contexts : 4096
CPU0 : online
CPU1 : online
piou@ywing:~ >
</code>
<p>
The SparcStation 10 and SparcStations 20 are SMP capable machine and
according to the
<htmlurl
url="http://faqaboss.sunhelp.org/"
name="FAQABOSS" >
the following combinations are known to work :
<itemize>
<item>2xSM40 ( model 402 )
<item>2xSM41 ( model 412 )
<item>2xSM51 ( model 512 )
<item>2xSM512 ( model 514 )
<item>2xSM61 ( model 612 )
<item>2xSM71 ( model 712 )
<item>2xSM81 ( model 812 )
</itemize>
And, as stated earlier, CPU modules in SparcStations 10 and can run a
different clock speeds, the following ones __SHOULD__ work:
<itemize>
<item>2xSM50
<item>SM41, SM51
<item>SM41, SM61
<item>SM51, SM61
<item>SM71, SM81
</itemize>
If you want to learn more about SMP and Linux you can read the
<htmlurl
url="http://www.linuxdoc.org/HOWTO/SMP-HOWTO.html"
name="SMP-HOWTO" >
<p>
How does it performs? Well, it is fast, really fast. Some of the java
Demos can run faster on a dual HyperSparc 125Mhz 128MB ( <tt>ywing</tt> ) than on a dual
celeron BP6 433@433Mhz 192MB ( <tt>calimero</tt> ). The same applies for the Gimp. When it
comes to compiling <tt>calimero</tt> runs faster than <tt>ywing</tt>. Both computers
running 2.2.16 kernel and <tt>calimero</tt>'s hard disk subsystem is full SCSI.
<p>
One important detail when you plan to have different CPU modules in
your computer is to have the same kind of modules, you cannot mix
SuperSparc and HyperSparc for example, but you can have an odd number
of CPUs, for example 3. They are said to be able to run modules
at different clock speed as written in this article form
<htmlurl
url="http://www.aceshardware.com/Spades/read.php?article_id=76"
name="AcesHardware">
, but I have not witnessed it.
I plan to upgrade <tt>ywing</tt> to 4 CPU in order to see how the performance
scales.
<sect>The sound.
<p>
The sound is supposed to work under Linux, using the <tt>ioctl</tt> application.
On my SparcStation 20, the sound works fine under Solaris8, but I have not yet managed to hear
anything under Linux ( The Sound of Silence? ).
<p>
You can read the Linux/Sparc audio webpage at
<htmlurl
url="http://www.dementia.org/~shadow/sparcaudio.html"
name="sparcaudio"> for more informations.
<sect>Serial port.
<p>
Sun workstations ususaly have 2 serial ports, but
on sun4m workstation there is usualy only one serial connector at the rear,
you need a special Y cable in order to have access to both ports.
<sect>Ressources.
<p>
The following sites are given for your information, I am independent
from them and does not represent them. If you would like to suggest a
website or to add any information do not hesitate to email me.
<sect1>Information sites.
<p>
<itemize>
<item>Ace's Hardware:
<htmlurl
url="http://www.aceshardware.com/"
name="http://www.aceshardware.com/">
An hardware information site having a SPARC area, actually
the whole site runs on a SparcStation 20 SM71, 128MB ! Ouaich,
definitively not an Intel clone.
<item>ArsTechnica:
<htmlurl
url="http://arstechnica.com/cpu/index.html"
name="http://arstechnica.com/cpu/index.html"
> ArsTechnica is an information website with a good
CPU section.
<item>Black-Cube:
<htmlurl
url="http://www.black-cube.net/Sun/"
name="http://www.black-cube.net/Sun/" > Pictures of various
SPARC hardware : IMHO great site.
<item>LinuxDoc:
<htmlurl
url="http://www.linuxdoc.org"
name="http://www.linuxdoc.org" > homesite of the LDP.
<item>Obsolyte:
<htmlurl
url="http://www.obsolyte.com/sunPICS/"
name="http://www.obsolyte.com/sunPICS/"> Nice pictures from various
sun Hardware.
<item>SPARC International, Inc.
<htmlurl
url="http://www.sparc.org/"
name="http://www.sparc.org/" >
As the name implies, a lot of information about SPARC architecture.
<item>Sun:
<htmlurl
url="http://docs.sun.com/"
name="http://docs.sun.com/" >
the starting node to access documentation on Sun Microsystems
website.
<item>SunHelp:
<htmlurl
url="http://sunhelp.org/"
name="http://sunhelp.org" >
A good source of information about Sun Hardware and Solaris OS. Has a
lot of links and good documentation on site.
<item>UltraLinux:
<htmlurl
url="http://www.ultralinux.org/"
name="http://www.ultralinux.org/" > If you need information about the
Linux Kernel on SPARC architecture it is a very good place: "Bring
your penguin into the Sun".
</itemize>
<sect1>Auction sites.
<p>
Among the various Auction websites available on the net you can try
theses ones. Remember to be very cautious when you purchase hardware (
see the Buying a SPARC workstation section. )
<itemize>
<item>Ebay:
<htmlurl
url="http://www.ebay.com/"
name="http://www.ebay.com" >
Ebay, and its regional sites have got a lot of
Workstations.
<item>Ibazar:
<htmlurl
url="http://www.ibazar.com/"
name="http://www.ibazar.com/" > The French Ibazar site has ususaly a lot of
Workstations.
<item>Yahoo! Auctions:
<htmlurl
url="http://auctions.yahoo.com/"
name="http://auctions.yahoo.com/">
This is the well known site.
</itemize>
<sect>Thanks.
<p>
Among the many people who showed me how great Unix and the Unix
machine can be, some people have earned a special place
I would like to thank them:
<itemize>
<item>My &quot;Vieux matou&quot; Michel F. Who gave me my first acount
on a real Unix machine, and took the time to answer my questions,
showing me among other things how to take advantage of the hardware's
feature.
<item>Nathalie S. Who was always able to guess at the speed of light
what went wrong and fixed it on the fly. And took time to install the
tools I needed.
<item>Yves D. Who among other things always welcomed my questions, and
whose office was always open even late in the evening.
</itemize>
Both of them beeing real Sysadmin and teatchers
from the trenches, have a very
deep knowledge and understandement of the Hardware and Software.
<sect>Copyright, Disclaimer and Trademarks
<p>
<sect1>Copyright.
<p>
Copyright &copy; 2000 by Lionel, trollhunter Bouchpan-Lerust-Ju&eacute;ry.
This document may be distributed under the terms set forth in the
GNU Free Documentation Licence
<url
url="http://www.gnu.org/copyleft/fdl.txt"
name="http://www.gnu.org/copyleft/fdl.txt"> .
This documentation is distributed in the hope that it will be useful, but without any warranty. The information in this document is correct to the best of my knowledge, but there's a always a chance I've made some mistakes, so don't follow everything too blindly, especially if it seems wrong. Nothing here should have a detrimental effect on your computer, but just in case I take no responsibility for any damages ocurred
from the use of the information contained herein.
<p>
In this document you will encounter some commercial products and
brands. Theses products are cited for information purpose, it is not
an endorsement from the author. The trademarks belong to their respective
owners.
<p>
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
or any later version published by the Free Software Foundation;
with the Invariant Sections being :
&quot;Copyright, Disclaimer and Trademarks&quot;
&quot;Preface.&quot;,
&quot;SPARC, which one ?&quot;,
&quot;Buying a SPARC workstation.&quot;,
&quot;Linux on SPARC: 2 kernels.&quot;,
&quot;Choosing a distribution.&quot;,
&quot;Working with the Openboot.&quot;,
&quot;Hard drive buses.&quot;,
&quot;CDROM: specific settings.quot;,
&quot;SILO.&quot;,
&quot;Keyboard and mouse.&quot;,
&quot;X Window.&quot;,
&quot;SMP.&quot;,
&quot;The sound.&quot;,
&quot;Serial port.&quot;,
&quot;Ressources.&quot;,
&quot;Thanks.&quot;,
&quot;Revision History.&quot;,
, with the
Front-Cover Texts being &quot;title&quot; and &quot;abstract.&quot;
, and with no Back-Cover Texts .
<p>
<sect1>Administrativia.
<p>
This text is included in the LINUX DOCUMENTATION PROJECT
<htmlurl
url="http://www.linuxdoc.org/HOWTO"
name="http://www.linuxdoc.org/HOWTO"> .
<p>
The latest version of this document is available in HTML format at
<htmlurl
url="http://www.theWearables.com/mirrors/SPARC-HOWTO/SPARC-HOWTO.html"
name="http://www.theWearables.com/mirrors/SPARC-HOWTO/SPARC-HOWTO.html">
If you need a postcript file, you can grab it at
<htmlurl
url="http://www.theWearables.com/mirrors/SPARC-HOWTO/SPARC-HOWTO.ps.gz"
name="http://www.theWearables.com/mirrors/SPARC-HOWTO/SPARC-HOWTO.ps.gz">
<p>
If you wish to mirror it or to translate it, please contact me.
<p>
Lionel, Trollhunter Bouchpan-Lerust-Ju&eacute;ry
<htmlurl
url="mailto:trollhunter@linuxfr.org"
name="&lt;trollhunter@linuxfr.org&gt;">
or at <htmlurl
url="mailto:boucli27@altavista.net"
name="&lt;boucli27@altavista.net&gt;">
<sect>Revision History.
<p>
<itemize>
<item>November 2000. v0.0.3
<item>November 2000. First release v0.0.1
</itemize>
</article>
</linuxdoc>