Arsitektur perangkat lunak adalah struktur-struktur yang menjadi landasan untuk menentukan keberadaan komponen-komponen perangkat lunak, cara komponen-komponen saling berinteraksi dan organisasi komponen-komponen dalam membentuk perangkat lunak. Arsitektur sistem operasi adalah arsitektur perangkat lunak yang digunakan dalam membangun perangkat lunak sistem operasi.


Arsitektur sistem operasi yang terkenal antara lain :
  1. Sistem monolitik
  2. Sistem berlapis
  3. Sistem client / server
  4. Sistem mesin maya
  5. Object Oriented System/ Sistem berorientasi objek

  1. Sistem monolitik
Operating System/ Sistem operasi merupakan kumpulan prosedur bahwa prosedur-prosedur di dalamnya dapat saling memanggil apabila perlu. Semua layanan yang disediakan sistem operasi berisi karnel. Seluruh komponen sistem operasi berada di satu ruang alamat.

Kelemahan :
§  Karena tidak dapat dipisahkan dan dilokalisasikan maka pengujian dan penghilangan kesalahan sulit, namun praktik pemrograman yang berdisiplin bagus dapat mempermudah pengembangan.
§  Dalam menyediakan fasilitas pengamanan tergolong sulit
§  Pemborosan apabila setiap komputer harus menjalankan kernel monolitik sangat besar sementara sebetulnya tidak membutuhkan semua layanan yang telah disediakan kernel. Tidak fleksibel.
§   Mengakibatkan matinya seluruh sistem karena kekeliruan pemrograman di satu bagian kernel

Keunggulan :
§  Layanan dapat dilakukan sangat cepat karena ada di suatu ruang alamat

  1. Sistem berlapis
Operating System/ Sistem operasi dibentuk secara hirarki berdasarkan lapisan-lapisan , dalam hal ini lapisan-lapisan bawah memberi layanan untuk lapisan lebih atas. Masing-masing lapisan di satu ruang alamat tersendiri. Sistem operasi berlapis yang pertama kali memakai sistem berlapis THE. THE dibuat oleh Dijkstra dan mahasiswa-mahasiswanya. Sistem berlapis bertujuan untuk mengurangi implementasi sistem operasi dan kompleksitas rancangan. Tiap lapisan memiliki antarmuka dan fungsional masukan – keluaran dengan 2 lapisan bersebelahan dengan terdefinisi baik.

Kelemahan :
Fungsi – fungsi sistem operasi yang harus diberikan ke masing-masing lapisan harus dilakukan secara hati-hati.

Keunggulan :
Sistem berlapis memiliki semua keunggulan rancangan yang modular, yaitu sistem terbagi dalam beberapa modul. Masing-masing lapisan atau modul itu dapat dirancang, dikode, dan diuji secar independen. Pendekatan berlapis menyederhanakan rancangan, spesifikasi, dan implementasi sistem operasi.

  1. Sistem client / server
Sistem operasi merupakan kumpulan proses, dalam hal ini proses-proses dikategorikan menjadi server dan client. Server dan client berinteraksi, saling melayani yaitu :
§  Server  adalah proses yang menyediakan layanan
§  Client adalah proses yang memerlukan / meminta layanan

Kelemahan :
§  Layanan dilakukan secara lambat karena harus melalui pertukaran pesan
§  Pertukaran pesan dapat menjadi bottleneck

Kelebihan :
§  Pengembangan dapat dilakukan secara modular
§  Kesalahan (bugs) di satu sub sistem (diimplementasikan sebagai satu proses tersendiri) tidak merusak sub sistem-sub sistem lain sehingga tidak mengakibatkan satu sistem mati secara keseluruhan.

  1. Sistem mesin maya
Awalnya struktur ini membuat seolah-olah semua pemakai mempunyai seluruh komputer sendirian. Teknik yang digunakan adalah degnan atas pemroses yang digunakan. Sistem operasi melakukan simulasi banyak mesin nyata. Mesin maya hasil simulasi digunakan pemakai. Mesin maya ini merupakan tiruan seratus persen atas mesin nyata. Satu pemakai diberi satu mesin maya. Semua pemakai diberi ilusi mempunyai satu mesin nyata(maya) yang sama-sama canggih.

Kelemahan :
Implementasi yang efisien merupakan masalah yang sulit karena sistem menjadi besar dan kompleks

Keunggulan :
Sistem mesin maya memberikan fleksibilitas tinggi sehingga sampai memungkinkan sistem operasi-sistem operasi berbeda dapat dijalankan di mesin maya – mesin maya berbeda oleh pemakai-pemakai yang berbeda.

  1. Sistem berorientasi objek
Sistem operasi yang merealisasikan layanan sebagai kumpulan proses disebut sistem operasi bermodel proses. Pendekatan lain implementasi layanan adalah sebagai objek-objek. Sistem operasi yang diinstruksikan berdasarkan paradigma objek disebut sistem operasi berorientasi objek. Pendekatan ini dimaksudkan untuk mengadopsi keunggulan teknologi berorientas objek.