STRUKTUR SISTEM OPERASI Sebuah Teori Tentang Komponen & Layanan
KOMPONEN SO Tidak semua sistem operasi mempunyai struktur yang sama. Namun menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, umumnya sebuah sistem operasi modern mempunyai komponen sebagai berikut: Manajemen Proses. Manajemen Memori Utama. Manajemen Berkas. Manajemen Sistem Masukan/Keluaran. Manajemen Penyimpanan Sekunder. Sistem Proteksi. Jaringan. Command-Interpreter System.
KOMPONEN SO Sedangkan menurut A.S. Tanenbaum, sistem operasi mempunyai empat komponen utama, yaitu: Manajemen proses, Masukan/Keluaran (I/O) Manajemen Memori, dan Sistem Berkas.
MANAJEMEN PROSES Proses adalah sebuah program yang sedang dieksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU, memori, berkas-berkas, dan perangkat-perangkat Masukan/Keluaran. Sistem operasi mengalokasikan sumber daya-sumber daya tersebut saat proses itu diciptakan atau sedang diproses/dijalankan. Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti: Membuat dan menghapus proses. Menunda atau melanjutkan proses. Menyediakan mekanisme untuk proses sinkronisasi. Menyediakan mekanisme untuk proses komunikasi. Menyediakan mekanisme untuk penanganan deadlock
MANAJEMEN MEMORI UTAMA Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar. Memori utama berfungsi sebagai tempat penyimpanan instruksi/data yang akses datanya digunakan oleh CPU dan perangkat Masukan/Keluaran. Memori utama termasuk tempat penyimpanan data yang yang bersifat volatile. Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen memori seperti: Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya. Memilih program yang akan di-load ke memori.
MANAJEMEN FILE/BERKAS Berkas adalah kumpulan informasi yang berhubungan, sesuai dengan tujuan pembuat berkas tersebut. Umumnya berkas merepresentasikan program dan data. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.). Sistem operasi mengimplementasikan konsep abstrak dari berkas dengan mengatur media penyimpanan, misalnya tapes dan disk. Sistem operasi bertanggung-jawab dalam aktivitas yang berhubungan dengan manajemen berkas: • Pembuatan dan penghapusan berkas. • Pembuatan dan penghapusan direktori. • Mendukung manipulasi berkas dan direktori. • Memetakan berkas ke secondary-storage. • Mem-back-up berkas ke media penyimpanan yang permanen (non- volatile).
MANAJEMEN SISTEM I/O Sering disebut device manager. Menyediakan device driver yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada perangkat keras, CD-ROM dan floppy disk. Komponen Sistem Operasi untuk sistem I/O : • Penyangga: menampung sementara data dari/ke perangkat I/O • Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.). • Menyediakan driver: untuk dapat melakukan operasi rinci untuk perangkat keras I/O tertentu.
MANAJEMEN PENYIMPANAN SEKUNDER Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk menyimpan keseluruhan data dan program komputer dibutuhkan penyimpanan sekunder yang bersifat permanen dan mampu menampung banyak data, sebagai back-up dari memori utama. Contoh dari penyimpanan sekunder adalah hard-disk, disket, dll. Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen disk seperti: • free-space management. • alokasi penyimpanan. • penjadualan disk.
SISTEM PROTEKSI & JARINGAN Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya. Misalnya membedakan antara penggunaan yang sudah diberi izin dan yang belum. Jaringan Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori. Setiap prosesor mempunyai memori tersendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi. Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem. Akses tersebut menyebabkan peningkatan kecepatan komputasi dan meningkatkan kemampuan penyediaan data.
COMMAND INTERPRETER SYSTEM Sistem Operasi menunggu instruksi dari pengguna (command driven). Program yang membaca instruksi dan mengartikan control statements umumnya disebut: control-card interpreter, command-line interpreter dan terkadang dikenal sebagai shell. Command-Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi perangkat Masukan/Keluaran yang ada.
LAYANAN SISTEM OPERASI
Layanan yang Diberikan Pembuatan Program Sistem operasi menyediakan berbagai fasilitas layanan bagi pemrogram untuk pembuatan program dalam bentuk utilitas (general utilities). Eksekusi Program Sistem operasi melakukan penanganan pemuatan instruksi dan data ke memori utama, perangkat input/output (I/O) dan inisialisasi file, dan penyiapan fasilitas. Akses ke Perangkat I/O Sistem operasi menangani set instruksi I/O atau sinyal kontrol untuk keperluan operasi.
Layanan yang Diberikan Akses Terkontrol ke File Sistem operasi dapat menyediakan perlindungan untuk mengontrol akses ke fasilitas yang digunakan secara bersama. Akses Sistem Sistem operasi mengontrol akses ke sistem sebagai keseluruhan dan ke sumber daya sistem tertentu.
SISTEM PROGRAM (1) System program menyediakan lingkungan yang memungkinkan pengembangan program dan eksekusi berjalan dengan baik. Dapat dikategorikan: Managemen/manipulasi berkas Membuat, menghapus, copy, rename, print berkas dan direktori. Informasi status Beberapa program meminta informasi tentang tanggal, jam, jumlah memori dan disk yang tersedia, jumlah pengguna dan informasi lain yang sejenis. Modifikasi berkas Membuat berkas dan memodifikasi isi berkas yang disimpan pada disk atau tape. Pendukung bahasa pemrograman Proses pada bahasa pemrograman diberikan kepada pengguna dengan bantuan sistem operasi.
SISTEM PROGRAM (2) Loading dan eksekusi program Ketika program dijalankan, program tersebut harus di-load ke dalam memori untuk dieksekusi. Untuk itu sistem harus menyediakan fungsi tersebut. Komunikasi Menyediakan mekanisme komunikasi antara proses, pengguna, dan sistem komputer yang berbeda.Sehingga pengguna bisa mengirim pesan, browse web pages, mengirim e-mail, atau mentransfer berkas. Umumnya sistem operasi dilengkapi oleh system-utilities atau program aplikasi yang di dalamnya termasuk web browser, word prossesor dan format teks, sistem database, games, System program yang paling penting adalah command interpreter.
SYSTEM CALL (1) System calls yang berhubungan dengan kontrol proses antara lain ketika penghentian pengeksekusian program. Baik secara normal (end) maupun tidak normal (abort). Selama proses dieksekusi kadang kala diperlukan untuk me-load atau mengeksekusi program lain, disini diperlukan lagi suatu system calls. Juga ketika membuat suatu proses baru dan menghentikan sebuah proses. System Calls Managemen Proses System Call untuk managemen proses diperlukan untuk mengatur proses-proses yang sedang berjalan. System Calls Managemen Berkas System calls yang berhubungan dengan berkas sangat diperlukan. Seperti ketika kita ingin membuat atau menghapus suatu berkas. Atau ketika ingin membuka atau menutup suatu berkas yang telah ada, membaca berkas tersebut, dan menulis berkas itu. System calls juga diperlukan ketika kita ingin mengetahui atribut dari suatu berkas atau ketika kita juga ingin merubah atribut tersebut. Yang termasuk atribut berkas adalah nama berkas, jenis berkas, dan lain-lain.
SYSTEM CALL (2) System Calls Managemen Peranti Program yang sedang dijalankan kadang kala memerlukan tambahan sumber daya. Jika banyak pengguna yang menggunakan sistem, maka jika memerlukan tambahan sumber daya maka harus meminta peranti terlebih dahulu. Dan setelah selesai penggunakannnya harus dilepaskan kembali. Ketika sebuah peranti telah diminta dan dialokasikan maka peranti tersebut bisa dibaca, ditulis, atau direposisi. System Calls Informasi Maintenance Beberapa system calls disediakan untuk membantu pertukaran informasi antara pengguna dan sistem operasi. Contohnya system calls untuk meminta dan mengatur waktu dan tanggal. Atau meminta informasi tentang sistem itu sendiri, seperti jumlah pengguna, jumlah memori dan disk yang masih bisa digunakan, dan lain-lain.
SYSTEM CALL (3) System Calls Komunikasi Dua model komunikasi: Message-passing Pertukaran informasi dilakukan melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi. Shared-memory Proses menggunakan memori yang bisa digunakan oleh berbagai proses untuk pertukaran informasi dengan membaca dan menulis data pada memori tersebut.