Приоритеты в планировщике задач

Kernel architecture questions
  • CleverMouse wrote:r3536 - это отнюдь не только удаление вызова change_task.
    Я вообще-то смотрел лог SVN если чо. Может я не настолько умен и сообразителен, но я не имбецил. Не буду спорить, что идея не самая лучшая, более того - это дрянная идея. Да и вообще 90% моего кода откровенное говно. Однако никто не делает некоторые вещи - совсем не делают. Если так раздражает я могу более вообще не трогать код ядра, так как идеи мои тоже на 90% говно. Будем честно смотреть правде в глаза. Почти 10 лет моих потуг, так и не сделали из меня хорошего программиста. Все результаты достигались тупым упорством и хождением по граблям. Потому буду делать как 99% посещающих форум - зайти и посмотреть, нет ли чего новенького, похвалить хорошистов, поругать плохишей или вообще промолчать. Потреблять в общем. Извини, что отнял твое время бессмысленным и пустым замечанием. Постараюсь далее быть чаще в read-only. Успехов!
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4, спасибо.
    Сделаем мир лучше!
  • CleverMouse
    Неясен такой момент:
    - если один из пользовательских процессов уже отработал свой квант и был принудительно переключен,
    - тогда будет ли включаться IDLE, или управление вернется в пользовательское кольцо?
  • art_zh, если поток был принудительно переключён, он остаётся активным, на следующие кольца планировщик смотреть не будет, до IDLE дело не дойдёт.
    Сделаем мир лучше!
  • тогда вроде всё по-уму.
    IDLE играет только если все дружно скинут карты.
  • r3615+r3617 вносят дополнение: теперь при поступлении IRQ, отличного от таймера, также вызывается планировщик, но со специальным флагом "смотри только на потоки, которые строго более приоритетны, чем текущий". Флаг также меняет логику продвижения очереди: если пользовательский поток A упорно работал и был прерван по таймеру, то следующим пользовательским потоком будет B, следующий в кольце после A; если тот же пользовательский поток A упорно работал и был прерван по другому прерыванию, то следующим пользовательским потоком останется A - возможно, после того, как вмешавшийся ядерный поток что-нибудь сделает.
    Сделаем мир лучше!
  • Who is online

    Users browsing this forum: No registered users and 2 guests