De ISA-bus (industry standard architecture) komt nog veel voor. Hij zat oorspronkelijk in de IBM PC/AT en stamt af van de 286-processor uit die tijd, inclusief een 8 Mhz klok. Terwijl de processoren steeds sneller werden, moest de AT-bus dezelfde blijven, omdat de beschikbare adapterkaarten op een hogere snelheid niet betrouwbaar waren.
ISA is niet de beste bus-architectuur, maar kon overleven omdat hij zo goedkoop is. De huidige 32-bits PC’s maken gebruik van speciale software om I/O over de AT-bus te kunnen ondersteunen, zij het met snellere toegang tot het geheugen. De volgende ontwikkeling, ingegeven door Windows 3.1, was om de grafische aansturing niet meer via de langzame AT-bus, maar via een snelle, interne 32-bits bus (Vesa, video electronics standard association) te laten lopen. Deze 32-bits architectuur werd geformaliseerd als de PCI-bus; deze is algemeen toepasbaar en ondersteunt randapparatuur, zoals controllers, en graphics.
Het logische vervolg op ISA had MCA (micro channel architecture) moeten zijn, maar IBM maakte het de klonenbouwers zo moeilijk met licentievoorwaarden dat deze MCA links lieten liggen en zelf iets bedachten. Het werd de ultieme spaghetti-oplossing, de Eisa-bus (extended industry standard archtitecture), die gelukkig door PCI is vervangen.
MCA is inmiddels van het toneel verdwenen, maar PCI (peripheral component interconnect) heeft dezelfde voordelen, zoals de mogelijkheid om de interface te programmeren. De ISA-bus gebruikte fysieke schakelaars om I/O, geheugen en interruptadressen in te stellen. Bij PCI zijn deze schakelaars vervangen door registers die door het besturingssysteem kunnen worden geïnitialiseerd. Daarnaast hebben alle PCI-adapters een persoonlijke identificatie, zodat het besturingssysteem kan ontdekken welke kaart in welke sleuf zit. Door deze functies kan het besturingssysteem een vorm van ‘plug-and-play’ implementeren, vooral als de ‘device drivers’ à la minute kunnen worden geladen, zoals hopelijk in Windows 98 en NT 5.0.
PCI is een aanzienlijke en relatief goedkope stap vooruit, maar was niet zo succesvol als het had kunnen zijn. Microsoft doet zijn best om het configureren van een PC aan het besturingssysteem over te laten, maar ondertussen bevatten veel bestaande systemen nog steeds onbeheerbare ISA-kaarten. Bovendien kan het besturingssysteem weliswaar de PCI-interface aansturen, maar zijn de op deze interfaces aangesloten apparaten nog steeds onzichtbaar. Een veel voorkomende interface is de Scsi-bus (small computer system interface); deze wordt gebruikt voor het aansluiten van schijven en andere randapparatuur. De controllers voor deze randapparaten kunnen dus verborgen blijven voor het besturingssysteem.
Er zijn nog meer eisen. Er zijn enkele standaarden voor randapparaten die kunnen worden aangestuurd via de PCI-interface. IDE (integrated device electronics) en andere standaarden zullen hierdoor overbodig worden. De AT-bus moet zo snel mogelijk de prullenbak in, MCA en Eisa achterna. De derde eis is dat we alleen nog maar eenvoudige randapparaten op de PC aansluiten. Goed, een server met speciale I/O-eisen, zoals een Internet-gateway, mag worden opengemaakt en van PCI-kaarten worden voorzien. Maar voor desktops moeten we dit zoveel mogelijk vermijden.
Een specificatie voor een ‘device bay’ (apparatenbaai) waarop PCI-kaarten kunnen worden ingeplugd is een mogelijk concept, maar wat de desktop eigenlijk nodig heeft is een intelligente externe bus. Hiervoor bestaan twee standaarden, de 12 Mbs USB (universal serial bus) van Intel en de Ieee 1394 Firewire, die wordt gesteund door Apple. Misschien is het beter om USB maar helemaal over te slaan en meteen over te stappen op de duurdere Ieee 1394, maar software-ondersteuning is en blijft de kritische factor. Beide standaarden zijn behoorlijk complex en het ziet er naar uit dat USB in eerste instantie zal domineren; Microsoft stopt meer ondersteuning voor USB in Windows 98, al zal IDE- en Atapi-apparatuur wel overgaan op Ieee 1394.
USB is een externe seriële bus met een gedefinieerd protocol, waarmee het besturingssysteem de aangesloten randapparatuur kan aansturen en bevragen. In fysiek opzicht is USB veel netter dan de kabels die nu de desktop vervuilen, maar de mogelijkheid om vanuit de PC alle randapparatuur te kunnen aansturen is veel belangrijker. USB levert ook stroom; een hub kan zeven randapparaten aan. Met USB-ondersteuning in Windows 98 specificeert Microsoft een reeks apparaten, zoals modems, printers en dergelijke, die op USB kunnen worden aangesloten. Ook videokaarten zijn op USB aan te sluiten, maar in de praktijk zullen deze op het moederbord worden gemonteerd volgens een standaardspecificatie (AGP, advanced graphics port, een zogenaamd PCI ‘master device’).
Consistent beheer van de stroomvoorziening is een andere functie die voor de nieuwe PC’s is voorgesteld. Het betreft een nieuwe standaard, Apci (advanced configuration and power interface), omdat eerdere pogingen om tot standaarden te komen, met name voor laptops, niet volledig waren en als gevolg hiervan niet geslaagd zijn. Energiebeheer is in het algemeen een goed idee, maar voor één specifiek geval is het absoluut noodzakelijk. Een nieuwe technologie, ‘Now-On’ genaamd, maakt het mogelijk dat het besturingssysteem alle randapparatuur uitzet die niet wordt gebruikt. In standby-toestand staat vrijwel alles op non-actief en draait er alleen een ‘scheduler’ op de achtergrond. Het lijkt net of de PC uit staat, maar hij kan op elk gewenst moment worden geactiveerd, zowel lokaal als via het netwerk. Gezien de opkomst van ‘push’-technologie en software-agents is dit een waardevolle ontwikkeling.
De vraag blijft echter of Microsoft er weer in zal slagen om een nieuwe software-release op de markt te brengen die nieuwe hardware nodig heeft.