MAIN MEMORI
Disusun oleh
Kelompok II :
Juli Elprida Hutagalung (5173351019)
Melda Rosa Putri Bukit (5173351025)
Noerdhafa Fadhillah (5173351033)
Riski Permatasari Nasution (5173351039)
Salman Alfarizi (5173351042)
Puji dan syukur Kami Ucapkan Kehadiran Tuhan Yang Maha Esa, karena atas berkat dan
rahmat-Nya kami dapat menyelesaikan Critical Book Report yang berjudul “MAIN
MEMORY” ini tepat pada waktunya.
Melalui Critical book report ini, kita dapat mengetahui tentang keunggulan serta
kelemahan dari buku. Tujuan dari critical book report ini adalah untuk mengulas unggul dan
lemahnya buku ini, serta membagikan kepada pembaca mengenai ringkasan inti sari dari
buku tersebut.
Kami berterimakasih kepada dosen pengampu “Bagoes Maulana, S.Kom., M.Kom.”
yang telah membimbing kami dalam menyelesaikan critical book report ini dan kami juga
tidak lupa berterimakasih kepada teman-teman yang telah membantu dalam menyelesaikan
critical book report ini.
Kami minta maaf apabila terdapat kesalahan serta kekurangan dalam critical book report
ini dan saya juga berharap ada nya saran dan kritikan dari pembaca agar critical book report
ini menjadi lebih baik lagi.
Kelompok II
ii
DAFTAR ISI
Halaman Judul i
Kata Pengantar ii
Daftar Isi iii
BAB I PENDAHULUAN
1.1 Latar Belakang 1
1.2 Tujuan Penulis 1
1.3 Manfaat 2
1.4 Identitas Isi Buku 2
BAB II RINGKASAN
2.1 Ringkasan Isi Buku 3
BAB III PEMBAHASAN
3.1 Keunggulan Buku 9
3.2 Kelemahan Buku 9
BAB IV PENUTUP
4.1 Kesimpulan 10
4.2 Saran 10
Daftar Pustaka11
iii
BAB I
PENDAHULUAN
1.1 Latar Belakang
Main Memory (memory utama) atau lebih dikenal sebagai memori adalah sebuah array
yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan
jutaan. Setiap word atau byte mempunyai alamat tersendiri. Main memory berfungsi sebagai
tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Main-
memory termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat
hilang begitu sistem dimatikan.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan
manajemen memori seperti: menjaga track dari memori yang sedang digunakan dan siapa
yang menggunakannya; memilih program yang akan di-load ke memori; dan mengalokasikan
dan mendealokasikan memoryspace sesuai kebutuhan.
Main memory dapat dibayangkan sebagai kumpulan kotak-kotak yang masing dapat
menyimpan suatu penggal informasi baik berupa data maupun instruksi. Umumnya 1 byte
memory terdiri dari 8 bit dan tiap bit diwakili oleh 1 atau 0. Kombinasi bit dalam1 byte
tersebut membentuk suatu kode yang mewakili isi dari lokasi memory. Kode yang digunakan
untuk mewakilinya tergantung dari komputer yang digunakan, dapat membentuk sistem kode
BCD (Binary-Coded Decimal), sistem kode SBCDIC (Standard Binary Coded Decimal
Interchange Code), sistem kode EBCDIC (Extended Binary Coded Decimal Interchange
Code) atau sistem kode ASCII (American Standard Code for Information Interchange).
Misalnya suatu komputer mempunyai kapasitas memory 256 KB atau 262.144 byte, yang
berarti mempunyai 262.144 lokasi memori. Alamat dari memori ini adalah bernomor 000000
sampai dengan 262.143.
1
1.3 Manfaat Penulisan
1. Agar pembaca tanggap terhadap hal-hal penting mengenai memori.
2. Agar mahasiswa dapat mengetahui tentang Memory
3. Agar mahasiswa dapat mngerti secara rinci fungsi dan kegunaan momori.
4. Melatih kemampuan penulis dalam mengkritisi suatu buku.
2
BAB II
RINGKASAN
0
Operating
System
256000
Proses
300040 30004
0
Base
Proses
420940 120900
Limit
0
Proses
880000
1024000
0
Misalnya, jika base register berlaku 300040 dan register limit adalah 120900, maka
program tersebut secara ilegal dapat mengakses semua alamat dari 300040 sampai 420939
(inklusif). Register dasar dan limit hanya dapat dimuat oleh sistem operasi, yang
menggunakan instruksi istimewa. Karena instruksi istimewa hanya dapat dieksekusi dalam
3
mode kernel, dan karena hanya menjalankan sistem operasi dalam mode kernel, hanya sistem
operasi yang dapat memuat basis dan register batas.
Alamat Biding
Prosedur single-tasking normal adalah memilih salah satu proses dalam antrian input dan
untuk memuat proses itu ke dalam memori. Sebagian besar sistem memungkinkan proses
pengguna berada di bagian memori fisik manapun. Jadi, walaupun ruang alamat komputer
bisa dimulai pada 00000, alamat pertama dari proses pengguna tidak perlu 00000. Anda akan
lihat nanti bagaimana program pengguna benar-benar menempatkan sebuah proses dalam
memori fisik.
Waktu kompilasi. Jika Anda tahu pada waktu kompilasi dimana proses akan berada
dalam memori, maka kode absolut dapat dihasilkan. Misalnya, jika Anda tahu bahwa proses
pengguna akan berada di lokasi R, kode compiler yang dihasilkan akan dimulai di lokasi
tersebut dan diperpanjang dari sana.
Muat waktu. Jika tidak diketahui pada waktu kompilasi dimana proses akan berada
dalam memori, maka compiler harus menghasilkan kode yang dapat direlokasi
Waktu eksekusi. Jika prosesnya bisa digerakkan selama eksekusi dari satu segmen
memori ke segmen memori yang lain, maka pengikatannya harus tertunda sampai run time.
Pemuatan Dinamis
Ukuran sebuah proses telah dibatasi pada ukuran memori fisik. Untuk mendapatkan
pemanfaatan ruang memori yang lebih baik, kita bisa menggunakan pemuatan dinamis.
Dengan pemuatan dinamis, rutinitas tidak dimuat sampai dipanggil semua rutinitas disimpan
di disk dalam format beban yang dapat direlokasi. Program utama dimuat ke memori dan
dijalankan ketika rutinitas perlu menelepon rutinitas yang lain, rutinitas pemanggilan pertama
memeriksa apakah rutinitas lainnya telah dimuat.Keuntungan dari pemuatan dinamis adalah
rutinitas dimuat hanya jika dibutuhkan.Metode ini sangat berguna bila sejumlah besar kode
dibutuhkan untuk menangani kasus yang jarang terjadi, seperti rutinitas kesalahan.
4
memuat perpustakaan jika rutinitasnya belum ada. Ketika rintisan dijalankan, ia memeriksa
apakah rutinitas yang dibutuhkan sudah ada dalam ingatan. Jika tidak, program akan memuat
rutinitas ke dalam memori. Either way, rintisan menggantikan dirinya dengan alamat rutin
dan menjalankan rutinitas. Dengan demikian, pada saat segmen kode tertentu tercapai,
rutinitas perpustakaan dijalankan secara langsung, tidak menimbulkan biaya untuk hubungan
dinamis. Di bawah skema ini, semua proses yang menggunakan perpustakaan bahasa hanya
menjalankan satu salinan kode perpustakaan.
Swapping
Sebuah proses, bagaimanapun, dapat ditukar sementara dari memori ke toko pendukung
dan kemudian dibawa kembali ke memori untuk eksekusi lanjutan, swapping memungkinkan
ruang alamat fisik total dari semua proses melebihi memori fisik sistem yang sebenarnya,
sehingga meningkatkan tingkat multiprogramming dalam suatu sistem.
Standar Swapping
Swapping standar melibatkan proses bergerak antara memori utama dan toko pendukung.
Sistem menyimpan antrian siap yang terdiri dari semua proses yang gambar memorinya ada
di toko pendukung atau di memori dan siap dijalankan. Setiap kali scheduler CPU
memutuskan untuk melakukan proses, ia memanggil petugas operator. Petugas operator
memeriksa apakah proses berikutnya dalam antrian ada di memori. Untuk mendapatkan ide
tentang waktu beralih konteks, anggap saja proses pengguna berukuran 100 MB dan toko
dukungan adalah hard disk standar dengan tingkat transfer 50 MB per detik. Transfer
sebenarnya dari proses 100 MB ke atau dari memori utama dibutuhkan.
100 MB / 50 MB per detik = 2 detik
Waktu swap adalah 200 milidetik. Karena kita harus menukar keduanya dan masuk, total
waktu swap sekitar 4.000 milidetik.
5
Android tidak mendukung swapping dan mengadopsi strategi yang serupa dengan yang
digunakan oleh iOS. Ini bisa menghentikan proses jika memori bebas tidak mencukupi
tersedia.
Perlindungan Memori
Daftar relokasi berisi nilai alamat fisik terkecil yaitu register batas berisi kisaran alamat
logis (misalnya relokasi = 100040 dan limit = 74600). Setiap alamat logis harus berada dalam
kisaran yang ditentukan oleh register limit. MMU memetakan alamat logis secara dinamis
dengan menambahkan nilai dalam register relokasi. Alamat yang dipetakan ini dikirim ke
memori.
Misalnya, sistem operasi berisi kode dan ruang penyangga untuk driver perangkat. Jika
driver perangkat (atau layanan sistem operasi lainnya) tidak umum digunakan, kami tidak
ingin menyimpan kode dan data dalam memori, karena kami mungkin dapat menggunakan
ruang itu untuk tujuan lain. Kode semacam itu kadang disebut kode sistem operasi transien.
Alokasi Memori
Dalam metode multi-partisi ini ketika sebuah partisi bebas dan sebuah proses dipilih dari
antrian input dan dimasukkan ke dalam partisi bebas. Saat proses berakhir, partisi menjadi
tersedia untuk proses lain. Metode ini awalnya digunakan oleh sistem operasi IBM OS / 360
(disebut MFT) namun tidak lagi digunakan. Metode yang dijelaskan selanjutnya adalah
generalisasi skema partisi tetap (disebut MVT) Ini digunakan terutama di lingkungan batch.
Secara umum blok memori yang tersedia terdiri dari serangkaian lubang dengan berbagai
ukuran yang tersebar di seluruh memori. Ketika sebuah proses tiba dan membutuhkan
memori, sistem akan mencari set untuk lubang yang cukup besar untuk proses ini.
6
Fragmentasi
Fragmentasi sistem multiprogrammed umumnya akan tampil lebih efisien jika memiliki
tingkat multiprogramming yang lebih tinggi. Dengan unit allo-kation berukuran-tetap, seperti
skema partisi tunggal dan paging, mengalami fragmentasi internal. Sistem dengan unit
alokasi berukuran variabel, seperti skema partisi ganda dan segmentasi, mengalami
fragmentasi eksternal.
Solusi untuk masalah fragmentasi eksternal adalah kontraksi. Pemadatan melibatkan
pengalihan program dalam memori sedemikian rupa sehingga program tidak memperhatikan
perubahannya. Pertimbangan ini mengharuskan agar alamat logis direlokasi secara dinamis,
pada saat eksekusi.
Segmentasi Hardware
Alamat logis terdiri dari dua bagian: nomor segmen, s, dan offset ke segmen itu, d.
Nomor segmen digunakan sebagai indeks ke tabel segmen. D offset dari alamat logis harus
antara 0 dan batas segmen. Jika tidak, kita menjebak ke sistem operasi (logical addressing
effort beyond end of segment).
Sebagai contoh, segmen 2 adalah 400 byte dan dimulai di lokasi 4300. Dengan demikian,
referensi ke byte 53 dari segmen 2 dipetakan ke lokasi 4300 + 53 = 4353. Sebuah referensi ke
segmen 3, byte 852, dipetakan ke 3200 ( basis segmen 3) + 852 = 4052. Sebuah referensi ke
byte 1222 dari segmen 0 akan menghasilkan jebakan ke sistem operasi, karena segmen ini
hanya panjang 1.000 byte.
Metode Dasar
Metode dasar untuk menerapkan paging melibatkan pemutusan pemalsuan fisik ke dalam
blok berukuran tetap yang disebut frame dan memecahkan memori logis menjadi blok dengan
ukuran yang sama dengan yang disebut halaman.
Ukuran halaman (seperti ukuran bingkai) ditentukan oleh perangkat keras. Ukuran
halaman adalah kekuatan 2, bervariasi antara 512 byte dan 1 GB per halaman, tergantung
pada arsitektur komputer. Pemilihan kekuatan 2 sebagai ukuran halaman membuat
terjemahan dari sebuah alamat logis menjadi nomor halaman dan offset halaman sangat
mudah .Dengan demikian, alamat logis 0 memetakan ke alamat fisik 20 [= (5 × 4) + 0].
Alamat logis 3 (halaman 0, offset 3) peta ke alamat fisik 23 [= (5 × 4) +3]. Alamat logis 4
adalah halaman 1, offset 0; sesuai dengan tabel halaman, halaman 1 dipetakan ke frame 6.
7
Dengan demikian, alamat logis 4 memetakan ke alamat fisik 24 [= (64) + 0]. Alamat logis 13
peta ke alamat fisik 9.
8
paling populer berjalan di chip Intel, termasuk Windows, Mac OS X, dan Linux (walaupun
Linux, tentu saja, berjalan di beberapa arsitektur lain juga).
BAB III
PEMBAHASAN
3.1 Keunggulan Buku
Ditinjau dari materi pada bab pembahasan, buku tersebut sangat memaparkan mengenai
pengertian, fungsi, serta bagian-bagian pada memory, sehingga membuat para pembaca lebih
mudah mengerti dan memahami mengenai memori utama pada komputer. Pada bab
pembahasan yang terdapat pada buku terebut juga memempilkan gambar-gambar atau
struktur-struktur mengenai proses memory dan kapasitas pada memory sehingga kita lebih
mengetahui secara luas mengenai memory. Pada bab pembahasan mengenai memory utama
juga mempilakan daftar pustaka agar kita mengetahui sumber materi tersebut.
9
BAB IV
PENUTUP
4.1 Kesimpulan
Memori sangat penting bagi pengoperasian sistem komputer modern. Memori terdiri dari
array byte yang besar, masing-masing dengan alamatnya sendiri. CPU mengambil instruksi
dari memori sesuai dengan nilai program counter. Petunjuk ini dapat menyebabkan pemuatan
tambahan dan penyimpanan ke alamat memori tertentu.
Siklus instruksi eksekusi yang khas, misalnya, pertama kali mengambil instruksi dari
ingatan. Instruksi kemudian diterjemahkan dan dapat menyebabkan operan diambil dari
memori. Setelah instruksi dieksekusi di operan, hasilnya dapat disimpan kembali di memori.
Unit memori hanya melihat.
Aliran alamat memori; tidak tahu bagaimana cara kerjanya (oleh penghitung instruksi,
pengindeksan, tipuan, alamat harfiah, dan sebagainya) atau untuk apa (untuk instruksi atau
data). Dengan demikian, kita bisa mengabaikan bagaimana sebuah program menghasilkan
alamat memori. Kami hanya tertarik pada urutan alamat memori yang dihasilkan oleh
program yang sedang berjalan.
Bertukar Swapping dapat ditambahkan ke algoritma apapun. Pada interval yang
ditentukan oleh sistem operasi, biasanya didikte oleh poligon CPU-scheduling, proses disalin
dari memori utama ke toko pendukung dan kemudian disalin kembali ke memori utama.
Skema ini memungkinkan lebih banyak proses yang harus dijalankan daripada yang bisa
masuk ke memori pada satu waktu. Secara umum, sistem operasi PC mendukung paging, dan
sistem operasi untuk perangkat mobile tidak.
4.2 Saran
Setelah kami membaca buku tersebut dan telah melakukan review pada bab pembahasan
mengenai “Memori Utama” Kami mempunyai saran agar kiranya kekurangan pada buku
tersebut dapat diperbaiki lagi agar membuat pembaca lebih mengerti serta memahami isi dan
inti sari dari buku tersebut.
10
DAFTAR PUSTAKA
[Chang dan Mergen (1988)] A. Chang dan M. F. Mergen, "Penyimpanan 801: Archi-tecture
and Programming", Transaksi ACM pada Sistem Komputer, Volume 6, Nomor 1 (1988),
halaman 28-50.
[Daley dan Dennis (1967)] R. C. Daley dan J. B. Dennis, "Memori Virtual, Proses, dan
Sharing dalam Multics", Prosiding Simposium ACM mengenai Prinsip-prinsip Sistem
Operasi (1967), halaman 121-128.
[Dennis (1965)] J. B. Dennis, "Segmentasi dan Desain Sistem Komputer Multipro-
Grammed", Komunikasi ACM, Volume 8, Nomor 4 (1965), halaman 589-602.
[Fang et al. (2001)] Z. Fang, L. Zhang, JB Carter, WC Hsieh, dan SA McKee, "Mengevaluasi
Promosi Superpage Online dengan Dukungan Perangkat Keras", Prosiding Simposium
Internasional untuk Arsitektur Komputer Berkinerja Tinggi, Volume 50, Nomor 5 (2001).
[Hennessy and Patterson (2012)] J. Hennessy dan D. Patterson, Archi-tecture Komputer:
Pendekatan Kuantitatif, Edisi Kelima, Morgan Kaufmann (2012).
[Howarth et al. (1961)] D. J. Howarth, R. B. Payne, dan F. H. Sumner, "Sistem Operasi Atlas
Universitas Manchester, Bagian II: Deskripsi Pengguna", Jurnal Komputer, Volume 4,
Nomor 3 (1961), halaman 226-229.
[Jacob dan Mudge (2001)] B. Jacob dan T. Mudge, "Uniprocessor Virtual Mem-ory Without
TLBs", Transaksi IEEE di Komputer, Volume 50, Nomor 5 (2001).
[Kilburn dkk. (1961)] T. Kilburn, DJ Howarth, RB Payne, dan FH Sumner, "Sistem Operasi
Atlas Universitas Manchester, Bagian I: Organisasi Internal", Jurnal Komputer, Volume 4,
Nomor 3 (1961), halaman 222- 225.
[Knuth (1973)] D. E. Knuth, Seni Pemrograman Komputer, Volume 1: Algoritma Funda-
mental, Edisi Kedua, Addison-Wesley (1973).
[Organick (1972)] E. I. Organick, Sistem Multik: Pemeriksaan Strukturnya, MIT Press
(1972).
[Talluri dkk. (1995) M. Talluri, M. D. Hill, dan Y. A. Khalidi, "Tabel Halaman Baru untuk
Ruang Alamat 64-bit", Prosiding Simposium ACM mengenai Prinsip-prinsip Sistem Operasi
(1995), halaman 184-200.
11