Program nakładkowy

Z Wikipedii, wolnej encyklopedii

Program nakładkowy (ang. overlay program) – program komputerowy napisany w ten sposób, że możliwe jest jego wykonanie pomimo że jego objętość jest większa niż dostępna pamięć operacyjna. Program taki składa się z części sterującej (ang. overlay supervisor – zarządca nakładek) oraz nakładek (ang. overlay). W każdej chwili w pamięci operacyjnej znajduje się część sterująca oraz przynajmniej jedna z nakładek. Pozostałe nakładki przechowywane są w pamięci zewnętrznej i na żądanie „zarządcy” wymieniane (ładowane) przez system operacyjny. Jeśli jest dostępna wystarczająco duża ilość pamięci, a poszczególne nakładki są niewielkie, to w pamięci operacyjnej można przechowywać kilka nakładek jednocześnie.

Dzielenie programu na nakładki to nakładkowanie. Strukturę programu nakładkowego opisuje tzw. drzewo nakładek (ang. overlay tree).

We współczesnych technikach programowania coraz rzadziej się stosuje nakładkowanie, gdyż współczesne systemy operacyjne potrafią emulować dużą ilość pamięci operacyjnej w technice swapowania pamięci fizycznej na nośnik zewnętrzny. Dodatkowo obecnie praktycznie wszystkie sprzedawane komputery oferują architekturę 64 bitową, co umożliwia stosowanie dużych, ciągłych spójnie adresowanych bloków pamięci. Zarządzaniem pamięcią danych i kodu aplikacji zajmuje się wówczas system operacyjny, przez co zarządca nakładek staje się zbędny.