I/O - (Input/Output|Read/Write) - Data Access
About
I/O devices can be interpreted as streams, as they produce or consume potentially unlimited data over time.
IO = Input / Output = Writing and Reading data.
It's an umbrella term that regroups IO transfer between components such as:
- CPU to Memory
- Memory to Disk
- or Host to host data communication (Network - Remote Transfer Application Protocols / Remote File Access (Http, Ftp, Scp, ))
An I/O request is a general term that refers to a read or write request to a memory (storage device).
It can also be the network
As the number of I/Os per second increases, the memory provides higher and higher throughput.
In computer architecture, the combination of the CPU and main memory (i.e. memory that the CPU can read and write to directly, with individual instructions) is considered the brain of a computer, and from that point of view any transfer of information from or to that combination, for example to or from a disk drive, is considered I/O.
The CPU and its supporting circuitry provide memory-mapped I/O that is used in low-level computer programming in the implementation of device drivers.
An I/O algorithm is one designed to exploit locality and perform efficiently when data reside on secondary storage, such as a disk drive.
This section is talking only about the reading and writing of bytes through block.
- For character, see What is Text? String or Character?
- For the manipulation of file through a file system, see File (System, Transfer, Storage)
Can reading something be considered as writing it to your brain?
Articles Related
I/O Access patterns
Each server has unique workload characteristics. However there are some basic pattern that we can found in the storage demands: I/O - Workload (Access Pattern)