Пользовательское соглашение
- 1 year ago
- 0
- 0
Пользовательское пространство — адресное пространство виртуальной памяти операционной системы , отводимое для пользовательских программ, в отличие от пространства ядра , которое резервируется для работы ядра операционной системы , его расширений и, возможно, некоторых драйверов устройств . В англоязычной компьютерной литературе термин часто используется для обозначения совокупности приложений, которые выполняются в пространстве пользователя.
Каждый процесс в пользовательском пространстве обычно выполняется в собственной области виртуальной памяти , и при отсутствии явной необходимости, не может получить доступа к памяти, используемой другими процессами. Такой подход является базисным для обеспечения защиты памяти большинства современных операционных систем, и своего рода «фундаментом» для обеспечения права доступа . В зависимости от привилегий процесс может запросить ядро отобразить часть адресного пространства другого процесса на своё, как, например, это делают отладчики . Программы также могут запрашивать для себя область разделяемой памяти совместно с другими процессами.
В некоторых экспериментальных операционных системах используется другой подход — для всех программных продуктов используется единое адресное пространство , с учётом того, что реализация виртуальной машины обеспечивает невозможность произвольного доступа — приложения попросту не могут получить ссылки на объекты, к которым они не имеют доступа , этот подход был использован в таких операционных системах, как , , Phantom OS , Microsoft Singularity .
Важным элементом при проектировании системного программного обеспечения является решение по реализации в пространстве ядра или пользовательском пространстве. В частности, в UNIX -системах до появления технологии FUSE в 2000-х годах при монтировании файловой системы требовалось, чтобы её код выполнялся в пространстве ядра, из-за чего, например, только суперпользователь мог монтировать компакт-диск .