The computer system bus is the method by which data is communicated between all the internal pieces of a computer. It connects the processor to the RAM, to the hard drive, to the video processor, to the I/O drives, and to all the other components of the computer.
There are three types of buses in a computer, which all flow together. The data bus allows data to flow between devices; the address bus tells devices where the data should go or is coming from; and the control bus coordinates activity between various devices to prevent data collisions. “Collisions” is a term that identifies the corruption of data resulting from simultaneous use of the data and/or address bus.
Each byte of memory stored in RAM has a unique address associated with it, which are similar to IP addresses. When the CPU wants to access data that is stored in memory, it puts the data address on the address bus, and then sets the control bus to indicate that it is waiting for data. The main memory controller will place the requested data on the data bus and change the control bus to indicate that the data is ready. The CPU is then free to read the data from the data bus.
When upgrading from a 32-bit processor to a 64-bit processor, both the data bus and address bus increase in size from 32-bits to 64-bits, allowing for larger data transfer through the bus.
High level abstraction of System Bus