I/O device concepts:
Refers to all the devices inside the computer except the central processor and memory, often referred to as external devices.
I/O device classifications:
• Classification by Interactive objects:
• Human-Computer Interaction equipment
• Devices that interact with computers or other electronic devices
• Co-signaling equipment between computers
• Classification by interactive direction:
• Input (readable)
• Output (writable)
• Input/output (readable and writable)
• Classification by peripheral characteristics:
• Use features
• Transmit Data rate
• Information Organization features
I/O control mode:
• Program Access control mode
• Interrupt control mode
· DMA mode (direct memory addressing mode): Data Handling in memory
• Channel mode (on behalf of: USB)
Target of I/O Software:
• Device independence: When visiting a device, you do not need to know how to operate the device in detail.
• Unified naming
Hierarchical structure of I/O:
• User Layer
• Independent layer of equipment
• Device driver Layer
• Middle Fault
• Hardware Layer
I/O Scheduling concepts:
Scheduling a set of requests is a good order to execute these requests.
The operating system maintains a request-to-column for each device to implement scheduling.
One way to improve computer efficiency for I/O core subsystems is to perform I/O operations scheduling, using techniques for memory or storage space on disk. such as buffering, fast caching, spooling.
Fast cache:
Fast Cache is a fast memory that preserves copies of data, and quick access to cached copies is more efficient than the original data access.
Cache:
A buffer is an area of memory that is used to store data that is sent between two devices or between devices and applications.
Three effects of using buffers:
• The speed difference between the producer and the consumer handling the data stream
• Coordinate devices with inconsistent data transfer sizes
• Copy semantics for application I/O
Buffer:
• Single buffer
• Double buffering
• Cyclic buffering
• Buffer pool
Device Assignment Overview:
• For an exclusive device process, you must first request an assignment and then be able to perform I/O transfer
• For shared devices and virtual devices, there is no need to consider allocation issues, and processes can be directly requested by the file system.
Principle of equipment allocation:
According to the characteristics of the device, user requirements and system configuration conditions to determine
How devices are allocated: Static allocation and dynamic allocation
Device allocation policy: First Request first allocation (FIFO), priority high first allocation
Spool Technology (spooling):
Transform a single-use device into a shared device
The composition of the spooling system:
• Input wells and output wells (present in external memory)
• Input buffers and output buffers (present in memory)
• Input process SP1 and output process SP0
Error handling
Suppose I am I/O device error should be handled by I/O
Fifth chapter: Input/Output (IO) management