русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Приоритет процесса в Linux

При прочих равных условиях процессорное время распределяется между выполняющимися процессами поровну, но процесс может установить добавку к приоритету. Добавка эта, однако, не повышает, а понижает приоритет процесса в смысле использования процессора. Только процессы суперпользователя могут получать отрицательную добавку к приоритету, то есть, реально повышать свой приоритет.

Это обосновано тем, что в ядре Linux используется два класса приоритетов:

  1. Unreal-time priority.
  2. Real-time priority

Unreal-time priority делятся на два подкласса:

  1. Статический приоритет или nice-приоритет, Значение nice-приоритета может лежать в диапазоне от -20 до 19, по умолчанию используется значение 0. Значение –20 соответствует наиболее высокому приоритету. nice-приоритет не изменяется планировщиком, он наследуется от родителя или его указывает пользователь.
  2. Динамический приоритет, на основании которого работает планировщик. Динамический приоритет вычисляется исходя из значения параметра пicе для данной задачи путем вычисления надбавки или штрафа в диапазоне от -5 до 5, в зависимости от интерактивности задачи. Для определения интерактивности в ядре Linux предусмотрен изменяемый показатель того, как соотносится время, которое процесс проводит в приостановленном состоянии, со временем, которое процесс проводит в состоянии готовности к выполнению.

Real-time priority лежат в диапазоне от 1 до (MAX_RT_PRIO-1), По умолчанию диапазон значений приоритетов реального времени составляет от 1 до 99.

Для стратегии планирования в режиме не реального времени (SCHED_OTHER) пространство приоритетов реального времени объединяется с пространством значений параметра nice, что соответствует диапазону приоритетов от значения MAX_RT_PRIO до значения (MAX_RT_PRIO+40). По умолчанию это означает, что диапазон значений параметра nice от -20 до +19 взаимно однозначно отображается в диапазон значений приоритетов от 100 до 139. И, таким образом, планирование выполняется по уровням приоритетов от 1 до 139.

Изменить приоритет процесса в Linux можна при помощи системного вызова nice, а приоритет другого процесса может быть изменен системным вызовом setpriority.. Системный вызов getpriority позволяет узнать приоритет процесса.

Просмотров: 10519

Вернуться в оглавление:ОС Linux




Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Полезен материал? Поделись:

Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.