Windows XP
Executive
Kernel
Fungsi : mengelola alur penjadwalan, proses switching, pengecualian dan penanganan interupsi,
dan multiprosesor sinkronisasi. Tidak seperti sisa Eksekutif dan tingkat pengguna, kode Kernel ini
tidak berjalan di thread.
Perintah hardware generic dan tanggapan yang unik untuk platform tertentu. Ini mengisolasi OS
dari platform-spesifik hardware differences.d HAL mengontrol sistem bus, memori akses
langsung (DMA) controller, interrupt controller, system timer, dan modul memori dengan
Eksekutif dan komponen Kernel. Hal ini juga memberikan dukungan yang diperlukan untuk Multi-
Processing Symmetries (MPS)
Device Driver
Perpustakaan dinamis yang memperluas fungsionalitas dari Eksekutif. Termasuk driver perangkat
keras yang menerjemahkan penggunaan I / O
Fungsi : berurusan dengan windows, pengguna kontrol, dan grafis. Termasuk komponen
Executive Windows berfungsi pada sistem tertentu dan menyediakan API bagi pengguna-mode
software.
2. Windows 10
3. Android
Seperti yang bisa kita lihat pada gambar diatas, aplikasi android mempunyai 5 lapisan didalamnya
yaitu:
Kernel
Library
Android Runtime
Application Framework
Application
Kernel
Gambar 2 — Kernel
Karena Android merupakan salah satu turunan dari sistem operasi Linux, maka Android juga
memiliki kernel. Bagi yang belum pernah menyentuh sistem operasi Linux pasti akan bertanya —
tanya apa itu “KERNEL”. Kernel merupakan inti dari sistem operasi berbasis UNIX. Kernel
merupakan lapisan terdalam yang berada pada sistem operasi baik itu Linux maupun Android.
Lapisan ini tidak benar — benar berinteraksi dengan pengguna maupun developer, tapi lapisan
ini merupakan jantung dari seluruh sistem di Android karena lapisan inilah yang memberikan
fungsi-fungsi berikut pada sistem Android:
Abstraksi Hardware
Program Manajemen Memory
Pengaturan Sekuritas
Manajemen Energi Software ( Baterai )
Driver (Driver adalah program yang mengontrol hardware)
Network Stack
Dengan berkembangnya Android maka Kernel Linux yang digunakan juga ikut berkembang,
seperti pada table di bawah ini:
Library
Library membawa sekumpulan instruksi untuk mengarahkan perangkat Android kita dalam
menangani berbagai tipe data. Contohnya,perekam dari berbagai macam format Video dan
Audio ditangani oleh Media Framework Library.
Android Libraries
Kategori ini menyangkut Library berbasis Java yang berfungsi khusus untuk pengembangan
Android. Contoh dari Library yang termasuk dalam kategori ini adalah Library yang memfasilitasi
pembangunan User Interface, Penggambaran Grafik dan akses Database, juga library yang
terdapat pada Application Framework.
Rangkuman dari beberapa Library Android yang tersedia untuk Android Developer adalah
sebagai berikut :
android.app − Memberikan akses ke model aplikasi dan fondasi dari semua aplikasi
Android.
android.content − Memfasilitasi akses konten, mempublikasikan dan mengirim pesan
antar aplikasi dan komponen aplikasi.
android.database − Digunakan untuk mengakses data yang dipublikasikan oleh content
providers, juga termasuk kelas manajemen basis data SQLite.
android.opengl − antarmuka Java ke Api penerjemah OpenGL ES 3D Graphic
android.os − Menyediakan akses aplikasi ke OS system service stAndar seperti
perpesanan, system service, dan IPC ( Inter Process Communication ).
android.text − Digunakan untuk menyajikan dan memanipulasi teks yang ditampilkan
pada perangkat.
android.view − Dasar dari pembangunan user interface aplikasi.
android.widget − Koleksi dari beberapa user interface yang telah dibuat dan dapat
langsung digunakan seperti tombol, label, tabel, view, layout manager, tombol pilihan,
dll.
android.webkit − Sekumpulan kelas untuk memungkinkan kemampuan web browsing
yang akan dibangun ke dalam aplikasi.
Android Runtime
Dalvik Virtual Machine adalah sejenis Java Virtual Machine yang didesain khusus dan
dioptimasikan untuk Android. Dalvik VM menggunakan fitur inti Linux seperti manajemen
memory dan multi-threading. Dalvik VM membuat setiap Aplikasi Android dapat berjalan dengan
prosesnya sendiri. Berikut beberapa rangkuman mengenai Dalvik VM
Application Framework
Lapisan ini berinteraksi langsung dengan aplikasi kita. Program-program di atas memanajemen
fungsi dasar dari perangkat seperti manajemen Resource, Manajemen Panggilan, Manajemen
Window dll. Sebagai seorang developer, kita dapat melihat lapisan ini sebagai alat dasar yang
dapat digunakan untuk mengembangkan aplikasi.
Activity Manager − Mengontrol semua aspek dari siklus hidup aplikasi dan Activity Stack.
Content Providers − Mengizinkan aplikasi untuk mempublikasikan dan berbagi data
dengan aplikasi lainnya.
Resource Manager − Memberikan akses kepada resources yang bukan kode seperti
strings, setting warna, dan layout User Interface.
Notifications Manager − Membuat aplikasi dapat menampilkan pengingat dan notifikasi
kepada pengguna.
View System − Digunakan untuk membuat User Interface aplikasi
Application Layer
Gambar 6 — Application
Aplikasi berada pada lapisan terluar dari Arsitektur Android. Pengguna awam Android pasti akan
berinteraksi dengan lapisan ini untuk fungsi umum seperti menelepon, mengakses website, dll.
Lapisan di bawah dari lapisan aplikasi ini diakses kebanyakan oleh Developer, Programmer atau
sejenisnya.
Beberapa aplikasi stAndar yang pasti ada pada setiap perangkat, seperti:
Aplikasi SMS
Penelepon
Web Browser
Contact Manager
4. macOS
Arsitektur macOS
Komponen inti dari macOS adalah sistem operasi POSIX yang dibangun dalam XNU
Kernel. yang menyediakan fungsifungsi dasar sebuah sistem operasi. Apple merilis sistem ini
dengan nama Darwin. Darwin dirilis dengan gratis dan terbuka.Diatas Darwin apple meletekkan
beberapa komponen seperti Aqua dan Finder untuk membentuk sistem operasi berbasis grafis.
Pada awal kemunculannya Mac OS X membawa beberapa fitur sebagai penyempurnaan dari Mac
Os sebelumnya yaitu pre-emptive multitasking dan memory protection yang meningkatkan
kemampuan sistem untuk menjalankan beberapa aplikasi secara bersamaan tanpa
mengakibatkan crash.
POSIX, singkatan dari Portable Operating System Interface for UNIX, adalah sebuah standar yang
dicetuskan oleh Institute of Electical and Electronics Engineers (IEEE) yang mendefinisikan
sekumpulan layanan dalam sistem operasi.
Networking adalah jaringan telekomunikasi yang memungkinkan antar komputer untuk saling
berkomunikasi dengan bertukar data.
File system adalah cara sederhana untuk mengatur dan menyimpan file pada hard drive, flash
drive atau perangkat penyimpanan lainnya. Setiap perangkat penyimpanan memiliki satu atau
lebih partisi, dan masing-masing partisi diformat dengan file system. Proses pemformatan hanya
menciptakan file system kosong pada perangkat.
5. Linux
Kernel
Kernel adalah jantung dari sistem operasi , jika dilihat secara fisiknya, kernel adalah file yang ada
di folder /boot dengan nama vmlinuz-2.6.xx.x, file ini adalah file utama Linux, jika anda
menghapus file ini, maka secara otomatis Linux tidak akan bisa di boot, didalam kernel sendiri
terdapat library dan driver, namun peletakannya tidak di folder /boot, namun di /lib/. Tugas
utama kernel adalah mengatur sumber daya memori dan prosesor serta mengatur Akses fisik ke
hardware, misal ke printer, keyboard dan jaringan.
Library
Sebelum membahas CLI, sebenarnya diatas kernel masih ada komponen yang tidak diperlihatkan
di gambar, yang disebut dengan Library,Librari adalah file atau sekumpulanfile yang didalamnya
terdapat fungsi fungsi /atau kelas yang dibutuhkan oleh program aplikasi. Sebagai contoh library
adalah Glibc, libcurl, libpng serta library yang lain yang fungsinya menjadi pondasi untuk program
yang akan berjalan diatasnya, sebagai contoh, tanpa library getty, maka kita tidak bisa membuka
shell atau CLI, tanpa libpng maka kita tidak bisa membuka gambar, tanpa libmpg maka kita tidak
bisa memutar mp3. sekali lagi librari adalah pondasi untuk aplikasi atau program tertentu,
terkadang libari juga salih berkaitan (depedensi) misalkan libraeri A adalah pondasi dari Librari B
dan Program C butuh librari B, ini yang disebut dengan depedency di linux.
Shell
Shell adalah aplikasi yang bertugas menerima Input perintah dari user, di Windows bisa
disamakan dengan Command Prompt, bedanya, Shell di Linux tidak terikat dengan GUI nya. Linux
mempunyai banyak shell , diantaranya adalah csh,tcsh,sh,ash dan yang paling populer Bash.
Kebanyakan server, tiga lapis ini saja sudah lebih dari cukup, tinggal ditambahkan service (apliksi
yang berjalan dibelakang layar) misal webserver apache.
X Windows
X Windows adalah Library khusus untuk tampilan GUI di UNIX/Linux, tanpa adanya librari ini,
maka KDE, GNome atau openoffice tidak akan bisa berjalan,
Window Manager
Window Manager adalah pengelola jendela dari aplikasi yangberjalan di GUI, apa perbedaan
Window Manager dengan Desktop seperti Gnome atau KDE? Window Manager hanya bertugas
menangani posisi aplikasi di Layar, Window manager tidak mempunyai fitur misal Drag and Drop
atau fitur canggih lainnya. Contoh window Manager adalah iceWM dan GNUStep.
Desktop
lapisan diatas windows Manager adalah Desktop, ini adalah tampilan antarmuka yang langsung
berhubungan dengan user dimana user tinggal klik,drag, melakukan segala kemudahan hanya
dengan mouse. Contoh desktop di Linux adalah KDE,LXDE, Gnome, XFace atau EDE.
Aplikasi
lapisan teratas dari sistem operasi Linux adalah aplikasi, misal Gedit,Open Office dan firefox.
Dengan memahami bagaimana Linux dibangun, diharapkan kita bisa lebih memahami Linux dan
bisa mengatasi permasalahan yang terjadi OS tersebut, dan kedepannya kita bisa membuat
Distro Linux yang sesuai dengan kebutuhan kita.