XIP — абревіатура від («виконати прямо на місці»), що означає виконання комп'ютерної програми безпосередньо з довготривалої пам'яті, на противагу до попереднього завантаження її до оперативної пам'яті. Технологію XIP можна вважати розширенням ідеї спільної пам'яті, спрямованої на максимальну економію обсягу пам'яті у комп'ютерній системі.

При використанні XIP у багатоядерній чи багатопроцесорній системі можна досягнути того, що єдина її копія виконуватиметься всіма ядрами.

Для реалізації XIP-методу потрібно, щоб система задовольняла деяким критеріям: Пам'ять довготривалого зберігання повинна мати інтерфейс, що дозволяє її під'єднання до центрального процесора як звичайну пам'ять; Цей інтерфейс повинен мати задовільну пропускну здатність, у тому числі при зверненні до випадкових комірок пам'яті; Файлова система, якщо вона використовується, повинна мати адекватні механізми відображення ділянок XIP-пам'яті; Програми повинні бути або лінковані за тією базовою адресою, де вони розташовуються, або повинні бути позиційно-незалежними; Програма не повинна модифікувати дані у своєму кодовому сегменті.

Перша вимога зазвичай виконується шляхом використання NOR-пам'яті, яку можна адресувати на рівні окремих слів (при читанні). Утім, така пам'ять може бути повільніша, ніж оперативна.

Підтримка в операційних системах Хоча ця технологія застосовувалася у вбудованих системах, firmware і деяких ОС реального часу задовго до 2000-х років, в операційних системах загального призначення підтримку вперше реалізовано у ядрі Linux версії 2.6 2005 року.

Див. також

Примітки