Все процессы имеют приоритет устанавливаемый на основе таких факторов как прльзователь запустивший процесс и в каком окружении запущен процесс: с разделением времени или в реального времени. Комманда nice может быть использована для запуска процесса с более низким чем по умолчанию приоритетом. nice не уменьшает приоритетов уже запущеных процессов.
Команда renice позволяет изменять приоритеты уже запущеных процессов.
Программы для мониторинга производительности системы
Top
Периодически показывает информацию о процессах в системе в порядке убывания использования ресурсов. Суммирует состояние системы (среднюю загрузку), использование виртуальной памяти. В отличии от psкоторый дает лишь снимок текущего состояния системы top выдает информацию с периодичностью. На мультипроцессорных системах, top выдает состояние каждого процессора раздельно.
Sar
Выдает суммированую статистику о системной активности включая загрузку CPU, активность буферов, количество опреций ввода-вывода, терминальную активность, число системных, активность свопинга и п.р.
Vmstat
Выдает информацию об использовании виртуальной памяти и активность CPU.
Iostat
Выдает информацию об дисковой активности ввода-вывода, терминальной активности статистику CPU.
Управление процессами и ядро системы
Процесс может иметь доступ на чтение и запись к своему сегменту данных и стеку но не к другим процессам (за исключением сегментов разделяемой памяти). Процесс обменивается данными с другими процессами либо через системные вызовы либо через разделяемую память.
Приоритеты процесса
Все процессы в HP-UX могут находится в двух режимах: пользовательский режим и режим ядра. Когда процесс переключается в режим ядра (например при системном вызове) он исполняет код ядра и пользуется стеком ядра. В зависимости от приоритета и наличия других процессов процесса планировцик процессов может выделять ему больше или меньше квантов процессорного времени.
Приоритеты можно разделить на две части: диапазон POSIX standard приоритетов и диапазхон HP-UXприоритетов. POSIX standard приоритеты всегда выше чем все другие HP-UX приоритеты. Процесс который имеет меньшее числовое значение приоритета имеет преимущество при выполнении над процессом с большим цифровым значением приоритета. Следующий список выводит по категориям диапазоны приоритетов от большого к маленькому:
1. POSIX standard приоритеты (системный параметр)
POSIX standard приоритеты, известные как RTSCHED приоритеты, являются самыми
высокими приоритетами. Количество RTSCHED приоритетов есть системный параметр
(rtsched_numpri), устанавливаемый между 32 и 512 (default 32).
2. приоритеты реального времени (0-127)
Зарезервированы для процессов SCHED_RTPRIO стартующих с системного вызова
rtprio()
3. Системные приоритеты (128-177)
Используются системными процессами.
4. Пользовательские приоритеты (178-255)
Устанавливаются пользовательским процессам.
Ядро может изменять приоритеты процессов разделения времени (128-255) но не процессов реального времени (0-127).
Состояние процесса
В процессе своей жизни процесс может менять несколько раз свое состояние.Процессы размиещаются в очередях выполнения планировщика процесса в соответствии с их состоянием как определено в файле /usr/include/sys/proc.h. События, такие как получение сигнала могут переводить процесс из одного состояния в другое.
Процесс может находится в одном из следующих состояний:
* idle – процесс простаивает в очереди выполнения планировщика.
* run - процесс выполняется в очереди планировщика либо в пользовательском режиме либо в режиме ядра.
* stopped – процесс остановлен сигналом либо процессом родителем.
* sleep – процесс не выполняется пока он находится в спящем состоянии в очереди
(например он ждет окончания операции ввода-вывода)
* zombie – процесс уже фактически не существует, но так как он оставил для родителя
некоторые непрочитанные данные о своем выполнении он не может осуществить завершение.
Когда программа запускает прооцесс, ядро выделяет для него сроку из своей таблицы процессов и процесс находится в idle состоянии. Затем после получения ресурсови попадания в очередь он находится в состоянии run. Если процесс получкает сигнал SIGSTOP или его переводлят в режи трассировки, он переходит в stop состояние. После получения сигнала SIGCONT signal, процесс возвращается в состояние run. Если запущеный процесс ждет освобождение какихто ресурсов (семафор) или завершения операции вво-да вывода – он переходит в спящее состояние. Спящий процесс может быть отсваплен в первую очередь.Как только процесс заканчивает свою работу он переходит в состояние zombie.
Файловая система HFS.
Менеджер логических дисков LVM
Особенности файловой системы VxFS
Операции над файловой системой