Překladače
8. blok: Organizace a přidělování paměti (Run-Time Support): (ii) pomocí haldy (heap-based)
Tato problematika není ve skriptech (jen krátká zmínka o existenci této problematiky na s. 134).
Přednáška je rozdělena na 2 části:
1. Základní principy a bloky (prvky na haldě) pevné délky zde:
Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Org_pamet_Halda_A.mp4
a 2. část Bloky/prvky na haldě proměnné délky je zde:
nejprve úvod a částečné zcelování:
Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Org_pamet_Halda_B1.mp4
následované úplným zcelováním - čistěním paměti (garbage collecting, GC) a dalšími
algoritmy inkrementálního GC je zde:
Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Org_pamet_Halda_B2.mp4
V přednášce zmíněný The Train Algorithm a poznámky k čistění paměti pro "type-unsafe" jazyky (C, C++) lze pro zájemce najít v tomto textu:
A konečně si prostudujte stručný text o organizaci paměti pro objektově orientované jazyky - povinné - zde: