Materi SO menejemen memori dan I/O



Manajemen Memori

Paging
Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame. Memori logika juga dibagi ke dalam blokblok dg ukuran yang sama yang disebut page.yaitu untuk menterjemahkan alamat logika ke alamat fisik.
Pada skema paging, tidak terjadi fragmentasi eksternal, karena “sembarang” frame dapat dialokasikan ke proses yang memerlukannya. Tetapi beberapa fragmentasi internal masih mungkin terjadi. Hal ini dikarenakan frame dialokasikan sebagai unit dan jika kebutuhan memori dari proses tidak menemukan page, maka frame terakhir mungkin tidak dialokasikan penuh.
Bila suatu proses datang untuk dieksekusi, maka ukurannya diekspresikan dengan page. Setiap page membutuhkan satu frame. Bila proses membutuhkan n page, maka proses tersebut juga membutuhkan n frame. Jika tersedia n frame, maka memori dialokasikan untuk proses tersebut.

Swapping
Sebuah proses penukaran data sementara sementara keluar memori ke backing store dan kemudian dibawa kembali ke memori untuk melanjutkan eksekusi.
Pada waktu berjalan, penjadwal CPU (CPU scheduler) akan mengalokasikan sejumlah waktu untuk proses yang lain di memori. Ketika masing-masing proses menyelesaikan waktu kuantum-nya, akan ditukar dengan proses yang lain.
Umumnya sebuah proses yang di-swap out akan menukar kembali ke ruang memori yang sama dengan sebelumnya. Jika proses pengikatan dilakukan pada saat load-time, maka proses tidak dapat dipindah ke lokasi yang berbeda. Tetapi, jika pengikatan pada saat execution-time , maka kemungkinan proses ditukar ke ruang memori yang berbeda, karena alamat fisik dihitung selama waktu eksekusi.
Bila CPU scheduler memutuskan untuk mengeksekusi proses, OS memanggil dispatcher. Dispatcher memeriksa untuk melihat apakah proses selanjutnya pada ready queue ada di memori. Jika tidak dan tidak terdapat cukup memori bebas, maka dispatcher swap out sebuah proses yang ada di memori dan swap in proses tersebut. Kemudian reload register ke keadaan normal.

Overlay
adalah sebuah penyimpanan instruksi dan data yang diperlukan pada satu waktu. Jika intruksi lain diperlukan, maka instruksi tersebut diletakkan di ruang memori menggantikan instruksi yang tidak digunakan lagi.
Overlay tidak membutuhkan dukungan khusus dari sistem operasi. User dapat mengimplementasikannya secara lengkap menggunakan struktur file sederhana, membaca dari file ke memori dan meloncat ke memori dan mengeksekusi instruksi read yang lebih baru. Sistem operasi memberitahu hanya jika terdapat I/O yang melebihi biasanya. Penggunaan overlay terbatas untuk beberapa sistem yang mempunyai jumlah memori fisik terbatas dan kekurangan dukungan H/W untuk teknik yang lebih lanjut



Fragmentasi
Fragmentasi Eksternal terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan. Fragmentasi eksternal dilakukan pada algoritma alokasi dinamis, terutama strategi first-fit dan best-fit.
Fragmentasi Internal terjadi pada situasi dimana memori yang dialokasikan lebih besar dari pada memori yang diminta tetapi untuk satu partisi tertentu hanya berukuran kecil sehingga tidak digunakan.
Solusi untuk masalah fragmentasi eksternal adalah dengan teknik pemadatan (compaction) yaitu memadatkan sejumlah lubang kosong menjadi satu lubang besar sehingga dapat digunakan untuk proses. Pemadatan tidak selalu dapat dipakai. Agar proses dapat dieksekusi pada lokasi baru.
Pemadatan hanya dilakukan pada relokasi dinamis dan dikerjakan pada waktu eksekusi. Karena relokasi membutuhkan pemindahan program dan data dan kemudian mengubah register basis (atau relokasi) yang mencerminkan alamat basis baru.

Segmentasi
Segmentasi adalah skema manajemen memori yang memungkinkan user untuk melihat memori tersebut. Spesifikasi alamat berupa nama segmen dan offset. Segment diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment number. Segmen dibentuk secara otomatis oleh compiler.
Sebuah program adalah kumpulan segmen. Suatu segmen adalah unit logika seperti program utama, prosedur, fungsi, metode, obyek, variabel lokal, variabel global, blok umum, stack, tabel simbol, array dan lain-lain.

Menejemen I/O
Interrup
Interupsi adalah suatu peristiwa yang menyebabkan eksekusi satu program ditundan dan program lain yang dieksekusi. Interrupt adalah sinyal dair peralatan luar dau permintaan dari program untuk melaksanakan suatu tugas khusus. Jika interrupt terjadi, maka program dihentikan dahulu untuk menjalankan rutin interrupt. Ketika program yang sedang berjalan tadi dihentikan, prosesor menyimpan nilai register yang berisi alamat program ke stack, dan mulei menjalankan rutin interrupt.
Spoling : adlah melakukan penjadwalan pemakaian I/O system supaya lebih efisien.
Menyediakan divace driver yang umum sehingga operasi I/O dapat seragam.

Jenis-Jenis Interupsi dilihat dari cara kerja prosesor SO membagi interupsi ke dalam dua jenis, yaitu:
a. Software yaitu interrupt yang disebabkan oleh software, sering disebut dengan system call.
b. Hardware Terjadi karena adanya akse pada perangkat keras, seperti penekanan tombol keyboard atau menggerakkan mouse.
Selain untuk mengendalikan pengalihan I/O, beberapa kegunaan interupsi juga antara lain:
1. Pemulihan kesalahan
Komputer menggunakan bermacam-macam teknik untuk memastikan bahwa semua komponen perangkat keras beroperasi semestinya. Jika kesalahan terjadi, perangkat keras control mendeteksi kesalahan dan memberi tahu CPU dengan mengajukan interupsi.
2. Debugging
Penggunaan penting lain dari interupsi adalah sebagai penolong dalam debugging program. Debugger menggunakan interupsi untuk menyediakan dua fasilitas penting, yaitu:
- Trace
- Break point.
3. Komunikasi Antarprogram
Perintah interupsi perangkat lunak digunakan oleh sistem operasi untuk berkomunikasi dengan dan mengontrol eksekusi program lain.
Perangkat I/O
Klasifikasi lain yang dapat dilakukan terhadap peralatan I/O adalah berdasarkan unit
transfer yang dilakukan perangkat I/O, yaitu sbb:
1. Perangkat berorientasi blok (block-oriented devices)
Peralatan mentransfer dari dan ke peralatan dengan satuan transfer adalah
satu blok (sekumpulan karakter) yant telah ditentukan.
2. Perangkat berorientasi aliran karakter (character-oriented devices)
Peralatan mentransfer dari dan ke peralatan berupa aliran karakter.


Program jahat
Program jahat adalah perangkaqt lunak berbahaya yang berupaya  mencuri informasi peka dari computer, melakukan penipuan dan mengirim spam.
1.      Bacteria
Program yang mengkonsumsi sumberdaya system dengan mereplekasikan diri sendiri. Tujuan program ini hanya satu yaitu mreplekasikan dirinya dan mengkopi dirinyasecara simultan pada program multiprogramingatau mencipta dua file baru,dan msing masing kopian ini mengkopi dua kali dan seterusnya.
2.      Logic bomb
Logic yang ditempelkan pada program computer agar memeriksa suatu kondisi di sitem dan akan meledak dikala mendapatkan pemicunya dan akan merusak data yang di dekatnya.
3.      Trapdoor
Trapdoor adalah sebuah program yang dapat bersifat membantu dan juga merugikan. Karna tergantung pada penggunaya. Jika digunakan dengan baik maka akan sangat membantu tp jika digunakan dengan orang jahat maka bisa besifat merusak.
4.      Torajan hours
Program torajan hours digunakan untuk melakukan fungsi-fungsi tidak langsung. Dan ketika dieksekusi akan merubah ijin file sehinga file dapat dibaca oleh sembarang pemakai.dan menyebar melalui direkturi bersama dan menempel diprogramnya dengan sedemikian rupa.
5.      Virus
Sebuah perusak yang memodifikasi dirinya dengan memasukan kopian program virus yang dapat menginfeksi program-program lain. Selain hanya prograsi, virus biasanya melakukan fungsi yang tak diinginkan.
6.      Worm
Program yang dapat mereplekasi dirinya dan mengirim kopian-kopuian dari computer ke computer lewat jaringan. Begitu tiba worm diaktifkan untuk meriplikasi dan propagasi kembali. Dan dapat bervungsi sebagai virus dan bacteria.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 komentar: