DASAR SISTEM OPERASI By Dwi Anindyani
Pengertian OS Apa itu sistem operasi? Sistem operasi ialah software kompleks yang yang memungkinkan aplikasi-aplikasi yang berjalan di atasnya. Mengatur resource, I/O hardware-hardware yang digunakan.
Fungsi dasar OS Sistem Operasi sebagai Extended Machine ( Perluasan Mesin ) –Pendekatan fungsi ditinjau dari arah pengguna atau top down view –Dilakukan berdasarkan pada kenyataan bahwa struktur internal sistem komputer dan bahasa mesin sangat primitif dan tidak fleksibel untuk pemrograman terutama untuk proses input/output –Sistem operasi dibuat untuk menyembunyikan keadaan sesungguhnya dari perangkat keras tampilan yang menyenangkan dan mudah digunakan –Disini sistem operasi berperan sebagai penyedia interface yang sesuai berupa perluasan mesin (extended machine) atau mesin semu (virtual machine) Sistem Operasi sebagai Pengelola seluruh sumber-daya –Pendekatan fungsi ditinjau dari arah perangkat keras atau bottom up view –Sistem operasi beperan untuk mengatur, mengorganisasikan, mengoperasikan secara keseluruhan bagian sistem yang kompleks –Sistem operasi mengontrol alokasi sumberdaya –sistem komputer (pemroses, memori, piranti I/O) untuk berbagai program yang akan memakainya
Perkembangan Sistem Operasi Generasi Pertama (1945 – 1955); Vacuum Tubes and plugboards Belum memiliki sistem operasi dan lebih mengarah kepada perhitungan numerik dalam mekanisme menjalankan sistem komputer. Generasi Kedua (1955 – 1965); Transistors n Batch system Penggunaan Batch Processing System, yaitu pekerjaan dikumpulkan kedalam satu rangkaian kemudian dieksekusi secara berurutan. Contoh dari sistem operasi ini adalah FMS ( Fortran Monitoring System ) dan IBSYS, IBM System/360.
Perkembangan Sistem Operasi Generasi Ketiga (1965 – 1980); IC n Multiprograming Penggunaan multiprogramming, multiuser, time sharing, dan spooling. Contoh dari sistem operasi ini adalah sistem operasi ini adalah UNIX. Generasi Keempat (1980 – …); PC Adanya penambahan fungsi real-time application, network operating sistem dan distributed operating sistem. Contoh sistem operasi yangs sering kita pakai adalah Windows, MacOs, Linux, Free BSD, MS DOS.
Struktur Sederhana Sistem Operasi Gambar Overview Mekanisme Sistem Operasi Sistem Operasi menyediakan : User interface GUI API atau Sistem Call Dengan interface tersebut applikasi dapat meminta services dari SO. Bagian utama dari SO yang mengatur hubungan dengan hardware ialah 'Kernel'.
Lapisan Dalam OS Sistem operasi dibagi menjadi sejumlah lapisan yang masing-masing dibangun diatas lapisan yanglebih rendah. Lapisan yang lebih rendah menyediakan layanan untuk lapisan yang lebih tinggi. Lapisan yang paling bawah adalah perangkat keras, dan yang paling tinggi adalah user-interface.
Lapisan Dalam OS Lapisan 0 Mengatur alokasi prosesor, pertukaran antar proses ketika interupsi terjadi atau waktu habis. Lapisan ini mendukung dasar multi-programming pada CPU Lapisan 1 Mengalokasikan ruang untuk proses di memori utama dan pada 512 kilo word drum yang digunakan untuk menahan bagian proses ketika tidak ada ruang di memori utama.
Lapisan Dalam OS Lapisan 2 Menangani komunikasi antara masing-masing proses dan operator console. Pada lapis ini masing-masing proses secara efektif memiliki operator console sendiri. Lapisan 3 Mengatur peranti I/O dan menampung informasi yang mengalir dari dan ke proses tersebut.
Lapisan Dalam OS Lapisan 4 Tempat program pengguna. Pengguna tidak perlu memikirkan tentang proses, memori, console, atau managemen I/O Lapisan 5 Merupakan operator sistem.
Lapisan Dalam OS Lapisan 0 -1 Lapisan 2 Lapisan 3 Lapisan 4 - 5
Jika komputer dinyalakan (booting), komputer akan menjalankan bootstrap program : program sederhana yang disimpan dalam ROM yang berbentuk chip CMOS (Complementary Metal Oxide Semi-conductor) Bootsrap program ini lebih dikenal sebagai BIOS (Basic Input Output System) Lalu dilakukan firmware : sistem pemeriksaan hardware-hardware utama dan inisialisasi terhadap program oleh bootstrap program utama. Proses Booting dan Interupt
Bootstrap program utama kemudian mencari dan meload kernel sistem operasi ke memori, dilanjutkan dengan inisialisasi sistem operasi. Lalu Sistem opersasi menunggu kejadian berikutnya, yang akan menentukan event-driven dari Sistem operasi Kejadian ini ditandai dengan adanya interrupt-driven, dari software atau hardware Hardware mengirimkan sinyal tertentu untuk menandai interrupt Sedangkan, Software menggunakan system/ Monitor Call yang menyebabkan trap/ Exception
Proses Booting dan Interupt Trap / Exception : interrupt khusus yang dihasilkan oleh software karena adanya masalah /permintaan terhadap layanan sistem operasi ISR (Interrupt Service Routine) akan menentukan tindakan yang akan diambil bila Interrupt terjadi Ada 2 cara : –Polling : komputer memeriksa satu demi satu perangkat yang ada untuk menyelidiki sumber interrupt –dengan cara menggunakan alamat-alamat ISR yang disimpan dalam array(interrupt vector). Kemudian sistem memeriksa Interrupt Vector setiap kali interrupt terjadi. Arsitektur interrupt harus mampu menyimpan alamat instruksi yang di- interrupt
Komunikasi dengan Periperal
Penjadwalan Penjadwalan atau scheduling adalah sebuah metode dalam system operasi yang mengatur proses-proses yang akan berjalan dalam suatu system operasi. Hal ini sangat diperlukan karena pada saat ini komputer berbasiskan multiprogramming.
Penjadwalan Ada lima keadaan proses : New : Sebuah program diijinkan oleh penjadwal tingkat tinggi namun belum siap melakukan eksekusi. Sistem akan menginisialisasi proses, yang akan mengubahnya menjadi berada dalam keadaan siap. Ready : Proses telah berada dalam keadaan siap dieksekusi dan sedang menunggu akses ke prosesor Running : Proses sedang dieksekusi oleh prosesor Waiting : Proses ditahan eksekusinya untuk menunggu sumber daya sistem, misal I/O. Halted : Proses telah dihentikan dan akan dihancurkan oleh sistem operasi.WaitingNewReadyRunningewHalted
Penjadwalan Waiting New Ready Running Halted
Metode penjadwalan Non-preemptive Pada metode ini jika suatu proses telah berjalan maka sistem operasi maupun operasi lain tidak dapat mengambil alih eksekusi prosesor. Pengalihan prosesor hanya dapat dilakukan jika proses yang sedang berjalan tadi telah berhenti. Metode ini digunakan pada sistem batch dan sekuensial Preemptive Metode ini lebih canggih dari pada non-preemptive, karena sistem operasi dan operasi lain dapat mengambil alih eksekusi prosesor tanpa harus menunggu proses lain yang sedang running berhenti. Metode ini digunakna pada sistem real time.
Algoritma algoritma yang menerapkan strategi non preemptive antara lain: 1. First In First Out (First Come First Serve) 2. Shortest Job First 3. Highest Ratio Next 4. Multiple Feedback Queue Algoritma algoritma yang menerapkan strategi preemptive antara lain: 1. Round Robin 2. Shortest Remaining First 3. Priority Schedulling 4. Guaranted Schedulling