Overlay (програмування)

Overlay(оверлей) - метод програмування, що дозволяє створювати програми, що займають більше пам'яті, ніж встановлено в системі. Вбудовані комп'ютери часто використовують оверлеї, оскільки зазвичай Система на кристалі містить мало пам'яті і не підтримує віртуальну пам'ять.

Зміст

Програмування із застосуванням оверлеїв вимагає від програміста уважного ставлення до розміру кожної частини програми. Через це часто використовуються низькорівневі мови та асемблер, які дозволяють обмежувати розміри програми та оверлеїв. Програмування за допомогою оверлеїв є складнішим, ніж при використанні віртуальної пам'яті.

За часів DOS оверлеї були популярними, оскільки операційні системи та більшість комп'ютерів не забезпечували роботу з віртуальною пам'яттю. Спочатку IBM PC навіть не використовував НЖМД, таким чином єдиним вторинним пристроєм зберігання був НГМД 5-1/4".

Ранні IBM PC мали дуже мало ОЗУ за сучасними мірками. Тоді як дискети 5-1/4" могли зберігати 360 кілобайт, ОЗУ комп'ютерів 1981-1985 років було в основному ще менше (64, 128 або 256 кілобайт, іноді 384 кб). Перші моделі IBM PC мали від 16 до 64 кб Найбільший обсяг пам'яті, який можна було встановити в систему без спеціальних технологій, був обмежений 640 K. Для великих обсягів потрібно використовувати стандарти EMS (expanded memory) та XMS (extended memory) та встановлювати додаткову пам'ять на картах ISA. доводилося використовувати оверлеї.[2] У DOS двійкові файли, що містять оверлеї, часто мали розширення.OVL