Saya sudah memiliki Notebook Asus U31SD dengan CPU i5-2430M . Situs Asus mengatakan bahwa RAM maksimum adalah 8 GB, tetapi Intel mengatakan CPU saya mendukung 16 GB. Berapa RAM maksimum yang dapat saya gunakan pada sistem ini di Ubuntu?
Saya sudah memiliki Notebook Asus U31SD dengan CPU i5-2430M . Situs Asus mengatakan bahwa RAM maksimum adalah 8 GB, tetapi Intel mengatakan CPU saya mendukung 16 GB. Berapa RAM maksimum yang dapat saya gunakan pada sistem ini di Ubuntu?
Jawaban:
Batas sebenarnya antara perangkat keras Anda (dukungan memori Motherboard dan jumlah slot di dalamnya) dan versi Ubuntu (32 Bit, 32 Bit + PAE, x32ABI, 64 Bit)
Jika Anda memiliki motherboard yang mendukung maksimum 4GB, tidak masalah jika Anda menggunakan 32 Bit, 32 Bit PAE atau 64 Bit karena Anda akan memiliki batas perangkat keras 4GB.
Tetapi jika Anda membeli motherboard yang mendukung jumlah memori yang lebih tinggi, Anda dapat bermain-main dengan versi Ubuntu, yang memiliki memori yang didukung maksimum berikut:
Ubuntu 32 Bit - 4GB RAM
Ubuntu 32 Bit + PAE (Ekstensi Alamat Fisik) - 64GB RAM
Ubuntu x32ABI - RAM 4GB (Ini untuk arsitektur 32 Bit yang dimodifikasi dengan peningkatan 64 Bit yang berjalan pada perangkat keras 64 Bit. Ini belum tersedia.)
Ubuntu 64 Bit - BANYAK! (Sebenarnya 2 ^ 64) tetapi karena batas perangkat keras dan komputer dunia nyata batasnya sekitar 1TB (RAM 1024GB)
Jadi pertanyaan tentang batas memori harus digunakan ketika Anda menggunakan lebih dari 4GB RAM. Dalam hal ini yang Anda perlukan, baik 32 Bit PAE atau 64 BIT yang mendukung ukuran memori sangat besar.
Juga perhatikan bahwa jika Anda memiliki misalnya 4GB sekarang, dan Anda membeli ram 16GB, tidak perlu menginstal ulang Ubuntu atau melakukan perubahan apa pun. Ubah saja ingatan dan Ubuntu harus membaca dan bekerja dengannya di luar kotak. Tidak diperlukan konfigurasi. Jika Anda memiliki 32 Bit dengan 4 GB RAM dan Anda menginstal 16GB atau RAM, Ubuntu secara otomatis akan berubah dari 32 Bit ke 32 Bit PAE. Saya dapat menjamin ini sejak saya pindah dari 4GB ke 16 GB pada awal tahun ini.
Berikut ini tautan ke penjelasan yang sangat bagus untuk Ubuntu tentang memori di 32/64: https://help.ubuntu.com/community/32bit_and_64bit#Memory
PEMBARUAN - Lupa menambahkan bahwa beberapa motherboard memiliki pembaruan BIOS yang memungkinkan, memperbaiki atau meningkatkan memori maksimum yang didukung. Sebagai contoh, beberapa motherboard Intel di masa lalu memiliki masalah bekerja dengan maksimal yang mereka dukung. Pembaruan BIOS memperbaiki ini. Motherboard lain memiliki dukungan untuk 4GB karena masalah BIOS, setelah memutakhirkan mereka memiliki dukungan untuk lebih dari 4GB.
Juga membandingkan memori yang didukung Maksimum untuk CPU dan Motherboard, Maksimum yang dapat Anda miliki adalah Minimum dari semuanya. Jadi misalnya:
KASUS 1
Memori Maksimum yang Didukung CPU -
Motherboard 16GB
Memori yang Didukung Maksimum - 8GB Memori
Yang Didukung Maksimum Anda - 8GB (Karena nilai terendah antara CPU dan Motherboard)
KASUS 2
Memori Maksimum yang Didukung CPU -
Motherboard 16GB.
Memori yang Didukung Maksimum - 32GB
. Memori Yang Didukung Maksimum Anda - 16GB (Karena nilai terendah antara CPU dan Motherboard)
KASUS 3
Memori yang Didukung Maksimum CPU -
Motherboard 16GB
Memori yang Didukung Maksimum - 64GB
Memori yang Didukung Maksimum Anda - 16GB (Karena nilai terendah antara CPU dan Motherboard)
Alasan di balik hubungan Batas Memori ini dengan CPU adalah karena modifikasi teknis oleh Intel dengan CPU Core terbaru.
Jadi dalam kasus Anda, Anda memiliki motherboard yang mendukung 8GB dan CPU yang mendukung 16GB. Ini berarti maksimum yang dapat Anda miliki adalah 8GB yang dapat Anda gunakan tergantung pada jumlah slot di motherboard. Di Asus Anda memiliki 2 Slot, yang berarti Anda dapat memiliki dua RAM 4GB untuk menyelesaikan Maksimum 8GB.
Info Lebih Lanjut tentang x32abi:
KernelNewbies - http://kernelnewbies.org/Linux_3.4#head-039c9d273884c9639937c10d68b4a3214869eb4b
LWN - https://lwn.net/Articles/456731/ (Rekomendasikan membaca komentar agar mudah dipelajari penjelasan tentang batas memori)
Google - http://sites.google.com/site/x32abi/
Terakhir, sejak Ubuntu 12.04, semua versi 32 Bit Ubuntu datang dengan PAE diaktifkan secara default sehingga semua 32 Bit akan mendukung maksimum 64 GB RAM. Jika Anda menggunakan 12.04+ dan ingin tahu arsitektur mana yang digunakan, Anda sekarang tahu bahwa Anda dapat menggunakan salah satu dari mereka selama Anda mengikuti beberapa rekomendasi:
Jika Anda memiliki RAM 512 MB atau kurang, sangat disarankan untuk menggunakan 32 Bit
Jika Anda memiliki kurang dari 4 GB RAM tetapi lebih dari 512 MB disarankan untuk menggunakan 32 Bit (Tapi Anda masih bisa menggunakan 64 Bit)
Jika Anda memiliki RAM 4 GB disarankan untuk menggunakan 32 Bit (Tapi Anda masih bisa menggunakan 64 Bit)
Jika Anda memiliki antara 4 GB atau RAM dan 64 GB RAM Anda dapat menggunakan 32 Bit atau 64 Bit, tetapi disarankan untuk menggunakan 64 Bit.
Jika Anda memiliki lebih dari 64 GB RAM, Anda harus menggunakan 64 Bit
Untuk 32 bit batas teoretis adalah 2 ^ 32 = 4096 MB, tetapi dari Ubuntu 12.04 pada PAE (Ekstensi Alamat Fisik) diaktifkan secara default dengan batas 2 ^ 36 = 64 GB.
Untuk 64 bit seharusnya 2 ^ 64 = 16 777 216 TB (ya itu Terabyte) secara teoritis. Pada kenyataannya jumlah RAM terbatas pada 2 ^ 48 alias 256 TB RAM.
Karena batas teoritis tidak dapat benar-benar dicapai dalam laptop normal, batasan sebenarnya adalah jumlah slot memori (biasanya 1-2) di notebook Anda dan dukungan oleh chipset. 8-16 GB realistis di sini jika Anda bersedia membayar uang serius untuk modul 8 GB.
Saya baru saja membeli 8GB tambahan untuk pop dalam U31SD saya, dengan total 12GB. Meskipun halaman spesifikasi Asus mengatakan 8GB adalah batasnya, ini berfungsi dengan baik. Lulus memtest86 dan dapat dilihat oleh 64bit Ubuntu.
Saya memiliki pembaruan BIOS terbaru yang diinstal, tidak yakin apakah itu membuat perbedaan.
FYI, output sudo dmidecode -t 16
mengindikasikan Maximum Capacity: 16 GB
.
Ini adalah batasan pada motherboard bukan pada CPU. CPU mungkin dapat mendukung hingga 16GB tetapi jika motherboard hanya dapat mengambil 8GB maka itu batas Anda.
Di Ubuntu jika Anda menjalankan 32-bit maka batas Anda adalah 4GB dan jika Anda menjalankan 64-bit itu jauh lebih tinggi (tidak dapat mengingat dengan pasti tetapi jauh di atas 16GB.
Tetapi Anda akan selalu dibatasi oleh perangkat keras Anda. Anda harus selalu membandingkan batas motherboard dan batas CPU dan mengambil nilai terendah sebagai batas PC.
Dalam kasus spesifik Anda, 8 GB adalah karena motherboard Anda tidak mendukung lebih dari jumlah RAM.
Tetapi Ubuntu sendiri mendukung 4 GB maks untuk 32 bit, 64 GB pada 32-bit PAE dan 128 GB pada 64 bit (walaupun secara teoritis tutupnya jauh lebih tinggi untuk 64 bit).
ada banyak pertanyaan apa yang menentukan ukuran pointer. pada dasarnya sebagai aturan praktis Anda dapat mengatakan ini adalah arsitektur prosesor,
x86 -> 4 bytes pointer -> can address 4,294,967,296 locations = 4GB (it is the limit)
x64 -> 8 bytes pointer -> can address 1.84467440737e+19 locations (it is the limit, big, eh)
Untuk mengatasi 8GB RAM, Anda perlu 8.589.934.592 pemetaan dan penunjuk ukuran 4 byte tidak dapat menangani semua nilai yang mungkin. jadi ini sebabnya saya tidak dapat memiliki lebih dari 4GB RAM pada arsitektur x86.
Namun ada beberapa kemungkinan lain:
Jumlah RAM tidak dibatasi oleh arsitektur (32 atau 64 bit). Arsitektur hanya memutuskan berapa banyak memori yang dapat ditangani pada suatu waktu, oleh OS dan program yang berjalan di atasnya. Pada mesin 32-bit, yaitu, mesin dengan bus memori lebar 32-bit, OS dan program dapat "melihat" hanya 4 GB memori. Tapi itu tidak berarti hanya ada 4 GB RAM. Jika pabrikan telah menyediakannya, Anda dapat memiliki RAM 16 GB atau 4x4 GB. Dalam hal ini, akan ada 2 garis alamat "tersembunyi" dan juga ada logika hardcoded untuk menentukan level 2 saluran tersebut, sehingga memilih salah satu dari 4 GB RAM yang tersedia - 00 01 10 11. Bit alamat "tersembunyi" ini tidak digunakan oleh lapisan perangkat lunak, jadi untuk lapisan ini, mereka hanya dapat menggunakan pointer 4-byte. Jumlah "tersembunyi" ini
Ini hanya satu contoh. Itu tergantung pada vendor, bagaimana mereka memutuskan untuk menyediakan RAM ekstra.
Lihat juga:
Dalam kasus biasa, sebuah pointer cukup besar untuk menampung lebih banyak alamat daripada ada unit memori dalam sistem. Ini memperkenalkan kemungkinan bahwa suatu program dapat mencoba mengakses alamat yang tidak sesuai dengan unit memori, baik karena tidak cukup memori yang dipasang (yaitu di luar jangkauan memori yang tersedia) atau arsitektur tidak mendukung alamat tersebut. Kasus pertama dapat, dalam platform tertentu seperti arsitektur Intel x86, disebut kesalahan segmentasi (segfault). Kasus kedua adalah mungkin dalam implementasi AMD64 saat ini, di mana pointer 64 bit panjang dan alamat hanya meluas hingga 48 bit. Di sana, pointer harus sesuai dengan aturan tertentu (alamat kanonik), jadi jika pointer noncanonical dereferensi, prosesor menimbulkan kesalahan perlindungan umum.
Di sisi lain, beberapa sistem memiliki lebih banyak unit memori daripada alamat. Dalam hal ini, skema yang lebih kompleks seperti segmentasi memori atau paging digunakan untuk menggunakan berbagai bagian memori pada waktu yang berbeda. Inkarnasi terakhir arsitektur x86 mendukung hingga 36 bit alamat memori fisik, yang dipetakan ke ruang alamat linear 32-bit melalui mekanisme paging PAE. Dengan demikian, hanya 1/16 dari total memori yang mungkin dapat diakses sekaligus. Contoh lain dalam keluarga komputer yang sama adalah mode terproteksi 16-bit dari prosesor 80286, yang, meskipun hanya mendukung 16 MiB memori fisik, dapat mengakses hingga 1 GiB memori virtual, tetapi kombinasi alamat dan segmen 16-bit register membuat pengaksesan lebih dari 64 KiB dalam satu struktur data rumit.
Untuk menyediakan antarmuka yang konsisten, beberapa arsitektur menyediakan I / O yang dipetakan dengan memori, yang memungkinkan beberapa alamat merujuk ke unit memori sementara yang lain merujuk ke register perangkat dari perangkat lain di komputer. Ada konsep analog seperti offset file, indeks array, dan referensi objek jarak jauh yang melayani beberapa tujuan yang sama dengan alamat untuk jenis objek lainnya.
(lebih lanjut di sini )