Synchronous I/O
Synchronous I/O is a method of input and output operations where the program waits for the completion of an I/O task before moving on to the next instruction. This means that when a program requests data from a disk or network, it pauses until the data is fully received. This approach can simplify programming since the flow of execution is straightforward and predictable.
However, the downside of Synchronous I/O is that it can lead to inefficiencies, especially if the I/O operation takes a long time. During this waiting period, the program cannot perform other tasks, which can slow down overall performance. As a result, many applications use asynchronous I/O to improve efficiency.