[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 Развитие режима реального времени в SVR4

До SVR4 для фиксации текста и/или данных процесса в памяти мог
использоваться системный вызов plock(2). SVR4 предоставляет системный
вызов memcntl(2) для фиксации диапазона адресов в памяти. Этот
системный вызов обсуждается вкратце.
Системный вызов priocntl(2) дает пользователю возможность
устанавливать фиксированные приоритеты на уровне процесса и
обеспечивает пользователю полный контроль над количеством времени
захвата процессом ЦП, пока другой процесс не получит шанс. Этот
системный вызов, новый для SVR4, описывается ниже в этом разделе.
Системный вызов alarm(2) не отвечает потребностям прикладных программ,
исполняющихся в реальном времени. Он имеет только целосекундное
разрешение и не поддерживает виртуальной синхронизации процессов. SVR4
предоставляет getitimer(3) и setitimer(3). setitimer(3) допускает
микросекундное разрешение с округлением до  высшего разрешения,
поддерживаемого системными часами (на 3В2 - это 10мс). Поддерживается
как исполнение в реальном времени (настенные часы), так и виртуальный
синхронизатор процессов. Как и alarm(2), setitimer(3) генерирует
сигнал по истечении заданного времени.
SVR4 предоставляет много усовершенствований при работе с сигналами. Но
это является предметом обсуждения второй части данного курса.
В SVR4 доступна файловая система UFS. UFS обеспечивает более
качественные характеристики производительности по сравнению с
традиционными для ОС UNIX System V файловыми системами. Разработчики
прикладных программ реального времени должны иметь в виду
использование файловой системы UFS.
               РАЗВИТИЕ РЕЖИМА РЕАЛЬНОГО ВРЕМЕНИ В SVR4
.    Усовершенствование фиксации памяти процесса
.    Планирование с фиксированными приоритетами, большими чем
приоритеты системных процессов.
.    Высокое разрешение таймера
.    Усовершенствование работы с сигналами
.    Файловая система UFS