Professional Documents
Culture Documents
We Need to Talk!
The CPU needs some method to talk to the devices to tell them what to do The devices need some way to send data to, and receive data from the CPU We need to expand our logical model from the CPU chapter
CPU
RAM
EDB
CPU
RAM
EDB
Southbridge keyboard
Video Card
Chipset Southbridge
845 Chipset
925 Chipset
Keyboard
How we communicate with the keyboard
Problems
Different motherboards have different keyboard controllers We need specific code to talk to the controller We need a place to store this specific programming and the programming for other devices (optical drive, floppy, etc.)
Solution
Use a ROM chip Does not forget when power is removed, like RAM does Specific to motherboard and devices on it Read only, code does not change Can hold lots of programs, like a chapter book Called firmware
IBMs BIOS
BIOS BIO
System ROM
Holds all the support programming for basic devices Is given a specific address space, or range of memory addresses for its code
Conventional Memory
Address 0
Basic Hardware
CPU Mouse Keyboard Video card RAM Network card Sound Card Floppy drive Hard Disk drive Zip drive USB ports CD-ROM drive
Basic Hardware
CPU Mouse Keyboard Video card RAM Network card Sound Card Floppy drive Hard Disk drive Zip drive USB ports CD-ROM drive
Stored Information
Stores access/write code for keyboard Stores access/write code for system speaker Stores access/write code for other chips (functions) on motherboard Does not change (more on this in a moment)
CMOS
Complimentary Metal Oxide Semiconductor how it was made Stores specific information about your system:
Amount of RAM present Type of hard disk drive Date and Time
Chipset Southbridge
BIOS
All devices need BIOS code to interoperate with CPU. Some is stored directly in System BIOS chip, most is stored elsewhere. One of the functions of BIOS is to provide the CMOS Setup Utility, or Setup, which allows us to change CMOS data.
BIOS information
CMOS information
CMOS or Setup
Option to use this program is early in the boot cycle long before system loads Operating System Different key(s) to enter different Setups You should only get to Setup on purpose Program stored in BIOS, but only edits data in CMOS First CMOS was set of switches!
Setup
Lots of screens and subscreens You dont need to know about all settings on all screens Motherboard book is mildly helpful on some options You should know generally where things can be found
When adding a modem, you might want to turn both of these off.
Old CMOS
Stored the hard drive geometry which was NOT found on the drives label Old systems had a nasty habit of loosing CMOS data and requiring a trip to the repair shop to get fixed I spent many an hour hacking drive geometry values by trial and error
15
New CMOS
Did you notice the High Performance option? Did you see the Setup Defaults option? BIOS can talk to hard disk drive and get all the information it needs. About the worst that happens today is the need to reset date and time.
Chip Evolution
EPROM Erasable Programmable ROM; used ultra-violet light (sunlight) to erase EEPROM Electrically Erasable what we use today Flash ROM another name for EEPROM NVRAM Non-volatile RAM. Really not so, still needs battery power
The Three-In-One
We have BIOS that stores code and access program to CMOS We have CMOS that stores changeable information about our system We have RTC (Real Time Clock) that keeps track of date and time All three are now rolled into one chip
More Battery
Sometimes we WANT to reset CMOS:
A forgotten password Too aggressive overclocking Incorrect low-level settings on some screen
Either move the jumper, or pull the battery Do either for about 10 seconds If you are to pull battery, make sure you unplug system too
10
More BIOS
Option ROM put a BIOS chip on the card/device
Video is most common for this SCSI cards Network cards have socket, chip is extra
Software Solutions
Device Drivers very flexible, but must wait until OS starts loading. CONFIG.SYS DOS utility program, runs before DOS really gets going SYSTEM.INI Introduced with Win 1 to 3, another text file. Win 9x wont boot without it; XP will The Registry Introduced with Win 95. Binary database of information
Software Help
Control Panel Graphical window to the Registry Device Manager Another graphical path to the Registry REGISTRY EDITOR(s):
REGEDIT REGEDT32
POST, cont.
Until video card is done, we are in the dark and could get Beep Codes for errors. Dont memorize them. Constant beeping is either memory or video error. Once the video card has checked itself out, we could get error codes/messages on the monitor as other devices report status
5
POST, cont.
About this time, we get the option to run CMOS Setup routine POST is done; control passes to Bootstrap Loader. Its job is to find OS.
Looks for the Boot Sector on floppy/hard disk drive(s)
A disk with functional OS is called a Bootable Disk or System Disk. Could be floppy (DOS), CD or hard disk drive.
Boot Order
Somewhere in CMOS Setup is the ability to set the boot order, or the order in which the bootstrap loader will search for an OS. I set my systems to: CD/DVD drive, floppy and then hard disk drive. Usually, if a bootable CD is found, you get the option to boot from it (by pressing any key). Do nothing and loader continues the search for an OS.
POST Cards
Can be purchased; probably about extinct now. I could have used one about three times in my career so far. If another (known good) video card and/or memory wont boot, motherboard is toasted.
UEFI
At least Sandy Bridge processor and current motherboard. 32/64-bit replacement for BIOS Allows use of 3 TB+ drives without partitioning it down Good topic for an Internet search some rainy Saturday