A software bus is a software architecture model where a shared communication channel facilitates connections and communication between software modules.
This makes software buses conceptually similar to the bus term used in computer hardware for interconnecting pathways.
[1] In the early microcomputer era of the 1970s, Digital Research's operating system CP/M was often described as a software bus.
[2][3] Lifeboat Associates, an early distributor of CP/M and later of MS-DOS software, had a whole product line named Software Bus.
[4] D-Bus is used in many modern desktop environments to allow multiple processes to communicate with one another.