• Модель управления памятью в Linux все та же?

    1. Linux изначально использует плоскую модель FLAT, где указатели сегментов кода, данных и стека имеют одинаковый базовый адрес. А это означает, что сегментная организация памяти в Linux не используется. Это значительно упрощает перенос на другие платформы. Страничная организация памяти предназначена для создания виртуальной памяти. Это позволяет реализовать многозадачность куда проще. Существуют такие версии Linux, работающие без страничной памяти. Это нужно только для контроллеров, микроконтроллеров.

    2. Нет. x86-64 даёт только два регистра-сегмента для контекста, они нужны очень виртуальным машинам. Остальные регистры недоступно физически. Сегодня именно что все процессоры разбивают память на страницы. Всегда. Без страничной памяти нельзя работать. Ибо начнётся сильная фрагментация с тяжёлыми последствиями. Другое дело, когда страницы могут иметь разный размер для снижения размера таблицы преобразования адресов. Но они имеют чётко фиксированный размер.

    3. Таблицы дескрипторов имеют максимальный размер: 64 КБ - 8192 дескрипторов. Это написано во многих книгах. Существует глобальный, который всегда один, а есть локальный, который зависит от программ. А также прерываний.
    Ответ написан
    3 комментария