мНет описания правки |
J1m (обсуждение | вклад) (нормализация) |
||
Строка 1: | Строка 1: | ||
'''НАЗВАНИЕ''' |
'''НАЗВАНИЕ''' |
||
+ | : env - устройство окружения |
||
− | env - environment device |
||
− | ''' |
+ | '''РЕЗЮМЕ''' |
− | <pre>bind #e /env |
+ | : <pre>bind #e /env /env/name</pre> |
− | |||
− | /env/name</pre> |
||
'''ОПИСАНИЕ''' |
'''ОПИСАНИЕ''' |
||
− | + | : Устройство окружения создает одноуровневый (без вложений) каталог, в котором хранятся переменные окружения и их значения. По соглашению он обычно подключается к каталогу '''/env'''. Значение переменной окружения ''name'' может быть считано из файла ''/env/name''. Если файл отсутствует, переменная считается незаданной и ее значение автоматически принимается равным nil. Максимальная длина имени переменной не должна превышать 127 байт. |
|
− | Новая переменная вводится путем создания соответствующего файла в каталоге /env и записи в него соответствующего значения. Удаление такого файла приводит к удалению соответствующей переменной окружения. |
+ | : Новая переменная вводится путем создания соответствующего файла в каталоге '''/env''' и записи в него соответствующего значения. Удаление такого файла приводит к удалению соответствующей переменной окружения. |
− | Процессы, запущенные в одном окружении (environment group), используют одни и те |
+ | : Процессы, запущенные в одном окружении (environment group), используют одни и те же значения переменных окружения, считывая их из одних и тех же файлов, поэтому изменения, вызванные одним процессом, доступны всем его одногрупникам. Любой процесс может изолировать свое окружение от изменений, привнесенных другими процессами, вызвав системную функцию [[sys-pctl(2)]] с флагом `FORKENV`, которая создаст для этого процесса новое окружение - точную копию старого, однако дальнейшие изменения в нем будут происходить независимо. Пустое окружение создается вызовом той же системной функции с флагом `NEWENV`. |
'''ИСХОДНЫЙ КОД''' |
'''ИСХОДНЫЙ КОД''' |
||
− | /os/port/devenv.c |
+ | : /os/port/devenv.c |
⚫ | |||
− | |||
⚫ | |||
− | ''' |
+ | '''СМОТРИ ТАКЖЕ''' |
− | [[env(1)]], [[sh(1)]], [[env(2)]], [[sys-pctl(2)]] |
+ | : [[env(1)]], [[sh(1)]], [[env(2)]], [[sys-pctl(2)]] |
[[Категория:Man]] |
[[Категория:Man]] |
Версия от 12:54, 30 июля 2010
НАЗВАНИЕ
- env - устройство окружения
РЕЗЮМЕ
bind #e /env /env/name
ОПИСАНИЕ
- Устройство окружения создает одноуровневый (без вложений) каталог, в котором хранятся переменные окружения и их значения. По соглашению он обычно подключается к каталогу /env. Значение переменной окружения name может быть считано из файла /env/name. Если файл отсутствует, переменная считается незаданной и ее значение автоматически принимается равным nil. Максимальная длина имени переменной не должна превышать 127 байт.
- Новая переменная вводится путем создания соответствующего файла в каталоге /env и записи в него соответствующего значения. Удаление такого файла приводит к удалению соответствующей переменной окружения.
- Процессы, запущенные в одном окружении (environment group), используют одни и те же значения переменных окружения, считывая их из одних и тех же файлов, поэтому изменения, вызванные одним процессом, доступны всем его одногрупникам. Любой процесс может изолировать свое окружение от изменений, привнесенных другими процессами, вызвав системную функцию sys-pctl(2) с флагом `FORKENV`, которая создаст для этого процесса новое окружение - точную копию старого, однако дальнейшие изменения в нем будут происходить независимо. Пустое окружение создается вызовом той же системной функции с флагом `NEWENV`.
ИСХОДНЫЙ КОД
- /os/port/devenv.c
- /emu/port/devenv.c
СМОТРИ ТАКЖЕ