On appelle bus, en informatique, un ensemble de liaisons physiques (câbles, pistes de circuits imprimés, ...) pouvant être exploitées en commun par plusieurs éléments matériels afin de communiquer.
Les bus ont pour but de réduire le nombre de traces nécessaires à la communication des différents composants en mutualisant les communications sur une seule voie de données.
Dans le cas où la ligne sert uniquement à la communication de deux composants matériels, on parle parfois de port (port série, port parallèle, ...).
Un bus est caractérisé par le volume d'informations transmises simultanément (exprimé en bits), correspondant au nombre de lignes sur lesquelles les données sont envoyées de manière simultané. Une nappe de 32 fils permet ainsi de transmettre 32 bits en parallèle. On parle ainsi de "largeur de bus" pour désigner le nombre de bits qu'il peut transmettre simultanément.
D'autre part, la vitesse du bus est également définie par sa fréquence (exprimée en Hertz), c'est-à-dire le nombre de paquets de données envoyés ou reçus par seconde. On parle de cycle pour désigner chaque envoi ou réception de données.
De cette façon, il est possible de connaître la bande passante d'un bus, c'est-à-dire le débit de données qu'il peut transporter, en multipliant sa largeur par sa fréquence. Un bus d'une largeur de 16 bits, cadencé à une fréquence de 133 Mhz possède donc une bande passante égale à :
16 * 133.106 = 2128*106 bit/s, soit 2128*106/8 = 266*106 octets/s soit 266*106 /1024 = 259.7*103 Ko/s soit 259.7*103 /1024 = 253.7 Mo/s
Afin d'augmenter le débit des bus, il existe des techniques permettant d'envoyer plus d'informations sur un même cycle :
On distingue généralement sur un ordinateur deux types de bus : le bus système (appelé aussi bus interne, en anglais internal bus ou front-side bus, noté FSB) et les bus d'extension (bus ISA, bus AGP et bus PCI) permettant de connecter des cartes d'extensions.
Il est intéressant de noter que, pour communiquer, deux bus ont besoin d'avoir la même largeur. Cela explique pourquoi les barrettes de mémoire vive doivent parfois être appariées sur certains systèmes (par exemple sur les premiers Pentium, dont la largeur du bus processeur était de 64 bits, il était nécessaire d'installer des barrettes mémoire d'une largeur de 32 bits par paire).