 2008/05/10
|
Last update 2001/07/18
The Labs - Design & Functionality For The Netx86 based Computers aka PC
The x86-based CPUs (386, 486, 586 aka Pentium and so forth) used in PC's are synonym for
Personal Computers (PC) these days. This page gives some basic information
about setting up PC.
- Basics
- Hardware
- Building
- Bootloaders
x86 stands for x86 CPUs developed by Intel, started with 8086 and then 286, 386, 486, and
586 and called it the Pentium, since then Pentium Pro, Pentium II, Celeron, Pentium III and
since Fall 2000 Pentium IV. This CPU has been the base of nowadays "PC".
These sites can be considered unbiased and give in-depth reviews on CPUs,
motherboards, memory and graphic-cards.
With the success of the x86 Intel CPUs other manufactures also started to
implement the same CPU machine code with their own architecture, as of
2001 AMD is the biggest competitor providing better price/performance
ratio with its Athlon. With the competition also the price went down
and almost standard device in a household: the PC.
The components of a PC:
- Mother- or Mainboard, it contains the primary chipsets to address memory, extension slots (ISA, PCI), support floppy-disk, IDE disks and sometimes
sound, video or even ethernet (then it's called an all-in-one board), high-end
boards contain on-board SCSI controllers or even place for two or more CPUs.
- CPU (Central Processing Unit) & CPU Cooler (passive or active via fan)
- Memory or RAM (Random Access Memory): 32MB for terminals, 128MB for
desktop, 512MB+ servers and workstations
- Power-Supply: 140W for all-in-one boards, 250W for desktop, 300W for servers
- Case: usually the case comes with a power-supply
- Keyboard & Mouse: as mentioned below wireless kb and mouse is recommended
- Floppy-Disk: kind of out-dated media-format, hardly used anymore
- Hard-Disk: IDE or SCSI harddisk (requires additional controller)
- CD-ROM/DVD-ROM: standard device to upload OS (operating systems) or data
- Network-card: 10/100 ethernet is common standard (status 2001), gigabit
ethernet coming up
- Graphic-card: with all the gaming hype high-performance graphic-cards
become available for consumers almost every 6 months a new generation
Nowadays you can configure your PC online (like Dell) and
purchase online. This page is more meant if you consider to build your
own machine, yet it doesn't contain all the details but rather overall
thoughts and considerations. If you are totally new then consider to explore:
Some general thoughts on "Server",
"Workstation", "Desktop Machine", "Lab Machines" and "Terminals".
Server | | For building a server one focuses on performance and reliability, this means
ECC RAM, SCSI Disks, which pushes the price up beyond ordinary PCs. SCSI disks
are often 30% til 150% more expensive than comperable IDE disks the same size.
There are IDE-SCSI interfaces available giving every IDE disk a SCSI interface
but for the price of lesser read/write speed than the IDE raw interface.
It needs to be mentioned than x86-based PCs are quality-wise not up-to-date
as comperable SGI- or Sun Servers which cost often 100%-400% more than comperable
machines self-build.
SMP (Symmetrical Multi Processor) machines are recommended when building servers
for high-performance usage, motherboard with dual or quadruble processors are
also very expensive, additional 64 bit PCI slots are recommended with high
performance SCSI interface cards.
A good power-supply is also essential, e.g. 2x 300W redundant power-supply is easily obtainable.
|
Workstation | | Get a fast machine, add enough memory (e.g. 768MB as on my Asus7Pro), decent
video-card which supports at least 1600x1200 but preferable up to 2048x1536 @ 60Hz or more.
Make sure it's supported by XFree86. The motherboard like the server part, maybe even
dual-processor, but main focus is memory so you can handle large amount of data e.g. for
graphic-designer with gimp and web-browser (resource-wasting application
todays web-browsers are). The display at least 1600x1200 LCD or 24" CRT with 2048x1536 max.
resolution (0.25mm dot-pitch or smaller). Wireless keyboard and wireless mouse recommended,
like the Logitech devices, but test them in a store first if you like the keyboard and
mouse as you likely will use it a lot. As mention, CRT, LCD and keyboard I highly recommend
you check reviews on the net as well in real-life in a store, it's worth your time and money.
For a workstation also sound & speakers should be added, along with a tablet
for "graphic-designer" machine. In my case my workstation has no case
but sits on a book-shelf about 5m away because of the noise, connected via 4-port KVM to a Sony G500 24".
As OS I prefere these days (status Feb 2001) FreeBSD-STABLE.
|
Desktop Machine | | Desktop machine can easily build with x86-based CPUs, unless you want to use
the machine to watch DVD or for gaming I suggest all-in-one boards which
come with video, sound and sometimes LAN (ethernet) on-board, they provide
often 1280x1024 @ 60Hz video-resolution which is sufficient often. A board with additional
AGP slot aside allows you to upgrade to state-of-the-art video-cards too. There is
no need to the get the latests CPU but 3-6 months old CPUs where sufficient selection
of motherboards are available. Add CD-ROM or DVD-ROM, plus speakers, wireless keyboard and wireless
mouse as it's worth to have no cable on the desktop. For screen get CRT's with 17" or even 19"
diagonal size, pay close attention of dot-pitch, it must be at least 0.25mm, disregard any
screen above this number (e.g. CRT screen with 0.25mm at center to 0.27mm at the edge). LCD displays
falling in prices and 1024x768 are standard (dot-pitch 0.30mm or less is fine for LCDs), definitly go and review the display in the store,
don't buy screens, either CRT or LCD, without having seen it in real-life, you can then later
buy the device on an online-store. I prefere my desktop machine(s)
multi-OS bootable, more infos at InterOS-section.
|
Lab Machine | | A lab-machine is a bare-bone machine without case, but just power-supply, hard-disk and
optional CD-ROM (for installing the OS), the motherboard lies open in a lab-shelf; you
get a 8- or 16-port KVM (Keyboard/Video/Mouse) switch and attach your lab-machine to the KVM
and control it all with one keyboard, mouse and screen. Add to each one a 10/100 ethernet
network interface card (NIC) to a hub (shared bandwidth) or switch (dedicated bandwidth)
and NFS export user-data from the server to all lab-machines on which you run your
faviourite OS. My preference is all-in-one boards, with video and sound on-board, newer
all-in-one boards you need to research on the net if they are supported by *BSD and Linux,
whereas Linux often is faster supporting these chipsets.
My recommendation also: purchase at least two from each type of lab-machine as it is handy for
testing setups and simplifies installs; e.g. I bought five machines based on the same
machine, I got one first, tested it with *BSD and Linux, after I realized it was a good
machine I bought additional four machines for testing, each machine was aprx. $300-$400 (CPU, RAM, motherboard, NIC,
power-supply, hard-disk). Another consideration, I bought some refurbished laptop-hardisks (1GB) for $30 each
which I use just to boot up the machine and then NFS mount the root-fs, this is cheaper
than obtaining Sandisk (solid-state) IDE disk and both are comperable in physical size.
You can also obtain a NIC with boot-ROM, just make sure it supports the protocol you have in mind (e.g. bootp tftp or alike),
e.g. as one mainboard I obtained had on-board ethernet with boot-ROM even but the protocol Novell RPL isn't supported by *BSD or Linux
(Novell refuses to give out protocol details, nice).
|
Terminals | | A nice add-on to your office or appartment are the IA's (Internet Appliance) which become now more popular. Review the
hardware carefully and find a way to purchase them without any strings attached such as
ISP contract and alike, this gives you full freedom to use the device in whatever manner
you desire. Make sure at least there is USB or 10/100 ethernet connectivity available,
also if it runs *BSD or Linux if this is desirable. You can use it for MP3 or video-terminal,
or simply for surfing the web. Wireless networking might be an option, radiation polution might
be something to be concerned about though.
|
I personally use one server, one programmer-machine plus aprx. eight lab-machines. The
main-data lies on the server, all short-life data are on the clients and it doesn't hurt
when the data there is lost, the primary concern is the server which also is never rebooted
unless there is a reason for it, whereas the lab-machines are subject of changes, upgrades and
reinstalls, as their name imply: being a lab-machine.
First Steps | | The first steps building the machine:
- study mainboard booklet, check all jumpers (if there are such)
- install the CPU and cooler (great care required)
- install RAM (great care required, don't touch blank pins)
- attach hard-disk (use IDE flat-rubber-cable, check jumpers at hd to select 'primary' [not slave])
- install graphic-card (if required unless you have video on-board)
- attach keyboard (otherwise most BIOS refuse to boot) and monitor; and finally power-supply (switched-off)
System-Panel-Connector of ASUS-CUSI-FX Mainboard (as example):
To start the an ATX based mainboard turn on power-supply and shortcut 'power'-switch at the system-panel connector (PWR & Ground)
(e.g. with a screw-driver but be careful) powers-on the power-supply. To give it a hard-reset shortcut Reset/Ground.
Once you put the mainboard into the case the power-button is plugged to the system-panel connector;
but since most testing is done without case the procedure as mentioned is more handy.
The lab-machine (as I call them) without case I usually add two LEDs, one green for power (PLED & +5V, spans over 2 pins) and one for
red the IDE-disk activity (sometimes available at system-panel connector or separately on the mainboard; spans over 3 pins).
Brief procedure:
- The machine should boot and BIOS info seen, if it doesn't show up either CPU or most likely
memory is the problem, exchange the memory with another one you have handy.
- You see
the BIOS info, memory counting and then probing the IDE disks; usually it fails to boot
anything since your hard-disk likely is not empty, you may attach a hard-disk with an OS on it, yet,
keep in mind that OS and setup expects a certain hardware-profile.
- I usually partition the
harddisk with Debian-install CD and then usually either install Win98 first or install Debian
completely, and then FreeBSD.
- If the boot-manager doesn't work I usually start Debian CD or FreeBSD CD
install til the LILO or boot-manager is written and so achieve a bootable
hard-disk. Make sure the BIOS supports CDROM-booting (boot sequence Floppy, CDROM, HardDisk is handy
while instaling OSes, once finished make direct booting from Hard-Disk).
|
BIOS | |
|
Documen- tation | | One of the habits I developed is that once the machine is running
and I added users, nfs, and networked it within my environment then
I search the net and download all documentation (PDF) I find of
the components I used for this particular machine. Since every machine
as a name I save all information in ~/MySystem/machine-name/,
and create a text-file named setup in which I write down
all the special things I had to do in order to get things to work.
I also save /etc/XF86Config once I've got X11 to work, because I often
had to edit it by hand.
Especially after some months or a year it's handy to get back and read the
hard-disk specifications or details of the network interface card (NIC) when I
upgrade drivers as such. To have all documentation in electronic form
is handy, and usually I throw the printed documentation away when I found
the corresponding PDF on the net.
Even later when I find more drivers or details to tune the machine I
write it down in the setup for each machine.
|
Semi Automated Install | | As result of repeated FreeBSD and Linux/Debian install I wrote down
the commands I used to get it up-to-date, and these days quickly call it
as shell-script to install the particular ports (FreeBSD) or packages
with apt-get as under Linux/Debian, like:
|
apt-get install libncurses4-dev tcsh perl-tk apache-perl \
|
|
asclassic xv libc5 bin86
|
|
cd /usr/X11R6/bin; ln -s asclassic afterstep;
|
|
cd /usr/X11R6/lib/X11/; ln -s asclassic afterstep
|
This way a machine is configured within less than 1hr from installing
the OS.
As mentioned, to document things the moment you did it is most
convient because otherwise you don't write it down. Especially when
you install machines frequently documentation is everything, you
can save a lot of time this way, at least I experienced it.
|
Bootloaders are most important to get the OS started:
LILO | | Linux Loader (LILO) is usually default under Linux-systems, it's not
state of the art, but mostly does its job. Unfortunatly the man-page
isn't very informative, so search the net for 'LILO' to get descent information.
To boot other OS'es /etc/lilo.conf may look like this:
|
# --- Example for a /etc/lilo.conf ---
|
|
vga = extended
|
|
read-only
|
|
linear
|
|
prompt
|
|
timeout = 30
|
|
|
|
boot=/dev/hda
|
|
|
|
other=/dev/hda1
|
|
label=DOS/Win
|
|
|
|
other=/dev/hda2
|
|
label=FreeBSD
|
|
|
|
image=/vmlinuz
|
|
label=Linux
|
|
root=/dev/hda3
|
If you try to transfer Linux live-system to another clean disk,
check our Linux-section.
|
FreeBSD Bootloader | | FreeBSD's bootloader works just great, I hardly had any problems and
there is little to configure as the bootloader recognizes most OSes by
itself. In case you screwed up the MBR (Master Boot Record) and you
want FreeBSD to install the bootloader, just do
Instead of /dev/ad0 you can set any other disk, only requirement
is that this other disk must have FreeBSD installed. Anyway, when I
install a multi-boot PC-system then I install FreeBSD as last system
and have it install its bootloader.
|

Last update 2001/07/18 
All Rights Reserved - (C) 1997 - 2008 by The Labs.Com |