Magistrala (ang. bus) to wspólny zestaw przewodów i ścieżek, którymi podzespoły komputera wymieniają dane, adresy i sygnały sterujące. Zamiast łączyć każdy element z każdym osobnym kablem, projektanci dają im jedną „autostradę”, po której wszyscy jeżdżą. Stąd nazwa — to taka linia autobusowa dla bitów: jeden tor, wielu pasażerów, z góry ustalone przystanki.
Klasycznie magistralę dzieli się na trzy logiczne części. Magistrala danych (data bus) przenosi właściwą zawartość, magistrala adresowa (address bus) mówi, dokąd te dane mają trafić w pamięci, a magistrala sterująca (control bus) wysyła komendy w stylu „czytaj”, „zapisz”, „czekaj”. Jej parametry mają realny wpływ na wydajność: liczy się szerokość (ile bitów leci równolegle, np. 32 czy 64), taktowanie oraz przepustowość (bandwidth) liczona w bajtach na sekundę. Jeśli procesor jest szybki, a magistrala wąska, masz klasyczne wąskie gardło — jak ośmiopasmowy zjazd wpuszczany w jeden szlaban.
Gdzie ją spotkasz w praktyce
Najbardziej namacalny przykład to PCI Express (PCIe) — magistrala, do której podpinasz kartę graficzną czy dysk NVMe. Mówiąc „GPU w slocie PCIe x16″ wskazujesz, ile linii (lanes) ma do dyspozycji: więcej linii, więcej przepustowości. Liczbę aktywnych linii podejrzysz na Linuksie:
lspci -vv | grep -i "LnkSta"
Zobaczysz tam coś w rodzaju Speed 16GT/s, Width x16. Jeśli karta wpięta w x16 nagle raportuje x4, to znak, że albo slot jest współdzielony, albo coś siedzi nie tam, gdzie trzeba — i tracisz pasmo bez powodu. Innym typem magistrali jest USB (Universal Serial Bus — to „B” w skrócie to właśnie bus) czy I²C, po której gadają czujniki na płytach typu Raspberry Pi.
Częste nieporozumienia
- „Magistrala to fizyczny kabel” — niekoniecznie. To raczej standard i ścieżki na płycie głównej; USB ma wtyczkę, ale wewnętrzna magistrala pamięci to ścieżki w laminacie.
- Mylenie zegara z przepustowością — wyższe taktowanie to nie wszystko. Wąska, szybka magistrala potrafi przegrać z szerszą, ale wolniej taktowaną.
- „Współdzielona = wolna” — dawniej rzeczywiście wszyscy walczyli o jeden tor (jak stare PCI). Dziś PCIe to zestaw punkt-punkt, więc urządzenia nie odbierają sobie pasma tak brutalnie jak kiedyś.
Pojęcia powiązane, które warto skojarzyć: PCI Express, chipset, kontroler pamięci, przepustowość, USB, I²C oraz wąskie gardło (bottleneck). Jak ogarniesz magistralę, łatwiej zrozumiesz, dlaczego sam mocny procesor nie czyni jeszcze szybkiego komputera.