# Software bus

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Software_bus
> Markdown URL: https://mediated.wiki/source/Software_bus.md
> Source: https://en.wikipedia.org/wiki/Software_bus
> Source revision: 1299146807
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|Software architecture model}}
A '''software bus''' is a [software architecture](/source/software_architecture) model where a shared communication channel facilitates connections and communication between software modules. This makes software buses conceptually similar to [''buses''](/source/Bus_(computing)) used in [computer hardware](/source/computer_hardware) for interconnecting pathways.<ref>{{Cite web|title=Definition of software bus|url=https://www.pcmag.com/encyclopedia/term/software-bus|access-date=2021-06-29|website=PCMAG|language=en}}</ref>

In the early microcomputer era of the 1970s, [Digital Research](/source/Digital_Research)'s operating system [CP/M](/source/CP%2FM) was often described as a ''software bus''.<ref>{{cite book|title=CP/M - the Software Bus: A Programmer's Companion|first1=A.|last1=Clarke|first2=J. M.|last2=Eaton|first3=D. Powys Lybbe|last3=David|publisher=Sigma Press|date=October 26, 1983|isbn=978-0905104188}}</ref><ref>{{cite web|url=https://retrotechnology.com/dri/d_dri_history.html|title=CP/M and Digital Research Inc. (DRI) History|first=Herbert R.|last=Johnson|date=July 30, 2014}}</ref> [Lifeboat Associates](/source/Lifeboat_Associates), an early distributor of CP/M and later of [MS-DOS](/source/MS-DOS) software, had a whole product line named ''Software Bus''.<ref>{{Cite book|first=Ray|last=Duncan|url=https://books.google.com/books?id=fVEPAQAAMAAJ&q=%22Software+bus%22|title=The MS-DOS Encyclopedia|date=1988|publisher=[Microsoft Press](/source/Microsoft_Press)|page=27|quote=Further complications arose when Lifeboat Associates agreed to help promote MS-DOS but decided to call the operating system Software Bus 86.  MS-DOS thus became one of a line of trademarked Software Bus products, another of which was a product called SB-80, Lifeboat's version of CP/M-80.}}</ref> [D-Bus](/source/D-Bus) is used in many modern [desktop environment](/source/desktop_environment)s to allow multiple processes to communicate with one another.

== Examples ==
* Lifeboat Associates Software Bus-80 aka [SB-80](/source/SB-80), a version of [CP/M-80](/source/CP%2FM-80) for [8080](/source/8080)/[Z80](/source/Z80) 8-bit computers
* Lifeboat Associates Software Bus-86 aka [SB-86](/source/SB-86), a version of [MS-DOS](/source/MS-DOS) for [x86](/source/x86) 16-bit computers.
* [Component Object Model](/source/Component_Object_Model) for in-process and interprocess communication.
* [D-Bus](/source/D-Bus) for interprocess communication.
* [Enterprise service bus](/source/Enterprise_service_bus) for distributed communication.

== See also ==
* [Bus (computing)](/source/Bus_(computing))

==References==
{{Reflist}}

== External links ==
* Microsoft MSDN: [http://msdn.microsoft.com/en-us/library/aa475433.aspx Microsoft on the Enterprise Service Bus (ESB)]

Category:Software architecture

{{Software-eng-stub}}

---
Adapted from the Wikipedia article [Software bus](https://en.wikipedia.org/wiki/Software_bus) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Software_bus?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
