SlideShare a Scribd company logo
1 of 21
Download to read offline
 
    FAKULTI PENGURUSAN MAKLUMAT
     




    SYSTEM RESOURCES 
    IMD 251 SUPPORT SERVICES AND MAINTENANCE II 
    ISMA ISHAK 

     




                                              2009
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
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  
 
•   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  
 
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  
 
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  
 
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  
 

More Related Content

What's hot

CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEM
CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEMCSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEM
CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEMMarvin Bronoso
 
Computer Hand Tools_Lesson Plan
Computer Hand Tools_Lesson PlanComputer Hand Tools_Lesson Plan
Computer Hand Tools_Lesson PlanBryan Corpuz
 
Computer hardware servicing practice occupational health and safety procedure
Computer hardware servicing   practice occupational health and safety procedure Computer hardware servicing   practice occupational health and safety procedure
Computer hardware servicing practice occupational health and safety procedure Grayzon Gonzales, LPT
 
Inspect and test the configured computer systems and networks
Inspect and test the configured computer systems and networksInspect and test the configured computer systems and networks
Inspect and test the configured computer systems and networksBrian Magan
 
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10Bogs De Castro
 
Ict 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsIct 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsYonel Cadapan
 
Tools and equipment in computer hardware servicing
Tools and equipment in computer hardware servicingTools and equipment in computer hardware servicing
Tools and equipment in computer hardware servicingMary Jane Ocampo
 
Input output and storage devices activity
Input output and storage devices activityInput output and storage devices activity
Input output and storage devices activityshidabahri
 
Common Computer Faults and Problems
Common Computer Faults and ProblemsCommon Computer Faults and Problems
Common Computer Faults and ProblemsSef Cambaliza
 
Procedures in Planning and Conducting Maintenance
Procedures in Planning and Conducting MaintenanceProcedures in Planning and Conducting Maintenance
Procedures in Planning and Conducting MaintenanceAlvin Gabejan
 
TLE_ICT Teachnical Drafting Grade 10
TLE_ICT Teachnical Drafting Grade 10TLE_ICT Teachnical Drafting Grade 10
TLE_ICT Teachnical Drafting Grade 10Markleen Guimbao
 
Proper tool selection
Proper tool selectionProper tool selection
Proper tool selectionmaricar cedro
 
Grade-10-DLP-CSS-June 5-6.docx
Grade-10-DLP-CSS-June 5-6.docxGrade-10-DLP-CSS-June 5-6.docx
Grade-10-DLP-CSS-June 5-6.docxAngelito Villalon
 
Bios and cmos
Bios and cmosBios and cmos
Bios and cmosOnline
 

What's hot (20)

CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEM
CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEMCSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEM
CSS LO6 - PREPARING AND INSTALLING OPERATING SYSTEM
 
10 OHS Policies
10 OHS Policies10 OHS Policies
10 OHS Policies
 
Computer Hand Tools_Lesson Plan
Computer Hand Tools_Lesson PlanComputer Hand Tools_Lesson Plan
Computer Hand Tools_Lesson Plan
 
Computer hardware servicing practice occupational health and safety procedure
Computer hardware servicing   practice occupational health and safety procedure Computer hardware servicing   practice occupational health and safety procedure
Computer hardware servicing practice occupational health and safety procedure
 
Inspect and test the configured computer systems and networks
Inspect and test the configured computer systems and networksInspect and test the configured computer systems and networks
Inspect and test the configured computer systems and networks
 
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10
DepEd TLE Computer Hardware Servicing Curriculum Guide Grade 7-10
 
OHS in CSS Grade 10
OHS in CSS Grade 10OHS in CSS Grade 10
OHS in CSS Grade 10
 
Ict 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsIct 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systems
 
Tools and equipment in computer hardware servicing
Tools and equipment in computer hardware servicingTools and equipment in computer hardware servicing
Tools and equipment in computer hardware servicing
 
K to 12 PC Hardware Servicing Learning Module
K to 12 PC Hardware Servicing Learning ModuleK to 12 PC Hardware Servicing Learning Module
K to 12 PC Hardware Servicing Learning Module
 
Input output and storage devices activity
Input output and storage devices activityInput output and storage devices activity
Input output and storage devices activity
 
Common Computer Faults and Problems
Common Computer Faults and ProblemsCommon Computer Faults and Problems
Common Computer Faults and Problems
 
Procedures in Planning and Conducting Maintenance
Procedures in Planning and Conducting MaintenanceProcedures in Planning and Conducting Maintenance
Procedures in Planning and Conducting Maintenance
 
TLE_ICT Teachnical Drafting Grade 10
TLE_ICT Teachnical Drafting Grade 10TLE_ICT Teachnical Drafting Grade 10
TLE_ICT Teachnical Drafting Grade 10
 
Proper tool selection
Proper tool selectionProper tool selection
Proper tool selection
 
Grade-10-DLP-CSS-June 5-6.docx
Grade-10-DLP-CSS-June 5-6.docxGrade-10-DLP-CSS-June 5-6.docx
Grade-10-DLP-CSS-June 5-6.docx
 
Bios and cmos
Bios and cmosBios and cmos
Bios and cmos
 
Proper tools selection
Proper tools selectionProper tools selection
Proper tools selection
 
K to 12 pc hardware servicing teacher's guide
K to 12 pc hardware servicing teacher's guideK to 12 pc hardware servicing teacher's guide
K to 12 pc hardware servicing teacher's guide
 
1st quarter css week 1
1st quarter css week 11st quarter css week 1
1st quarter css week 1
 

Viewers also liked

Architecture of 80286 microprocessor
Architecture of 80286 microprocessorArchitecture of 80286 microprocessor
Architecture of 80286 microprocessorSyed Ahmed Zaki
 
80286 microprocessor
80286 microprocessor80286 microprocessor
80286 microprocessorAvin Mathew
 
Addressing mode of 80286 microprocessor
Addressing mode of 80286 microprocessorAddressing mode of 80286 microprocessor
Addressing mode of 80286 microprocessorpal bhumit
 

Viewers also liked (6)

ROM BIOS & POST
ROM BIOS & POSTROM BIOS & POST
ROM BIOS & POST
 
Architecture of 80286 microprocessor
Architecture of 80286 microprocessorArchitecture of 80286 microprocessor
Architecture of 80286 microprocessor
 
80286 microprocessor
80286 microprocessor80286 microprocessor
80286 microprocessor
 
The 80386 80486
The 80386 80486The 80386 80486
The 80386 80486
 
Motherboard ppt
Motherboard pptMotherboard ppt
Motherboard ppt
 
Addressing mode of 80286 microprocessor
Addressing mode of 80286 microprocessorAddressing mode of 80286 microprocessor
Addressing mode of 80286 microprocessor
 

Similar to System Resources

System Software ( Os )
System Software ( Os )System Software ( Os )
System Software ( Os )Paula Smith
 
CO--MODULE-1 (b) - Input-Output-Organization.pptx
CO--MODULE-1 (b) - Input-Output-Organization.pptxCO--MODULE-1 (b) - Input-Output-Organization.pptx
CO--MODULE-1 (b) - Input-Output-Organization.pptxahmedsalik057
 
Parallel port programming
Parallel port programmingParallel port programming
Parallel port programmingmangal das
 
Ise iv-computer organization [10 cs46]-notes new
Ise iv-computer  organization [10 cs46]-notes newIse iv-computer  organization [10 cs46]-notes new
Ise iv-computer organization [10 cs46]-notes newdilshad begum
 
Unit 5 I/O organization
Unit 5   I/O organizationUnit 5   I/O organization
Unit 5 I/O organizationchidabdu
 
IO SYSTEM AND CASE STUDY STRUCTURE
IO SYSTEM AND CASE STUDY STRUCTUREIO SYSTEM AND CASE STUDY STRUCTURE
IO SYSTEM AND CASE STUDY STRUCTUREHariharan Anand
 
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...IJSRD
 
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...IJSRD
 
Operating System
Operating SystemOperating System
Operating Systemguest8b0942
 
Os and network activity javier guerrero
Os and network activity   javier guerreroOs and network activity   javier guerrero
Os and network activity javier guerreroJGuerreroM96
 
Introduction to computer according to veta curicullum
Introduction to computer according to veta curicullumIntroduction to computer according to veta curicullum
Introduction to computer according to veta curicullumSteven Alphonce
 
I need help with this assignment, using atmel studio 7.0Place a l.pdf
I need help with this assignment, using atmel studio 7.0Place a l.pdfI need help with this assignment, using atmel studio 7.0Place a l.pdf
I need help with this assignment, using atmel studio 7.0Place a l.pdfmichaelazach6427
 
Operating System Case Study and I/O System
Operating System Case Study and I/O SystemOperating System Case Study and I/O System
Operating System Case Study and I/O Systemprakash ganesan
 
Learn about Computer Systems
Learn about Computer SystemsLearn about Computer Systems
Learn about Computer SystemsRamesh C. Sharma
 

Similar to System Resources (20)

System Software ( Os )
System Software ( Os )System Software ( Os )
System Software ( Os )
 
CO--MODULE-1 (b) - Input-Output-Organization.pptx
CO--MODULE-1 (b) - Input-Output-Organization.pptxCO--MODULE-1 (b) - Input-Output-Organization.pptx
CO--MODULE-1 (b) - Input-Output-Organization.pptx
 
Parallel port programming
Parallel port programmingParallel port programming
Parallel port programming
 
Ise iv-computer organization [10 cs46]-notes new
Ise iv-computer  organization [10 cs46]-notes newIse iv-computer  organization [10 cs46]-notes new
Ise iv-computer organization [10 cs46]-notes new
 
Bt0062
Bt0062Bt0062
Bt0062
 
B T0062
B T0062B T0062
B T0062
 
Unit 5 I/O organization
Unit 5   I/O organizationUnit 5   I/O organization
Unit 5 I/O organization
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computers
 
IO SYSTEM AND CASE STUDY STRUCTURE
IO SYSTEM AND CASE STUDY STRUCTUREIO SYSTEM AND CASE STUDY STRUCTURE
IO SYSTEM AND CASE STUDY STRUCTURE
 
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
 
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
Control of Industrial Pneumatic & Hydraulic Systems using Serial Communicatio...
 
Operating System
Operating SystemOperating System
Operating System
 
computing networks and operating system
computing networks and operating system computing networks and operating system
computing networks and operating system
 
Presentation1
Presentation1Presentation1
Presentation1
 
Os and network activity javier guerrero
Os and network activity   javier guerreroOs and network activity   javier guerrero
Os and network activity javier guerrero
 
Introduction to computer according to veta curicullum
Introduction to computer according to veta curicullumIntroduction to computer according to veta curicullum
Introduction to computer according to veta curicullum
 
About computers
About computersAbout computers
About computers
 
I need help with this assignment, using atmel studio 7.0Place a l.pdf
I need help with this assignment, using atmel studio 7.0Place a l.pdfI need help with this assignment, using atmel studio 7.0Place a l.pdf
I need help with this assignment, using atmel studio 7.0Place a l.pdf
 
Operating System Case Study and I/O System
Operating System Case Study and I/O SystemOperating System Case Study and I/O System
Operating System Case Study and I/O System
 
Learn about Computer Systems
Learn about Computer SystemsLearn about Computer Systems
Learn about Computer Systems
 

More from isma ishak

Imd 151 Perception
Imd 151 PerceptionImd 151 Perception
Imd 151 Perceptionisma ishak
 
Interpersonal Communication Chapter 6
Interpersonal Communication Chapter 6Interpersonal Communication Chapter 6
Interpersonal Communication Chapter 6isma ishak
 
IMD51 - Carry Marks
IMD51 - Carry MarksIMD51 - Carry Marks
IMD51 - Carry Marksisma ishak
 
IMD202 ISD 3E2 - Carry Marks
IMD202 ISD 3E2 - Carry MarksIMD202 ISD 3E2 - Carry Marks
IMD202 ISD 3E2 - Carry Marksisma ishak
 
Troubleshooting Fundamentals
Troubleshooting FundamentalsTroubleshooting Fundamentals
Troubleshooting Fundamentalsisma ishak
 
Microsoft Windows Nt
Microsoft Windows NtMicrosoft Windows Nt
Microsoft Windows Ntisma ishak
 
Networking Hardware
Networking HardwareNetworking Hardware
Networking Hardwareisma ishak
 
Network Cabling
Network CablingNetwork Cabling
Network Cablingisma ishak
 
Network Operating System
Network Operating SystemNetwork Operating System
Network Operating Systemisma ishak
 
Understanding And Managing Memory
Understanding And Managing MemoryUnderstanding And Managing Memory
Understanding And Managing Memoryisma ishak
 
IMD 251 - INTERNET
IMD 251 - INTERNETIMD 251 - INTERNET
IMD 251 - INTERNETisma ishak
 
IMD 251 - Networking
IMD 251 - NetworkingIMD 251 - Networking
IMD 251 - Networkingisma ishak
 
IMD251-Chapter 5
IMD251-Chapter 5IMD251-Chapter 5
IMD251-Chapter 5isma ishak
 

More from isma ishak (15)

Imd102
Imd102Imd102
Imd102
 
Imd 151 Perception
Imd 151 PerceptionImd 151 Perception
Imd 151 Perception
 
Interpersonal Communication Chapter 6
Interpersonal Communication Chapter 6Interpersonal Communication Chapter 6
Interpersonal Communication Chapter 6
 
IMD51 - Carry Marks
IMD51 - Carry MarksIMD51 - Carry Marks
IMD51 - Carry Marks
 
IMD202 ISD 3E2 - Carry Marks
IMD202 ISD 3E2 - Carry MarksIMD202 ISD 3E2 - Carry Marks
IMD202 ISD 3E2 - Carry Marks
 
Troubleshooting Fundamentals
Troubleshooting FundamentalsTroubleshooting Fundamentals
Troubleshooting Fundamentals
 
WindowsNT
WindowsNTWindowsNT
WindowsNT
 
Microsoft Windows Nt
Microsoft Windows NtMicrosoft Windows Nt
Microsoft Windows Nt
 
Networking Hardware
Networking HardwareNetworking Hardware
Networking Hardware
 
Network Cabling
Network CablingNetwork Cabling
Network Cabling
 
Network Operating System
Network Operating SystemNetwork Operating System
Network Operating System
 
Understanding And Managing Memory
Understanding And Managing MemoryUnderstanding And Managing Memory
Understanding And Managing Memory
 
IMD 251 - INTERNET
IMD 251 - INTERNETIMD 251 - INTERNET
IMD 251 - INTERNET
 
IMD 251 - Networking
IMD 251 - NetworkingIMD 251 - Networking
IMD 251 - Networking
 
IMD251-Chapter 5
IMD251-Chapter 5IMD251-Chapter 5
IMD251-Chapter 5
 

Recently uploaded

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

System Resources

  • 1.   FAKULTI PENGURUSAN MAKLUMAT     SYSTEM RESOURCES  IMD 251 SUPPORT SERVICES AND MAINTENANCE II  ISMA ISHAK    2009
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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