By default, operator new() selalu mengakses ke heap/memory.
Tapi seandainya heap memory tidak cukup, maka operating system
bisa mem-swap memory ke hard-disk sebagai tambahan (virtual memory).

Ini semua tergantung dari physical memory, dan swap partition dari operating-
system-nya. Kalo memory-nya gede banget, misalnya 2GB, waktu allocate
400MB, mustinya ngga akan akses hard-drive sama sekali.


KOkon.

On 6/28/07, Uno Tursadi <[EMAIL PROTECTED]> wrote:
Sedikit menambahkan, saya pernah experiment, di windows bukan di linux.

Membuat variable pointer dengan ukuran yang sangat besar. Missal
int *i;
i = new int [100000000];

satu integer berukuran 4 bytes jadi variable i kalo di isi semua akan
menghabiskan 400 MBytes.

Ternyata 400 MB itu diambil dari kapasitas hard disk. Ukuran hard disknya
berkurang sebanyak 400Mbytes.

Artinya pada saat kita membuat sebuah variable pointer. Variable tersebut
akan mengambil jatah byte yang ada di hard disk.
Dan setiap kali aplikasi menulis atau membaca variable tersebut, akan
mengakses data hard disk.

Harusnya jika sebuah aplikasi mengambil dan menulis ke hard disk akan lebih
lambat dibanding ke memory langsung.
Artinya, pointer lebih lambat dibanding memori langsung.

Bener gak???
Gak tau kalo di linux soalnya belum pernah nyoba.

CMIIW

--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke