How does initializing an I/O request look like internally ?