Here is a term paper on ‘Hardware’ for class 11 and 12. Find paragraphs, long an short term papers on ‘Hardware System’ especially written for college and IT students.
Term Paper on Hardware
Term Paper Contents:
- Term Paper on the Introduction to Hardware
- Term Paper on Central Process Unit (CPU)
- Term Paper on the Segmented Address
- Term Paper on Memory Map
- Term Paper on the Main Memory
- Term Paper on Storage Capacity
- Term Paper on ROM BIOS of PCs
- Term Paper on the Interrupts
- Term Paper on Multiprocessor System
- Term Paper on Input Devices
- Term Paper on Output Devices
- Term Paper on Secondary Storage
Term Paper # 1. Introduction to Hardware:
It is the special type of hardware, the lump of plastics, metal, and silicon, with its electronic components and their inter-connections which make a computer what it is. Let us now look at these in some detail to understand how the computer functions. Before we proceed, you should be aware that by computer we are actually referring to digital computers, which are represented by the binary number system for internal operation.
In a binary or two-state device, like a switch, the status is represented by either on or off position. Hence anything and everything is decided in a digital computer with reference to the power of 2.
In this system, the binary digits, or bits in short, are the basic units, which are 0 and 1. But since, a single bit can represent only two different positions, so the switches are always used in combinations to give large number of options. When 4 bits, called nybble, are used together we can get 24 = 16 different switch positions, each of which combinations can be used to represent a decimal number or some limited number of characters or instructions.
Similarly, with 8 bits together, called a byte, we get 28 = 256 different combinations; and with 16 bits, called a word, we get 216 = 65,536 positions. Incidentally, a kilo in binary system is 210 = 1024, and not 1000. Since writing 16 or 32 bits of 0s and 1s is a bit cumbersome, difficult to remember, with chances of mistakes being high, a short-hand version called Hexadecimal Number System has been developed, where 4 binary digits are represented by one digit of the hexadecimal system — which uses 16 digits: 0 to 9, and A to F, with A being 10 and F being 15, the others coming in between.
We will be using these terms here to explain other situations. But, no matter what you do with a computer, you should never forget that it is an inert electronic device, primarily controlled by manipulating millions of switches and logic gates. It is the ingenuity of human beings that such inert electronic things can do such wonderful tasks.
Whenever you are using a computer, you have to supplement the skill of the computer, especially in terms of the fantastic speed, with your intelligence to make best utilization of this powerful tool. Now let us go to the heart of the computer.
Term Paper # 2. Central Processing Unit — CPU:
CPU is the heart and soul of the computer system which controls everything, whether it is input of data, processing in different ways, storage and retrieval using secondary storage, or output through different devices. It dictates each part to do their respective assigned roles, which reports back on completion. For example, if some document is to be printed, it checks whether the printer is ready to receive the material, and being satisfied, sends the information to the printer.
If the paper gets exhausted, it gets feedback from the printer and displays such message — of course, everything is done by it under different sets of instructions. In modern computers, the Central Processing Unit is housed in the microprocessor chip or simply, the chip; which is broadly divided into two sections called Control Section and Arithmetic-Logic Unit [ALU].
What the control section basically does is, it fetches an instruction from a specific location in the main-memory (primary storage) to a specific location inside it called a Register, decodes the instruction, and then executes it by sending commands to different parts to do the specific task — which may be getting a data from memory to the register called Accumulator within the ALU, or moving a data from one place to another in the memory or from a disk to memory, or performing some arithmetical computation or some logical operation, and so on.
All these are done by changing the settings of switches by making some bits on or off. After an instruction is executed, again the fetch-decode-execute cycle continues with the next instruction and this continues until all the instructions are executed; if nothing goes wrong.
To process data, these are brought from or send back to memory from some special storage places inside the chip, called Registers; some of which are in the Control Section and some are in the ALU. In Personal Computers, these registers are individual 16 or 32 bit storage places having their specific names and used for different purposes. Some of these can be used in different ways, but some can only be used for specific purposes only.
For example, the 8086/8088 microprocessor chips have 14 registers named as AX, BX, CX, DX, SI, DI, CS, DS, ES, SS, SP, BP, IP, and Flag Register. The AX, a general purpose register is also called Accumulator as most of the arithmetic and logical operations are carried out with the data brought into it. It is also involved in Input/output operations. The SS, on the other hand is used for stack operation only.
The ALU, in addition to registers also contain special circuit elements called Adder and Shifter. The adder circuit is used for addition and the shifter is used for limited multiplication. The different elements are interconnected with paths called Bus — there being a two-way path called Data Bus for movement of data, Address Bus for sending address of data and instruction, and control-lines for sending commands and receiving feedbacks.
The operations performed in the Arithmetic-Logic Unit are the arithmetic computations and logical operations called AND, OR, XOR, NOT, etc., and for this purpose, there are different circuit elements called Logic Gates.
All the activities inside the CPU are synchronised by a clock which creates train of pulses of 0s and Is. This clock frequency, given by number of cycles per second, is expressed in MegaHerz and was 4.77 MegaHerz in the first Personal Computer. The clock speed gives a relative indication of speed of operation between different computers.
In order to successfully get the correct data or instruction or to instruct a device correctly, proper identification is required for each place of storage in the main-memory and also for the peripheral devices. These are called addresses. Other than the main memory, which the CPU can directly address, all other peripheral devices like keyboard, disk-drive, printer, etc., are connected through appropriate interfaces called Ports.
An interface refers to a common boundary between devices, which make them compatible to each other. For example, the battery-eliminator used to connect a 6 volt transistor radio to a 220 volt supply can be called an interface.
All these interfaces used in computer have their own registers, identified by the respective port-address. However, there is one exception to the above rules — the address of the storage place used by the display unit is directly connected to the CPU as a part of main-memory; to facilitate faster display. This technique is called Memory Mapped I/O.
The commands to transfer data between Registers of CPU and Main-memory is MOV, whereas with the ports, the commands are IN and OUT; both being treated differently — the port indicating external device.
Incidentally, the traditional digital computers are now being dubbed as CISC, which stands for Complex Instruction Set Computer. The modified variety, manufactured by some are being termed as RISC, or Reduced Instruction Set Computer, which are claimed to be faster in processing.
It is obvious that the larger the storage place in main-memory, available to the CPU, the greater will be its ability to perform better. But to have larger storage places for each byte, amongst others, we have to provide for unique address for each storage place.
In a 16-bit computer like say PC XT [8086/8088], the registers are all of 16-bit size. This gives the total number of addresses as 65,536 or divided by 1024, equal to 64 Kilobytes of memory; each address having 1 byte of storage facility.
In order to get larger memory space, actually 20 bits are used giving 220 or 10,48,576 or 1024 Kilobytes or 1 Megabyte of storage space. But how to get 20 binary digits in a group with 16-bit registers? The ingenious method adopted is that, two numbers of registers are used in combination to denote any address.
One register, called a segment register, contains the address of a maximum chunk of 64 KiloByte [KB] of memory called segment, and another register, called an offset register, contains the address of all the bytes within that chunk of 64 KB segment. Now, since one hex digit represent 4 bits, we can represent 16 bits by 4 hex digits. So, the address of the segments can be as 0000, 0001,…,FFFF etc. Similarly, the offsets can be 0001,0002,.,.,FFFF.
The addresses are represented in the form as Segment: Offset. To get the final address, called Absolute Address, the number in the segment register is multiplied by 16, which implies adding a 0 hex-digit at the end of the number in the segment and the then offset number is added to it.
For example, if the number in the segment register is 1165 and that in offset is 5247, the address is formally given as 1165:5247, and, the absolute address as — 11650 + 5247 = 16897 (all these numbers are hexadecimal digits). What it implies is that each segment will be of a minimum size of 16 bytes. In other words, the segments are designed to start from paragraph boundary — the address of the segment being divisible by 16; each paragraph accordingly contains 16 bytes.
It is not necessary that a segment will always be of its maximum size of 64 KB or minimum size of 16 bytes. Since different segments of memory is used for instruction codes, data, and stack, the next segment can always start at the next paragraph boundary after one segment ends containing all the codes. For example, suppose the instructions for a program requires 4370 bytes. Then 4370 / 16 = 273.125, or 274 paragraphs of 16 bytes would be required, which is 112 in hex- digit.
Thus, if the segment Containing instructions called Code Segment [CS] starts at 0000 with offset of the first byte as 0000, given as 0000:0000 and the program size is 4370 bytes, the next segment for data, called Data Segment [DS] will start at 0112, with offset 0000, given by 0112:0000 — the absolute address being 01120 + 0000 = 01120, which is equivalent to 4384 bytes.
Thus only (4384 – 4370) – 14 bytes remaining unused in the code segment, at the same time there being a separate data segment. Otherwise, if the segment size was restricted to its maximum of 64 KB, then there would be lot of unused locations in different segments, causing inefficient use of memory. If you look at the memory using PcTools or Norton Utility, you will find that the display is always on paragraph basis, each display line containing 16 bytes.
By using this technique of allocating RAM area in multiple of 16 bytes at a time, a small program uses less space, which can be used by other programs.
Since, the absolute address is given by the combination of a segment and offset values, an absolute address can be represented by different combinations of segment and offset values. For example, the absolute address of 16897 was given earlier as 1165:5247. It can also be represented as 1689:0007, that is, the 8th byte in the segment starting at 1689, or, the 5248th byte in the segment starting at 1165; both are same.
The address of the instruction codes are given by the registers CS:IP, the stack by SS:SP, and the data, generally by DS:DX pairs.
The total memory as available in the MS DOS system, as stated above, is 1024 KB [or 1 MB]. Out of this 384 KB is used by the System Software [part of MS DOS and ROM BIOS], leaving a space of [1024 – 384] = 640 KB for Application Software; available to the user.
The distribution of 1024 KB is made [logically] as 16 segments of 64 KB size, as shown below:
In 0-block, a part of the memory is also used for system software, containing important data for computer’s use.
The main-memory or the primary storage uses semiconductor elements, which are of different types. The main portion is called RAM, or Random Access Memory, which is a memory of the type which can be read or written randomly at any location. These are of Metal Oxide Type [MOS].
This is also of volatile type, that is, when the power is switched off, all that is stored in the RAM is lost. The other type of memory elements used in the main memory is called ROM, or Read Only Memory. The data or instructions stored on this type can only be read but cannot be over written and is not lost when the power is switched off — it is of nonvolatile type. The Basic Input Output System, called BIOS, which executes when the computer is switched on and provides many other valuable services, is stored in ROM and hence called, ROM BIOS is in the F-block of main-memory.
The RAM chips are of two types, classified as Dynamic and Static RAMs. The basic difference is that whatever is stored in Dynamic RAM gets lost with time and needs to be refreshed periodically, which in case of Static RAM is not required. Naturally, the dynamic type of RAM is cheaper and it is used in the primary storage.
The Static RAM, which is quite costlier is used in Cache Memory, which is a small storage place used between the CPU and the main-memory to facilitate faster execution of processing by the CPU, by storing data/instructions which are likely to be used frequently by the CPU. Incidentally, the registers inside the CPU allow fastest storage and retrieval of data, with main-memory slowest, and the cache memory coming in-between.
Other types of Read Only Memory available are variously called PROM, EPROM, and EEPROM. The PROM stands for Programmable Read Only Memory, which can be written only once and not erasable. In fact ROM BIOS is actually a PROM. The EPROM stands for Erasable Programmable Read Only Memory, which can be reused for writing, after the previous program is erased by applying ultra-violet light. The last one, EEPROM stands for Electrically Erasable Programmable Read Only Memory, which has an internal switch which can be used to rewrite programs on it electrically.
Apart from the standard 640 KB of RAM, available to programs operated under MS DOS, it is also possible to have additional storage place as main-memory, which is called either Extended Memory or Expanded Memory. The physical memory over and above the standard 640 KB limit, that is actually over the physical 1024 KB limit, is called Extended Memory and it is available in PC ATs only.
Modern softwares, including MS DOS version 5.0 can access this memory and use it in programs. When we talk of 2 MB of RAM, it includes the 384 KB used by the system and so, we have 640 KB of standard RAM and 1024 KB of Extended RAM. The 384 KB block, a part of which is available to the user after being used by the system, is called Upper Memory Block or UMB.
The Expanded Memory, on the other hand is a chunk of physical memory, which can be addressed by using special software called LIM [developed by Lotus, Intel and Microsoft], by a technique known as bank-switching. It was developed to provide more RAM to a PC XT; it is now more or less obsolete.
Another kind of memory called Virtual Memory, has come into use. This is actually a specific storage place in a hard-disk which is used by the computer as an extension of its RAM during program execution. The CPU, when needed swaps its content in the RAM to the Virtual Memory, with the contents of the Virtual Memory being brought into RAM; without the user being aware of it.
As far as analog computers are concerned, the programming is done by rewiring the circuit elements, where the variable inputs are analogous to those of the problems to be solved — it manipulates continuous variables. In such computers, the concept of using stored programs does not exist and so they do not have the so called storage memory, which the digital computers have.
Each computer has an addressing system, appropriate to its hardware design, primarily decided by the type of microprocessor used. In the Personal computers using the 8088/8086 chip, each storage location in the memory can store one byte of data or instruction, whatever it may be. For example, if there is an instruction which is three bytes long, it will be stored in three consecutive addresses in the instruction area section [code segment], each location having one byte of the instruction.
Similarly, if a data is two bytes long, it will be stored in data area section [data segment] at two consecutive addresses. In other words, in the standard RAM of 640 KB, there are 6,55,360 storage addresses, each having a storage capacity of 1 byte, giving a total memory of 6,55,360 KB, or divided by 1024, 640 Kilo Bytes of storage capacity. Such machines are called Byte Addressable machines. These machines have the flexibility of storing data or instructions of variable size.
The instructions and the data, as the case may be, depending on their sizes in terms of number of bytes, are allocated variable number of locations. If there is one instruction needing five bytes, followed by an instruction needing one byte, the former will be stored in five consecutive address locations followed by one address location for the second instruction. This way the memory space is fully utilized.
Earlier, there used to be computers, which did not have such flexibility and which could store only a fixed number of characters in at any address. These number of characters used to be called a word, in other words, these words were of fixed length and one address used to contain only one such word, if any data exceeded the number of characters forming a word, it had to be truncated. It could not be stored in part at two addresses.
These machines were called Word Addressable machines. If the world length of such a computer was eight characters long and if there was need to store only three characters, the rest five character positions used to be empty, a sheer wastage of memory space. A similar example would be that of punched cards used.
These cards had fixed sizes of 80 or 96 columns, with one character in each column and that could not be exceeded. Again, if fewer characters were required to be used, even then the full card was necessary. Incidentally, as far as microcomputers are concerned, the term word is used to mean two bytes, unlike mainframes where “word” meant different sizes in different machines. Even the size of byte in some cases used to contain only six bits.
There is another type of computers, where each storage locations in memory can store one character, which is defined by using some codes. These machines are called Character Addressable Machines. Of course, the flexibility of storing more than one characters in different locations exist, as there is in byte addressable machines.
Suppose the “word” length is of fixed eight characters and “Sunil Sen” is to be stored then:
In a Character Addressable machine, it will be similar. The difference between the two will be in case of numeric data, as, in the byte addressable machine, the number of bytes allocated is either 1or multiple of two bytes like 2, 4, etc.
At the heart of every microcomputer is a series of small programs, collectively called Basic Input out System or ROM BIOS, which cannot be changed by an program. The BIOS contains all the programs needed for, as the name implies, all basic low-level operation and control of the hardware.
It is the design of the BIOS, which makes computers of different makes to be IBM Compatible — programs meant for IBM Computers being portable in these machines. The operations performed by BIOS can be classified into three activities — POST, Initialisation, and Boot strap.
The moment electric power is supplied to a Personal Computer of any class by switching on, the BIOS comes into play and it immediately carries out a series of checks of the hardware including RAM and the devices attached, which is called POST or Power-On Self Test. After success, BIOS initialises different tables and programs called Interrupts, which form the first layer of control over the hardware.
Thereafter, BIOS boots or loads the Operating System provided, be it MS DOS, UNIX, or any other. When MS DOS is successfully loaded, the DOS prompt is displayed, handing over the computer to the user and the job of the BIOS is over — but it always remains in background, ready to provide the necessary service. The activity of the BIOS, in the last stage, is called Boot Strap — the activities relating to loading the Operating System, which generally, is MS DOS.
While looking for the program files of the Operating System, the booting program first looks at Drive A, which is a floppy-diskette drive, and then looks at the hard-disk, which is generally the C Drive. The booting of PCs are of two types, called cold-boot and warm-boot. When the power is switched on, cold-booting takes place, which includes POST. But, if with power on, the computer is reset with the switch combinations of Alt-Control-Del the POST and checking of RAM are excluded taking lesser time to come to a state of readiness and it is called warm-booting. If the self-test finds the hardware to be in order, it gives a single beep and then proceeds to load the operating system, by taking its files from a disk to the proper location in the RAM.
These are special type of programs, each devoted to a particular hardware related activity, which can be executed whenever required. The distinguishing feature of the Interrupts is hot whenever these programs are called by using their number, called Interrupt Number, the CPU suspends all activities that is being carried out, executes the program of the interrupt called, and then again continues its operation from where it left — that is why these special programs are called Interrupts, they interrupt normal program activities.
For example, whenever a key is pressed, it generates an interrupt number, calling the program involved, drawing attention of the CPU, and the CPU stops its activities to see what has been done and then acts accordingly, and then goes back to what it was doing. These executions are carried out so fast that the user is unable to know that his program was momentarily paused. The timer clock generates about 18 interrupts per second to update the system clock.
The interrupts are classified as hardware interrupts and software interrupts. Some hardware interrupts are generated by the microprocessor and some by the different hardware components. Software interrupts are primarily provided by BIOS and MS DOS; the programmer can also create his own interrupt programs. The combination of Alt-Ctrl-Del keys generates a software interrupt, immediately resetting the machine.
In microcomputers, the main chip, be it 8088 or 80486, takes care of all the processing operations. However, for faster arithmetic computations involving floating-point numbers and some specific mathematical functions, there is always a provision of adding another processor in the system board, which is called a co-processor or math-processor.
The co-processor uses the same main memory along with the main processor and operates in parallel with the main processor, cutting down processing time. Each microprocessor chip has a corresponding co-processor available, whose type number ends with 7, everything else being same. Thus 8088/8086 has a math-processor called 8087, 80386 has a math processor called 80387, and so on. Some application softwares automatically detects its presence and accordingly uses it.
In large computers, the recent trend is to use more than one Central Processing Unit to facilitate multi-processing which cuts down the processing time considerably. The arrangement enables the computer to handle large processing jobs, as well as to provide a back-up support if one processor breaks down. Generally, when more than one processor shares the same working memory, the computer system is said to be of multi-processor type.
Multi-processing is a technique by which one or more programs are executed simultaneously by using two or more central processing units. Whereas, Multi-programming is simultaneous processing of more than one program by a single processor using the technique of time-sharing.
In case of multiprogramming, following some algorithm, the CPU allocates its processing time to different programs by giving a portion of time to each in turn, which is called time-slice. This is done so quickly that each program appears to be executed simultaneously.
Multi-tasking is the technique of sharing the computer and its resources in different tasks. This is provided by the operating system. For example, if the CPU is waiting for a data to be entered, an input task, it can be used for printing a document, which is another task — increasing the efficiency of computer utilisation.
Input devices provide the vital channel through which we convey our instructions and data to the computer — we talk to it. Input of instruction being a one-shot affair, the entry of data plays a predominant role, and it is in this area various developments are taking place providing different facilities for error-free data entry.
The data which is required to be processed by a computer are generally not in a machine readable form and so these need to be converted to a form which the computer understands. This process of converting/transforming natural data to machine-readable data is done by human-beings, hence, this becoming the most error prone area. Assuming the program to be correct, which is normally the case with good programs, almost all the errors in the output are caused by errors at the input stage, which is the man-machine interface.
Earlier, all data used to be converted to punched cards which were the only input document. These were soon replaced by keyboards, which generates the electric signals understood by the computer in accordance to the alphabets and numericals we type. The keyboards follow the QWERTY pattern, which has been copied from manual typewriters.
In addition, to the usual keys of a typewriter, a computer keyboard provides various other keys, like function keys, cursor movement keys, keys that are used in combinations, insert and delete keys, and so on; generally totalling 84 keys for PC XT and 103 keys for PC AT. The keys are telematics, that is, the signals are repeated if a particular key is held down for some time.
Since one-way communication is incomplete because there is no feed-back from the computer, giving us an idea of what it is doing, the keyboards are invariably attached with a display screen [VDU], even if the CPU is absent. Such pair of keyboard and display unit is called a Terminal and are extensively used for communicating with computers — the VDU being used by the computer to talk to us.
There are a wide variety of terminals in the market. Among these, the simplest one is called a Dumb Terminal, which only has a keyboard and a display screen. Another variety called Smart Terminal additionally has a chip for arithmetic and logic function and also contains a storage facility.
Terminals are used for direct data entry [DDE] to the computer system, carried out under the control of the Central Processing Unit. These are called on-line input devices, because no human intervention is required once the data is keyed in.
Such direct entry result in quick processing giving instant output, however, in case of any mistake in entry, there is no second-check to detect the error, whose consequence may result in significant loss. Moreover, initially, on-line terminals require lot of expenditure on hardware. There is generally 110 back-up of data, in case something goes wrong, like file crash.
There is a third type of terminal, called Intelligent Terminal, which is basically identical to a stand-alone PC. These are often used for off-line data entry, although, simple data-entry machines [slightly cheaper but limited in use] are also available.
In this type of off-line data-entry the entered data is stored in a floppy diskette — the process being called key-to-diskette operation. After data entry, which may involve several floppies, the data is sent to the main computer system where these are processed in batch mode. These devices are called off-line devices.
The process of making data ready for input, called data creation, offers two possibilities. In the traditional method, the data is entered by pressing keys using source-documents which are prepared by clerical staff, sometimes in specially prepared forms, containing the required facts and figures. In fact, these handwritten source-documents are the first source of data errors, caused by wrong, careless, illegible writings.
Gradually, attempts are being made to eliminate such kind of data input with documents which are in directly machine readable form, not requiring much human role in data capturing. Such machine readable media inputs are MICR, OCR, and OMR.
Magnetic Ink Character Recognition [MICR] documents are now extensively used in cheques in the banking sector. The cheque numbers with bank-code, etc., are printed in the documents using special character symbols with a special type of ink. During processing, these documents are passed though a strong magnetic field which energises the magnetic particles in the printed characters. Then these documents are passed under a special reading device, which reads the characters printed and passes it on to the computer. Generally the rate of processing these documents are about 2400 documents per minute.
In Optical Character Recognition [OCR] system, the characters are read by a scanner on the basis of the light reflected from them. The characters have special type faces and are printed using ordinary typewriter or other printing devices. These type of documents are used in commercial bills of huge numbers. The specially prepared bills, on return from customers along with necessary payments are processed by the scanner, which sends the input data to the computer — these are called turn-around documents.
The Optical Mark Recognition [OMR] operates on the same principle as OCR documents, except that different positions in the documents are assigned different values. When these positions are marked, even by a pencil, these values are read by the scanner. These are used for meter-readings, evaluation of objective-tests etc., by reading the positions marked in the documents.
Special light-pens are also available which can read special characters printed according to pre-defined symbols. One such application is Universal Product Code [UPC], which is used in recording price in books and goods, by using vertical lines of different thickness.
The Mouse, however, is a pointing device, used as a supplement to keyboard for moving the cursor to different positions on the screen quickly and it also provides the facility of emulating press of Return key, to select items from a menu system. The Joy-stick is also a crude pointing device, with limited scope, used in playing video games, for movement control.
We are now almost entering a stage, when data can be entered in to the computer by merely reading them, voice input becoming a reality.
Output devices provide the other channel of communication between the computer and a human being — the result of processing or anything else the computer wishes to convey to us are communicated by display or printing, or even by audio response.
i. Video Display:
The video-display unit is used extensively to display the output and it is called a soft-copy. The display can be in text or graphical mode. The display in micro-computers are controlled by a device called Display Adapter, which also contains the display memory, being in the B block of RAM generally. Whatever is displayed on the screen is stored in the video memory, which is accessed by the CPU, as well as the display adapter — this is the only memory which can be accessed by two devices. Since the video-memory forms a part of the RAM, without being approached through a port, it is called the system of Memory Mapped I/O.
Different Graphic Adapter cards are available. The earliest one used was called MDA or Monochrome Display Adapter, which caused display of text mode only in single color like black and white. The display adapters, for displaying in text-mode, consider the screen as combinations of small frames which hold the characters — the character frame in MDA is formed by a combination of 9 by 14 dots.
The total screen can display 80 characters in 25 rows, making a total of 2000 characters. The other adapter in use is called CGA or Color Graphics Adapter, where character in text-mode are displayed as 8 by 8 dots. With CGA, the screen can be used in text or graphics mode. In graphics mode, the screen is divided in a number of picture cells or pixels and their number depends on the resolution.
The three different resolutions available with CGA are:
CGA provides for display of 16 different colours and foreground, background, and border colours can be changed. In text- mode, the colour of each character displayed can be controlled separately. For better visual display, the adapter which is now becoming popular is called VGA or Video Graphics Array, which offers 256 different ranges of colour and 1024 × 768 resolution. There is another special adapter called Hercules Adapter, which has the dual capacity of MDA and CGA, only one being used at a time.
In the current miniature computers like notebooks, LCD or Liquid Crystal Display is being used.
The hard-copy, that is the printed copies are obtained by using printers. Depending upon the mode of communication, the printers are of two types, called parallel printer and serial printer; each being connected to the parallel-port and serial-port respectively. The ports are the connection point [interface] with the peripheral devices [except in case of display units].
Depending on the mechanism of printing, printers are again classified as Impact and Non-impact Printers. In impact printers, a pin or a hammer-head strikes a ribbon placed before the paper creating impression. In non-impact printers, thermal or electro-static printing systems are used.
The printer can be a character device, printing one character at a time; a line printer, printing one complete line at a time; or a page-printer, printing a complete page at a time.
The printer which is used extensively with micro-computers are called Dot Matrix Printers or DMPs, its speed being expressed in cps or character per second; average speed being around 300 cps. DMPs are impact printers which are of two types — 9 pins and 24 pins — the pin-heads form a matrix of dots to build up a character. The column widths are either 80 column or 132 column and these can be used to print different fonts in different modes. Colour printing is also possible with the costly versions.
In daisy-wheel printer, a wheel contains all the characters at the head of different spokes. The wheel spins and comes to rest with the right character to be printed, when a hammer strikes above a ribbon printing the character — this is also a type of impact printer. The output of daisy-printers are much better in quality than DMPs but these are very slow at about 45 cps and much costlier also.
Among the non-impact printers, the two popular ones are ink-jet printers and laser printers. In ink-jet printers, a small dot of ink at high speed hits the paper to build up the characters. In laser printers, laser beams are used to create images on a special drum, from which by thermal process, the toner is fixed on the paper, giving very good quality of output. Laser printers are page printers, which prints a page at a time. Their printing resolution is expressed as dpi, that is, dots per inch; the current ones being 600 dpi.
All the printers discussed so far are of relatively low speed and incapable of being used with large computers, where very high speed printing is necessary. Under this category are the Line-printers, some of which uses chains or bands [band- printer] containing character images, or a drum with raised character images [drum-printer]. The speed ranges from 300 to 3,000 lines per minute. These are all impact printers.
High-speed page-printers, which produces documents at a speed of over 20,000 lines per minute use electro-static, non-impact printing technology, but are highly expensive.
Plotters are a class of printers which are used for printing engineering drawings of large sizes and uses “pens” to draw the lines in different colours, these being called pen-plotters. Either a drum or a flat-bed is used to hold the drawing paper.
The printing operation is exceedingly slow as compared to the processing speed of the Central Processing Unit, often holding up latter’s operation. Hence, two different techniques have been developed to lower the burden on the CPU, causing minimum wastage of its time.
In the printer-buffer approach, a part of the main-memory or a memory bank in the printer is set aside to temporarily hold the matter to be printed when the printer is busy. Once the material is transferred to the buffer, the printer continues its printing operation without encroaching on the valuable time of the CPU, which becomes free to do other things.
The other approach, called Spooling, stands for Simultaneous Peripheral Operation On Line. Under this method, whenever the CPU has some free-time, it controls the print operation, getting files printed from a print queue, and immediately goes back to processing whenever so demanded. A dedicated storage place is created for printing jobs, either in main-memory or a disk.
The output of a computer can also be converted to micro-films, which is a 16 mm roll film or micro-fiche which is sheet of film. A special device is used where the output of the computer stored in tapes are used to prepare the micro-film or micro-fiche — the latter being used in libraries to hold catalogues. The Computer Output to Microfilm is called by the acronym COM.
In accordance with the concept of stored programs for automatic execution, the Central Processing Unit has to have a large storage place under its control to enable it to function. This storage place, popularly called memory, on consideration of cost mainly and also because of limitation imposed by the operating system, does have an upper limit.
Till late 1980s, 640 KB of main-memory has been the standard upper limit for all classes of Personal Computers. Moreover, the main-memory is of volatile type, that is, it contents get lost when the power is switched off.
To supplement the main-memory, which is called Primary Storage, additional storage places are also required, this being provided by the peripheral devices like tape-drives, disk-drives, etc. If we go by the access time, the time required by the CPU to get data from a location, the attached storage devices are far slower as compared to the primary storage, and are called Secondary Storage.
However, the cost of storage per byte is much lower in the secondary storage as compared to the primary storage. In terms of this criterion, the costliest storage place is Registers, followed by Cache-memory, RAM, the disk-drives, and the tape-drives, which is the cheapest.
Tape drives, because of their serial access system [SAS] are sometimes called tertiary storage devices, especially because the tapes are removable. The tape-drives are not used with PCs — tape-cartridges are used for back-up protection. The secondary storage are of non-volatile type. Additional capacities can be easily added if required, having modular expandability.
The two most extensively used secondary storage devices are tape-systems and disk-systems. These are now discussed in some detail.
The magnetic-tape system comprises a tape-handling mechanism, which runs the tape at correct speed as required and reads data from it or writes data to it — the basic storing device being detachable spools of tapes. It is almost like a house-hold tape recorder of much bigger size.
The magnetic-tapes used as a secondary storage device are plastic or mylar ribbons, generally of 1/2 inch width, coated with magnetic material on one side. Like width, the length of tapes also vary, but generally the standard length is 2400 feet, stored in hard plastic spools or reels.
The spools are provided with write- permit rings, which when used allows writing on the tape. Both at the beginning and end of any tape, about 20 feet away from the ends, Aluminium strips are attached which mark the “load-point” and “end-of-reel” respectively.
The process of reading or writing data to a tape involves bringing the tape quickly to the correct speed from rest and then carrying out the read/write operation. Once a record has been processed, the tape quickly decelerates and comes to the rest. This cycle is repeated for every record of data. Naturally no data can be recorded on the portion of the tape which is covered during acceleration and deceleration — these blank portions on the tape are variously called as Inter- Record Gap [IRC,] or Inter-Block Gap [IBG] or End-of-Record Gap [ERG].
The tape moves at varying speed when travelling over the IRGs and at constant speed when moving over data areas. The speed of the tape, when at constant rate, varies from about 30 to 200 inches per second (ips). If the tape, moving at a speed of 112.5 ips [6 miles/hour] covers a distance of 3/8″ to accelerate and also to decelerate, then the IRG would be 3/8″ + 3/8″ = 3/4″.
The data is recorded on tape transversely, alone the length of the tape in 7 or 9 channels by magnetizing bit positions on a vertical axis called a frame [byte or character], depending on the coding system used. The 7-channel recording is adopted for EBCDIC Code and 9-channel for BCD Code. When we refer to an individual track or channel, we say recording as bits per inch, but when we refer to the tape as a whole, we say as characters [bytes] per inch. The density of the tape is expressed as bits per inch or bpi, the usual density being 800, 1600, or 6250 bpi. In modern high-density chromium tapes the density is as high as 38,000 bits per inch.
For error-checking, one outer channel in each tape is reserved for parity bits, which are determined from the number of odd or even bits in the other 6 or 8 channels, as the case may be. If odd-parity system is adopted, the total number of bits in a frame [bits in a vertical line] has to be odd, including the bit in the parity channel.
For example, if in a 7 channel tape, the number of 1s in the other 6 channels in a frame is 4, then a 1-bit is recorded in the parity channel to make the total 5, which is an odd number. If the total number of bits in the other 6 channels was 5, then the bit in the parity channel would be 0. Similarly, an even-parity system can also be adopted. Thus, there is a parity bit for every frame in a tape where data is recorded. These are called vertical-parity check.
Similarly, in each data space, at the end of each channel a horizontal-parity bit is determined, based on all the bits in that channel, depending on the odd or even parity system adopted. Naturally, the last frame, at the end of data space, contains only parity bits, and the same outer channel contains the vertical-parity bit of horizontal-parity bits, which is called double-parity check.
During data reading, the value of the parity-bit is computed for each frame in the data-space and compared with that recorded in the parity-channel — in case they don’t tally, an error is indicated. While writing, the data written is immediately read after a fraction of a second and compared with what was recorded to detect errors if any.
The system of storing data is in the form of a data structure called “record”. If the number of bytes [characters] in a record is very small then the length of the tape required for recording each record would be very small as compared to the IRG, which is fixed by the speed of the tape-drive mechanism. Hence, there would be a large wastage of space on the tape, not containing any data.
To avoid this, a distinction is made between a Logical Record and a Physical Record, the former being how we view a record and the latter being how it is stored on the tape. In practice, if the Logical Records are of fixed lengths, that is, each record provides for a fixed number of characters to be stored, then a number of Logical Records are combined to form a Physical Record or a Block of Data — the length of the physical-record divided by the length of the logical-record is called the Blocking Factor.
In other words, if 8 logical records are combined to form a physical record, the Blocking Factor is 8. Each block of data is always preceded and followed by an IRG, so, bigger the blocking-factor the lower the wastage of tape in IRGs. In case of records of variable length, each logical record containing data of varying length, the process of blocking becomes a bit completed. In such cases, the variable record is broken into small fixed size records and then combined to form what is called spanned record format. During read/write operation the block is always processed and not the logical records; which is done by the program.
Apart from the data records stored in a file, there are two additional records of special types, when a file is stored in a magnetic tape. These two records are called Labels and are used at the beginning and end of the file as Header and Trailer labels, respectively.
The header label generally contains:
1. A specified field to denote that it is a header-label.
2. Name of the file and the date when created.
3. Purge date, that is, the date from which the file is not required.
Similarly, the trailer-label contains:
2. Total number of records in the file.
3. Name of the reel, if the file is too long requiring more than one spool of tape.
The program always checks these labels for necessary controls and the header-label ensures that the correct file is being processed.
The magnetic-tapes are generally used for:
1. Storing of non-high-activity files, that is, the files which are of low- and medium-activity. Generally, a high-activity file is that which is used over 300 times per year. Medium-activity files are used at least 50 times per annum and low-activity for less than 50 times. Activity indicates the number of times a tape is used during a certain period, say one year.
2. As a back-up storage of the contents of Direct Access Storage Devices [DASD], which are generally the disks.
3. Initial storing of data entered at off-line terminals for further processing. Now a days, floppies are being increasingly used.
4. Interchange of data between different computer installations by physically exchanging the reels.
The greatest advantage of using magnetic tapes is that it is the cheapest storage medium — also large number of data can be stored in a tape in the range of 40 megabytes, high data-transfer rate of about 12,50,000 cps, reusable at least 20,000 – 50,000 times and has good storage characteristic. The disadvantage is that it is a Serially or Sequentially Access System [SAS], that is, you cannot go to any record, before going through the previous records.
Earlier, the tape-mechanisms were very much non-standard. The utilisation of the tape, which is reduced as it is by the Inter-record gaps, is further worsened when small files are used; a number of them being stored in a reel.
In order to compute the factors relating to the utilisation of magnetic tapes, let us assume the following:
Among all the secondary storage devices, so tar magnetic disks hold a predominant position with its two broad classes, namely Hard Disks and Floppy Disks or in short Floppies or Diskettes, each with their own characteristics. Both are random or direct access storage devices, that is, any storage part in them can be accessed directly.
Both the type of disks have circular rotating surfaces coated with magnetic materials, but in case of hard disks the base material is rigid Aluminium plates to make them hard, whereas, floppy disks are made of flexible mylar plastic — hence the name given to each. A movable read/write is provided for each disk recording surface.
In case of floppies, there is only one disk enclosed in a white-felt lined paper jacket with opening for the read/write head to operate. So, the floppy has only two recording surfaces at the top and bottom sides, respectively called Side [head] 0 and Side 1. In case of hard disks, a number of magnetically coated plates called platters are mounted centrally on a spindle, each surface having a movable read/ write head except for the two outer surfaces at the top-most and bottom-most positions.
Hence, if three platters are used, the available surfaces are the four inner surfaces numbered as Sides [heads] 0, 1, 2, and 3 from the top side. The total assembly including the read/write heads are enclosed in a metal box which is hermetically sealed to make it airtight. The hard-disk assembly is permanently fixed in the computer and being not movable, is also called a Fixed Disk.
When IBM first released a fixed disk with model number IBM 3030, indicating 30 Mega-Byte storage in each of the two sides of a platter, the hard disk acquired a nick-name of Winchester Disk — one of the famous Winchester rifle having the same model number. With large computers, hard disk-packs are availably which can be removed as a whole.
The recording of data and other information on the magnetic surface is made by using the binary codes of a series of 0s and 1s in both the classes of the disks, which are done by the read/write heads as required. In case of floppies, the read /write head takes in average about 1/6 second to move to a specified location, which is 1/25 second in case of hard disks.
Hard disks rotate at a speed of 3600 rpm [rotation per minute] as against 300/360 rpm of floppies. The data transfer rate for hard disks is about 5 Mega-Bits/seconds, with that of floppies being 250 or 500 Kilo-Bits/second. The storage capacity of hard disks vary from 10 MegaByte [MB] to over 1000 MB, whereas that of floppies range from 320 KB to 1.44 MB, depending on the type.
To ensure proper storage and retrieval of data, each disk surface is divided into a number concentric circles called Tracks. Again, these individual tracks are divided into a fixed number of segments called Sectors. The tracks are numbered as 0, 1, etc., starting with the outer edge and the sectors are numbered as 1, 2, etc., in each track.
Under the ROM BIOS, to locate a specific sector, the head [side], track, and the sector numbers have to be specified. Under MS DOS, each sector is numbered in sequence starting with Head 0, Track 0, Sector 1 ending with the last sector in that track and then the Head is changed to 1 and the same sequence follows.
Only when all the sectors in Track 0 are numbered, the read/write head moves to Track 1, and so on. Hence, all the tracks of all the surfaces of a magnetic disk having the same track number is called a Cylinder For example, in a hard disk, Track 0 of all the Heads from 0 to whatever surfaces there are, like 3 for 20 MB capacity, is collectively called Cylinder 0.
Under the MS DOS system, the size of the sectors can be of four types being respectively 128 bytes, 256 bytes, 512 bytes, and 1024 bytes or 1 KB, but 512 bytes is taken as the standard size of a sector. These are physical sizes. While allocating storage places in magnetic disks, instead of sectors, the logical sizes called Clusters are used, which are multiples of sectors. It is like a block of magnetic tapes.
For example, in the standard 5 1/4″ floppies of 360 KB capacity, the cluster size is 1024 bytes, using two sectors at a time — this is the minimum space allocated each time. The cluster size of a 20 MB hard disk is generally 2048 bytes, using four sectors at a time. A 20 byte long file will occupy 1024 bytes in 360 KB floppy and 2048 bytes in a 20 MB hard disk.
The physical size of some of the magnetic disks are given below:
As far as floppy disks are concerned, the track density available is of two types, being 48 TPI [Tracks per inch] and 96 TPI, the higher one being used in high density floppies of 1.2 MB and 1.44 MB [micro-diskettes] capacities. The term DSDD used in the label of a floppy means Double Sided Double Density, which is 48 TPI. A flippy is one in which both the sides can be treated as a single side diskette, by reversing the sides while putting it in the drive.
Before a diskette can be used it has to be formatted for marking out the sectors with identification marks, etc. The formatting is done by using the FORMAT command available from MS DOS and other utilities available in the market. The process of formatting is of two types called Physical or Low-level formatting and Logical or High-level formatting.
In case of floppies both are done by the format command, whereas in case of hard disks, the physical formatting is done by the manufacturer with logical formatting being done by the format command. The physical formatting is used to fix the sector size, number of sectors per track, number of tracks per side, and the number of sides — a double sided diskette can be formatted to use as a single side diskette.
The logical formatting is done to decide how the disk will be organised with what systems of storage/ retrieval of data. Apart from providing definite places for storage of data called Data Area, specific places are marked as System Area, where under the MS DOS, the Boot Record, File Allocation Table [FAT], and Root Directory are stored. The first sector of 512 bytes of a floppy contain the boot record which is at Side 0, Track 0, and Sector 1. This is used by the ROM BIOS to load the MS DOS operating system during booting up.
In the Root Directory, a block of 32 bytes is allocated to each file stored in the data area, which along with the filename and its extension also contain the number of the first cluster allocated to the file. The FAT, two identical copies of which are maintained, is a table containing the cluster numbers allocated to a file. It is a record of what storage places, the clusters, are allocated to which files, which clusters are free, and which clusters are bad areas not for use.
For example, if in the Root Directory the first cluster allocated to abc.txt is stated as 5, then in the FAT, at the position of cluster 5, a number like say 7, will indicate that the next cluster allocated to abc.txt is cluster 7. If, on the contrary, cluster 5 contains FFF or FFFF, it indicates that it is the last cluster allocated to the abc.txt file.
So the procedure followed when allocating space to a file is that the first available free cluster is allocated and its number is recorded in the Root Directory, thereafter, if additional storage space is required, these are allocated in the form of clusters, the detail being recorded in both the FATs. In the last cluster FFF or FFFF is entered indicating End-of-file.
The structure of the System Area of floppies, as under MS DOS, is given below:
The last column of the above table indicates the maximum number of files that can be stored in that diskette. Since 32 bytes are required for each file in the Root Directory, in the 360 KB diskette, we can store (7 * 512 / 32) = 112 entries. The limitation can be avoided by creating sub-directories, which are treated as files in the root directory. If you see the storage capacity of a 360 KB diskette using any program, it is given as 362,496 bytes, where as 360 KB represents 368640 bytes — the difference is due to space consumed by the system area which (1+4+7) * 512 = 6144 bytes or 6 KB.
A diskette, being of small capacity, is completely owned by the Operating System in which it is used, but, with hard disks the situation is different, as it can have more than one operating system. Here the physical and logical formattings are distinct processes. Since the hard disks rotate at a very high speed, often it is not possible for the read/write had to read or write to physically consecutive sectors, as in the case of diskettes.
Hence, it could be that after sector 1 has been fully read, the next sector under the read/write head is sector 3 or any other sector, but not sector 2. To take care of these situations, an Interleave factor is introduced, whereby the sectors are physically placed in such a manner that the read/write head can tackle them sequentially.
If the interleave factor is taken as 3, the second sector would be at the third position from sector 1 and this style would be followed for all other sector numbering as shown in the sequence below:
1 7 13 2 8 14 3 9 15 4 10 16 5 11 17 6 12 : Interleave of 3:1
The physical formatting is done by taking into factor the interleave factor, to maximize data transfer rate during operation.
A hard disk can be partitioned up to four numbers to provide for four different operating systems or their files. This is done by using a program called FDISK. The details of the Partition Table is contained in the first sector of the hard disk, which is Head 0, Track 0, and Sector 1. This also contains the Master Boot Record which activates the appropriate partition to load its operating system.
For example, you can partition a hard disk into two sections to contain MS DOS and UNIX operating systems respectively and use any one of them by making one of them active in the data of the Partition Table. The boot record of the operating system is contained in the first record of a partition.
Once you have partitioned a part or whole of a hard disk to contain MS DOS, you have to logically format it with the FORMAT command, which will build up the system and data areas as decided by the system. For example, the number of sectors required for the system area of a 20 MB hard disk could be 1 sector for boot record, 82 sectors for FAT, and 32 sectors for the Root Directory.
The procedure for storage or retrieval of data is same for both types of the magnetic disks. The data to be stored is first accumulated in specified buffers in the main memory and there from it goes to the buffer of the disk controller, which then writes it to appropriate clusters. The reverse process is followed during retrieval. There is a hard disk controller for hard disk operation and a floppy disk controller for diskette operations.
The magnetic disks can be reused repeatedly, but over the years some sectors become bad for storage/retrieval, especially in floppy disks. Sometimes the read/write may hit the surface causing physical damage. The storage cost of magnetic disks are higher than that for magnetic tapes, but it is certainly much faster and convenient to use than magnetic tapes.
The latest in the secondary storage devices is optical disks using laser beams, which are called CD ROM or Compact Disk Read Only Memory. As the name suggests, the contents of the these laser disks cannot be altered. These are very high capacity disks. For example, a 5 1/4″ CD ROM can store around 600 MB of data.
The technology has been developed by Sony and Philips in 1970. Data is recorded as tiny pits on a polished surface denoting 1, which are read by reflections produced when laser beams are focussed on them. The disks are immune to dust and finger touches and there is no question of the read head crashing as it does not come in contact with the disk surface. Unfortunately, the costs are too high and it cannot be used for writing.
Another kind of optical disks are now becoming available which are called WORM or write-once-read-many times.