Всего на сайте:
166 тыс. 848 статей

Главная | Электроника

Особенности  Просмотрен 96

Решение принимается в соответствии с приоритетами задач. В отличие от кооперативной многозадачности управление операционной системе передаётся вне зависимости от состояния работающих приложений, благодаря чему, в частности, зависшие (к примеру — зациклившиеся) приложения, как правило, не «подвешивают» операционную систему. За счёт регулярного переключения задач также улучшается отзывчивость системы, оперативность освобождения ресурсов системы, которые больше не используются задачей[1][2].

В реализации вытесняющая многозадачность отличается от кооперативной, в частности, тем, что требует обработки системного прерывания от аппаратного таймера[3]. По истечении кванта времени, отведённого процессу, происходит прерывание и вызывается планировщик процессов. Частота вызова планировщика критична: слишком частый его вызов будет расходовать процессорное время в пустую.

  1. СРВ. Ядро невытесняющего типа.

Невытесняющая многозадачность

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

 

Ядро невытесняющего типа Ядро невытесняющего типа подразумевает, что задача сама уступает управление процессором другой задаче. Чтобы обеспечить видимость параллельной работы задач этот процесс должен происходить достаточно часто. Невытесняющее управление также называется кооперативной многозадачностью, так как задачи взаимодействуют друг с другом в процессе разделения времени процессора. Асинхронные события всё так же обрабатываются подпрограммами обработки прерываний (ISR). Запустившаяся подпрограмма обработки прерывания может сделать задачу с высоким приоритетом готовой к выполнению, но по завершении ISR управление возвращается прерванной задаче. Новая высокоприоритетная задача запустится только тогда, когда текущая задача уступит ей процессор.

http://caxapa.ru/thumbs/212355/%B5COS-II_rus.pdf

Предыдущая статья:Аппаратный отладчик (JTAG). Следующая статья:СРВ. Управление задачами.
page speed (0.0106 sec, direct)