Perhaps the easiest arrangement to understand is the sectored disk. Consider the following figure. The above image shows a sectored arrangement with gaps between the sectors to allow the system's electronics time to perform data transfer. The image does not do justice to the capabilities of modern media. On disk, the divergence of the physical storage from the logical needs of the program becomes complete.
Data is read and written in sectors or blocks, depending on which is used.
The operating system determines when the physical reading or writing takes place based on its own assessment of logical reads and writes from the program and the data it knows already resides in buffers. Buffers are random access memory that the operating system uses as an intermediate collection point for data before it is written to disk or as a staging area for data that has been read from disk before it is turned over to the user's program. Buffers are sized to match the size of the sector or block that is used on the disk. Schematically, the interaction of the disk, the operating system, and the user's program looks like this. Consider what happens when the program issues a read instruction.