Page suivante Page précédente Table des matières

3. Which Laptop to Buy?

3.1 Introduction

Portable computers may be divided into different categories. This is a subjective decision, but I try to do so. My groupings roughly follow the generally accepted marketing categories. The criteria could be:

  1. Weight: Often expressed in terms like Portables, Laptops/Notebooks, Sub/Mini-Notebooks, Palmtops/PDAs. There is no standard method to define the weight of a laptop, therefore the data provided by the manufacturers (and which are given below) have to be considered as approximations. The question is how the power supply (wether external or internal) or swappable parts like CD and floppy drive, are included in the weight.
  2. Supported Operations Systems: proprietary versus open
  3. Price: NoName versus Brand
  4. Hardware Features: display size, harddisk size, CPU speed, battery type, etc.
  5. Linux Support: graphic chip, sound card, infrared controller (IrDA), internal modem, etc.

3.2 Portables, Laptops/Notebooks, Sub/Mini-Notebooks, Palmtops, PDAs/HPCs

Portables

Weight greater than 4.0 kg (9 lbs). Features like a PC, but in a smaller box and with LCD display. Examples: lunchbox or ruggedized laptops (e.g., http://www.bsicomputer.com/)

Laptops/Notebooks

Weight between 1.7 and 4.0 kg (4 to 9 lbs). Features custom hardware and usually a special CPU. Examples: HP OmniBook 3100, COMPAQ Armada 1592DT. The terms laptop and notebook seem equivalent to me.

Sub-Notebooks/Mini-Notebooks

Weight between 1.3 and 1.7 kg (3 to 4 lbs). Features: external floppy drive, external CD drive. Examples: HP OmniBook 800CT, Toshiba Libretto 100, COMPAQ Aero, SONY VAIO 505.

Palmtops

Weight between 0.7 and 1.3 kg (1.5 to 3 lbs). Features: proprietary commercial operating systems. Examples: HP200LX.

Personal Digital Assistants (PDAs)/Handheld PCs (HPCs)

Weight below 0.7 kg (1.5 lbs). Features: proprietary commercial operating systems and often non-Intel CPU (PalmOS, EPOC32, GEOS, Windows CE). Examples: Newton Message Pad, Palm III (former Pilot), Psion Series 5, CASIO Z-7000. Palmtops and PDAs are currently not covered in this HOWTO. Anyway it may be useful therefore too. There is also a PalmOS-HOWTO (former Pilot-HOWTO) by David H. Silber and the Newton and Linux Mini-HOWTO http://privat.swol.de/ReinholdSchoeb/Newton/Newton_and_Linux-mini-HOWTO.html . I just include some links, most of them are from Kenneth E. Harker's page http://www.cs.utexas.edu/users/kharker/linux-laptop/ :

  1. Newtl: Newton/Linux Communications System Newtl allows a Linux machine to communicate with a Newton PDA. Automatically send e-mail, print, and fax outboxes through your Linux machine, and more.
  2. PilotLink and XCoPilot PilotLink is an utility that performs data transfers from 3com PalmPilot handheld computers to your Linux machine. XCoPilot is an emulator of the PalmPilot operating system that runs under Linux.
  3. PalmVNC PalmVNC is an implementation of the Virtual Network Client architecture that will allow you to use a Linux or other UNIX machine to put up a (tiny) X Window on a 3COM PalmPilot.
  4. PDAs and infrared remote control, see Hiromu Okada http://hp.vector.co.jp/authors/VA005810/remocon/remocone.htm
  5. AFAIK you can run Linux on the IBM PC110 (a tiny PC handheld that's no longer manufactured). There's a HOWTO on it running around somewhere but I don't have an URL.
  6. For more information on Virtual Network Computing (VNC), see http://http://www.uk.research.att.com/vnc/ .
  7. There is also Handheld Systems(TM) On-line Archives at http://www.cdpubs.com/hhsys/archives.html .and a search engine about palmtop related topics at http://www.palmtop.net/ .

Cellular Phones, Calculators, Digital Cameras, Wearable Computing

These devices are not covered in this text. For general information about Embedded Systems, see http://www.embedded.com . For Linux information, see ELKS http://www.linux.org.uk/ELKS-Home/index.html and the uCLinux project at http://ryeham.ee.ryerson.ca/uClinux . Also related to this topic but not covered yet seems wearable computing, see http://lcs.www.media.mit.edu/projects/wearables/ for further information.

3.3 Linux Features

Due to a lack of support by some hardware manufacturers, not every feature of a laptop is always supported or fully operational. The main devices which may cause trouble are: graphic chip, IrDA port, sound card, PCMCIA controller , PnP devices and internal modem. Please try to get as much information about these topics before buying a laptop. But often it isn't quite easy to get the necessary information. Sometimes even the specifications or the hotline of the manufacturer aren't able to provide the information. Therefore I have included a Linux Compatibility Check chapter in the Hardware In Detail sections below.

Depending on your needs, you might investigate one of the vendors that provide laptops pre-loaded with Linux. By purchasing a pre-loaded Linux laptop, much of the guesswork and time spent downloading additional packages could be avoided.

3.4 Main Hardware Features

Besides its Linux features, there often are some main features which have to be considered when buying a laptop. For Linux features please see the Hardware In Detail section below.

Weight

Don't underestimate the weight of a laptop. This weight is mainly influenced by:

  1. screen size
  2. battery type
  3. internal components, such as CD drive, floppy drive
  4. power supply

Display

Laptops come with one of two types of displays: active matrix (TFT) and passive matrix (DSTN). Active matrix displays have better color and contrast, but usually cost more and use more power. Also consider the screen size. Laptops may be purchased with screens up to 15". A bigger screen weighs more, costs more, and is harder to carry, but is good for a portable desktop replacement.

Batteries

The available battery types are Lithium Ion (LiIon), Nickel Metal Hybrid ( NiMh) and Nickel Cadmium (NiCd).

LiIon batteries are the most expensive ones but a lot lighter than NiCd for the same energy content, and have minimal -- but present -- memory effects. NiMH is better than NiCd, but still rather heavy and does suffer some (although less than NiCd) memory effects.

Unfortenately most laptops come with a proprietary battery size. So they are not interchangeable between different models.

CPU

Supported CPU Families

For details about systems which are supported by the Linux Kernel, see the Linux FAQ http://www.cl.cam.ac.uk/users/iwj10/linux-faq/ .

  1. i286: Linux doesn't support this CPU family yet. But there are some efforts at ELKS http://www.linux.org.uk/ELKS-Home/index.html. Unfortunately this project seems on halt. But if you like, you may use Minix http://www.cs.vu.nl/~ast/minix.html one of the predecessors of Linux. Minix supports 8088 to 286 with as little as 640K memory.
  2. i386: This covers PCs based on Intel-compatible processors, including Intel's 386, 486, Pentium, Pentium Pro and Pentium II, and compatible processors by AMD, Cyrix and others. Most of the currently available laptops use Intel compatible CPUs and have quite good Linux support.
  3. m68k: This covers Amigas and Ataris having a Motorola 680x0 processor for x>=2; with MMU. AFAIK there is no laptop with such a CPU. But I'm not sure weither the early Mac laptops are falling into this category. Early PowerBooks did indeed have m68k chips in them. I think the DuoBook was what they were called. Not sure if they are Linux capable or not.
  4. Alpha, Sparc, Sparc64, PowerPC, Arm and Hurd-i386 architectures: These are currently under construction. AFAIK there are only the Tadpole SPARC and ALPHA laptops, and some other ALPHA laptops available. For a current survey look at Kenneth E. Harker's Linux on Laptops without x86 Family Processors at http://www.cs.utexas.edu/users/kharker/linux-laptop/non-intel.html .

Miscellaneous

At higher speed, a CPU consumes more power and generates more heat. Therefore, in many laptops a special low-power CMOS CPU is used. Usually, this special CPU doesn't use as much power as a similar processor used in a desktop. These special CPUs are also more expensive. As a side effect you may find that laptops with a desktop CPU often have a fan which seems quite loud.

Keyboard Quality

Though you might use your desktop computer to do longer writings, a good keyboard can save you some headaches and finger-aches. Look especially for the location of special keys like: <ESC>, <TAB>, <Pos1>, <End>, <PageDown>, <PageUp> and the cursor keys.

Price

Laptops are quite expensive if you compare them with desktops. So you may decide between a brand or no-name product. Though I would like to encourage you to take a no-name product, there are some caveats. I have experienced that laptops break often, so you are better off, when you have an after sales warranty, which is usually only offered with brand products. Or you may decide to take a second hand machine. When I tried this, I discovered that the laptop market is changing quite often. A new generation is released approximately every three months (compared by CPU speed, harddisk capacity, screen size etc.). So laptops become old very quick. But this scheme often isn't followed by the prices for second hand laptops. They seem too expensive to me. Anyway if you plan on purchasing a second hand machine, review my recommendations on checking the machine. For German readers there is an online market place at http://www.hardware.de, which offers a good survey about current prices for second hand machines.

Power Supply

If you travel abroad pay attention to the voltage levels which are supported by the power supply.

3.5 Sources of More Information

Specifications and manufacturer support often are not helpful. Therefore you should retrieve information from other sources too:

  1. Highly recommended is the survey by Kenneth E. Harker http://www.cs.utexas.edu/users/kharker/linux-laptop/ .
  2. ftp://tsx-11.mit.edu/pub/linux/packages/laptops/ .
  3. Hardware-HOWTO
  4. open hardware - The Open Hardware Certification Program http://www.debian.org/OpenHardware/
  5. HARDWARE.doa.org - dedicated to the hardware aspects of (Linux) computing http://hardware.doa.org/
  6. How to Build a PC FAQ - excellent hardware overview by Billy Newsom http://www.motherboards.org/build.html
  7. Last but not least the WWW itself.

3.6 Linux Compatibility Check

Related HOWTOs

  1. Hardware-HOWTO
  2. Kernel-HOWTO
  3. PCMCIA-HOWTO
  4. PCI-HOWTO
  5. Plug-and-Play-mini-HOWTO

Check Methods in General

If you can't find the necessary information through the above mentioned sources, you are on your own. Luckily, Linux provides many means to help. For details see the Hardware on Detail section below. In general you may use:

  1. First of all the kernel itself. Look up what kind of hardware is detected by the kernel. You get this information during boot time or usually by dmesg or by looking into /var/log/messages.
  2. If your kernel supports the /proc file system you may get detailed information about PCI devices by cat /proc/pci Please read the kernel documentation pci.txt. You may get further information about unknown PCI devices at the database from Craig Hart at http://members.hyperlink.net.au/~chart. From 2.1.82 kernels on you may use the lspci command from the pci-utils package.
  3. To retrieve information about Plug-and-Play (PNP) devices use isapnp-tools .
  4. Use scsi_info by David Hinds for SCSI devices or scsiinfo.

If you don't want to install a complete Linux you may retrieve this information by using a micro Linux ( see appendix A). The package muLinux provides even a small systest program and TomsRtBt comes with memtest. To use memtest you have to copy it on a floppy dd if=/usr/lib/memtest of=/dev/fd0 and to reboot from this floppy.

If your laptop came with Windows, you may determine a lot of hardware settings from the installation. Boot into DOS or Windows to get the information you need.

Using Windows9x/NT to get hardware settings, basically boot Windows, then Start -> Settings -> Control Panel -> System -> Device Manager and write down everything, or make a hardcopy from the display using the <PRINT> key, plus keep a log of settings, hardware, memory, etc.

Using MS-DOS and Windows3.1x you can use the command msd, which is an akronym for MicroSoft Diagnostics. Or you might try one of the numerous DOS shareware utilities: CHECK-IT, DR.HARD and others.

3.7 Buying a Second Hand Laptop

Some recommendations to check an used laptop, before buying it:

  1. Review the surface of the case for visible damages.
  2. Check the display for pixel faults. Maybe it's useful to take a magnifying glass therefore.
  3. Do an IO stress-test, .e.g. with the tool bonnie.
  4. You may use memtest and crashme to achieve a memory test.
  5. Do a CPU stress test, e.g. with the tool Byte or by compiling a kernel.
  6. Check the floppy drive by formatting a floppy.
  7. Check the CD drive by reading a CD.
  8. To check the battery seems difficult, because it needs some time: one charge and one work cycle.
  9. To check the surface of the harddisk you may take e2fsck. There is also a Linux tool dosfsck or the other fsck tools.
  10. To test the entire disk (non-destructively), time it for performance, and determine its size, as root do: time dd if=/dev/hda of=/dev/null bs=1024k .
  11. Check wether the machine seems stolen. There is at least one database about stolen laptops in the WWW. But I have lost the URL.

AFAIK there is no Linux tool like the DOS tools CHECK-IT, DR. HARD, SYSDIAG and others. These tools include many of the tests in one integrated suite. One of the best IMHO is the tool PC Diagnostics 95 made by Craig Hart http://members.hyperlink.net.au/~chart . Despite the 95 in its name it's plain DOS, tiny (76KB programm and 199KB data) reliable and free. Unfortenately it contains no check for the IrDA port.

Please note this quotation from the disclaimer: "This program is written with the target audience being a trained, experienced technician. It is NOT designed to be used by those ignorant of computer servicing. Displays are not pretty but functional. Information is not explained since we are not trying to educate. This software should be considered to be just like any other tool in a tech's toolbox. It is to be applied with care, in the right situation, in order to find answers to specific problems. If you are an end user who is less than confident of dealing with computer hardware, this is probably not a program for you."

3.8 No Hardware Recommendations

It's difficult to give any recommendations for a certain laptop model in general. Your personal needs have to be taken into account. Also the market is changing very quickly. I guess every three months a new generation of laptops (according to harddisk space, CPU speed, display size, etc.) comes into the market. So I don't give any model or brand specific recommendations.

3.9 Laptop Distribution

Requirements

From the Battery-HOWTO I got this recommendation (modified by WH):

A Message to Linux Distributors

If you happen to be a Linux distributor, thank you for reading all this. Laptops are becoming more and more popular, but still most Linux distributions are not very well prepared for portable computing. Please make this section of this document obsolete, and make a few changes in your distribution.

The installation routine should include a configuration, optimized for laptops. The minimal install is often not lean enough. There are a lot of things that a laptop user does not need on the road. Just a few examples. There is no need for three different versions of vi (as found in Suse Linux). Most portable systems do not need printing support (they will never be connected to a printer, printing is usually done with the desktop system at home). Quite a few laptops do not need any network support at all.

Don't forget to describe laptop-specific installation problems, e. g. how to install your distribution without a cd-rom drive or how to setup the plip network driver.

Add better power management and seamless PCMCIA support to your distribution. Add a recompiled kernel and an alternative set of PCMCIA drivers with apm support that the user can install on demand. Include a precompiled apmd package with your distribution.

Add support for dynamically switching network configurations. Most Linux laptops travel between locations with different network settings (e. g. the network at home, the network at the office and the network at the university) and have to change the network ID very often. Changing a Linux system's network ID is a pain with most distributions.

Add a convenient PPP dialer with an address book, that does not try to start multiple copies of the PPP daemon if you click on the button twice (e.g., the RedHat usernet tool). It would be nice to have the PPP dialer also display the connection speed and some statistics. One nice command line dialer that autodetects modems and PPP services is wvdial from Worldvisions http://www.worldvisions.ca/wvdial/.

Recommendation

IMHO the Debian/GNU Linux http://www.debian.org has most of the desired features for a laptop installation. The distribution has a quite flexible installation tool. The installation process is well documented, especially concerning the methods which are useful at laptops. All the binaries are tiny, because they are stripped. And besides Debian/GNU Linux is free. Though other distributions are also worth to try them.


Page suivante Page précédente Table des matières