On 3/4/07, Yohanes Nugroho <[EMAIL PROTECTED]> wrote:
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).
Correct.
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).
Correct.
> 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.
Untuk embedded device, saya cenderung menggunakan block factory
(atau kumpulan array static), dimana ukuran size yang diperlukan sudah bisa
diprediksi dari awal. Ini untuk mengurangi memory fragmentation.
Tapi terutama untuk support C++ program, banyak case dimana mereka
sering menggunakan heap allocator. Banyak implementasi XXalloc() yang bisa
mengganti stdc, tanpa harus mengganti caller-nya.
Ini biasanya saya pakai untuk mendeteksi memory leak, etc.
Note:
contoh alokator dgn garbage collection adalah boehm:
http://www.hpl.hp.com/personal/Hans_Boehm/gc/
Thanks for the link. Very interesting to read.
KOkon.
--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis