Memori virtual: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Ptbotgourou (bicara | kontrib)
Tidak ada ringkasan suntingan
Baris 2:
 
Dalam sistem operasi berbasis Windows NT, terdapat sebuah komponen yang mengatur memori virtual, yakni Virtual Memory Manager (VMM). VMM dapat memetakan alamat-alamat virtual yang dimiliki oleh sebuah proses yang berjalan ke dalam ''[[page]]'' [[memori fisik]] di dalam komputer. Dengan cara begini, setiap proses pun dapat memperoleh memori virtual yang cukup agar dapat berjalan, dan yang terpenting adalah setiap proses tidak mengganggu memori yang sedang digunakan oleh proses lainnya. VMM menangani paging antara RAM dan page file, dengan memindahkan page dengan menggunakan sebuah cara yang disebut sebagai [[demand paging]]. Hasilnya, setiap aplikasi 32-bit pun dapat mengakses memori hingga 4 gigabyte (meskipun Windows hanya membatasi proses yang berjalan dalam modus pengguna hanya sebatas 2 GB saja).
 
 
Pada komputer-komputer masa kini, memorinya kecil dan mahal. IBM 650 yang memimpin komputer ilmiah sekitar tahun 1950an, hanya mempunyai 2000 word memori. Salah satunya compiler ALGOL 60 yang pertama ditulis untuk komputer dengan hanya 1024 word memori. Pada awal sistem time sharing berjalan sangat lancar pada PDP-1 dengan kapasitas memori total hanya 4096 word 18-bit untuk sistem operasi dan program-program pengguna Pada saat itu programmer menghabiskan banyak waktu berusaha untuk memeras program ke dalam memori yang sangat kecil. Sering kali hal tersebut perlu menggunakan suatu algoritma yang sebagian besar lebih lambat dibanding yang lain, Lebih baik algoritma yang sederhana, karena algoritma yang semakin baik adalah terlalu besar, yang mana program yang menggunakan algoritma semakin baik tidak bisa dimasukkan ke dalam memori komputer tersebut.
 
Solusi yang sederhana pada masalah ini adalah pemakaian memori sekunder, seperti disk. Programmer membagi program ke dalam beberapa potongan-potongan, lapisan-lapisan yang disebut overlay, yang mana tiap overlay dapat ditempatkan dalam memori. Untuk menjalankan program, overlay yang pertama akan dibawa masuk dan overlay pertama tersebut akan berjalan untuk sementara. Ketika itu selesai, program akan membaca overlay yang berikutnya dan memanggilnya, dan seterusnya. Programmer bertanggung jawab atas pemecahan program ke dalam beberapa overlay, memutuskan di mana overlay program tersebut untuk tetap dijaga dalam memori sekunder, mengatur penyaluran overlay program antara memori utama dan memori sekunder, dan pada umumnya mengatur keseluruhan proses overlay tanpa bantuan dari komputer.
 
Meski secara luas digunakan selama bertahun-tahun, teknik ini melibatkan banyak pekerjaan dalam menghubungkan dengan manajemen overlay. Pada tahun 1961 sekelompok orang di Manchester, Inggris. Mengusulkan suatu metoda untuk melaksanakan proses overlay secara otomatis, bahkan tanpa programmer mengetahui proses ini telah terjadi (Fotheringham. 1961). Metoda ini, sekarang disebut memori virtual, mempunyai keuntungan yang jelas nyata,yaitu membebaskan programmer dari banyak pembukuan yang mengganggu. Memori virtual ini pertama kali digunakan di sejumlah komputer-komputer selama tahun 1960an, kebanyakan yang dihubungkan dengan proyek-proyek riset di dalam desain sistem komputer. Pada awal tahun 1970 memori virtual telah tersedia di kebanyakan komputer umum
 
{{computer-stub}}