Optimise and enhance system

System testing and burn-in 2

System documentation 3

System resources 6

BIOS optimisation 8

Update your BIOS 8

BIOS settings 8

Hard drive optimisation 10

System optimisation 12

Virtual memory 12

Disk cache 14

RAM disk 14

Component optimisation 15

Benchmarking 16

Windows platform 16

Linux platform 17

Macintosh platform 17

Summary 18

Check your progress 18

System testing and burn-in

As part of your installation plan for connecting an internal hardware component, you need to develop a testing plan. For example, if you have installed additional RAM, your plan would include steps to verify that the additional RAM has been detected by BIOS by watching the on-screen memory test at boot-up and then verify that the additional RAM has been detected by the operating system.

If a piece of computer hardware is to fail, it tends to fail either very early in its life or after many thousands of hours of use. To avoid delivering equipment which is faulty or fails soon, hardware components and systems often undergo a further stage of testing known as burn-in. To ‘burn-in’ means to run your computer system continuously for a period of time (typically 48 hours) running some kind of diagnostic software repeatedly.

Burn-in software is usually independent of any operating system and, typically, the burn-in test is run from a self-booting floppy. This floppy disk will contain its own operating system and will boot to a menu which allows you to select which component to test or whether to test the total system. The software will continually cycle through the testing process for a set period of time, logging all errors to a file which can be viewed at the end of the test period.

Using burn-in software will improve your company’s image as a supplier of quality systems by decreasing the rate of return of computer systems. It can avoid costly downtime, system rebuilds and lost data. It can also test the stability of a system after configuration changes or hardware upgrades.

To view more detailed information about burn-in software, visit the following two manufacturer’s websites:

1 Millenium Solutions at: http://www.millennium-solutions.co.uk/

Look at the Micro-Scope Burn-in software which is fully automated burn-in software.

2 #1-PC Diagnostics Company at: http://www.tufftest.com/ttp01.htm

Look at #1-TuffTEST-Pro™ v.3.53 which can be used to rigorously test and troubleshoot hard drives, floppy drives, all types of memory, serial and parallel ports, video displays, etc

System documentation

As part of the installation process, your task is to document the installation process according to your organisational guidelines. Typically, this will consist of creating or updating a system specification sheet similar to the one below. This documentation contains all the information that might be needed in the future to operate, troubleshoot, upgrade or repair the system and its components.

Depending on your organisation, this system specification sheet will be created using a spreadsheet package or a database package. Some help desk software packages have features that allow you to record this information.

System specification sheet

Hardware /
PC make / Make: / Acme
Model: / 2600
Serial number: / XYZ12345
BIOS / Manufacturer: / AMI
Version and date: / 2003
Processor / Manufacturer: / Intel
Type and speed: / Pentium 4 2.8GHz
Memory (RAM) / Total: / 256 MB
Configuration: / 2 x 128MB
Hard drive 1 / Manufacturer: / Seagate
Model: / 7200 rpm
Capacity: / 40GB
Hard drive 2 / Manufacturer: / none
Model:
Capacity:
Optical drive 1 / Type: / CD-RW
Speed: / 52x CD-R, 32x CD-RW
Optical drive 2 / Type: / none
Speed:
Monitor / Manufacturer: / Samtron
Model: / 17’ flat panel
Serial number: / 284661
Graphics card / Manufacturer: / integrated
Model:
Network card / Manufacturer: / integrated
Model:
Sound card / Manufacturer: / integrated
Model:
System details
Client / Position: / Admin assistant
Location: / Room 208, 3rd floor
Contact phone: / ext 876
Network identification / Computer name: / HO-3-208
Workgroup: / admin
Operating system / Operating system: / Windows 2000 Pro
Service packs: / SP2
Date: / 28-02-005
Completed by: / Sally Smith


Your system documentation could include the following information:

q  hardware configuration

q  operating system configuration

q  network configuration

q  software licences

q  configuration of application software

q  warranty and repair information

q  results of burn-in test

q  problem log

q  backup media log

q  list of system resources used (see next section).

A blank template (in Microsoft Excel) is available in the Research section of this Learning Pack.

System resources

There are four types of system resources that allow hardware and/or software to communicate with each other. These resources are:

Interrupt request (IRQ): / A line on the motherboard bus that carries a signal from a device to the CPU. It is used to signal the CPU that the device needs attention. Some lines have a higher priority for attention.
There are 16 interrupt channels available (IRQ0 through IRQ15) but three are generally used for system functions such as the clock.
Devices connected to the PCI bus can share IRQ channels as the PCI controller will determine which device is making the request. Otherwise, devices cannot share the same IRQ channel.
I/O address / Numbers assigned to hardware devices that software uses to get device’s attention and to interact with them. Each hardware device has its own unique I/O address.
There are 64 KB of I/O addresses available.
Memory addresses / Numbers that are assigned to physical memory located either in RAM or ROM. Software can access this memory by using these addresses.
Direct Memory Access (DMA) channel / A number designating a channel whereby the device can pass data directly to memory, bypassing the CPU.
There are 8 DMA channels from DMA 0 to DMA7.

If you are using a ‘Plug and Play’ operating system such as Microsoft Windows 98 or later, these resources will be automatically assigned to a plug and play compliant device. The resources will be assigned by the operating system in conjunction with BIOS and the device.

To identify the system resources that are being used on your computer system there are various diagnostic tools that can be used.

If you are using a Windows operating system, you can use the System Information tool. You will need to use Help to find out how to use the System Information tool depending on your version of Windows. The System Information tool will also export these details to a text file.

Figure 1: Windows System Information tool

If you are using a Linux distribution, use your manual to determine how you can determine what resources are being used.

Linux commands you can use are as follows:

List IO ports: cat/proc/ioports

List DMA channels: cat/proc/dma

View ‘interrupts’ used by the system: cat/proc/interrupts

procinfo -i

These system resources should be recorded as part of your system documentation.

BIOS optimisation

Update your BIOS

In order to ensure that you get the maximum performance and stability out of your system, it’s a good idea to make sure that you are using the latest version of your motherboard’s BIOS.

Motherboard manufacturers periodically release updated BIOS versions for their products, which are designed to be written over the older software. Traditionally, the process of BIOS ‘flashing’ involved using a bootable floppy that include the BIOS upgrade software to start the computer in DOS.

Most manufacturers now offer more user friendly BIOS updating methods. Check the website of your motherboard manufacturer for updated BIOS versions and the software to install them, which will include instructions.

The current version number of your motherboard is available both on the POST screen and within the BIOS settings screen.

BIOS settings

However there are some settings in BIOS that can be changed which can optimise your system performance. These are as follows.

Boot device priority — This determines the order in which BIOS will look for a device to load an operating system from. Set this to the first hard drive for faster booting.

Integrated peripherals — The majority of modern motherboards come with one or more integrated system components such as sound card or network cards. If you are not using these integrated features, it’s a good idea to disable them. Most of these features will be found in the ‘integrated peripherals’ section of the BIOS. Disable what you are not using.

Communication ports — Disabling unneeded communication ports (serial and parallel) can streamline the boot process and net you a little performance gain. Look in the ‘integrated peripherals’ section of the BIOS to find your ports and disable them if they are not in use.

AGP mode — Depending on whether your video card is an AGP 2x, 4x or 8x compatible card (most recent cards are either 4x or 8x), find the AGP mode options (usually within ‘advanced chipset settings’) and enable the one matching your card.

Load optimized defaults — This loads the values of system parameters for the system to be in the best performance configuration. Look in the main menu for this option.

Keep a record of your BIOS settings with your system documentation.

To edit the BIOS settings, most systems require you to press the DEL key while the computer is going through its initial POST (Power On Self Test). Other manufacturers like IBM may require a different key (such as F2, or F6), but this should be listed on the POST screen. Once you are in the BIOS screen, changes can be made to the available settings by highlighting the item, pressing ENTER then choosing from a list.

Note that these changes will not take effect until you have saved them (using the menu option) and restarted the computer.

For more detailed information on how to fully optimise your computer system with the settings in BIOS, these two websites offer comprehensive guides:

1 BIOS Survival Guide at: http://burks.brighton.ac.uk/burks/pcinfo/hardware/bios_sg/bios_sg.htm

2 The Definitive BIOS Optimization Guide at: http://www.adriansrojakpot.com/Speed_Demonz/BIOS_Guide/BIOS_Guide_Index.htm

Hard drive optimisation

The most popular hard drive interface that computer systems use today is the ATA-2 (EIDE) drive running with Programmed I/O (PIO) mode or Direct Memory Access (DMA) mode. Later drives use the DMA mode and you should ensure that your operating system is configured to use this mode if it is supported by your hard drive, as it allows for faster data transfer rates.

The oldest method of transferring data over the IDE/ATA interface is through the use of programmed I/O. This is a technique whereby the system CPU and support hardware directly control the transfer of data between the system and the hard disk. There are several different speeds of programmed I/O, which are called programmed I/O modes, or more commonly, PIO modes. Through the mid-1990s, programmed I/O was the only way that most systems ever accessed IDE/ATA hard disks.

Today, however, PIO is just not up to handling modern drives, which use Ultra DMA to keep the load on the CPU down and to allow access to Ultra DMA’s much higher performance. Support for PIO modes is still universal on almost all systems and drives made since the mid-1990s, for backwards compatibility. It is used, for example, as a ‘last resort’ when driver or software issues cause problems with Ultra DMA accesses.

Direct memory access or DMA is the generic term used to refer to a transfer protocol where a peripheral device transfers information directly to or from memory, without the system processor being required to perform the transaction. Several different DMA modes have been defined for the IDE/ATA interface. Modern IDE/ATA hard disks use first-party DMA transfers. The term ‘first party’ means that the peripheral device itself does the work of transferring data to and from memory, with no external DMA controller involved.

The most current bus mastering DMA finally came into its own when the industry moved on to Ultra DMA. Once Ultra DMA/33 doubled the interface transfer rate, DMA had an obvious speed advantage over PIO in addition to its other efficiency improvements. Support for DMA was also cleaned up and made native in Windows 9x, and most of the problems with the old drivers were eliminated. Today, the use of Ultra DMA is the standard in the industry.

All modern systems that use IDE/ATA drives should be using one of the Ultra DMA modes. There are several specific requirements for running Ultra DMA:

1 Hard disk support — The hard disk itself must support Ultra DMA. In addition, the appropriate Ultra DMA mode must be enabled on the drive.

2 Controller support — A controller capable of Ultra DMA transfers must be used. This can be either the interface controller built into the motherboard, or an add-in IDE/ATA interface card.

3 Operating system support — The BIOS and/or operating system must support Ultra DMA transfers, and the hard disk must be set to operate in Ultra DMA in the operating system. The following screenshot shows the device property for the hard drive under Windows XP.

Figure 2: Hard drive properties

System optimisation

There are several techniques that operating systems use to optimise the system performance. Three that we will examine in closer detail are:

1 Virtual memory

2 Disk cache

3 RAM disk.

Virtual memory

Operating systems can often need more memory (RAM) than is available to run multiple applications at the same time. To overcome this problem, operating systems use virtual memory. When RAM is becomes full, the operating system moves data onto the hard disk in either files known as paging files or swap files. If you are using a Linux operating system a swap partition was created during the initial installation.

Whenever the operating system has enough memory, the swapfile usually isn’t used. But if it runs out of memory, the operating system will page out the least recently used information in the memory to the swapfile in the hard disk. This frees up some memory for the most recent application’s use. The operating system will continuously do this as more and more data is loaded into the RAM.

However, when any data stored in the swapfile is needed, it is swapped with the least recently used data in the memory. This allows the swapfile to behave like RAM although programs cannot run directly off it. You will also note that because the operating system cannot directly run programs off the swapfile, some programs may not run even with a large swapfile if you have too little RAM.