logo
АСНИ

Системные функции

Многозадачность в OpenVMS опирается на потоки (kernel threads). Поток состоит из индивидуального адресного пространства, регистров, образующих его контекст, и кода — исполняемого образа. Контекст идентифицирует поток и описывает его текущее состояние, а исполняемый образ состоит из системных и пользовательских программ (откомпилированных и собранных). Каждый процесс может содержать до 16 потоков (kernel threads), которые являются объектом управления планировщика. Количество же пользовательских (user level threads) потоков исполнения ограниченно только ресурсами конкретной системы. Максимальное число поддерживаемых параллельных процессов в OpenVMS — 16 384 на каждый узел. Процессорное время распределяется между потоками в соответствии с приоритетами, которых насчитывается 64. Приоритеты от 0 до 15 назначаются процессам с разделяемым временем или некритичным ко времени исполнения, диапазон от 16 до 63 предназначен для процессов реального времени. Процессы реального времени получают квант (quantum) процессорного времени сразу, как только оно требуется (в соответствии с приоритетом и статусом процесса), обычные процессы получают вычислительные ресурсы только тогда, когда ими не пользуются процессы реального времени. В OpenVMS процессу можно назначить приоритет выше, чем у процессов ядра системы. Имеется также механизм (pixscan), который предотвращает блокирование управления системой высокоприоритетными процессами, то есть, например, процесс с приоритетом в пределах 4 гарантированно получит квант процессорного времени, хотя и со значимой задержкой.

В OpenVMS используются файловые системы Files-11 (ODS-1, ODS-2, ODS-5), ISO 9660, FATNFS,SMB и Spiralog.

По языку командной строки и файловой системе OpenVMS является наследницей RSX-11 и RT-11.