Bayu Pratama Nugroho, S.Kom, MT Sistem Operasi Bayu Pratama Nugroho, S.Kom, MT
STRUKTUR SISTEM OPERASI (LANJUTAN)
Manajemen Secondary-Storage Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpan keseluruhan data dan program komputer dibutuhkan secondary-storage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondary-storage adalah harddisk, flashdisk, CD-ROM, disket, dll.
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan disk-management seperti: free-space management, alokasi penyimpanan, & penjadualan disk.
Manajemen Sistem I/O Sering disebut device manager. Menyediakan "device driver" yang umum sehingga operasi I/O dapat seragam (seperti kegiatan untuk membuka, membaca, menulis, menjalankan dan menutup file atau program). Contohnya: user menggunakan operasi yang sama untuk membaca file pada hard-disk, CD-ROM, flashdisk, floppy disk, dll.
Komponen Sistem Operasi untuk sistem I/O: Buffer: menampung sementara data dari dan ke perangkat I/O. Spooling: melakukan penjadwalan pemakaian I/O sistem supaya lebih efektif dan efisien (pengaturan antrian). Menyediakan driver untuk dapat melakukan operasi "rinci" untuk perangkat keras I/O.
Manajemen Berkas (file) Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll). Sistem operasi bertanggung-jawab terhadap:
Pembuatan dan penghapusan berkas. Pembuatan dan penghapusan direktori. Mendukung manipulasi berkas dan direktori. Merapikan berkas ke secondary storage. Mem-backup berkas ke media penyimpanan yang permanen (non-volatile).
Sistem Proteksi Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya. Mekanisme proteksi harus: membedakan antara penggunaan yang sudah diberi izin dan yang belum. specify the controls to be imposed (menetapkan sistem pengaturan yang digunakan). provide a means of enforcement (menyiapkan alat yang digunakan).
Jaringan Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi. Akses tersebut menyebabkan: Computation speed-up (proses komputasi semakin cepat). Increased data availability (peningkatan ketersediaan data). Enhanced reliability (peningkatan kemampuan).
Command-Interpreter System Sistem Operasi menunggu instruksi dari user (command driven). Program yang dapat membaca instruksi dan mengartikan control statements berdasarkan masukan dari user umumnya disebut: control-card interpreter, atau command-line interpreter. Pada sistem UNIX sering disebut juga shell atau console. Command-Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O devices yang ada. Contohnya: Command Line Interpreter (CLI), Windows, Pen-based (touch), dan lain-lain.
Layanan Sistem Operasi
Sebuah sistem operasi yang baik menurut Tanenbaum harus memiliki layanan sebagai berikut: Pembuatan Program Eksekusi program. Operasi I/O (pengaksesan I/O Device) Sistem manipulasi berkas Komunikasi Deteksi error Deteksi dan Pemberian tanggapan pada kesalahan Efesiensi penggunaan sistem Accounting
Pembuatan program, yaitu sistem operasi menyediakan fasilitas dan layanan untuk membantu para pemrogram untuk menulis program Eksekusi program adalah kemampuan sistem untuk "load" program ke memori dan menjalankan program yang dikehendaki user maupun sistem. Operasi I/O merupakan kegiatan dimana pengguna tidak dapat secara langsung mengakses sumber daya perangkat keras, sehingga sistem operasi harus menyediakan mekanisme untuk melakukan operasi I/O.
Sistem manipulasi berkas adalah kemampuan program untuk operasi pada berkas (membaca, menulis, membuat, dan menghapus berkas yang berupa file atau direktori). Komunikasi adalah pertukaran data/ informasi antar dua atau lebih proses yang berada pada satu komputer (atau lebih). Deteksi error adalah kegiatan untuk menjaga kestabilan sistem dengan mendeteksi "error", perangkat keras maupun operasi yang dilakukan.
Deteksi dan Pemberian tanggapan pada kesalahan, jika muncul permasalahan pada sistem komputer maka sistem operasi harus memberikan tanggapan yang menjelaskan kesalahan yang terjadi serta dampaknya terhadap aplikasi yang sedang berjalan. Efesisensi penggunaan sistem, diantaranya: Resource allocator, yakni: mengalokasikan sumber-daya hardware maupun software ke beberapa pengguna atau mengalokasikan job yang jalan pada saat yang bersamaan ke beberapa komputer dalam jaringan. Proteksi sistem untuk menjamin akses ke sistem sumber daya yang aman, dikendalikan oleh sistem sehingga pengguna dikontrol aksesnya ke sistem.
Accounting adalah kegiatan merekam aktifitas pengguna, report pemakaian sumber daya. Sistem Operasi yang bagus harus mampu mengumpulkan data statistik penggunaan beragam sumber-daya dan memonitor parameter kinerja.
System Calls
System Calls System call menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS. System call menjadi jembatan antara proses dan sistem operasi. System call ditulis dalam bahasa assembly atau bahasa tingkat tinggi yang dapat mengendalikan mesin Contoh: UNIX menyediakan system call: read, write operasi I/O untuk berkas. Tiga cara memberikan parameter dari program ke sistem operasi:
Melalui registers (sumber daya di CPU). Menyimpan parameter pada data struktur (table) di memori, dan alamat table tersebut ditunjuk oleh pointer yang disimpan di register. Push (store) melalui "stack" pada memori dan OS mengambilnya melalui pop pada stack tersebut.
Mesin Virtual
Program sistem diatas kernel dapat menggunakan system call atau instuksi-instruksi hardware. Dalam beberapa hal, program sistem tidak membedakan kedua lapisan tersebut. Program sistem memberlakukan system call dan hardware dilapisan yang sama. Beberapa sistem mengambil teknik ini supaya program sistem dapat dipanggil secara mudah oleh program-program aplikasi.
Pendekatan sistem lapisan ini yang menjadi konsep dari mesin virtual (MV). Dengan mengunakan penjadwalan CPU dan teknik virtual memori, sebuah sistem operasi dapat membuat suatu proses bayangan dalam jumlah banyak, yang masing-masing dieksekusi oleh prosesornya sendiri dengan memori virtual sendiri. Secara normal, proses mempunyai ciri-ciri tambahan, seperti system call dan sistem file, yang tidak disediakan oleh hardware.
Konsep MV menyediakan proteksi yang lengkap untuk sumberdaya sistem, dikarenakan tiap MV terpisah dari MV yang lain. MV merupakan alat yang tepat untuk penelitian dan pengembangan sistem operasi. Sumber daya komputer secara fisik dibagi pakai untuk membuat suatu mesin virtual.
Model Mesin Virtual
Perancangan Sistem dan Implementasi
Target untuk pengguna: sistem operasi harus nyaman digunakan, mudah dipelajari, dapat diandalkan, aman dan cepat. Target untuk sistem: sistem operasi harus gampang dirancang, diimplementasi, dan dipelihara, sebagaimana fleksibel, error, dan efisien. Mekanisme dan Kebijaksanaan: Mekanisme menjelaskan bagaimana melakukan sesuatu kebijaksanaan memutuskan apa yang akan dilakukan. Kebijaksanaan memutuskan apa yang akan dilakukan.
System Generation (SYSGEN)
Sistem operasi dirancang untuk dapat dijalankan di berbagai jenis mesin, sistemnya harus di konfigurasi untuk tiap tipe komputer. Program SYSGEN mendapatkan informasi mengenai konfigurasi khusus ini dari sistem perangkat keras, ketika melakukan: Booting, yakni memulai komputer dengan me-load kernel. Bootstrap program, yakni kode yang disimpan di code ROM yang dapat menempatkan kernel, memasukkannya kedalam memori, dan memulai eksekusinya.