2016-12-31 13 views
0

Например, для реализации операционной системы, такой как unix или NT, которая поддерживает разные задачи, переключаясь на основе временных интервалов, какая аппаратная поддержка должна иметь процессор?Чтобы реализовать ОС для «превентивных» задач, какая аппаратная функция должна поддерживаться процессором?

Поддерживает ли Intel 80286 поддержку реализации «упреждающих» задач с прерыванием тактовых импульсов? Какие еще аппаратные функции необходимы для достижения этой цели?

Спасибо.

+0

@ rcgldr Продолжение nit-picking :) * Совместное использование времени * используется для «создания контекстных переключателей», Time-slicing не является жаргоном (* Time-slice * is, хотя). Предотвращение не связано с приоритетом с высоким приоритетом (это особенность политики планирования *), preemption используется как противоположность * кооператива *. Наконец, в зависимости от того, насколько «сильно превентивный» вы хотите использовать свою ОС, он не может быть реализован только на любом процессоре: 8086 не имеет механизма для предотвращения отключения функции предотвращения. –

+0

@MargaretBloom - удалил мой предыдущий комментарий, так как вы отправили ответ. Я удалю это позже. Я думал о некоторых встроенных RTOS, которые поддерживают предварительную настройку, но не сокращают время, используя другой приоритет для каждой задачи. Здесь это не нужно. – rcgldr

ответ

4

Для ОС реализовать Preemptive multitasking эффективно аппаратное обеспечение должно иметь поддержку двух функций:

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

  2. Способ предотвращения отключения функции выше.
    Если выполняемая задача не может быть помещена в песок только для того, чтобы поддерживать активный механизм превентивного действия, тогда он может просто отключить его и запустить навсегда.

286 был первый процессор семейства x86 для поддержки protected mode, режим необходимо реализовать 2. ФУНКЦИЯ
Характеристика 1 была доступна в IBM PC с самого начала (центральный процессор был 8086) через использование PIT 8254.

Особенность 1 - это особенность аппаратного обеспечения платформы, а не центрального процессора (though it can be included in the CPU).
Особенность 2 - это особенность процессора.

Обратите внимание, что существуют другие возможные способы достижения 1 и 2.
Например, система с двумя процессорами, в которой можно управлять выполнением другого (но не наоборот), подходит для обеих функций.

 Смежные вопросы

  • Нет связанных вопросов^_^