Hello everybody, meet me again! Pada kesempatan ini kita akan sedikit membahas beberapa permasalahan, disini terkhusus mengenai SISTEM OPERASI. Mari kita simak!
1. Fungsi sistem operasi sendiri ialah sebagai:
Koordinator, yang memberikan fasilitas sehingga segara aktivitas yang kompleks dapat dikerjakan dalam urutan yang benar.
Pengawal, yang memegang kendali proses untuk melindungi file dan memberi batasan pada pembacaan, penulisan, eksekusi data dan program.
Penjaga gerbang, yang akan memngawasi siapa saja yang dapat masuk ke dalam sistem komputer.
Pengoptimalan, yang akan membuat scedule atas beberapa user input, akses database, komputasi, output, dsb untuk meningkatkan kinerja sistem.
Akuntan, yang menjaga pewaktuan CPU tetap berada pada jalur yang benar, penggunaan memori, operasi I/O, penyimpanan pada disk, dsb.
Server, yang memberikan pelayanan yang diperlukan pengguna.
2. Sistem operasi berdasarkan sifat eksekusinya:
a. Sistem Interaktif :
Pengguna atau pemrogram berinteraksi secara langsung dengan komputer melalui keyboard atau monitor untuk meminta eksekusi tugas atau membentuk melalui transaksi.
Mesin in biasanya beroperasi dari sebuah console, yang terdiri dari tampilan, switch, beberapa bentuk input, dan printer.
Program - program yang berbentuk kode mesin dimuatkan melalui perangkat input (misalnya, pembaca kartu)
Bila sebuah error menghentikan program, maka kondisi error ditandai dengan nyala lampu.
Sistem ini memiliki dua kelemahan utama, yaitu masalah penjadwalan operasi dan waktu setup yang lama.
b. Sistem Batch
Sistem ini kebalikan dari sistem interaktif.
Program pengguna ditampung bersama sama dengan program lainya, kemudian diserahkan kepada operator komputer.
Setelah program diselesaikan, hasilnya dicetak. Sistem ini sudah jarang digunakan terutama untuk batch murni.
Untuk sistem batch yang sederhana biasanya tidak efisien pada penggunaan prosessor, karena terdapat banyak waktu tunggu bagi prosessor. Hal ini terjadi karena perangkat I/O yang lambat.
Untuk sistem batch yang canggih, kondisi menunggu tersebut digunakan untuk mengerjakan program lainnya.
3. Sistem batch terdapat single programming dan multi programming, yang berarti:
Single-Programming, mesin batch hanya menjalankan satu program.
Multi-Programming, menjaga prosessor selalu berada dalam keadaan sibuk dengan mengharuskan prosessor menjalankan lebih dari satu program pada satu saat.
4. Translation lookside buffer:
Pada dasarnya, setiap referensi ke virtual memori terdapat dua jenis akses, yaitu akses untuk mengambil page table entry yang diinginkan dan akses untuk pengambilan datanya. Akibat hal ini terjadi penggandaan waktu akses yang menurunkan kinerja. Solusi persoalan penggadaan waktu akses adalah dengan translation lookaside buffer (TLB). Yang perlu diperhatikan juga, TLB harus berinteraksi dengan sistem cache memori utama. Pertama, sistem akan memeriksa TLB untuk mengetahui apakah page table entry yang cocok tersedia, bila ada maka alamat fisik (real) akan dibuat dengan mengkombinasikan nomor frame dengan offset. Bila tidak ada, enry diakses dari page table. Setelah alamt real dibuat, yang berbentuk sebuah tag dan reminder, cache diperiksa untuk mengetahui keberadaan blok yang berisi word tersebut.Bila ada, maka akan dikembalikan ke CPU. Sedangkan bila tidak ada , word akan dicari di memori utama.
5. Penjelasan beberapa teknik:
a. Swapping
Kondisi dimana memiliki antrian panjang permintaan proses,yang umunya tersimpan dalam memori utama.
Apabila proses telah selesai, maka proses - proses tersebut akan dikeluarkan dari memori utama.
Sekarang, situasinya yang terjadi adalah tidak ada proses didalam memori utama yang siap, daripada prosessor idle maka prosessor akan melakukan swap salah satu tersebut kembali ke disk diantrian menengah. Antrian ini merupakan antrian proses yang telah dikeluarkan sementara dari memori.
Kemudian sistem operasi mengambil proses lain dari antrian menengah, atau mememnuhi permintaan proses yang baru dari antrian panjang.
Setelah itu eksekusi akan dilanjutkan dengan memproses proses yang baru tiba.
Swapping merupakan operasi I/O, karenanya dapat membuat keadaan menjadi buruk, namun karena I/O disk umumnya mampu meningkatakn kinerja prosessor.
b. Partitioning
Sistem Operasi akan menempati bagian memori yang tetap.
Sisa memori dibagi - bagi untuk keperluan sejumlah proses.
Partitioning adalah teknik membagi memori menjadi beberapa bagian sesuai kebutuhan.
Terdapat dua macam partisi, yaitu partisi tetap (fixed size partitioning) dan partisi variabel (variable size partitioning).
c. Paging
Penggunaan partisi tidak cukup efisien dalam penggunaan memori.
Terdapat metode lain yang disebut paging.
Paging adalah membagi memori utama menjadi frame - frame kecil berukuran sama.
Setiap proses dibagi menjadi page - page berukuran sama sengan frame. Proses yang lebih kecil membutuhkan page yang lebih sedikit, sedangkan proses - proses besar akan memerlukan page yang lebih banyak.
Ketika sebuah proses dibawa kedalam memori, page - page nya dimuatkan ke dalam frame yang tersedia dan kemudian page tabel dibentuk.Page tabel digunakan untuk mengubah alamat logik menjadi alamat fisik dan juga sebaliknya.
d. Virtual Memory
Apabila ada sebuah program besar maka akan tidak efektif apabila semua page dari program tersebut diletakkan dalam memori utama.
Hanya page yang akan digunakan saja yang dimuatkan dalam memori utama membuat kinerja memori lebih baik.
Apabila page yang akan dieksekusi tidak didapatkan di memori utama, maka sinya page fault diaktifkan.
Sinyal ini menyatakan bahwa sistem operasi harus mengambil page yang dimaksud.
Karena proses hanya mengeksekusi di dalam memori utama saja, maka memeori tersebut disebut real memory.
Namun pemrogram atau pengguna dapt menggunakan memori yang lebih besar, yang dikenal sebagai virtual memory.
Memory Virtual ( Virtual Memory ) merupakan solusi efektif bagi pengguna atau pemrogram sehubungan masalah keterbatasan memori utama.