Secara umum, sistem komputer terdiri atas CPU dan sejumlah device controller yang terhubung melalui sebuah bus yang menyediakan akses ke memori. Umumnya, setiap device controller bertanggung jawab atas sebuah hardware spesisfik. Setiap device dan CPU dapat beroperasi secara konkurenuntuk mendapatkan akses ke memori. Adanya beberapa hardware ini dapatmenyebabkan masalah sinkronisasi. Karena itu untuk mencegahnya sebuahmemory controller ditambahkan untuk sinkronisasi akses memori.
Pada sistem komputer yang lebih maju, arsitekturnya lebih kompleks.Untuk meningkatkan performa, digunakan beberapa buah bus . Tiap busmerupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM,Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggiyang lebih dikenal dengan nama FSB (Front Side Bus) . Sementara perangkat lainyang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yangterhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untukkomunikasi antar bus ini digunakan sebuah bridge.
Tanggung jawab sinkronisasi bus yang secara tak langsung jugamempengaruhi sinkronisasi memori dilakukan oleh sebuah bus controller ataudikenal sebagai bus master. Bus master akan mengendalikan aliran data hinggapada satu waktu, bus hanya berisi data dari satu buah device.Pada prakteknya bridge dan bus master ini disatukan dalam sebuah chipset.Jika komputer dinyalakan, yang dikenal dengan nama booting, komputer akanmenjalankan bootstrap program yaitu sebuah program sederhana yang disimpandalam ROM yang berbentuk chip CMOS (Complementary Metal OxideSemiconductor). Chip CMOS modern biasanya bertipe EEPROM(ElectricallyErasable Programmable Read Only Memory), yaitu memori non-volatile (takterhapus jika power dimatikan) yang dapat ditulis dan dihapus dengan pulsaelektronik. Lalu bootsrap program ini lebih dikenal sebagai BIOS (Basic InputOutput System).
Bootstrap program utama, yang biasanya terletak di Motherboard akanmemeriksa hardware-hardware utama dan melakukan inisialisasi terhadapprogram dalam hardware yang dikenal dengan nama firmware.Bootstrap program utama kemudian akan mencari dan meload kernelsistem operasi ke memori lalu dilanjutkan dengan inisialisasi sistem operasi.Darisini program sistem operasi akan menunggu kejadian tertentu. Kejadian ini akanmenentukan apa yang akan dilakukan sistem operasi berikutnya ( event-driven ).
Kejadian ini pada komputer modern biasanya ditandai dengan munculnyainterrupt dari software atau hardware, sehingga Sistem Operasi ini disebutInterrupt-driven. Interrupt dari hardware biasanya dikirimkan melalui suatu signaltertentu, sedangkan software mengirim interrupt dengan cara menjalankan systemcall atau juga dikenal dengan istilah monitor call . System/Monitor call ini akanmenyebabkan trap yaitu interrupt khusus yang dihasilkan oleh software karenaadanya masalah atau permintaan terhadap layanan sistem operasi. Trap ini jugasering disebut sebagai exception.
Setiap interrupt terjadi, sekumpulan kode yang dikenal sebagai ISR(Interrupt Service Routine) akan menentukan tindakan yang akan diambil. Untukmenentukan tindakan yang harus dilakukan, dapat dilakukan dengan dua carayaitu polling yang membuat komputer memeriksa satu demi satu perangkat yangada untuk menyelidiki sumber interrupt dan dengan cara menggunakan alamat–alamatISR yang disimpan dalam array yang dikenal sebagai interrupt vector dimana sistem akan memeriksa Interrupt Vector setiap kali interrupt terjadi.
Arsitektur interrupt harus mampu untuk menyimpan alamat instruksi yangdiinterrupt. Pada komputer lama, alamat ini disimpan di tempat tertentu yangtetap, sedangkan pada komputer baru, alamat itu disimpan di stack bersama-samadengan informasi state saat itu.