Computer Structure is a lead for an operating system where we are arranging the functional things in a way to create a structure of an operating system is called Computer Structure. a structure of a computer consists of the Operating system, Hardware, software, firmware, input-output devices, Memory and storage classes.
The operating system is a set of programs used to establish an interaction between the hardware and software of a system. Operating systems go by many different names depending on the manufacturer of the computer and on the processor used in the system. The operating system is also named system software, monitor program, executive program, supervisor, and master control program. The operating system is primarily responsible.
- for storing information on the disk,
- for translation and interpretation of commands and instructions,
- for assignment of processors to different tasks being performed by the computer system and
- for communication between the microprocessor and its peripherals.
The below-given figure shows the operating system and its functional relationship with various hardware components.
The below figure shows the hierarchy among the hardware operating system, utility programs, assembly, high-level language programs, and application programs. The operating system is closest to the hardware and the application program is farthest from the hardware.
Whenever a system gets started firstly, an operating system provides a channel of communication to the application programs. CP/M(Control Monitor Program) was a widely used operating system for an 8-bit microprocessor (Z80, 8085/8080A) system. MS-DOS (Microsoft Disk Operating system) for 16-bit microprocessors and operating systems like UNIX, OS/2, and Windows 95/98/NT for 32 and 64-bit microprocessors, are commonly used operating systems.
Hardware, Software, and Firmware
Hardware is defined as the physical device of a computer. It may be an electronic, electrical, mechanical, magnetic, or optical device. The computer hardware includes a microprocessor, hard disk, floppy disk, CD-ROM, keyboard, monitor, printer, etc. Computer hardware is controlled by the sequence of instructions. The sequence of instructions to perform a specific operation is known as the program. A collection of programs is named software.
The software can be broadly classified as follows:
- System software
- Application software
The software which controls the operation of a computer is defined as system software. It allows users to create files, use and control input/output devices, manage memory space, etc. The software is available to a specific type of application software. Application software has been developed for specific purposes such as designing building structures, power systems, accounting, inventory control, etc.
With the advancement in technology and reduction in hardware cost, today software is also being made available by many manufacturers on ROM chips. These ROM chips can be easily plugged into the computer system and they form a part of the hardware. Such programs made available in hardware are known as firmware. Firmware often refers to a sequence of instructions that is substituted for hardware.
The input and output devices are the ears and eyes of the microprocessor systems. These are the communication channels to the external world. The data and instructions can be entered into the memory through the keyboard or simple switches. These devices are known as input devices. The devices which are used to display or print the results are known as output devices. The monitor, seven-segment LEDs, printer, etc. are a few examples of output devices.
Input/Output devices can be interfaced with microprocessors in two nodes:
- Parallel I/O mode
- Serial I/O mode
Data can enter or exit in groups of certain bits; this is called parallel I/O mode. In serial I/O mode, one bit is transformed using one line. Both modes are having their own advantages and disadvantages. The mode of communication is chosen according to the application.
Semiconductor memories are used for storing information in microprocessor-based systems. The below figure shows the hierarchical structure of memory. Though a total of six levels are shown in the figure, in many systems, there may be only three levels of memory, namely, register, primary memory, and mass storage.
From the point of view of the speed of operation, the memory types listed toward the top of the pyramid are faster than those listed toward the lower end. For example, the time required to read a word of information from a fast primary memory may be as low as 100n sec as compared to the 10msec required to read a word from a hard disk.
Registers are part of the microprocessor. This is shown at the highest level of the memory pyramid in the above figure. The amount of register storage is limited from a few hundred bits to a few thousand bits. The number and types of registers vary from one microprocessor to another. For example, in the 8085 microprocessor, the register storage accessible to a programmer is 101 bits. In addition to these programmer-accessible registers, the 8085 has a few more registers.
Cache Memory is a faster memory. To increase the performance of the system some designer uses the cache memory at the second level. Cache memory size is typically in the few kilobytes range. In some advanced microprocessors, the cache is located on the processor chip itself. However, as the cache memory consists of faster memory chips, it is expensive too. The cost, therefore, becomes one of the size-limiting factors of cache.
Registers require space on the microprocessor and hence only a limited number of them can be provided. This memory is generally not sufficient in most systems, hence the primary memory is used. This is the third level from the top. The size of a primary memory may vary from a few kilobytes in small systems to several megabytes in large systems. In some systems, there is an extra level of primary memory. This extra level consists of a memory of a much larger size, though an order of magnitude slower in speed than the higher-level primary memory.
Several programs and data are needed to be resident within the system so that they can be loaded for execution into the primary memory without much delay. Holding these programs and data may require several megabytes of memory. These programs and data may not be accessed very frequently. Thus, one or more mass storage device is used for storing this information. Hard disks, floppy disks, and optical disks are some of the devices used for mass storage. This type of mass storage is also called online storage as all the information is accessible to the microprocessor, though at a comparatively slower rate.
The offline backup is a type of removable storage device. When all the mass storage available in a system gets used up then offline backup plays an important role. A removable hard disk and a tape drive are examples of offline backups. Once such a device is available, the user can perform periodic backup operations. It is offline because the information on these devices can not be accessed by the microprocessor just as easily as it would access information from the primary or other online memory.
There are two main types of semiconductor memory: RAM(Random Access Memory) and ROM(Read Only Memory).
Random Access Memory (RAM)
There are two types of RAM used in a microprocessor-based system. These are (i)static RAM (also known as SRAM) and (ii)dynamic RAM (also known as DRAM). A static RAM is made up of flip-flops. It stores the bit as a voltage. The flip-flop retains the stored information until it is overwritten or electrical power is taken off the chip.
Dynamic RAM has a much smaller cell than static RAM. One bit of information is stored as a charge on a capacitor. The advantages of dynamic RAM are that it has high density, low power consumption, and is cheaper than static RAM. The disadvantage is that the charge leads; therefore; to retain the information on dynamic RAM, it should be refreshed again every few milliseconds. This refreshing needs extra circuitry and makes the interfacing of dynamic RAM to the microprocessor more complex than the interfacing of static RAM. Generally, systems that require large memory capacity, use dynamic RAM to lower the memory cost.
Read-Only Memory (ROM)
The ROM is a nonvolatile memory. It is a preprogrammed chip and can only be read by the microprocessor. This memory is used for programs and data that need not be altered. Thus, once the information has been recorded in the ROM, the chip can either be used with whatever it contains or has to be discarded.
A user-programmable ROM, also known as PROM, or one-time programmable ROM, can be programmed by the user just once. After being programmed, the PROM behaves just like the ROM. This memory has nichrome or polysilicon wires arranged in a matrix, these wires can be functionally viewed as diode or fuse. This memory can be programmed by the user with a special PROM programmer. This process is called “burning the PROM”.
A PROM that can be erased by ultraviolet light and then reprogrammed is known as an Erasable Programmable Read-Only Memory(EPROM). In order to erase the EPROM, it has to be taken out of its normal circuit and placed in front of a special ultraviolet erase for several minutes. The disadvantages of EPROM are
- it must be taken out of the circuit to erase it
- the entire chip must be erased, and
- the erasing process takes 15 to 20 minutes.
The inconvenience and other technical problems associated with the removal of EPROM from its normal circuit of operation are taken care of in Electrically Erasable PROMs(EEPROM). The EEPROM can be erased and reprogrammed in normal conditions. This makes the EPROM ideal for applications where some of the parameters need to change over a period of time. The below-given image shows the various types of semiconductor memories.
In a microprocessor-based system, the basic components are the microprocessor, memory, and input/output devices. To communicate the data between the microprocessor and memory or input/output devices, a path is required.
The system bus is a communication path between the microprocessor and peripherals (memory and input/output devices). This consists of a group of wires to carry the information in bits. There are three system buses as follows
This is a collection of wires which transfers the address of the peripheral from a microprocessor to a peripheral. The address bus is unidirectional.
A data bus is a group of lines used for data flow. This is a bidirectional bus meaning that data can flow in both directions between the microprocessor and memory and I/O devices.
The control bus consists of various single lines. These lines are used to communicate the timing and control signals. These signals are also known as synchronization signals. A control bus is not a real bus since it is not a group of lines like an address or data bus, but individual lines.