1) Base of hexadecimal number system? Answer : 16 2) Universal gate in digital logic? Answer : NAND 3) Memory type that is non-volatile? Answer : ROM 4) Basic building block of digital circuits? Answer : Gate 5) Device used for data storage in sequential circuits? Answer : Flip-flop 6) Architecture with shared memory for instructions and data? Answer : von Neumann 7) The smallest unit of data in computing? Answer : Bit 8) Unit that performs arithmetic operations in a CPU? Answer : ALU 9) Memory faster than main memory but smaller in size? Answer : Cache 10) System cycle that includes fetch, decode, and execute? Answer : Instruction 11) Type of circuit where output depends on present input only? Answer : Combinational 12) The binary equivalent of decimal 10? Answer : 1010 13) Memory used for high-speed temporary storage in a CPU? Answer : Register 14) Method of representing negative numbers in binary? Answer : Two's complement 15) Gate that inverts its input signal? Answer : NOT 16)
I/O Systems
Overview
* Management of I/O devices is a very important part of the operating system - so important and so different that entire I/O subsystems are constant to its operation. (Consider the range of devices on a modern computer, from mice, keyboards, disk drives, display adapters, USB devices, network connections, audio I/O, printers, special devices for the handicapped, and many special-purpose peripherals. )
* I/O Subsystems must contend with two trends: (1) The gravitation
towards standard interfaces for a long range of devices, making it easier to add newly developed devices to existing systems, and (2) the development of entirely new types of devices, for which the existing standard interfaces are not always easy to apply.
* Device drivers are modules that can be plugged into an OS to handle a specific device or group of similar devices.
I/O Hardware
* I/O devices can be roughly grouped as storage, communications, user-interface, and other
* Devices communicate with the computer via signals sent through wires or through the air.
* Devices linked with the computer via ports, e.g. a serial or parallel port.
* A common set of wires linking multiple devices is termed a bus.
• Buses include stiff protocols for the types of messages that can be sent across the bus and the procedures for resolving contention issues.
• Three of the four bus types commonly found in a modern PC:
1. The PCI bus joints high-speed high-bandwidth devices to the memory
subsystem ( and the CPU. )
2. The expansion bus links slower low-bandwidth devices, which typically deliver data one character at a time ( with buffering. )
3. The SCSI bus joints a number of SCSI devices to a common SCSI controller.
4. A daisy-chain bus, ( not shown) is when a string of devices is linked to each other like beads on a chain, and only one of the devices is directly connected to the host.
• One way of communicating with devices is through registers associated with each port. Registers may be one to four bytes in size, and may typically adds ( a subset of ) the following four:
1. The data-in register is read by the host to get input from the device.
2. The data-out register is written by the host to send output.
3. The status register has bits read by the host to ascertain the status of the device,
such as idle, ready for input, busy, error, transaction complete, etc.
4. The control register has bits written by the host to issue commands or to change
settings of the device such as parity checking, word length, or full- versus half-
duplex operation.
* Above Figure shows some of the most common I/O port address ranges.
* Another technique for communicating with devices is memory-mapped I/O.
• In this case a certain portion of the processor's address space is mapped to the device, and communications occur by reading and writing directly to/from those
memory areas.
• Memory-mapped I/O is suitable for devices which must move large quantities of data quickly, such as graphics cards.
• Memory-mapped I/O can be used either instead of or more often in combination
with traditional registers. For example, graphics cards still use registers for
control information such as setting the video mode.
• A potential problem exists with memory-mapped I/O, if a process is allowed to
write directly to the address space used by a memory-mapped I/O device.