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: