On 3/4/07, Eko Prasetya <[EMAIL PROTECTED]> wrote:
Tapi begitu pula dengan array, kita cukup alokasi memori ini pada
awal program, tidak berulang-ulang.


Array:

jika kita hanya punya 5 array global (asumsi tidak ada variabel global
lain), maka ukuran section data kira2 sebesar 5 array itu (mungkin ada
tambahan alignment).

Lokasi kelima array tersebut sudah fixed terhadap awal dari section
data. Jadi tidak ada proses mencari lokasi kosong, dll. Begitu program
dijalankan, maka OS akan mengalokasikan di heap, ruang sebesar data,
dan lokasi ke 5 array tersebut sudah pasti (misal: array pertama mulai
offseet 0, array kedua mulai offset 10, dst).

Pointer:
Jika kita mengalokasikan 5 array di heap, maka alokator akan mencari
ruang kosong dan mengalokasikan ruang itu (tergantung apakah alokator
ini sifatnya menggunakan garbage collection atau tidak, mungkin juga
perlu membebaskan alokasi).



Kecepatan XXalloc() tergantung dari stdc library yang digunakan.

Tepatnya tergantung alokator yg digunakan, kita tidak harus
menggunakan dari stdc. misalnya ketika saya memprogram embedded
device, saya pake alokator sendiri yang "mengambil" memory dari array.

Note:
contoh alokator dgn garbage collection adalah boehm:
http://www.hpl.hp.com/personal/Hans_Boehm/gc/

--
Regards
Yohanes
http://tinyhack.com/freewarelist/s603rd/

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

Kirim email ke