a) Device drivers
b) I/O systems
c) Devices
d) Buses
Device drivers present a uniform device-access interface to the I/O subsystem.
They act as a bridge between the operating system and hardware devices, providing a standardized way for applications to interact with different types of devices. This abstraction layer simplifies the development of applications and makes the I/O subsystem more manageable.