Классификация операционных систем
В информатике операционная система с единым адресным пространством ( или SASOS ) — это операционная система , которая предоставляет только одно глобальное общее адресное пространство для всех процессов . В операционной системе с единым адресным пространством численно идентичные ( виртуальная память ) логические адреса в разных процессах относятся к одному и тому же байту данных. [1]
В традиционной ОС с частным адресным пространством для каждого процесса защита памяти основана на границах адресного пространства («изоляция адресного пространства»). Операционные системы с одним адресным пространством делают трансляцию и защиту ортогональными, что никоим образом не ослабляет защиту. [2] [3]
Основное преимущество заключается в том, что указатели (т. е. ссылки на память) имеют глобальную действительность, то есть их значение не зависит от процесса, использующего их. Это позволяет совместно использовать структуры данных, связанные с указателями, между процессами и делать их постоянными, т. е. сохранять их в резервном хранилище.
Некоторые архитектуры процессоров имеют прямую поддержку защиты, не зависящую от трансляции. На таких архитектурах SASOS может выполнять переключение контекста быстрее, чем традиционная ОС. Такие архитектуры включают Itanium и версию 5 архитектуры Arm , а также архитектуры возможностей, такие как CHERI. [4]
SASOS не следует путать с плоской моделью памяти , которая не обеспечивает трансляции адресов и, как правило, не обеспечивает защиты памяти. Напротив, SASOS делает защиту ортогональной трансляции: может быть возможно назвать элемент данных (т. е. узнать его виртуальный адрес), не имея при этом возможности доступа к нему.
Проекты SASOS, использующие аппаратную защиту, включают в себя следующее:
Связанные с этим ОС обеспечивают защиту посредством безопасности типов на уровне языка.
Смотрите также
Ссылки
- ^ Эрик Дж. Колдингер; Джеффри С. Чейз; Сьюзан Дж. Эггерс (сентябрь 1992 г.). «Поддержка архитектуры для операционных систем с единым адресным пространством». ACM SIGPLAN Notices . 27 (9): 175–186. doi :10.1145/143371.143508.
- ^ Тим Уилкинсон; Кевин Мюррей; Стивен Рассел; Гернот Хейзер; Йохен Лидт (13 ноября 1995 г.). "Операционные системы с единым адресным пространством" (PDF) . Университет Нового Южного Уэльса . Раздел 2: "Защита памяти". CiteSeerX 10.1.1.13.7042 .
- ^ Джеффри С. Чейз; Генри М. Леви ; Майкл Дж. Фили; Эдвард Д. Лазовска (ноябрь 1994 г.). «Совместное использование и защита в операционной системе с одним адресным пространством» (PDF) . ACM Transactions on Computer Systems . 12 (4): 271–307. CiteSeerX 10.1.1.127.7313 . doi :10.1145/195792.195795.
- ^ Уотсон, Роберт Н. М .; Нойманн, Питер Г .; Вудрафф, Джонатан; Андерсон, Джонатан; Андерсон, Росс ; Дэйв, Нирав; Лори, Бен ; Мур, Саймон В.; Мердок, Стивен Дж .; Паэпс, Филипп; Роу, Майкл; Саиди, Хассен (3 марта 2012 г.). "CHERI: исследовательская платформа, деконфляционная аппаратная виртуализация и защита" (PDF) . Неопубликованный доклад семинара для RESoLVE'12, 3 марта 2012 г., Лондон, Великобритания . Международная лаборатория компьютерных наук SRI.
- ^ Майкл Голм; Майк Фельзер; Кристиан Ваверсих; Юрген Кляйнедер. «Операционная система JX» (PDF) .
- ^
Кевин Боос, Намита Лиянаге, Рамла Иджаз и Линь Чжун. «Тесей: эксперимент в области структуры операционной системы и управления состоянием». 2020.
- ^
«Операционная система Torsion». цитата: «Torsion... многозадачная операционная система с единым адресным пространством и прозрачным сохранением данных».
Библиография
- Джеффри С. Чейз; Генри М. Леви ; Майкл Дж. Фили; Эдвард Д. Лазовска (ноябрь 1994 г.). «Совместное использование и защита в операционной системе с одним адресным пространством». ACM Transactions on Computer Systems . 12 (4): 271–307. CiteSeerX 10.1.1.127.7313 . doi :10.1145/195792.195795..
- Heiser, Gernot ; Elphinstone, Kevin; Vochteloo, Jerry; Russell, Stephen; Liedtke, Jochen (1998). "Операционная система Mungi Single-Address-Space". Software: Practice and Experience . 28 (9): 901–928. CiteSeerX 10.1.1.146.4216 . doi :10.1002/(SICI)1097-024X(19980725)28:9<901::AID-SPE181>3.0.CO;2-7. S2CID 62189930. Архивировано из оригинала 27 июня 2022 г.
- Майкл М. Свифт; Брайан Н. Бершад; Генри М. Леви (декабрь 2003 г.). «Повышение надежности операционных систем общего назначения». Обзор операционных систем ACM SIGOPS . 37 (5): 207. CiteSeerX 10.1.1.5.3338 . doi :10.1145/1165389.945466.
- Эрик Дж. Колдингер; Джеффри С. Чейз; Сьюзан Дж. Эггерс (сентябрь 1992 г.). «Поддержка архитектуры для операционных систем с единым адресным пространством». ACM SIGPLAN Notices . 27 (9): 175–186. doi :10.1145/143371.143508.