MANAJEMEN MEMORY PART 3

Download Report

Transcript MANAJEMEN MEMORY PART 3

MANAJEMEN MEMORY
PART 3
Ritzkal, S.Kom,CCNA
Latar belakang
Memori adalah pusat kegiatan pada sebuah komputer, karena
setiap proses yang akan dijalankan, harus melalui memori
terlebih dahulu.
Sistem Operasi bertugas untuk mengatur peletakan banyak proses
pada suatu memori.
Memory manager :
Salah satu bagian sistem operasi yang mempengaruhi
dalam menentukan proses mana yang diletakkan pada
antrian.
Media Penyimpanan Utama
Register
Tempat penyimpanan beberapa buah data volatile yang akan diolah
langsung di prosesor yang berkecepatan sangat tinggi. Register ini
berada di dalam prosesor dengan jumlah yang sangat terbatas karena
fungsinya sebagai tempat perhitungan/komputasi data.
Cache Memory
Tempat penyimpanan sementara (volatile) sejumlah kecil data untuk
meningkatkan kecepatan pengambilan atau penyimpanan data di memori oleh
prosesor yang berkecepatan tinggi.
Random Access Memory
Tempat penyimpanan sementara sejumlah data volatile yang dapat diakses
langsung oleh prosesor. Pengertian langsung di sini berarti prosesor dapat
mengetahui alamat data yang ada di memori secara langsung.
Memori Ekstensi
Tambahan memori yang digunakan untuk membantu proses-proses
dalam komputer, biasanya berupa buffer. Peranan tambahan memori ini
sering dilupakan akan tetapi sangat penting artinya untuk efisiensi.
Biasanya tambahan memori ini memberi gambaran kasar kemampuan
dari perangkat tersebut, sebagai contoh misalnya jumlah memori VGA,
memori soundcard.
Direct Memory Access
Perangkat DMA digunakan agar perangkat (I/O device) yang dapat memindahkan
data dengan kecepatan tinggi (mendekati frekuensi bus memori). Perangkat
pengendali memindahkan data dalam blok-blok dari buffer langsung ke memory
utama atau sebaliknya tanpa campur tangan prosesor.
Interupsi hanya terjadi tiap blok bukan tiap word atau byte data. Seluruh proses
DMA dikendalikan oleh sebuah controller bernama DMA Controller (DMAC). DMA
Controller mengirimkan atau menerima signal dari memori dan I/O device. Prosesor
hanya mengirimkan alamat awal data, tujuan data, panjang data ke pengendali
DMA. Interupsi pada prosesor hanya terjadi saat proses transfer selesai. Hak
terhadap penggunaan bus memory yang diperlukan pengendali DMA didapatkan
dengan bantuan bus arbiter yang dalam PC sekarang berupa chipset Northbridge.
Arsitekture PC modern
Pemberian Alamat
> Penjilidan alamat dapat terjadi pada 3 saat, yaitu :
Compile Time : pada saat proses di-compile, menggunakan
kode absolut.
Load Time : pada saat proses dipanggil, menggunakan kode
yang direlokasi.
Execution Time : pada saat proses dijalankan, memerlukan
perangkat keras tersendiri.
Ruang Alamat Logika & Fisik
Alamat Logika adalah alamat yg dibentuk di CPU, disebut juga
alamat virtual.
 Alamat fisik adalah alamat yang terlihat oleh memori.
Untuk mengubah dari alamat logika ke alamat fisik diperlukan
suatu perangkat keras yang bernama MMU (Memory Management
Unit).
Pengubahan dari alamat logika ke alamat fisik adalah pusat dari
manajemen memori.
MMU (Memory Management Unit)
Pemanggilan Dinamis
Memanggil routine yang diperlukan untuk menjalankan suatu
proses.
Routine yang tidak diperlukan, tidak akan dipanggil.
Tidak memerlukan bantuan sistem operasi.
Penghubungan Dinamis dan
Kumpulan Data Bersama
Menghubungkan semua routine yang ada di kumpulan data.
Tidak membuang-buang tempat di disk dan memori.
 Kumpulan data yang ada dapat digunakan bersama-sama.
Membutuhkan bantuan sistem operasi.
Fungsi manajemen memori
• Mengelola informasi yang dipakai dan
tidak dipakai.
• Mengalokasikan memori ke proses yang
memerlukan.
•Mendealokasikan
telah selesai.
memori
dari
proses
• Mengelola swapping atau paging antara
memori utama dan disk.
Overlays
 Untuk memasukkan suatu proses yang membutuhkan memori
lebih besar dari yang tersedia.
 Data dan instruksi yang diperlukan dimasukkan langsung ke
memori.
Tidak memerlukan bantuan dari sistem operasi.
Sangat sulit untuk dilakukan.
Swapping
 Sebuah proses harus berada di dalam memori untuk dapat
dijalankan.
 Sebuah proses dapat di-swap sementara keluar memori ke
sebuah penyimpanan cadangan untuk kemudian dikembalikan
lagi ke memori.
 Roll out, roll in adalah penjadualan swapping berbasis pada
prioritas (proses berprioritas rendah di-swap keluar memori agar
proses berprioritas tinggi dapat masuk dan dijalankan di memori.
Pengalokasian Memori
Salah satu tanggung jawab dari Sistem Operasi adalah mengontrol
akses ke sumberdaya sistem. Salah satunya adalah memori.
Contiguous Memory Allocation: alamat memori diberikan kepada
proses secara berurutan dari kecil ke besar.
Keuntungan Contiguous daripada Non-contiguous: sederhana,
cepat, mendukung proteksi memori.
Kerugian Contiguous daripada Non-contiguous: jika tidak semua
proses dialokasikan di waktu yang sama,akan menjadi sangat tidak
efektif dan mempercepat habisnya memori.
 Ada 2 tipe contiguous memory allocation: partisi tunggal dan
partisi banyak.
a. Partisi tunggal adalah alamat pertama yang dialokasikan untuk
proses adalah yang berikutnya dari alamat yang dialokasikan
untuk proses sebelumnya.
b. Partisi banyak adalah dimana Sistem Operasi menyimpan
informasi tentang semua bagian memori yang tersedia untuk
digunakan (disebut hole).
 Proses yang akan dialokasikan dimasukkan ke dalam antrian
dan algoritma penjadualan digunakan untuk menentukan proses
mana yang akan dialokasikan berikutnya.
 Ada 2 cara pengaturan partisi pada sistem partisi banyak: partisi tetap,
dan partisi dinamis.
a. Partisi tetap adalah apabila memori dipartisi menjadi blok-blok yang
ukurannya ditentukan dari awal. Terbagi lagi atas partisi tetap berukuran
sama, dan partisi tetap berukuran berbeda.
b. Partisi dinamis adalah memori dipartisi menjadi bagian-bagian dengan
jumlah dan besar yang tidak tentu.
Algoritma Pengalokasian Memori
dengan Partisi Dinamis
First fit : Mengalokasikan hole pertama yang besarnya
mencukupi. Pencarian dimulai dari awal.
 Best fit : Mengalokasikan hole terkecil yang besarnya
mencukupi.
Next fit : Mengalokasikan hole pertama yang besarnya
mencukupi. Pencarian dimulai dari akhir pencarian
sebelumnya.
Worst fit : Mengalokasikan hole terbesar yang tersedia.
Teknik Penjadwalan Proses
Part 4
Ritzkal, S.Kom,CCNA
Tugas
Penjadwalan
Proses
Prosesor
Istilah
•Pekerjaan / Job
User menyerahkan pekerjaan mereka pada komputer. Ada
pekerjaan yang panjang, sedang dan pendek. Untuk dapat
diolah oleh komputer harus dianalisis dahulu untuk
mengetahui bagaimana sebaiknya pekerjaan itu dilakukan.
•Terobosan / Troughput
Pekerjaan dalam komputer dilaksanakan langkah demi
langkah, sehingga dapat dikatakan bahwa troughput adalah
banyaknya pekerjaan yang dapat diselesaikan oleh sistem
komputer dalam satu satuan waktu.
•Tugas / Task
Program yang terdiri dari banyak bagian program dan bagian program
yang dikerjakan merupakan tugas bagi sistem operasi.
Tugas yang sedang dilaksanakan, adalah tugas yang
menemukan semua sumber daya yang diperlukannya, termasuk
prosesor.
Tugas yang siap dilaksanakan, adalah tugas yang menemukan
semua sumber daya yang diperlukannya, kecuali prosesor.
Tugas yang belum dilaksanakan, adalah tugas yang belum
menemukan sumber daya yang diperlukannya.
•Proses / Process
Tugas yang telah dijadwalkan untuk menemukan prosesor /
tugas yang telah diterima oleh penjadwalan.
2 jenis proses
Tugas / proses sistem, berasal dari program sistem
yaitu dari sistem bahasa, utilitas, operasi, dimana
prosesor melayani sistem (prosesor dikuasai sistem /
kontek sistem)
Tugas / proses aplikasi, berasal dari program aplikasi,
dimana prosesor melayani aplikasi (prosesor dikuasai
aplikasi / kontek aplikasi)
Proses Serentak / Concurrent Process
•Multiprogramming, sistem komputer lebih dari 1 program sekaligus dalam
pelaksanaan proses.
•Multitasking, banyak bagian program yang dipersiapkan untuk diolah oleh
prosesor namun belum sempat dijadwalkan untuk memperoleh prosesor.
•Multiprocessing, sejumlah tugas yang telah dijadwalkan untuk
menggunakan prosesor.
•Multiplexing, menggunakan pertukaran kendali dalam selang waktu
terpisah-pisah.
•Time sharing / rentang waktu, secara bersamaan sejumlah pemakai dapat
menggunakan 1 sistem komputer, sehingga setiap pemakai merasa
bahwa seluruh sistem komputer seolah-olah untuk dirinya.
Proses Berurutan
Sejumlah proses berlangsung secara berselingan dan tidak ada diantara
mereka yang bertumpang tindih waktu, sebelum 1 proses selesai, proses
berikutnya belum bekerja.
A
B
C
Proses Paralel
a.pada proses tunggal, proses serentak bukan proses paralel karena proses
tersebut di gali 1 demi 1, sepenggal demi sepenggal.
b.Pada proses jamak, proses dapat dilaksanakan secara serempak diantara
banyak prosesor sehingga disebut proses paralel
A
B
C
Proses Serentak Berpenggalan
Ada penggalan dari 1 proses yang berselingan dengan penggalan dari
proses lain dan ada penggalan dari proses pertama yang bertumpang
tindih waktu dengan penggalan proses kedua.
A
A1
A2
B
C
B1
C1
B2
C2
Istilah dalam penjadwalan proses
Scheduler adalah bagian sistem operasi yang mengatur penjadwalan
eksekusi proses-proses.
Algoritma penjadwalan (scheduling algorithm) adalah algoritma yang
digunakan.
Penjadwalan Proses
•Antrian, karena banyak proses yang muncul secara serentak maka dibuat
antrian di depan prosesor, yang berada dalam keadaan siap dan hanya ada 1
proses yang berada dalam status kerja
•Prioritas, mendahulukan pada antrian proses karena tidak semua proses
sama pentingnya, sehingga dibuat suatu prioritas. Dalam prioritas, pekerjaan
pada prosesor diselesaikan dahulu baru proses berprioritas akan di proses
•Preempsi, sama dengan prioritas, tetapi pada preempsi jika ada proses yang
mendapatkan preempsi maka preemsi akan menghentikan kerja prosesor dan
mengeluarkan pekerjaan di dalam prosesor itu, sehingga proses berpreempsi
dapat dilayani prosesor. Dan setelah proses berpreempsi selesai dilaksanakan,
prosesor akan melaksanakan sisa proses yang dikeluarkan dari pekerjaannya
tadi
Jangka penjadwalan
1.Penjadwalan jangka pendek / short term scheduling / low level
scheduling, yaitu mengurus masuknya antrian siap ke prosesor serta
antrian siap ke alat peripheral I/O, yang mengurus prioritas dan
preempsi.
2.Penjadwalan jangka media / medium term scheduling / intermediate
level scheduling, yaitu mengurus terhadap proses yang dikeluarkan dari
prosesor yang belum rampung dikerjakan dan melanjutkan pekerjaan
proses tersebut di prosesor.
3.Penjadwalan jangka panjang / long term scheduling / high level
scheduling, yaitu mengurus masuknya pekerjaan baru berupa penentuan
pekerjaan baru mana yang boleh diterima dan tugas disini diubah
menjadi proses.
Tujuan penjadwalan
•Fairness / pelayanan yang adil untuk semua pekerjaan
•Efficiency / memaksimumkan pemakaian prosesor
•Overhead / meminimumkan waktu tunggu
•Pemakaian sumber daya seimbang
•Tidak terjadi penundaan waktu tak hingga
•Kegiatan sumber daya dapat dideteksi terlebih dahulu
Penjadwalan Satu Tingkat
•Pertama Tiba Pertama Dilayani (PTPD) / First Come First Served
(FCFS) Penjadwalan ini murni antrian, tanpa prioritas tanpa
preempsi.
Nama Proses
Saat Tiba
A
B
C
D
E
0
0
0
0
0

serentak
La
ma
Pro
ses
9
30
4
8
12
Saat Mulai
Saat Rampung
Lama Tanggap
0
9
39
43
51
9
39
43
51
63
 Ti
Tr
9
39
43
51
63
205
41
Nama Proses
Saat Tiba
La
ma
Pro
ses
Saat Mulai
Saat Rampung
Lama Tanggap
A
0
4
0
4
4
B
1
7
4
11
10
C
3
3
11
14
11
D
7
8
14
22
15
 Ti
40
Tr
10
•Proses Terpendek Dipertamakan (PTD) / Shortest Job First (SJF)
Penjadwalan ini adalah antrian dengan prioritas tanpa preempsi, yang menjadi
prioritas adalah proses yang terpendek (tersingkat), makin pendek proses,
makin tinggi prioritasnya
Nama Proses
Saat Tiba
Lama Proses
A
0
11
B
0
8
C
0
10
D
0
3
E
0
5
Saat Mulai
Saat Rampung
Lama Tanggap
Nama Proses
Saat Tiba
Lama Proses
Saat Mulai
Saat Rampung
Lama Tanggap
D
0
3
0
3
3
E
0
5
3
8
8
B
0
8
8
16
16
C
0
10
16
26
26
A
0
11
26
37
37


 Ti
90
Tr
18
serentak
prioritas