Pertanyaan ini sudah ada jawabannya di sini:
Ketika kapasitas memori utama adalah 2 GB, apa yang bisa menjadi program terbesar yang dapat diakses oleh prosesor dengan dukungan bus alamat 32 bit?
Pertanyaan ini sudah ada jawabannya di sini:
Ketika kapasitas memori utama adalah 2 GB, apa yang bisa menjadi program terbesar yang dapat diakses oleh prosesor dengan dukungan bus alamat 32 bit?
Jawaban:
Jika Anda memiliki ruang alamat 32 bit maka Anda dapat mengatasi 2 ^ 32 (4Gi) byte memori. Sejauh program yang berjalan di ruang alamat virtual yang bersangkutan saya tidak melihat alasan mengapa ia tidak bisa mengatasi dan mengakses nilai 4GiB.
Ini mengasumsikan beberapa hal, seperti OS yang menggunakan memori virtual, mungkin beberapa perangkat keras (MMU) untuk membantu dll. Tetapi untuk setiap CPU 32 bit modern dan setiap OS modern ini seharusnya tidak menjadi masalah. Segala sesuatu yang modern mendukung paging, sehingga hanya harus memiliki bagian dari 4GiB yang saat ini diakses dalam memori fisik.
Begitu banyak untuk jawaban umum, sekarang satu untuk windows dan x86.
Windows (sejak era Win2000?) Tidak menggunakan memori virtual dan paging. Ini juga default untuk memisahkan kisaran alamat 4Gi menjadi dua. Bagian atas untuk kernel, bagian bawah untuk program pengguna. Itu memaksakan batas aritificial dari alamat 2GiB untuk program pengguna, atau 3GiB ketika Anda mem-boot kernel dalam mode khusus dan menggunakan program LARGEADDRESSAWARE.
Ini akan membatasi program USER Anda untuk itu.
Lalu ada PAE, secara artifisial memperluas bus memori Anda menjadi 36 bit. PAE adalah lumpur yang jelek dan tidak diperlukan sejak 64 bit CPU (yang telah umum selama dua dekade terakhir).
Ini berubah menjadi posting 'bagaimana-jika' lalu 'jawab X'. Yang berarti akan menyenangkan jika memiliki pertanyaan yang lebih spesifik.
sumber
Itu akan menjadi 2GB secara teori, tetapi beberapa akan dicadangkan dan / atau digunakan oleh OS itu sendiri.
Perhatikan bahwa proses 32-bit juga terbatas pada 2GB bahkan jika Anda menjalankannya pada OS 64-bit kecuali sengaja dirancang ulang. Jika didesain ulang mempertimbangkan IMAGE_FILE_LARGE_ADDRESS_AWARE, batasnya menjadi, menurut MSDN , 3GB.
sumber