Selasa, 16 Juni 2009
OPERASI MIKRO DAN MIKRO KERNEL
Microprogramming merupakan metode kontrol unit desain di mana kontrol sinyal pilihan sequencing dan informasi yang tersimpan dalam RAM atau ROM yang disebut kontrol memori.
Diterjemahkan ke dalam virtual alamat alamat fisik dari komputer yang menggunakan memori virtual:
Hal ini dilakukan oleh pemetaan menggunakan alamat halaman. Fisik memori dirobohkan ke dalam kelompok yang sama disebut ukuran blok. Halaman merujuk ke kelompok ruang alamat yang sama ukurannya. Pemetaan ruang alamat dari ke ruang memori yang difasilitasi jika setiap alamat maya dianggap diwakili oleh 2 nos. - Alamat dan nomor halaman sesuai dengan halaman. Ketika program dimulai pelaksanaan, satu atau lebih halaman yang ditransfer ke memori utama dan halaman set meja untuk menunjukkan posisi mereka. Program ini dijalankan dari memori utama sampai upaya rujukan ke halaman yang masih dalam memori penolong. Kondisi ini dikenal sebagai halaman kesalahan. Kemudian pelaksanaan program ini dihentikan sementara sampai program ini dibawa ke dalam memori utama. Bila terjadi kesalahan di halaman virtual memori, ia menandakan bahwa halaman yang dirujuk oleh CPU tidak ada di dalam memori utama. Dengan demikian halaman baru sekarang penolong ditransfer dari memori ke memori utama. Jika memori utama sudah penuh, maka akan sangat diperlukan untuk menghapus halaman dari memori blok untuk memberikan ruang bagi sebuah halaman baru. Penggantian kebijakan ini akan digunakan untuk FIFO dan LRU. Sedangkan algoritma FIFO untuk memilih pengganti halaman yang telah lama di dalam memori waktu, dalam LRU, sedikit berbagi halaman adalah halaman dengan nilai count.
Asosiatif memori ---- apa yang digunakan dalam pemetaan alamat dalam cache memori sistem
Waktu yang diperlukan untuk menemukan item yang disimpan dalam memori dapat dikurangi secara besar jika data yang disimpan dapat diidentifikasi untuk akses oleh isi data diri daripada oleh alamat. Seperti unit memori diakses oleh konten disebut memori asosiatif atau CAM (content addressable memori). Asosiatif memori paralel dapat melakukan pencarian data oleh asosiasi. Hal ini lebih mahal daripada RAM. Asosiatif memori yang digunakan dalam aplikasi dimana cari waktu adalah penting dan harus sangat singkat.
Pemetaan asosiatif: asosiatif memori yang digunakan dalam alamat pemetaan dalam cache memori sistem. Asosiatif memori yang baik alamat toko dan konten (data) dari memori kata, jadi ini izin lokasi di cache untuk menyimpan setiap kata dari memori utama.
Kernel yang O.S
OS memiliki master program yang disebut supervisor atau lalu lintas controller atau kernel. Kernel adalah bagian dari OS yang kontrol yang lainnya, dan selalu berada dalam memori utama. Kernel menjalankan mesin utama dan melaksanakan program-program pengelolaan sumber daya utama. Dimulai pada komputer, kernel yang dimuat dalam memori dan kontrol dari mesin.
Fungsi yang loader ---------- bootstrap loader
Loader alamat toko waktu. It menghasilkan alamat pada saat penyimpanan sekunder dari penyimpanan ke dalam memori utama. Bootstrap loader loader adalah mutlak. Ini merupakan awal program yang dimuat ke memori pada saat booting.
Single pass assembler memproses sebuah program assembly
Dengan algoritma untuk satu pass assembler adalah sebagai berikut:
Pass satu
Langkah 1 ------- lokasi initialize counter ke nol
Langkah 2 -------- membaca baris kode sumber
Langkah 3 ------- menganalisis pernyataan
Proses terjemahan ------- tahap analisis dan sintesis
Analisa sumber teks + sintesis dari sumber = terjemahan dari teks sumber ke teks sasaran.
Direct Memory Access (DMA):
Mentransfer data antara perangkat penyimpanan yang cepat dan memori yang sering dibatasi oleh kecepatan CPU. Mengeluarkan CPU dari jalan dan membiarkan pinggiran mengelola perangkat memori bis langsung meningkatkan kecepatan transfer. Transfer ini adalah teknik diistilahkan sebagai DMA. Selama transfer DMA, CPU yang menganggur dan tidak memiliki kontrol dari memori bus.
Senin, 15 Juni 2009
Mikro Kernel
Pada pembahasan "Struktur Sederhana", sempat disinggung istilah "kernel". Apakah kernel itu? 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. Pendekatan kernel mikro menggantikan pendekatan berlapis yang vertikal tradisional.
Komponen-komponen sistem operasi yang berada di luar kernel mikro diimplementasikan sebagai server process dan berkomunikasi dengan message passing via kernel mikro. Misalnya jika user ingin membuat berkas baru, dia mengirim pesan ke file system server, atau jika ingin membuat proses baru, dia mengirimkan pesan ke process server.
Gambar 7.2. Struktur kernel mikro
Beberapa kelebihan kernel mikro:
Interface yang seragam. Proses tidak lagi dibedakan, baik antara kernel-level maupun user-level, karena semuanya berkomunikasi via message passing.
Extensibility . Bisa menambahkan fitur-fitur baru tanpa perlu melakukan kompilasi ulang.
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.
Portability . Pada kernel mikro, 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.
Reliability . Semakin besar suatu software, maka tentulah semakin sulit untuk menjamin reliability-nya. Desain dengan pendekatan berlapis sangatlah membantu, dan dengan pendekatan kernel mikro bisa lebih lagi. Kernel mikro dapat dites secara ekstensif .Karena dia menggunakan API yang sedikit, maka bisa meningkatkan kualitas code di luar kernel.
Support for object-oriendted OS . Model kernel mikro sangat sesuai untuk mengembangkan sistem operasi yang berbasis object-oriented. Contoh sistem operasi yang menggunakan kernel mikro adalah MacOS X dan QNX.
http://free.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch07s04.html