contact
Test Drive Blog
twitter
rss feed
blog entries
log in

Senin, 11 April 2016

Sistem Paging

Sistem paging adalah suatu sistem manajemen pada sistem operasi yang mengatur program yang sedang berjalan. Metode dasar dari paging adalah dengan memecah memori fisik menjadi blok-blok yang berukuran tertentu yang disebut dengan frame dan memecah memori logika menjadi bok-blok yang berukuran sama dengan frame yang disebut page. Untuk mengatasi apabila suatu program lebih besar dibandingkan dengan memori utama adalah dengan konsep overlay dan konsep memori maya(virtual memori):

1. Konsep Overlay,
yaitu dimana program yang di jalankan dipecah menjadi beberapa bagian yang dapat dimuat oleh memory (overlay), sedangkan yang belum dieksekusi akan disimpan di dalam disk, yang nantinya akan dimuat ke memori begitu diperlukan dalam ekekusi.

2. Konsep Memori Maya
yaitu kemampuan untuk mengalamati ruang memori melebihi memori utama yang tersedia.

3. Implementasi Sistem Paging
Setiap sistem operasi mempunyai metode sendiri untuk menyimpan tabel page. Beberapa sistem operasi mengalokasikan sebuah tabel page untuk setiap proses. Pointer ke tabel page disimpan dengan nilai register lainnya dari PCB. Pada dasarnya terdapat 3 metode yang berbeda untuk implementasi tabel page :
  1. Tabel page diimplementasikan sebagai kumpulan dari “dedicated” register. Register berupa rangkaian logika berkecepatan sangat tinggi untuk efisiensi translasi alamat paging. Contoh : DEC PDP-11. Alamat terdiri dari 16 bit dan ukuran page 8K. Sehingga tabel page berisi 8 entri yang disimpan pada register. Penggunaan register memenuhi jika tabel page kecil (tidak lebih dari 256 entry).

  2. Tabel page disimpan pada main memori dan menggunakan page table base registe” (PTBR) untuk menunjuk ke tabel page yang disimpan di main memori. Penggunakan memori untuk mengimplementasikan tabel page akan memungkinkan tabel page sangat besar (sekitar 1 juta entry). Perubahan tabel page hanya mengubah PTBR dan menurunkan waktu context-switch. Akan tetapi penggunaan metode ini memperlambat akses memori dengan faktor 2. Hal ini dikarenakan untuk mengakses memori perlu dua langkah : pertama untuk lokasi tabel page dan kedua untuk lokasi alamat fisik yang diperlukan.

  3. Menggunakan perangkat keras cache yang khusus, kecil dan cepat yang disebut associative register atau translation look-aside buffers (TLBs). Merupakan solusi standar untuk permasalahan penggunaan memori untuk implementasi tabel page. Sekumpulan associative register berupa memori kecepatan tinggi. Setiap register terdiri dari 2 bagian yaitu key dan value. Jika associative register memberikan item, akan dibandingkan dengan semua key secara simultan. Jika item ditemukan nilai yang berhubungan diberikan. Model ini menawarkan pencarian cepat tetapi perangkat keras masih mahal. Jumlah entry pada TLB bervariasi antara 8 s/d 2048.


4. Masalah yang terjadi pada paging

a. Masalah Utama Sistem Paging


1) Working Set Model

Prinsip Lokalitas

Prinsip Lokalitas adalah proses-proses cenderung mengacu penyimpan secara tak seragam, mempunyai pola-pola sangat setempat.
Working set of Program Behavior

Himpunan kerja secara informal didefinisikan sebagai kumpulan page proses yang secara aktif diacu. Denning menyatakan bahwa agar suatu program berjalan secara efisien, himpunan kerja harus dijaga berada di memori utama. Selain itu akan terjadi aktivitas page fault yang berlebihan. Peristiwa page fault yang sangat berlebihan disebut trashing, yaitu setelah hanay beberapa intruksi terjadi page fault.

Prinsip yang digunakan oleh Working Set Model ini adalah dengan melacak dan menjamin himpunan kerja terdapat di memori sebelum proses dijalankan. Cara ini mengurangi terjadinya page fault.

2) Kebijaksanaan penggantian lokal vs global

Teradapat dua pendekatan untuk mengganti page, yaitu :
Penggantian lokal adalah page yang dipilih untuk diganti hanya pada partisi dimana proses diletakkan.
Penggantian global adalah page yang dipilih untuk diganti adalah tempat kosong dengan tidak memperdulikan partisi proses.

3) Frekuensi page fault

Frekuensi terjadinya page fault dapat dikendalikan dengan algoritma PFF (Pafe Fault Frequency Algorithm).

4) Ukuran page

Ukuran page ditentukan perancang sistem operasi. Ukuran page harus ditentukan agar sistem berperilaku opimal. Penentuan ukuran page memerlukan penilaian dan pemahaman mendalam perangkat keras, perangkat lunak dan aplikasi sistem.



b. Masalah Implementasi Sistem Paging


1) Back-up Intruksi

Bila trejadi page fault berarti sebgaian intruksi telah dijalankan. Pengkopina program counter dan informasi register-register pemroses harus dilakukan. Setelah pergantian page selesai maka intruksi yang menyebabkan page fault dapat dijalankan kembali dengan konteksnya.

Masalah yang harus diatasi adalah untuk mengulangi intruksi, sistem harus menetukan byte pertama intruksi.

2) Buffer Pernagkat Maaukan / Keluaran (Penguncian Page)

Pergantian page akan menimbulkan masalah mengacaukan proses yang melakukan operasi masukan / keluaran jika :
Buffer perangkat masukan / keluaran ikut tergusur
Adanya buffer satu perangkat masukan / keluaran menjaid rangkap.

3) Pemakaian Page Bersama

Apabila beberapa pemakai menggunakan program yang sama maka terjadi perngakapan page (page yang sam aterdapat di banyak bagian di memori). Lebih efisien menggunakan page secara bersama, menghindari keharusan mempunyai copyan-copyan page yang sama di saat yang sama.

4) Backing Store

Masalah lain adalah menyangkut dimana diletakkan page yang keluar dari memori utama. Terdapat dua algoritma untuk mengatasi hal ini, yaitu :
Menggunakan ruang ganti khusus
Dialokasikan berdasarkan kebutuhan

5) Paging Daemon

Paging bekerja bagus saat terdapat banyak page frame bebas yang dapat diklaim begitu page fault terjadi. Jika setiap page frame penuh dan telah dimodifikasi, sebelum page baru dimasukkan, pag eharus ditulis terlebih dahulu ke disk.

Untuk menjamin pasokan (supply) page frame yang banyak, sistem paging biasanya mempunyai proses background, disebut Paging Daemon.

6) Penanganan Page Fault (Page Fault Handling)

Implementasi sistem paging harus mengatasi rincian aksi yang harus dilakukan saat terjadi page fault.



TUTORIAL SWAP MEMORI DI LINUX

Sama halnya seperti Ms Windows, Linux pun memerlukan memori virtualuntuk mendukung jalannya sistem operasi. Akan tetapi penggunaan memori virtual di Linux sedikit berbeda dengan di Ms Windows, kalau di Ms Windows memori virtual ini tercipta secara otomatis saat kita menginstal Windows, memorinya pun tercipta di dalam suatu file yang biasa disebut Page File yang letaknya satu partisi dengan Windows. Sedangkan kalau di Linux kita harus membuatnya sendiri di dalam partisi yang terpisah yang biasa disebut partisi Swap, dan biasanya pembuatan partisi ini bersamaan dengan saat kita menginstal sistem operasi Linux.

Berikut adalah langkah-langkah untuk membuat swap memori pada linux :
1. Buka Terminal dan login sebagai root.

2. Ketik perintah berikut ini untuk membuat file sebesar 1GB.
# dd if=/dev/zero of=/swapfile bs=1M count=1000
Artinya ukuran blok (block size) sebesar 1MB, jadi count 1000 berarti membuat file sebesar 1000x1MB yakni 1GB.

3. Set file tersebut agar menjadi sebuah swap file.
# mkswap /swapfile

4. Aktifkan swap file.
# swapon /swapfile

5. Agar swap file dapat aktif setiap Linux direboot, tambahkan sebuah entry ke file /etc/fstab.
# gedit /etc/fstab
Tambahkan parameter di bawah ini ke dalam file /etc/fstab.
/swapfile swap swap defaults 0 0
Jadi setiap Linux reboot, swap file dapat aktif secara otomatis.

6. Selanjutnya cek apakah swap aktif atau tidak?
Caranya jalankan perintah berikut :
$ free -m


Referensi :
http://tugaskita-sistemoperasi.blogspot.co.id/2013/06/sistem-paging-dan-segmentasi.html
https://nabilanurul.wordpress.com/2012/05/11/sistem-paging/
http://linux.blog.gunadarma.ac.id/2009/12/08/alternatif-cara-membuat-memori-swap-di-linux/

0

Pada review kali ini, saya akan menjelaskan tentang Manajemen File dan Direktori

Manajemen File adalah metode dan struktur data yang digunakan Sistem Operasi untuk mengatur dan mengorganisir file pada disk atau partisi. File system juga dapat diartikan sebagai partisi atau disk yang digunakan untuk menyimpan file-file dalam cara tertentu. Cara memberi suatu file sisitem ke dalam suatu disk atau partisi dengan cara melakukan format.

Fungsi manajemen file :

  1. Penciptaan,modifikasi,dan penghapusan file
  2. Mekanisme pemakaian file secara bersama
  3. Kemampuan backup dan recovery untuk mencegah kehilangan karena kecelakaan atau dari upaya penghancuran informasi
  4. Pemakai dapat mengacu file dengan nama simbolik bukan menggunkan penamaan yang mengacu perangkat fisik
  5. Pada lingkungan sensitive dikehendaki informasi tersimpan aman dan rahasia
  6. file harus menyediakan interface user-friendly

berikut adalah perintah untuk melihat daftar direktori
  • $ pwd : Berfungsi melihat direktori yang sedang aktif
  • $ ls : Berfungsi melihat daftar file atau direktori
  • $ ls /alamat_direktori : Berfungsi melihat file atau direktori pada direktori yang ditentukan
  • ls -al : Berfungsi menampilkan seluruh daftar file/direktori secara lengkap
ketika memasukan fungsi ls -al, terdapat beberapa atribut yang perlu kita ketahui pada karakter pertama, yaitu:
  • d (directory)
  • – (regular file)
  • l (symbolic link)
  • s (unix domain socket)
  • p (named pipe)
  • c (character device file)
  • b (block device file)
dan 9 karakter selanjutnya, menunjukkan permission. Karakter tersebut adalah :
  • r (read permission) 
  • w (write permission) 
  • x (execute permission) 
  • - (no permission)
Manipulasi File

1. cp
Digunakan untuk menyalin satu atau banyak file atau direktori.

2. mv
Digunakan untuk memindahkan atau memberi nama baru pada satu atau banyak file atau direktori.

3. rm
Digunakan untuk menghapus satu atau banyak file atau direktori.

Ada beberapa pilihan yang berguna untuk perintah cp dan mv:

a. -f atau –force
Memungkinkan cp untuk mencoba menghapus file yang sudah ada walaupun file tidak dapat ditulis.

b. -i atau –interactive
Akan meminta konfirmasi sebelum mencoba untuk mengganti file yang ada.

c. -b atau –backup
Akan membuat cadangan dari file yang akan diganti

Contoh-contoh:
  • $ cp text1 text2 tugas/ menyalin file text1 dan text2 ke direktori tugas
  • $ mv text1 tugas/ memindahkan file text1 ke direktori tugas
  • $ mv tugas/text1 tugas/text1.new memberi nama baru
  • $ mkdir fol1 fol2 membuat banyak direktori
  • $ mkdir –p f1/f2/f3 membuat direktori bersarang
  • $ rmdir –p f1/f2 menghapus direktori kosong
  • $ rm –r f1 (atau –R atau –recursive) menghapus file atau direktori beserta isi secara paksa
  • $ find . –name “text” mencari file atau direktori berdasarkan nama
  • $ find .-type f mencari file berdasarkan tipe, f merupakan kode tipe file biasa *lebih detail
  • $ find .-atime 5 mencari file atau direktori berdasarkan waktu akses terakhir
  • $ find .-mtime -10 mencari file atau direktori berdasarkan waktu modifikasi terakhir
  • $ find .-ctime +5 mencari file atau direktori berdasarkan perubahan terakhir pada status berkas (karena diciptakan atau diubah)


Membuat dan menghapus direktori

Membuat banyak direktori


$ mkdir dir1 dir2

Jika ingin membuat subdirektori bersarang, maka tinggal tambahkan-p setelah perintah mkdir

$ mkdir -p d1/d2/d3


Jika pilihan -p tidak ditambahkan, maka akan terjadi error

mkdir: cannot create directory `d1/d2/d3′: No such file or directory


Menghapus direktori
$ cp text1 d1/d2

$ rmdir -p d1/d2/d3 dir1 dir2


-p = parent (sama dengan yang digunakan di mkdir) pasti akan muncul error

rmdir: failed to remove directory `d1/d2′: Directory not empty

karena rmdir hanya akan menghapus direktori yang kosong, jadi hapus dulu file text1 di d1/d2

$ rm d1/d2 text1

$ rmdir -p d1/d2

Menghapus file atau direktori secara rekursif


Jika terdapat banyak file atau direktori yang ingin kita hapus, kita bisa menggunakan perintah rm dengan tambahan -r (atau -R atau –recursive)

$ rm -r d1

Membuat file kosong
Kita dapat membuat file kosong dengan perintah touch, bisa dengan tambahan ekstensi atau tidak

$ touch file1 file2 file3


Menggunakan perintah find


Perintah find digunakan untuk mencari file atau direktori, bisa dicari berdasarkan nama, tipe, atau waktu

$ find . -name “text”

Perintah diatas digunakan untuk mencari file di current directory dengan nama text

Sekian review tentang manajemen file dan direktori kali ini, semoga bermanfaat :)

Sumber : Praktikum Sistem Operasi Pertemuan 6

0
Senin, 04 April 2016

Kali ini saya akan mereview tentang Manajemen Memori, Disk, dan Input/Output (I/O)

Manajement Memori
Manajemen memori merupakan mekanisme yang dilakukan oleh sistem operasi guna
mengelola, mengatur (alokasi/dealokasi), memilih, dan menentukan proses yang dijadwalkan
oleh CPU untuk dimasukkan dalam antrian pada memori.

adapun fungsi memori dalam adalah :
• Mengelola informasi – baik yang dipakai maupun yang tidak dipakai
• Mengalokasikan memori ke proses yang memerlukan
• Mendealokasikan memori dari proses yang telah selesai
• Mengelola swapping atau paging antara main memory (RAM) dan disk (Hard Drive)

Berdasarkan keberadaannya, manajemen memori dibagi menjadi 2, yaitu:
1. Dengan swapping / paging
Manajemen memori dengan pemindahan proses antara main memory dan disk selama
eksekusi
2. Tanpa swapping / paging
Manajemen memori tanpa pemindahan proses antara main memory dan disk selama
eksekusi

sekarang kita implementasikan ke linux. Di dalam linux ada beberapa command untuk memanajemen memory yaitu :
1. $ free : untuk melihat memori yang terpakai oleh suatu proses, dan  menunjukkan bagaimana swap space dan banyaknya swapping yang terjadi
2. $ cat /proc/meminfo : untuk melihat penggunaan memori dan swap (jika tersedia)
3. $ sudo sysctl vm.swappiness= : untuk mengatur kecenderungan kernel untuk memindahkan proses dari memori ke swap.

Manajemen Disk dan Input/Output (I/O)

sekarang kita masuk ke manajemen Disk dan I/O, sebelumnya harus tau dulu pengertiannya, berikut pengertiannya. Manajemen disk dan I/O ini mencakup pengelolaan di hard drive contohnya membuat partisi, memformat partisi, manajemen media penyimpanan seperti flashdisk, dan mengatur komponen input seperti printer, dan sebagainya.

dalam linux juga ada beberapa command untuk mengatur manajemen disk dan I/O tersebut. diantaranya
1. fdisk -d : untuk menghapus partisi
2. fdisk -l : untuk melihat daftar partisi yang ada di komputer
3. fdisk -n : untuk membuat partisi baru
4. fdisk -v : untuk melakukan verifikasi pada partisi (versi fdisk)

sekian review materi kali ini, Terima Kasih :D

Referensi :
Praktikum Sistem Operasi Pertemuan 5

0

this blog useful to add insight and information, and can entertain the reader.

Translate Languange

Coldplay - In My Place

Barcelona FC

Barcelona FC

Followers