Nama :wakhid budi utomo
Nim :2014001764
Kelas :amik pagi (B)
a.
Proses
Ø Konsep dasar proses
: Secara informal; proses adalah program dalam eksekusi. Suatu proses adalah
lebih dari kode program,dimana kadang kala dikenal sebagai bagian tulisan.
Proses juga termasuk aktivitas yang sedang terjadi,
sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’sregister. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global.
sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’sregister. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global.
Ø Struktur sistem operasi : Pada kenyataannya 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:
·
Managemen Proses.
·
Managemen Memori Utama.
·
Managemen Secondary-Storage.
·
Managemen Sistem I/O.
·
Managemen Berkas.
·
Sistem Proteksi.
·
Jaringan.
·
Command-Interpreter system.
Ø Model dan implementasi proses :
Model Proses :
1.
Sequential
Process / bergantian
2.
Multiprogramming
3.
CPU
Switching à peralihan
prosedur dalam mengolah 1 proses ke
proses lainnya.
Secara
konsep setiap proses mempunyai 1 virtual CPU, tetapi pada kenyataannya adalah
multiprogramming. Maka akan lebih mudah menganggap kumpulan proses yang
berjalan secara parallel.
Satu Empat Model
program counter program counter Proses
![]() |
(a) (b) (c)
Keterangan :
a.
multiprogramming
untuk 4 program di memori
b.
model
konseptual untuk 4 proses independent, sequential
c.
hanya
1 program yang aktif dalam 1 waktu = pseudoparalel
Implementasi Proses
:
§ Untuk
mengimplementasikan model proses, sistem operasi menggunakan suatu tabel /
array yang disebut tabel proses dengan 1 entry per-proses.
§ Setiap
entry berisi tentang : status proses, program counter, stack pointer, alokasi
memori, status file, informasi schedulling / penjadwalan informasi, dll dari
status kerja ke status siap.
Contoh Tabel
Proses :
|
Proses
management
|
Memory
management
|
File
management
|
|
Register
|
Pointer to
text segment
|
UMASK mask |
|
Program
counter
|
Pointer to
data segment
|
Root directoy
|
|
Program status
word
|
Pointer to bss
segment
|
Working
directory
|
|
Stack pointer
|
Exit status
|
File
descriptiors
|
|
Process state
|
Signal status
|
Effective uid
|
|
Time when
process started
|
Process id
|
Effective gid
|
|
CPU time used
|
Parent process
|
System call
parameters
|
|
Children’s CPU
time
|
Process group
|
Various flag
bits
|
|
Time of next
alarm
|
Real uid
|
|
|
Message queue
pointers
|
Effective uid
|
|
|
Pending signal
bits
|
Real gid
|
|
|
Process id
|
Effective gid
|
|
|
Various flag
bits
|
Bit maps for
signals
|
|
|
|
Various flag
bits
|
|
b.Penjadwalan Proses
Ø Penjadwalan round robin : Penjadwalan Round Robin (RR) ini dilakukan secara bergiliran
berdasarkan antrian, prosessor mengerjakan sesaat setiap proses berturut-turut.
Proses yang telah dieksekusi prosessor dan belum selesai akan kembali ke
antrian terakhir yang ada pada saat itu sehingga penggiliran untuk eksekusi
tersebut seperti gelang.
Semua proses
di anggap penting dan diberi sejumlah waktu pemroses yang disebut kwanta
(quantum) atau time-slice dimana prose situ berjalan.
- Konsep
dasar algoritma ini menggunakan time sharing
- Pada
dasarnya, prinsip hampir sama dengan FCFS, tapi bersifat preemptive
- proses
akan dibatasi waktu prosesnya, yang disebut quantum time
- Keuntungan
algoritma round robin :
- Adanya keseragaman waktu
-
Kelemahannya :
- Jika quantum time sangat besar à switching yang terjadi akan semakin sedikit (seperti FCFS)
- Jika quantum time terlalu kecil à switching yang terjadi akan semakin banyak, sehingga banyak waktu yang terbuang
- Ketentuan
Algoritma Round Robin adalah :
- Jika proses memiliki CPU Burst < Quantum Time, maka proses akan melepaskan CPU, jika telah selesai digunakan à CPU dapat segera digunakan oleh proses selanjutnya
- Jika proses memiliki CPU Burst > Quantum Time, maka proses tersebut akan dihentikan jika sudah mencapai quantum time dan selanjutnya mengantri kembali pada posisi tail queue (ekor dari ready queue), CPU kemudian menjalankan proses berikutnya
Jika quantum
time belum habis dan proses menunggu suatu kejadian (selesainya operasi
I/O), maka proses menjadi blocked dan CPU dialihkan ke proses lain
Ø Penjadwalan berprioritas : Penjadwalan
Berprioritas (PS)
Ide penjadwalan adalah tiap proses diberikan prioritas dan proses berprioritas tinggi running (mendapat jatah waktu proses).
Prioritas dapat diberikan secara :
– Prioritas statis
– Prioritas dinamis
Prioritas Statis
Prioritas statis berarti rioritas tak berubah
Keunggulan
– mudah diimplementasikan
– mempunyai overhead relatif kecil
Kelemahan
– Penjadwalan tak tanggap perbuhana lingkungan yang mungkin menghendaki penyesuaian prioritas.
Prioritas Dinamis
Prioritas dinamis merupakan mekanisme menanggapi perubahan lingkungan sistem beroperasi. Prioritas awal diberikan ke proses mungkin hanya berumur pendek setelah disesuaikan ke nilai yanglebih tepat sesuai lingkungan.
Kelemahan
Implementasi mekanisme prioritas dinamis lebih kompeks dan mempunyai overhead lebih besar. Overhead ini diimbangi dengan peningkatan daya tanggap sistem.
Contoh penjadwalan berprioritas
Proses-proses yang sangat banyak operasi I/O menghabiskan kebanyakan waktu menunggu selesainya operasi I/O. Proses-proses ini diberi prioritas sangat tinggi sehingga begitu proses memerlukan pemroses segera diberikan, proses akan segera memulai permintaan I/O berikutnya hingga mengakibatkan proses blocked menunggu selesainya operasi I/O. Dengan demikian pe mroses dapat dipergunakan proses-proses lain. Proses-proses I/O bound berjalan paralel bersama proses-proses lain yang benar-benar memerlukan pemroses, sementara proses-proses I/O bound itu menunggu selesainya operasi DMA.
Proses-proses yang sangat banyak operasi I/O kalau harus menuggu lama untuk memakai pemroses (karena prioritas rendah) hanya akan membebani meori karena harus disimpan tanpa perlu prosesproses itu dimemori karena tidak selesai-selesai menunggu operai I/O dan menunggu jatah pemroses.
Algoritma Prioritas Dinamis
Algoritma dituntun oleh keputusan untuk memenuhi kebijaksanaan tertentu yang menjadi tujuan.
Algoritma sederhana yang memberi layanan bagus adalah men-set prioritas dengan nilai 1/f dimana f adalah ratio kwanta terakhir yang digunakan proses.
– Proses yang menggunakan 2 msec kwanta 100 ms maka prioritasnya 50.
– Proses yang berjalan selama 50 ms sebelum blocked berprioritas 2.
– Proses yang menggunakan seluruh kwanta berprioritas 1.
Keunggulan Algoritma Penjadwalan Berprioritas
Biasanya memenuhi kebijaksanaan yang ingin mencapai maksimasi suatu kriteria diterapkan.
Kombinasi
Algoritma penjadwalan berprioritas dapat dikombinasikan yaitu mengelompokan proses-proses menjadi kelas-kelas prioritas. Penjadwalan berprioritas diterapkan antar kelas-kelas proses itu. Penjadwalan round-robin atau FIFO diterapkan pada proses-proses di satu kelas.
Ø Penjadwalan dengan Banyak Antrian (MFQ)
Penjadwalan ini merupakan:
–
Penjadwalan preemptive (by-time)
– Penjadwalan berprioritas dinamis.
– Penjadwalan berprioritas dinamis.
Penjadwalan
ini untuk mencegah banyaknya swapping dengan proses-proses yang sangat
banyakmenggunakan pemroses (karena menyeelesaikan tugasnya memakan waktu lama)
diberi jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu.
Penjadwalan ini menghendaki kelas-kelas prioritas bagi proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat kwanta, dan seterusnya. Ketentuan yang berlaku adalah sebagai berikut:
– Jalankan proses pada kelas tertinggi
– Jika proses menggunakan seluruh kwanta yang dialokasikan maka diturunkan kelas prioritasnya.
– Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi.
Mekasnime ini dapat mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama.
Penggunaan
Sistem dengan banyak proses lambat, memerlukan waktu dan juga terdapat banyak proses singkat.
Penjadwalan Terpendek, Duluan (SJF)
Penjadwalan ini merupakan :
– Penjadwalan non-preemptive
– Penjadwalan tak berprioritas
Penjadwalan ini mengasumsikan waktu jalan proses(sampai selesai) diketahui sebelumnya. Mekanisme penjadwalan adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai.
Penjadwalan mempunyai efesien tinggi dan turn arround time rendah.
Contoh :
Terdapat empat proses A,B,C,D dengan jalam selama 8,7,6,5 kwanta.
Gambar 5.2a menunjukkan cara I, dengan proses-proses dijadwalkan berurutan sebagai A,B,C,D. Gambar 5.2b menunjukkan bila proses-proses dijadwalkan secara SJF yaitu berurutan B,C,D,A
Kedua cara menghasilkan turn arround time ditunjukan gambar 5.2c. Cara I trun arround time rata-rata adalah 17,5 kwanta sedang cara II adalah 15 kwanta.
Penjadwalan ini menghendaki kelas-kelas prioritas bagi proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat kwanta, dan seterusnya. Ketentuan yang berlaku adalah sebagai berikut:
– Jalankan proses pada kelas tertinggi
– Jika proses menggunakan seluruh kwanta yang dialokasikan maka diturunkan kelas prioritasnya.
– Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi.
Mekasnime ini dapat mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama.
Penggunaan
Sistem dengan banyak proses lambat, memerlukan waktu dan juga terdapat banyak proses singkat.
Penjadwalan Terpendek, Duluan (SJF)
Penjadwalan ini merupakan :
– Penjadwalan non-preemptive
– Penjadwalan tak berprioritas
Penjadwalan ini mengasumsikan waktu jalan proses(sampai selesai) diketahui sebelumnya. Mekanisme penjadwalan adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai.
Penjadwalan mempunyai efesien tinggi dan turn arround time rendah.
Contoh :
Terdapat empat proses A,B,C,D dengan jalam selama 8,7,6,5 kwanta.
Gambar 5.2a menunjukkan cara I, dengan proses-proses dijadwalkan berurutan sebagai A,B,C,D. Gambar 5.2b menunjukkan bila proses-proses dijadwalkan secara SJF yaitu berurutan B,C,D,A
Kedua cara menghasilkan turn arround time ditunjukan gambar 5.2c. Cara I trun arround time rata-rata adalah 17,5 kwanta sedang cara II adalah 15 kwanta.
Walaupun
mempunyai turn arround yang bagus, SJF mempunyai yaitu:
– Tidak dapat mengetahui ukuran job saat job masuk
– Proses yang tidak datang bersamaan, sehingga penetapannya harus dinamis.
Untuk mengetahui ukuran job agar dapat ditetapkan yang terpendek biasanya dilakukan pendekatan. Pendekatan yang biasa dilakukan adalah membuat estimasi berdasar kelakuan sebelumnya.
– Tidak dapat mengetahui ukuran job saat job masuk
– Proses yang tidak datang bersamaan, sehingga penetapannya harus dinamis.
Untuk mengetahui ukuran job agar dapat ditetapkan yang terpendek biasanya dilakukan pendekatan. Pendekatan yang biasa dilakukan adalah membuat estimasi berdasar kelakuan sebelumnya.
c.Managemen Memory
Ø manajemen memori
adalah suatu kegiatan untuk
mengelola memori komputer. Proses ini menyediakan cara mengalokasikan memori
untuk proses atas permintaan mereka, membebaskan untuk digunakan kembali ketika
tidak lagi diperlukan serta menjaga alokasi ruang memori bagi proses. Pengelolaan
memori utama sangat penting untuk sistem komputer.
Manajemen memori sangat penting untuk memproses dan
fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung
sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak
dibatasi kapasitas memori fisik di sistem komputer.
Jadi, Fungsi
manajemen memori:
1. Mengelola informasi memori yang dipakai dan tidak dipakai.
2. Mengalokasikan memori ke proses yang memerlukan.
3. Mendealokasikan memori dari proses yang telah selesai.
4. Mengelola swapping antara memori utama dan disk.
Manajemen Memori dibedakan menjadi dua, berdasarkan ada tidaknya proses swap. Manajemen Memori dengan swapping adalah manajemen memori dengan pemindahan proses antara memori utama dan disk selama eksekusi. Manajemen Memori tanpa swapping adalah manajemen memori tanpa pemindahan proses antara memori utama dan disk selama eksekusi.
Sistem memori virtual memisahkan alamat memori yang digunakan oleh suatu proses dari alamat fisik yang sebenarnya, yang efektif meningkatkan jumlah RAM yang tersedia menggunakan disk swapping. Manajer memori virtual memiliki pengaruh besar pada kinerja sistem secara keseluruhan.
1. Mengelola informasi memori yang dipakai dan tidak dipakai.
2. Mengalokasikan memori ke proses yang memerlukan.
3. Mendealokasikan memori dari proses yang telah selesai.
4. Mengelola swapping antara memori utama dan disk.
Manajemen Memori dibedakan menjadi dua, berdasarkan ada tidaknya proses swap. Manajemen Memori dengan swapping adalah manajemen memori dengan pemindahan proses antara memori utama dan disk selama eksekusi. Manajemen Memori tanpa swapping adalah manajemen memori tanpa pemindahan proses antara memori utama dan disk selama eksekusi.
Sistem memori virtual memisahkan alamat memori yang digunakan oleh suatu proses dari alamat fisik yang sebenarnya, yang efektif meningkatkan jumlah RAM yang tersedia menggunakan disk swapping. Manajer memori virtual memiliki pengaruh besar pada kinerja sistem secara keseluruhan.
Ø Swapping :
salah satu Manajemen Memori,
berdasarkan ada tidaknya proses swap. Manajemen Memori dengan swapping adalah
manajemen memori dengan pemindahan proses antara memori utama dan disk selama
eksekusi. Manajemen Memori tanpa swapping adalah manajemen memori tanpa
pemindahan proses antara memori utama dan disk selama eksekusi.
Teknik swapping roll out, roll in menggunakan algoritma berbasis prioritas
dimana ketika proses dengan prioritas lebih tinggi tiba maka memory manager
akan mengeluarkan proses dengan prioritas yang lebih rendah serta me-load
proses dengan prioritas yang lebih tinggi tersebut. Saat proses dengan
prioritas yang lebih tinggi telah selesai dieksekusi maka proses yang memiliki
prioritas lebih rendah dapat dimasukkan kembali ke dalam memori dan kembali
dieksekusi.
Sebagian besar waktu swapping adalah waktu transfer. Sebagai contoh kita lihat ilustrasi berikut ini: sebuah proses pengguna memiliki ukuran 5 MB, sedangkan tempat penyimpanan sementara yang berupa harddisk memiliki kecepatan transfer data sebesar 20 MB per detiknya. Maka waktu yang dibutuhkan untuk mentransfer proses sebesar 5 MB tersebut dari atau ke dalam memori adalah 5000 KB / 20000 KBps = 250 ms
Perhitungan di atas belum termasuk waktu latensi, sehingga jika kita asumsikan waktu latensi sebesar 2 ms maka waktu swap adalah sebesar 252 ms. Oleh karena terdapat dua kejadian dimana satu adalah proses pengeluaran sebuah proses dan satu lagi adalah proses pemasukan proses ke dalam memori, maka total waktu swap menjadi 252 + 252 = 504 ms.
Sebagian besar waktu swapping adalah waktu transfer. Sebagai contoh kita lihat ilustrasi berikut ini: sebuah proses pengguna memiliki ukuran 5 MB, sedangkan tempat penyimpanan sementara yang berupa harddisk memiliki kecepatan transfer data sebesar 20 MB per detiknya. Maka waktu yang dibutuhkan untuk mentransfer proses sebesar 5 MB tersebut dari atau ke dalam memori adalah 5000 KB / 20000 KBps = 250 ms
Perhitungan di atas belum termasuk waktu latensi, sehingga jika kita asumsikan waktu latensi sebesar 2 ms maka waktu swap adalah sebesar 252 ms. Oleh karena terdapat dua kejadian dimana satu adalah proses pengeluaran sebuah proses dan satu lagi adalah proses pemasukan proses ke dalam memori, maka total waktu swap menjadi 252 + 252 = 504 ms.
Contoh
Swapping
* Ketika
waktu kuantum habis, pengatur memori akan menukar proses yang telah selesai dan
memasukkan proses yang lain ke dalam memori yang sudah bebas.
* Ketika
waktu kuantum habis, pengatur memori akan menukar proses yang telah selesai dan
memasukkan proses yang lain ke dalam memori yang sudah bebas.
* Swapping
dapat juga terdapat dalam penjadwalan berbasis prioritas (priority scheduling).
adalah memory yang dapat dibuat oleh
user (pengguna komputer), yang digunakan oleh aplikasi untuk menggunakan
sebagian dari memori sekunder seolah-olah ia menggunakannya sebagai RAM fisik.
Virtual memory menggabungkan RAM
komputer Anda dengan ruang sementara pada hard disk. Ketika RAM
berjalan rendah, memori virtual memindahkan data dari RAM ke sebuah ruang yang
disebut paging file. Data bergerak ke dan dari paging file membebaskan RAM
untuk menyelesaikan pekerjaannya.
Semakin banyak RAM komputer Anda, program-program Anda umumnya akan lebih cepat berjalan. Jika kurangnya RAM yang memperlambat komputer Anda, Anda mungkin tergoda untuk meningkatkan memori virtual untuk mengimbanginya. Namun, komputer Anda dapat membaca data dari RAM jauh lebih cepat daripada dari hard disk, sehingga menambahkan RAM adalah solusi yang lebih baik.
Semakin banyak RAM komputer Anda, program-program Anda umumnya akan lebih cepat berjalan. Jika kurangnya RAM yang memperlambat komputer Anda, Anda mungkin tergoda untuk meningkatkan memori virtual untuk mengimbanginya. Namun, komputer Anda dapat membaca data dari RAM jauh lebih cepat daripada dari hard disk, sehingga menambahkan RAM adalah solusi yang lebih baik.
Penggunaan Virtual Memori
Virtual memory bisa dibuat dengan
menggunakan memori yang ada di harddisk, jumlahnya tidak dibatasi, tergantung
dari besarnya sisa memori yang ada di hard disk. Dalam sistem operasi berbasis
Windows NT, terdapat sebuah komponen yang mengatur memori virtual yaitu Virtual Memory Manager (VMM) yang memiliki fungsi untuk dapat memetakan
alamat-alamat virtual yang dimiliki oleh sebuah proses yang berjalan ke dalam
page memori fisik di dalam komputer. Dengan cara ini maka setiap proses dapat
memperoleh memori virtual yang cukup agar dapat berjalan dan tidak mengganggu
memori yang sedang digunakan oleh proses lainnya. VMM menangani paging antara
RAM dan page file agar setiap aplikasi 32-bit dapat mengakses memori hingga 4
Gigabyte, meskipun Windows hanya membatasinya pada kisaran 2 Gigabyte.
Jadi, untuk komputer yang mempunyai memori / RAM kecil
ada baiknya memperbesar virtual memori agar tetap dapat menjalankan aplikasi
yang membutuhkan memori yang besar terutama untuk game.
Berikut
adalah langkah-langkah untuk memperbesar virtual memori di Windows XP
(Experience) :
1.
Klik kanan [My Computer], pilih ‘Properties’ ;
2. Klik tab ‘Advanced’, Pilih ‘Settings’ pada ‘Performance’ ;
2. Klik tab ‘Advanced’, Pilih ‘Settings’ pada ‘Performance’ ;
3. Ada
3 pilihan tab, Visual Effects, Advanced, & Data execution Prevention, kita
pilih ‘Advanced’ ;
4.
Klik ‘Change’ pada Virtual Memory, pilih ‘Custom Size’,
besarnya virtual memory terserah user ;
5.
Ubahlah nilai yang di lingkari menjadi lebih besar dari nilai default/ nilai
standar
Setelah selesai menulis angka-nya, jangan lupa pilih
‘SET’, kemudian di ‘OK’, restart komputer anda. Jika Anda menerima peringatan
bahwa memori virtual Anda rendah, Anda harus meningkatkan ukuran minimal paging
file Windows Anda, menentukan ukuran minimum awal paging file pada jumlah
memori akses acak (RAM). Di instal pada komputer Anda ditambah 300 megabyte
(MB), dan ukuran maksimum sebesar 3 kali jumlah RAM yang terpasang pada
komputer Anda. Jika Anda melihat peringatan pada tingkat yang direkomendasikan,
kemudian meningkatkan ukuran minimum dan maksimum.
Rekomendasi:
- Samakan besarnya memory pada Initial Size dan Maximum Size.
- Dibeberapa sumber mengatakan besarnya memori pada virtual memori adalah {[Jumlah total DDR anda sekarang] x 2} +128, misalnya total memory (DDR-RAM) Anda sekarang 384 mb, berarti Virtual Memory Anda = (384×2)+128 = 896. Tapi sumber dari Microsoft mengatakan Virtual Memory yang baik adalah 1,5x dari jumlah Memory (DDR-RAM) yang terpasang di PC/Laptop Anda.
- Karena Virtual Memory berfungsi sebagai pengganti (tambahan) DDR-RAM dan mengambil akses dari harddisk (HDD). Alangkah baiknya jika mempunyai 2 harddisk (partisi), bedakan lokasi harddisk antara System dan Virtual Memory,
Contoh :
Drive (C) 70
GB (Windows terinstall)
Drive (D)
120 GB
Jika mempunyai 2 HDD atau lebih (atau partisi), jgn
membuat virtual memory ditempat dimana windows diinstall, lebih baik dibuat
virtual memory di Drive D. Kalau dibuat virtual memory ditempat yang sama, akan
memperlambat akses ke virtual memory.
Kecuali anda hanya memiliki satu partisi.






0 komentar:
Posting Komentar