Anda di halaman 1dari 17

ATBASH CIPHER

1. Achmad Ardian 41518210045


2. Faisal Imam Rifai 415182100
3. Fahni Dian Pratama 41518210058
4. Immanuel 415182100
5. Muhammad Reza Saputra 415182100
6. Novianto Puji 41518210046
PENGERTIAN Mikro Kernel
Mikrokernel merupakan seperangkat perangkat lunak dalam jumlah minimum
yang meyediakan beragam mekanisme dasar yang dibutuhkan untuk bekerja
sebagai sebuah sistem operasi, seperti halnya manajemen pengalamatan ruang
tingkat rendah, manajemen thread, dan komunikasi antar proses. Dalam
implementasinya mikrokernel merupakan satu-satunya perangkat lunak yang
berjalan dengan tingkat kewenangan tertinggi (umumnya disebut sebagai modus
supervisor atau modus kernel) dari serangkaian level kewenangan yang tersedia
pada perangkat kerasnya.
Fungsi utama Mikrokernel
Fungsi utama mikrokernel adalah mendukung fasilitas komunikasi antara
program klien dan bermacam-macam layanan yang juga berjalan di user space.
Salah satu keuntungan mikrokernel adalah ketika layanan baru akan ditambahkan
ke user space, kernel tidak perlu dimodifikasi. Kalau pun harus, perubahan akan
lebih sedikit. Hasil sistem operasinya lebih mudah untuk ditempatkan pada suatu
desain perangkat keras ke desain lainnya. Mikrokernel juga mendukung
keamanan reliabilitas lebih, karena kebanyakan layanan berjalan sebagai
pengguna proses. Jika layanan gagal, sistem operasi lainnya tetap terjaga.
Komunikasi Antarproses
Komunikasi antarproses (IPC) merupakan suatu mekanisme yang
memungkinkan beberapa proses yang terpisah untuk saling berkomunikasi satu
dengan lainnya, umumnya hal ini dilakukan dengan memanfaatkan mekanisme
pengiriman pesan. Selain itu ingatan berbagi (shared memory) secara spesifik
juga sering pula digunakan sebagai salah satu mekanisme komunikasi
antarproses, tetapi demikian, umumnya makna IPC lebih mengarah pada
komunikasi memanfaatkan mekanisme pengiriman pesan, dan lebih lanjut
menjadi relevan terhadap mekanisme yang digunakan pada mikrokernel.
IPC dapat pula berjalan secara sinkronis, dan asinkronis. Analogi IPC
asinkronis pada komunikasi jaringan, contohnya: pesan dikirim oleh program
pengirim dan melanjutkan proses tanpa menunggu pesan baliknya. Program
penerima menampung/mengecek keberadaan pesan yang harus diproses baik
secara inisialisasi mandiri, atau diingatkan oleh suatu mekanisme notifikasi. 
Peladen
Peladen mikrokernel pada dasarnya merupakan program jurik biasa seperti
umumnya, dengan pengecualian kernel memberikan sejumlah kewenangan untuk
berinteraksi dengan sebagian dari ingatan fisik yang biasanya dibatasi untuk
program pada umumnya. Dengan cara demikian, hal ini memungkinkan para
peladen, khususnya device driver, bisa berinteraksi secara langsung dengan
perangkat keras.
Seperangkat peladen pada mikrokernel untuk kebutuhan umum melingkupi
peladen sistem berkas, peladen device driver, peladen jaringan, pelanden
tampilan, dan peladen antar muka pengguna. Seperangkat peladen tersebut
secara kasar adalah menyediakan sejumlah layanan yang sama yang diberikan
pada kernel monolitik UNIX.
Device Driver
Device driver secara frekuentif melakukan akses pengingat langsung (DMA),
dengan demikian device driver bisa melakukan pennulisan dan relokasi atas
ingatan fisik, termasuk pula struktur data kernel, oleh karena itu terhadap driver
tersebut perlu diberikan kewenangan khusus (trusted). Kekeliruan konsepsi yang
terjadi menganggap bahwa untuk device driver seperti itu haruslah merupakan
bagian dari kernel. Padahal faktanya, driver tidak selalu menjadi bagian yang
tidak terpisahkan dari kernel.
Komponen-komponen Mendasar dan Minimalitas
Karena sebuah mikrokernal harus dapat meletakkan layanan-layanan sistem operasi
pada level teratas, fungsionalitas yang harus dimiliki oleh mikrokernel setidaknya
melingkupi :
• Mekanisme pengaturan pengalamatan ruang, dibutuhkan untuk mengatur proteksi
ingatan.
• Mekanisme eksekusi secara abstrak untuk mengatur alokasi CPU, biasanya adalah
thread atau pengaktifan penjadwalan.
• Komunikasi antarproses dibutuhkan untuk menyediakan mekanisme pemanggilan
peladen yang berjalan pada alamat ruang spesifik.
Hal terpenting yang harus dimiliki oleh sebuah mikrokernel adalah keberadaan
mekanisme Komunikasi antarproses yang handal, dan disain pengatur ingatan virtual
yang memungkinkan manajemen ingatan dan melakukan pertukaran alamat (swapping)
secara dengan aman.
Performance
Pada sistem berbasis mikrokernel, permintaan atas suatu layanan melalaui IPC
sebenarnya membutuhkan sumber daya yang lebih besar dibandingkan pada sistem
dengan kernel berbasis monolitik yang hanya menggunakan pemanggilan tunggal
secara internal sistem. Dengan demikian unjuk kerja sistem berbasis mikrokernel
mungkin menimbulkan potensi masalah, sebagai contoh, unjuk kerja mikrokernel
generasi pertama, Mach dan Chorus, menunjukkan hasil yang mengecewakan.
Namun, Jochen Liedtke menunjukkan bahwa masalah unjuk kerja Mach lebih terkait
pada kesalahan disain dan implementasi.
Melalui demonstrasi yang ditunjukkannya pada mikrokernel L4, ia berhasil
menujukkan bahwa dengan menggunakan disain dan implementasi yang dirancang
dengan baik serta konsisten dalam menerapkan prinsip-prinsip minimalitas,
permasalahan yang terkait dengan IPC bisa diminimalisir.
Keamanan
Manfaat tingkat keamanan yang lebih baik atas pengimplementasian mikrokernel
seringkali didiskusikan. Dalam konteks keamanan, prinsip minimalitas mikrokernel
merupakan suatu konsekuensi manfaat langsung atas prinsip kewenangan minimal
(least privilege), terkait dengan implementasi seluruh kode hanya membutuhkan
kewenangan minimal yang dibutuhkan sebatas untuk menjalankan fungsionalitasnya.
Kelebihan Mikrokernel
1. Interface yang seragam : Proses tidak lagi dibedakan, baik antara kernel-level
maupun user-level, karena semuanya berkomunikasi via message passing.
2. Extensibility : Bisa menambahkan fitur-fitur baru tanpa perlu melakukan kompilasi
ulang
3. Flexibility : Fitur-fitur yang sudah ada bisa dikurangi, atau dimodifikasi sesuai dengan
kebutuhan sehingga menjadi lebih efisien. Misalnya tidak semua pengguna
membutuhkan security yang sangat ketat, atau kemampuan untuk melakukan
distributed computing.
4. Portability : Pada mikro kernel, semua atau sebagian besar kode yang prosesor-
spesifik berada di dalamnya. Jadi, proses porting ke prosesor lain bisa dilakukan
dengan relatif sedikit usaha. Pada kelompok desktop misalnya, tampaknya dominasi
Intel makin kuat. Tapi, sampai seberapa lama itu bisa bertahan? Karena itulah,
portability adalah salah satu isu yang sangat penting.
Kelebihan Mikrokernel
5. Reliability : Semakin besar suatu software, maka tentulah semakin sulit untuk menjamin
reliabilitynya. Desain dengan pendekatan berlapis sangatlah membantu, dan dengan
pendekatan mikro kernel bisa lebih lagi. Mikro kernel dapat diuji secara ekstensif karena
dia menggunakan API yang sedikit,sehingga bisa meningkatkan kualitas code di luar
kernel.
6. Support for object-oriendted OS : Model mikro kernel sangat sesuai untuk
mengembangkan sistem operasi yang berbasis object-oriented. Contoh sistem operasi yang
menggunakan mikro kernel adalah Mac OS X dan QNX. Mikrokernel hanya memiliki fungsi
manajemen sederhana untuk mendeliver services.
Rancangan Mikrokernel
Kernel adalah komponen sentral dari sistem operasi. Ia mengatur hal-hal seperti
interrupt handler(untuk menyediakan layanan interupsi), process scheduler(membagi-bagi
proses dalam prosesor), memory management, I/O, dan sebagainya. Atau dengan kata lain,
ia adalah jembatan antara hardware dengan software. Cara tradisional untuk membangun
sistem operasi adalah dengan membuat kernel monolitis, yaitu semua fungsi disediakan oleh
kernel, dan ini menjadikan kernel suatu program yang besar dan kompleks.
Cara yang lebih modern adalah dengan menggunakan kernel mikro. Pada awalnya,
konsep mikro kernel dikembangkan pada sistem operasi Mach. Ide dasar dari pengembangan
kernel mikro adalah bahwa hanya fitur-fitur yang perlu saja yang diimplementasikan dalam
kernel (mengenai fitur-fitur apa saja yang perlu diimplementasikan, ini bisa berbeda
tergantung desain sistem operasi).
Walaupun garis pembatas mengenai apa saja yang berada di dalam dan luar kernel
mikro bisa berbeda antara desain yang satu dengan yang lain, namun ada karakteristik yang
umum, yaitu servis-servis yang umumnya menjadi bagian sistem operasi menjadi subsistem
eksternal yang bisa berinteraksi satu sama lain dan dengan kernel tentunya. Ini mencakup
device driver, file system, virtual memory manager, windowing system, dan security
devices.
Manajemen Memory
Memori managemen merupakan salah satu bagian terpenting dalam sistem operasi. Karena
adanya keterbatasan memori, diperlukan suatu strategi dalam menangani masalah ini. Jalan
keluarnya adalah dengan menggunakan memori virtual. Dengan memori virtual, memori tampak
lebih besar daripada ukuran yang sebenarnya.
Dengan memori virtual kita dapat :
 Ruang alamat yang besar, sistem operasi membuat memori terlihat lebih besar daripada
ukuran memori sebenarnya. Memori virtual bisa beberapa kali lebih besar daripada memori
fisiknya.
 Pembagian memori fisik yang adil, managemen memori membuat pembagian yang adil dalam
pengalokasian memori antara proses-proses.
 Perlindungan, memori managemen menjamin setiap proses dalam sistem terlindung dari
proses-proses lainnya. Dengan demikian, program yang crash tidak akan mempengaruhi
proses lain dalam sistem tersebut.
 Penggunaan memori virtual Bersama, memori virtual mengizinkan dua buah proses berbagi
memori diantara keduanya, contohnya dalam shared library. Kode library dapat berada di
satu tempat, dan tidak dikopi pada dua program yang berbeda.
Memory Virtual
Memori fisik dan memori virtual dibagi menjadi bagian-bagian yang disebut page. Page ini
memiliki ukuran yang sama besar. Tiap page ini punya nomor yang unik, yaitu Page Frame Number
(PFN). Untuk setiap instruksi dalam program, CPU melakukan mapping dari alamat virtual ke
memori fisik yang sebenarnya.
Manajemen I/O dan Interupsi
Dengan arsitektur microkernel, adalah mungkin untuk menangani interupsi perangkat keras
sebagai pesan dan untuk memasukkan port I/O dalam alamat spasi. mikrokernel dapat mengenali
interupsi tetapi tidak menangani mereka. Sebaliknya, itu menghasilkan pesan untuk proses user-
level saat ini terkait dengan yang mengganggu. Jadi, ketika interrupt diaktifkan, sebuah proses
user-level tertentu ditugaskan untuk yang mengganggu dan kernel mempertahankan pemetaan.
Umum struktur kode user-level tersebut adalah sebagai berikut :
driver thread:
do
waitFor (msg, sender);
if (sender == my_hardware_interrupt) {
read/write I/O ports;
reset hardware interrupt;
}else;
while (true);
Sistem Operasi yang Menggunakan Mikrokernel
 IBM AIX, sebuah versi UNIX dari IBM.
 Amoeba, sebuah kernel yang dikembangkan untuk tujuan edukasi.
 Kernel Mach, yang digunakan di dalam sistem operasi GNU/Hurd, NexTSTEP, OPENSTEP, dan
Mac OS/X.
 Minix, kernel yang dikembangkan oleh Andrew Tanenbaum untuk tujuan edukasi
 Symbian OS, sebuah sistem operasi yang popular digunakanan
TERIMAKASIH

Anda mungkin juga menyukai