+7 (812) 670-9095
Обратная связьEnglish
Главная → О компании → Новости → Новости системного ПО
Полезный совет
Анализируете однотипные данные отчетов по нескольким филиалам - не тратьте время на переход от одного листа к другому, выбирая нужные ячейки - воспользуйтесь трёхмерными формулами Excel.Подробнее
RSSВерсия для печати

Планирование задач в операционных системах реального времени

Mentor Graphics, 6 июня 2018

Колин Уоллс (Colin Walls), эксперт в области микроэлектроники и встроенного ПО компании Mentor Graphics, в своем блоге рассуждает о планировщике, ядре любой операционной системы, включая операционные системы реального времени.

Представляем перевод этой статьи.



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

Как известно, обычный процессор может выполнять в каждый момент времени только одну задачу. Одновременное выполнение нескольких потоков достигается быстрым переключением процессора между потоками. Этот процесс управляется планировщиком.

Планировщик необязательно должен быть сложным. За свою жизнь я написал несколько планировщиков, но никогда не забуду, когда впервые смог увидеть, как какая-то часть моего кода заработала в многозадачном режиме. На тот момент мне это казалось волшебством, хотя я точно знал, что происходит (так как сам писал каждую команду).


Обобщая, я могу выделить пять типов планировщика:
  1. Run to completion (RTC) — «Выполнение до завершения»;
  2. Round robin (RR) — «Карусель»;
  3. Time slice (TS) — «Квант времени»;
  4. Time slice with background task (TSBG) — «Квант времени с фоновой задачей»;
  5. Priority (PRI) — планировщик задач по приоритетам.

Полная версия статьи в блоге Колина Уоллса

Перевод полной версии статьи на нашем сайте