Pengutipan sampah (sains komputer)
From Wikipedia, the free encyclopedia
Dalam bidang sains komputer, pengutipan sampah atau GC (singkatan untuk garbage collection) ialah suatu bentuk pengurusan ingatan automatik. Ia adalah kes khas bagi pengurusan sumber, di mana sumber terhad yang diurus ialah ingatan. Pengutip sampah, atau pengutip sahaja, cuba untuk menebus sampah atau ingatan yang diisi oleh objek yang tidak lagi digunakan oleh atur cara yang berkaitan. Pengutipan sampah dicipta oleh John McCarthy sekitar 1959 untuk menyelesaikan masalah di dalam Lisp.[1][2]
Pengutipan sampah selalu digambarkan sebagai berlawanan dengan pengurusan ingatan manual, yang memerlukan pengatur cara untuk menyatakan objek yang mana mahu dinyahperuntukkan dan dikembalikan kepada sistem ingatan. Walau bagaimanapun, kebanyakan sistem menggunakan gabungan kedua-dua pendekatan, dan teknik-teknik lain seperti peruntukan tindanan dan pentabiran kawasan boleh mengatasi sebahagian daripada masalah yang berkenaan. [3]
Pengutipan sampah tidak mengurus sumber terhad selain ingatan yang digunakan oleh atucara-aturcara tipikal (misalnya soket-soket rangkaian, pengawal pangkalan data, tetingkap interaksi pengguna, serta pemerihal fail dan peranti) secara tradisional. Kaedah-kaedah yang digunakan untuk mengurus sumber sebegini, khususnya pemusnah, mungkin juga sudah cukup untuk mengurus ingatan, lantas, GC tidak diperlukan. Sesetengah sistem GC membenarkan sumber-sumber lain disekutukan dengan suatu kawasan ingatan, yang jika dikutip, mengakibatkan sumber lain berkenaan ditebus; ini dipanggil pemuktamadan. Pemuktamadan mungkin menyebabkan kerumitan yang membatasi kebolehgunaannya, contohnya kependaman di antara nyahguna dan tebus bagi khususnya sumber terhad.