Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

System Resources


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

System Resources

  2. 2. What are system resources, and why do I run out of them? In many cases, an quot;out of memoryquot; message is misleading, since your whole system really did not run out of memory. Instead, certain areas of memory (Microsoft calls quot;heapsquot;) used by Windows have run low on space. Windows maintains an area of memory for operating system resources. The maximum size of this area is 128K, in two 64K areas. Windows 95/98 uses this area of memory to store fonts, bitmaps, drop-down menu lists and other on-screen information used by each application. When any program begins running, it uses up some space in the quot;system resourcesquot; area in memory. But, as you exit, some programs do not give back system resources they were temporarily using. Eventually the system will crash as it runs out of memory. The crash happens sometimes if you start and close many programs, even the same ones, without a periodic reboot. This is what Microsoft calls a resource leak or memory leak. A memory chip, like the one above, contains an area for system resources. When you tell your system to exit a program, the program is supposed to give back the resources (memory) it was using. But, because programs are written by humans, mistakes can happen and the program may not give back all to the operating system. This failing to quot;give backquot; is the quot;memory leak,quot; eventually leading to a message that your computer is low on resources. Memory leaks can also be caused by programs that automatically load every time you boot your Windows system. In Windows 95/98 you can see the list of active programs via the usual Ctrl-Alt-Del sequence. The Windows Startup folder contains programs that launch every time your system boots. In Windows 98, set the folder contents with MSCONFIG. In Windows 95, click the right mouse button on the Task Bar, click 1 | P a g e    
  3. 3. Properties, click Start Menu Programs, click Advanced and look for the Startup folder in the left pane. The system resources problem is something you might have to live with until the misbehaving application is found. If you are sure a certain application is causing the problem, be sure to contact the software vendor. You can keep track of your system resources via the handy tool at Start >> Programs >> Accessories >> System Tools >> Resource Meter. The resource meter adds the quot;fuel gaugequot; to your Windows task bar, to help you keep track of your system's resources. As the bar graph gauge turns from green to yellow, then the dreaded red, you know you have a problem! But you need to remember that the resource meter also consumes what you are trying to conserve: system resources. System Resources The three major system resources that can be assigned to different devices are I/O addresses, IRQ addresses, and DMA addresses. A fourth system resource, called a memory address, can sometimes be assigned to devices as well. In the following sections, we will discuss each of these system resources. I/O addresses It is extremely important to remember that the CPU is the traffic cop of the entire system. If something is going to happen on the system, then generally the CPU (processor) will enable the action. All devices in the computer need to communicate with the processor from time to time, and the processor needs a method of separating and prioritizing all these communications. Because the processor needs to send information to a number of different devices and because those devices need to know which messages coming from the CPU are for them, each device is assigned an I/O address, or input/output address. The I/O address is a special port address that represents a pathway between the CPU and the device. So, for example, if the processor needs to send information to LPT1, it can send the information to pathway 378-37F, which is the pathway address that is leading to LPT1. I like to think of these pathways as tunnels; each device has its own tunnel that extends from the device to the processor. If the processor needs to send information to the sound card, it knows that if it sends the information down I/O port address 220, then the sound card will receive the information. 2 | P a g e    
  4. 4. Conversely, when the processor receives information from I/O port address 220, it knows that the information comes from the sound card, because that address is assigned to only one device. There are 65, 536 I/O port addresses available on the system. (There are actually fewer addresses than that, because when you assign an IO address to a device, you are really assigning a range of addresses.) The trick is to make sure that you have not assigned the same I/O port address to two different devices. If you do, you will get a resource conflict. A resource conflict is when two devices are using the same resource, such as an I/O address, IRQ, or DMA channel. To prevent resource conflicts, each device should have a unique I/O address, but the problem is, how do you know which I/O addresses existing devices already use? One way is to use the Windows 95/98 Device Manager to view I/O addresses being used on the system. The following Step By Step shows you how to view I/O addresses in use by your system. 3 | P a g e    
  5. 5. STEP BY STEP: Viewing I/O Addresses in Use 1. Select Start - Settings - Control Panel. 2. Double-click the system icon. 3. Choose the Device Manager page tab. 4. Click Computer at the top of the device list and then click the Properties button to display the Computer Properties dialog box. 5. Select the Input/output (I/O) radio button on the View Resources tab of the Computer Properties dialog box. From there, you can scroll down to see all the address ranges that are in use by your computer and what device is using it. Standard I/O Address Assignments COM1 03F8 to 03FF COM2 02F8 to 02FF COM3 03E8 to 03EE COM4 02E8 to 02EE LPT1 0378 to 037F LPT2 0278 to 027F Math coprocessor 00F8 to 00FF Primary hard disk controller 01F0 to 01F7 Secondary hard disk controller 0170 to 0177 Sound cards 0220 to 022F Floppy Disk 03F0 to 03F7 4 | P a g e    
  6. 6. Interrupt request Each device has its own tunnel for sending and receiving information to the processor, which is the function of the I/O port. But how does each device get permission to send information to the processor, which as you know, is busy doing something important nearly all the time? Too much overhead would be created if the processor had to continuously poll each device to see if it had something that it needed the processor to do; instead, each device is responsible for notifying the processor if it has information for it. Devices need a way to interrupt the processor from its current processing to ask it if it will service their requests. The method that is used to interrupt the processor is called an Interrupt request, or IRQ line. If you were standing beside someone who was involved in a conversation and you really wanted to talk to that person, what would you do? You might, for example, tap the person on the shoulder. Tapping the person on the shoulder is similar to what the IRQ line is used for; the IRQ line sends a signal from the device to the processor that grabs the processor’s attention. Many people compare an IRQ to a bell sitting at the front desk of a restaurant or storefront. If you want service and no one is paying attention to you, you ring the bell for service— IRQs work the same way. When a device taps the processor on the shoulder, the processor needs to know what device needs attention. That is why each device is assigned a unique IRQ line number. When a device sends a signal down the IRQ line to interrupt the processor, the processor checks which line the signal originated from and then attends to that device. It is important to note that when information is sent to the processor, it is sent through the I/O address (the tunnel). So the IRQ is just to grab the processor’s attention while the I/O address is used for the actual delivery of information. Originally, there were only 8 IRQs available on XT (before 286) systems, but there are 16 IRQs available on AT (after 286) systems. In order to get 16 IRQs, another IRQ controller was added to the system, but 5 | P a g e    
  7. 7. having two sets of IRQs managed by two different controllers presented some technical problems. To help the two IRQ controllers act as one unit, the IRQs have cascaded (or linked) together, and the second controller goes through the first controller to send requests. STEP BY STEP: Viewing IRQs in Use 1. Select Start - Settings - Control Panel. 2. Double-click the system icon. 3. Choose the Device Manager page tab. 4. Click Computer at the top of the device list and then click the Properties button to display the Computer Properties dialog box. 5. Select the Interrupt request (IRQ) radio button on the View Resources tab of the Computer Properties dialog box. From there, you can scroll down to see all the IRQ settings that are in use by your computer and what device is using each. Standard IRQ Assignments 0 System Timer 1 Keyboard 2 Link to second IRQ controller 3 COM2, COM4 4 COM1, COM3 5 LPT2 6 Floppy disk drive 7 LPT1 8 Real time clock 9 Available, but should not be used if IRQ 2 is being used 10 Available 6 | P a g e    
  8. 8. 11 Available 12 Available if not used by PS/2 mouse 13 Math Coprocessor 14 Hard disk controller 15 Available Here are a few important points about IRQ assignments: IRQs 10, 11, 12, and 15 are generally available. If you are installing a new device into a computer and need to assign an IRQ, you would first try an available IRQ value. IRQ 3 and IRQ 5 are used by COM2 and LPT2, respectively. If you are not actually using COM2 or LPT2, you can consider IRQ 3 and IRQ 5 as available. When a device has information for the CPU, it first sends a signal down the IRQ line to grab the CPU’s attention. After the device has the CPU’s attention, it sends the information to the processor via its I/O address. Direct memory access There are a number of different devices today that require constant access to system memory. Normally, devices must go through the CPU to write information to system memory, but using such a scheme can cause a lot of unnecessary overhead, so why not allow a device to access memory directly? To increase performance and to offload some of the work from the CPU, you can assign some devices a DMA (Direct Memory Access) channel. The DMA channel is a special pathway that allows the device to read and write information directly to system memory without passing the data to the processor. There are only 8 DMA channels available on your system, which should not be a huge problem because not all devices use DMA channels. Some examples of the different devices 7 | P a g e    
  9. 9. that you may run into that use DMA channels are sound cards, network cards, and, occasionally, CD-ROM drives. Common DMA Channel Assignments 0 Available 1 Sound or Available 2 Floppy Drive 3 Available 4 Cascade 5 Sound or Available 6 Available 7 Available Like IRQs, there are two DMA controllers that are linked by a cascading DMA channel, DMA channel 4. DMA channels 0-3 are for 8-bit boards and cards; DMA channels 5-7 are used for 16/32-bit cards. To view the DMA channels that are in use on your system, you can use the Windows Device Manager utility. The following Step By Step will walk you through viewing your DMA channels in use. STEP BY STEP: Viewing DMA Channels in Use 1. Select Start - Settings - Control Panel. 2. Double-click the system icon. 3. Choose the Device Manager page tab. 4. Click Computer at the top of the device list and then click the Properties button to display the Computer Properties dialog box. 5. Select the Direct memory access (DMA) radio button on the View Resources tab of the Computer Properties dialog box. 8 | P a g e    
  10. 10. Memory addresses A less common resource that may be assigned to devices is a memory address. A memory address is an area of upper memory where the device is allowed to store information. If multiple devices have been assigned access to the same memory address, a device conflict will occur and one or both devices may not function. To view the memory addresses that are in use by the system, follow these steps: STEP BY STEP: Viewing Memory Addresses in Use 1. Select Start - Settings - Control Panel. 2. Double-click the system icon. 3. Choose the Device Manager page tab. 4. Click Computer at the top of the device list and then click the Properties button to display the Computer Properties dialog box. 5. Select the Memory radio button on the View Resources tab of the Computer Properties dialog box.   9 | P a g e    
  11. 11. LOGICAL DEVICES Some devices have both a physical address and also a logical name. The two most commonly-encountered device types that work this way are serial ports (called COM1 to COM4) and parallel ports (LPT1 to LPT3). Actually, hard disks are labeled this way too, A:, C: etc., even though most people don't think of them the same way. The purpose of this logical labeling is to make it easier to refer to devices without having to know their specific addresses. It's much simpler for software to be able to refer to a COM port by name than by an address. Logical Name Assignment Logical device names are assigned by the system BIOS during the power-on self test, when the system is booted up. The BIOS searches for devices by I/O address in a predefined order, and assigns them a logical name dynamically, in numerical order. The following are the normal default assignments for COM ports, in order: I/O Port Default IRQ Address COM1 3F8-3FFh 4 COM2 2F8-2FFh 3 COM3 3E8-3EFh 4 COM4 2E8-2EFh 3 For parallel ports it is slightly more complicated. Originally IBM defined different defaults for monochrome-based PCs and for color PCs. Of course, all new systems have been color for many years, but even some new systems still put LPT1 at 3BCh. Here is how the two different labeling schemes typically work: quot;Monochromequot; quot;Colorquot; Default Port Systems Systems IRQ LPT1 3BC-3BFh 378-37Fh 7 10 | P a g e    
  12. 12. LPT2 378-37Fh 278-27Fh 5 LPT3 278-27Fh -- 5 Most new systems have LPT1 at 378-37Fh. Note that the sequences are really the same, in a way; on a quot;monochromequot; system if you don't put a device at 3BC-3BFh but instead put it at 378-37Fh, the BIOS will make that LPT1 since it didn't find an LPT1 at 3BCh 11 | P a g e    
  13. 13. SYSTEM CONFIGURATION System configuration is the process of setting up your hardware devices and assigning resources to them so that they work together without problems. A properly-configured system will allow you to avoid nasty resource conflict problems, and make it easier for you to upgrade your system with new equipment in the future. An improperly-configured system will lead to strange errors and problems, and make upgrading a nightmare. Knowing Your System's Configuration One key to a well-tuned, trouble-free system is making sure it is properly configured. In order to accomplish this you must start by understanding its configuration. It can be difficult to figure out what all the devices are in your system and what resources they are using. To assist in this, several software tools have been created. These are typically called diagnostic utilities or programs. Some of them are built in to your operating system and others are available either for free download or commercial purchase. Assigning Resources to Devices Many devices have fixed resource assignments that cannot be changed. Most system devices are like this. In addition, it is generally best not to change (or try to change) the resource settings for standard devices like IDE hard disk controllers unless you both really know what you are doing and there is a compelling reason to change them. The following devices usually have hard-coded resource settings that cannot be changed: system devices, keyboard, PS/2 mouse, floppy disk controller, primary IDE controller, video card. Others can generally be changed, although it makes more sense for some devices than for others. There are several different ways that are generally used to set or change resource settings for devices: • Hardware Settings: Resource assignments on some cards, especially older ones, is done by hardware on the device itself. This involves changing the settings of jumpers and switches, usually on the circuit board of the device, to tell it what resources to use. This is similar to the way most motherboards are configured. Hardware configuration has the great disadvantage of being a pain if you ever want to change the resources: you have to open the box and usually pull out the card to get to the jumpers. It has one great advantage however: certainty. You always know that if you put the jumper on say IRQ7, the card will try to use IRQ7 (if it isn't busted of 12 | P a g e    
  14. 14. course. :^) ) You can always open the box and look at the card and get visual confirmation of how it is set up. You cannot do this with software-based configuration. • Software Configuration Programs: Many newer cards are configured using special software config programs that come with them. You run the program and select the resources you want to use, and the program writes the information into a special rewriteable EEPROM placed on the device for that purpose. This is similar to the way a flash BIOS is used to upgrade the system BIOS using software, on a smaller scale. Devices that use configuration programs like these are much more convenient than those that use hardware settings, because you can change the resources without opening the box. However, they have the disadvantage of being dependent on the configuration program; if you lose the disk you'll need to get another copy of the program to change the settings. You also can't tell what the settings are with the power off, and you run the slight risk of scrambling the card's settings if you say, lose power while it writes new settings to the card. • Plug and Play: Newer devices that subscribe to the Plug and Play standards can be automatically configured under certain conditions when used in a machine that supports Plug and Play, with an operating system that supports it. Plug and Play is an attempt to eliminate the large amount of work in assigning resources to devices and resolving conflicts. When it works properly, resources are dynamically and automatically assigned and reassigned and you don't have to worry about making everything work together. • In addition, the use of a PnP operating system like Windows 95 will normally allow you to change device resource settings using the built-in Device Manager, giving you override control if you don't like what PnP chose for your device, and eliminating the need for special configuration utilities. However, often problems result from the system making poor resource choices or having difficulties dealing with devices in the systems that are not themselves PnP-compatible. 13 | P a g e    
  15. 15. RESOURCES CONFLICTS AND CONFLICTS RESOLUTION As discussed in several other areas of this section, one of the major issues with system resources is configuring your system's devices so that they don't interfere with each other. When more than one device attempts to use the same resource, the result is a resource conflict. The Nature of Resource Conflicts Resource conflicts can manifest themselves in several different ways. Some conflicts can be very easy to recognize; others can be extremely difficult to find and correct, because they manifest themselves indirectly, or through symptoms that may not seem to have anything to do with the device causing the problem. Here are some of the ways that resource conflicts manifest themselves. Some of these may be consistent and repeatable, while others may be intermittent: • System hangs or lockups, particularly while using a peripheral device. • (Memory) parity errors on parity-enabled systems. • Noise or other problems from sound cards. • Junk being printed on your printer. • The mouse pointer hanging and refusing to move, or moving in a stuttering fashion. • Error messages from Windows 95, messages about the PC not operating at maximum performance, or the system dropping to quot;Safe Modequot; or quot;MS-DOS Compatibility Modequot;. • Errors and crashes of applications for no apparent reason. As you can see, some of these obviously point to a resource problem, but many do not. For example, system crashes can be caused by many non-resource-related factors. If your mouse works until you try to use your modem, well, you can probably figure out what the problem is, or at least where to start looking. In general, if you just added a new peripheral to your PC and a resource conflict is indicated, the new device is almost certainly involved somehow. 14 | P a g e    
  16. 16. To Share, Or Not To Share There are some circumstances where you can share resources between multiple devices, but it is never a really good idea. Why? Because sharing generally relies on either the user or the software quot;not doingquot; something that would create a conflict, and it is sometimes hard to maintain the discipline to do this consistently. It also creates a confusing situation to anyone else using the PC, and makes upgrading the machine more difficult as well. Furthermore, sharing resources can sometimes cause strange problems because the system is doing things with the devices when you may not realize it. For example, many multitasking operating systems like Windows 95 can access hardware even when you aren't directly requesting its use. There are some cases where sharing does make sense. If you have two very infrequently used serial-port devices in a PC and you are out of interrupts, you may have no choice but to set them both up on the same IRQ and just make sure you never use both at the same time. You can use an older style of printer (one that doesn't have a smart driver program) on an IRQ that another device uses, if you don't use the printer and the other device simultaneously. I still don't recommend this--just not worth the hassle. I particularly don't recommend sharing DMA channels, as conflicts on these can be very confusing and difficult to diagnose. Resource Conflict Resolution If you suspect a resource conflict in your PC, you of course need to resolve this conflict. This can be easy to do if you know where to start looking, or very hard if you do not. There are some general steps that can be followed to fix this sort of problem. In very brief terms the steps are: • Determine what all the devices in the system are using for resources. • Identify the conflicting devices. • Change the resource settings on one or more of the devices so they are no longer conflicting.   15 | P a g e    
  17. 17. I think I have a resource conflict in my system; what can I do about this? • Explanation: It is suspected that the system may have a resource conflict. This means that two different devices are both trying to use a system resource like an interrupt request line, DMA channel or I/O address. The two devices will conflict and cause either one or both to malfunction. • Diagnosis: Resource conflicts are one of the most common problems with PCs, especially with those who upgrade or add equipment to their PCs. Since the ancient architecture of the PC has resulted in a great variety of internal devices and expansion cards having to share a limited amount of resources, devices will often quot;step on each others' toesquot;. The problem is almost always misconfiguration; in rare cases you will not be able to use two devices in the same system if they cannot find a way to cooperate by configuring themselves to use available resources. Recommendation: • Do not try to quot;sharequot; resources. Some people will say that this is possible to do, and technically it is, but it is a headache that is not worth dealing with in my opinion. Windows 95 is particularly unforgiving about trying to share resources. • If you suspect a conflict with a specific device, and you are running Windows 95, go into the Device Manager. Click on the device with the problem (which may show with a yellow exclamation-mark-in-a-circle next to it) and select quot;Propertiesquot;. Click on the quot;Resourcesquot; tab and the system will often tell you what the conflict is. • Sometimes, folks think they have a resource conflict because the Windows 95 Device Manager shows a PCI device on the same IRQ as another device called quot;IRQ Holder for PCI Steeringquot;. This is in fact not a resource conflict; IRQ steering is a feature of Windows 95 that is designed to help avoid resource conflicts. If you think you have a resource conflict you may indeed have one, but this isn't it. Use a diagnostic tool such as Norton Diagnostics. There is a test in this package that • looks for the IRQ usage of various devices and will sometimes highlight conflicts (though it is not perfect by any means). • Catalog the resource usage of all of the devices in your PC. This is the best way to determine what resources are being used by what. You may find the device resource summary sheet I have included here to be helpful with this. If you find any devices that are trying to use the same resources, try to change the configuration of one of them. 16 | P a g e    
  18. 18. • Check resource-related BIOS settings to ensure that they are correct. • Watch out for PCI devices using IRQs. The PCI bus uses its own interrupt scheme but PCI devices also quot;mapquot; to regular IRQs when needed. Many PCI video cards, for example, use an IRQ, typically 9, 10, 11 or 12. Make sure that this does not cause any conflicts with other devices. • If you are using IRQ9 for any device, make sure you are not using IRQ2 on any other device. They are the same interrupt line. • If you are trying to use the COM1 port and the COM3 port at the same time, or the COM2 port and the COM4 at the same time, you will run into a conflict if you leave these ports at their default IRQ settings. Each of these two pairs uses the same IRQ number. To use COM1 with COM3, or COM2 with COM4, you must change the IRQ number that one of the pair is using so that it does not conflict with the other. • If you add a modem to your system, and you have a built in COM2 port (which most do) you will see a conflict unless you change the modem's settings, because most of them default to use COM2. If you just change the modem from COM2 to COM4, then the problem above will result unless you also change the IRQ of the modem to another number. • If you are using a sound card and a second parallel port, you will probably have a conflict, because both devices try to use IRQ5 by default. One or the other must be changed. (Also watch out for the first parallel port accidentally being set to IRQ5). • If you are using a secondary IDE controller, then IRQ number 15 is normally used by that controller and cannot be used by other devices. • DMA conflicts are commonly caused when enabling ECP parallel ports. They use a DMA channel while other modes of operation of the parallel port do not. • If you are using a network card, beware of I/O address conflicts. Many network cards use a full 32 bytes of I/O address space, and can conflict with other devices. They also sometimes try to use IRQs that are commonly used by other system devices such as video cards or hard disk controllers. 17 | P a g e    
  19. 19. PLUG AND PLAY The large variety of different cards that can be added to PCs to expand their capabilities is both a blessing and a curse. As you can see from the other sections that have discussed system resources, configuring the system and dealing with resource conflicts is part of the curse of having so many different non-standard devices on the market. Dealing with these issues can be a tremendously confusing, difficult and time-consuming task. In fact, many users have stated that this is the single most frustrating part of owning and maintaining a PC, or of upgrading the PC's hardware. In an attempt to resolve this ongoing problem, the Plug and Play (also called PnP) specification was developed by Microsoft with cooperation from Intel and many other hardware manufacturers. The goal of Plug and Play is to create a computer whose hardware and software work together to automatically configure devices and assign resources, to allow for hardware changes and additions without the need for large-scale resource assignment tweaking. As the name suggests, the goal is to be able to just plug in a new device and immediately be able to use it, without complicated setup maneuvers. A form of Plug and Play was actually first made available on the EISA and MCA buses many years ago. For several reasons, however, neither of these buses caught on and became popular. PnP hit the mainstream in 1995 with the release of Windows 95 and PC hardware designed to work with it. 18 | P a g e    
  20. 20. Requirements for Plug and Play Automatically detecting and configuring hardware and software is not a simple task. To perform this work, cooperation is required from several hardware and software areas. The four quot;partnersquot; that must be Plug and Play compliant in order for it to work properly are: • System Hardware: The hardware on your system, through the system chipset and system bus controllers, must be capable of handling PnP devices. For modern PCI- based systems this is built in, as PCI was designed with PnP in mind. Most PCI-based systems also support PnP on their ISA bus, with special circuitry to link the two together and share resource information. Older PCs with ISA-only or VL-bus system buses generally do not support Plug and Play. • Peripheral Hardware: The devices that you are adding into the system must themselves be PnP compatible. PnP is now supported for a wide variety of devices, from modems and network cards inside the box to printers and even monitors outside it. These devices must be PnP-aware so that they are capable of identifying themselves when requested, and able to accept resource assignments from the system when they are made. • The System BIOS: The system BIOS plays a key role in making Plug and Play work. Routines built into the BIOS perform the actual work of collecting information about the different devices and determining what should use which resources. The BIOS also communicates this information to the operating system, which uses it to configure its drivers and other software to make the devices work correctly. In many cases older PCs that have an outdated BIOS but otherwise have support for PnP in hardware (PCI-based Pentiums produced between 1993 and 1995 are the prime candidates) can be made PnP-compliant through a BIOS upgrade. • The Operating System: Finally, the operating system must be designed to work with the BIOS (and thus indirectly, with the hardware as well). The operating system sets up any low-level software (such as device drivers) that are necessary for the device to be used by applications. It also communicates with the user, notifying him or her of changes to the configuration, and allows changes to be made to resource settings if necessary. Currently, the only mainstream operating system with full PnP support is Windows 95. As you can see, you need a lot for Plug and Play to work, and this is why the vast majority of older systems (pre-1996) do not properly support this standard. 19 | P a g e    
  21. 21. Plug and Play Operation Most of the actual work involved in making Plug and Play function is performed by the system BIOS during the boot process. At the appropriate step of the boot process, the BIOS will follow a special procedure to determine and configure the Plug and Play devices in your system. Here is a rough layout of the steps that the BIOS follows at boot time when managing a PCI-based Plug and Play system: 1. Create a resource table of the available IRQs, DMA channels and I/O addresses, excluding any that are reserved for system devices. 2. Search for and identify PnP and non-PnP devices on the PCI and ISA buses. 3. Load the last known system configuration from the ESCD area stored in non-volatile memory. 4. Compare the current configuration to the last known configuration. If they are unchanged, continue with the boot; this part of the boot process ends and the rest of the bootup continues from here. 5. If the configuration is new, begin system reconfiguration. Start with the resource table by eliminating any resources being used by non-PnP devices. 6. Check the BIOS settings to see if any additional system resources have been reserved for use by non-PnP devices and eliminate any of these from the resource table. 7. Assign resources to PnP cards from the resources remaining in the resource table, and inform the devices of their new assignments. 8. Update the ESCD area by saving to it the new system configuration. Most BIOSes will print a message when this happens like quot;Updating ESCD ... Successfulquot;. 9. Continue with the boot. 20 | P a g e