Приоритетная многозадасность
|
|
Voyager
|
Wednesday 07.04.2004 14:23
|
|
|
Зарегистрирован Wednesday 07.04.2004 12:48
Сообщений - 4
|
Добрый день всем.
У меня такой вопрос. А как будет реализована приоритетность задач в 3ОС?
Мне ужасно не нравится в Винде отсутствие приоритетной многозадачности. В ОС MVT 6.1 (была такая, работала на ЕС ЭВМ) каждая задача имела свой приоритет. Я мог назначить приоритет какой-либо задаче или не назначать его (тогда будет назначен по умолчанию). А когда задача выполняется, мог оперативно его изменить - повысить или понизить. Запустив процедуру копирования дисков, я назначал ей самый низкий приоритет - и она никому не мешала. Т.е. задачи с более низким приоритетом получали процессорное время только тогда, когда это время оказывалось невостребованным задачами с более высоким приоритетом.
Я мог задержать задачу (HOLD), тогда она просто висела в оперативной памяти, ничего не делая - она вообще не занимала процессор ни при каких условиях до тех пор, пока ее не активизируют.
Существовала многозадачность на уровне подзадач, и она тоже была приоритетной! Сейчас подзадачи называют "нитями", но "нити" равноправно претендуют на процессорное время, приоритетность не предусмотрена. Должен заметить, что приоритетность подзадач определялась при программировании; оператор мог с консоли изменить приоритет задач, но не подзадач.
Казалось бы, почему бы это не реализовать в новых ОС? Ведь в ОС ЕС ЭВМ это появилось больше 30 лет назад, и было удобно! Почему в Винде и в Юниксе нет того, что уже давно пройдено в древних ОС? Почему выкинуты эти ценные идеи? Ведь в реализации они не так уж и сложны.
А пока можно лишь вспоминать анекдот про Билла Гейтса: "Вот сейчас закончится форматирование дискеты, и я вам покажу преимущества многозадачности".
|
Наверх
|
|
Pushkoff
|
Saturday 15.10.2005 18:04
|
|
|
Зарегистрирован: Friday 14.10.2005 18:37
Местоположение: Донецк
Сообщений - 13
|
В виндозе 2000 хр все это есть... При программировании можно повысить или понизить свой приоритет или приоритет нитей относительно себя (даже в 95 98 ме)... Во время выполнения в таск менеджере можно задать уровень приоритета...
В документации на win написано что это оса с приоритетной многозадачностью, причем для пользовательских приложений приоритет меняется в зависимости активно оно или нет...
|
Наверх
|
|
Hover
|
Sunday 23.10.2005 11:45
|
|
|
Зарегистрирован: Friday 29.07.2005 22:50
Местоположение: Там, где не боятся думать.
Сообщений - 10
|
А форматирование дискет в Виндоус 9х страшно тормозило систему не из-за отсутствия приоритетов, а из-за того что в Виндоус 9х многозадачность невытесняющая. В Виндах на NT и выше многозадачность вытесняющая, поэтому форматирование дискеты гораздо менее ощутимо сказывается на работе всей системы.
Мой Plasma Shotgun - сатира!
|
Наверх
|
|
Pushkoff
|
Monday 24.10.2005 18:22
|
|
|
Зарегистрирован: Friday 14.10.2005 18:37
Местоположение: Донецк
Сообщений - 13
|
Невытесняющая многозадачность была в Win3.1... Там программа сама решала когда ей передать управление другому процессу... Win9x в своей идеологии точно такая же как WinNT...
|
Наверх
|
|
Pushkoff
|
Monday 07.11.2005 18:22
|
|
|
Зарегистрирован: Friday 14.10.2005 18:37
Местоположение: Донецк
Сообщений - 13
|
Они не имеют общего кода... Их писали разные команды, но они стремились к одной цели... в W9x монолитное ядро требующее меньше ресурсов, в WNT была попытка (не очень удачная) сделать микроядерную ос, в которой основную функциональность составляют службы... разделение времени в обоих ос одинаковое, то есть приоритетная многозадачность
Я не разработчик 3OS, раньше читал их конференции (где-то год назад), забрел случайно почитать, че тут наворотили...
|
Наверх
|
|
Hover
|
Friday 16.12.2005 12:39
|
|
|
Зарегистрирован: Friday 29.07.2005 22:50
Местоположение: Там, где не боятся думать.
Сообщений - 10
|
Глупости. Они похожи только интерфейсом и апишками (которые, как мы знаем похижи, но не одинаковые). Ядра там совсем разные. В них иначе построено все: управление процессами, управление памятью, структура драйверов - все разное! причиной и следствием этого является то, что Win9x - однопользовательская, а WinNT - МНОГОПОЛЬЗОВАТЕЛЬСКАЯ. Поэтому они внутри работают совсем по-разному. (естественно в рамках разумного).
Мой Plasma Shotgun - сатира!
|
Наверх
|
|
Pushkoff
|
Friday 24.03.2006 20:32
|
|
|
Зарегистрирован: Friday 14.10.2005 18:37
Местоположение: Донецк
Сообщений - 13
|
Hover
а я че сказал че-то другое???
|
Наверх
|
|
Модераторы: Roman I Khimov, netwizard. |
|
|