· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ZEN —› ... кто прав ...

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Июн 28, 2003 17:09:46

... в этом семестре читали нам курс "промышленные операционные системы" - просто [beep] :) ... на кой оно нам надо - электрикам. Ну так вот, на одной из лекций препад говорит, цитирую - "Система Win95 является однозадачной, а точнее она эмулирует многозадачность ... а вот WinNT истинно (?!) многозадачная система ..." Ну тут я (с пеной у рта :) стал доказывать препаду, что обе системы одинаково и истинно многозадачны и ни какой другой многозадачности быть не может ... даже умными фразами грузил препада - типа они используют плоскую, защищенную модель памяти со сраничной адресацией ... типа загляни в отладчик и т.д и т.п.
... но недавно у меня закрались смутные сомнения - может препад в чем-то прав, а я где-то заблуждаюсь ... а?


Дата: Июн 28, 2003 17:45:20

Скорее здесь речь шла о том, что Win9X не поддерживает несколько процессоров, поэтому об истинной многозадачности говорить не приходится.
А WinNT, естественно, поддерживает.
Так что препод прав. :-))


Дата: Июн 28, 2003 18:58:45

Вспомнился анекдот:
Сын наблюдает как отец что-то делает в 95-х Виндах...
Сын : - Папа а правда виндовз многозодачная система?
Отец: - Сейчас сынку покажу, тока дискету отформатирую...
:)


Дата: Июн 28, 2003 19:19:49

В догонку:
AFAIK, NT поддерживает больше приоритетных уровней процессов, а в 9x их только 4.


Дата: Июн 28, 2003 19:26:42

> а точнее она эмулирует многозадачность ... а > вот WinNT истинно (?!) многозадачная система

Даже если он и сказал правду, но не сумел ответить тебе точным определением и вообще даже был смущен - значит, он в лучшем случае просто цитировал. Не понимая. Лучше поиметь небольшое но доступное тебе понятие, которое проверил на собственном опыте ;)


Дата: Июн 28, 2003 23:22:15

Я вот недавно обнаружил что 2000 винда приоритеты похоже вообще не поддерживает. Написал программку создающую кроме главного еще 2 потока: первый поток занимается вычислениями, второй рисует все это в bitmap. Первый поток после того как закончит вычисления вызывает Sleep на время за которое второй успеет нарисовать bitmap. Второй поток после того как закончит рисование вызывает InvalidateRect и вызывает Sleep на время за которое обработчик сообщений успеет перерисовать окно. Все работало нормально пока я не решил созданным потокам поставить приоритет BELLOW_NORMAL. В таком варианте прога стала подтормаживать, а винамп начал заикаться. Еще подобное я видел в одной игре, из-за того что она поставила себе приоритет HIGH, она при запуске тупила минуты две. После того как я изменил HIGH на NORMAL игра стала загружаться нормально. Разве это приоритеты?!


Дата: Июн 29, 2003 00:22:30

[ Black_mirror: Я вот недавно обнаружил что 2000 винда приоритеты похоже вообще не поддерживает. ]

Из сказанного тобой, как раз и выходит, что поддерживает и даже очень. А пользоваться ими нужно грамотно. Например твоя прога могла тормозить из-за того, что осовной поток имея более высокий приоритет занимался рисованием на окне, чем и тормозил два другие. Хотя точно сказать трудно - надо детали смотреть. А приоритеты поддерживаются - не сумлевайся.


Дата: Июн 29, 2003 04:00:48

Да, приоритеты в Win2000 рулят почти как в Юниксе, но их реальное изменение контролирует сама ось, т.е. она САМА решает кому и когда выделить процессорное время. Обычное приложение может полагаться лишь на то, что винда "учтёт" заявку о повышении/понижении приоритета.


Дата: Июн 29, 2003 20:14:04

Пока ещё ИСТИННО многзад - min 2 разных компа. Когда в одной коробке будет не 2, а 1.0E+6 процессоров, тогда и будет многозад. Независимо от ОС. А препод что - ему бабки отработать поскорее и делом заняться.


Дата: Июн 30, 2003 05:21:01

Аноним
Когда в одной коробке будет не 2, а 1.0E+6 процессоров, тогда и будет многозад.
Важно не количество процессоров а то, чтобы они не шарили шину памяти. В этом смысле Rambus стал первым шагом (неудачным :-)


Дата: Июн 30, 2003 16:43:37

1. препод всегда прав
2. если препод не прав, см. п. 1
:))))


Дата: Июл 12, 2003 01:31:22

ВыньНТ называется истинно многозадачной системой, потому что на тачке с несколькими процами будет выполняться несколько потоков одновременно, а в Вынь9х всегда исполняется толко один поток.
По поводу Sleep. Функция Sleep гоняет пустой цикл пока не пройдет n-ое кол-во миллисекунд. С низким приоритетом Sleep может проспать не n, a (n+n/10) миллисекунд, а это и дает тормозняк


Дата: Июл 12, 2003 02:16:02

IMHO, Sleep полезна только с параметром 0:
invoke Sleep,0

Во всех остальных случаях лучше юзать таймер


Дата: Июл 17, 2003 23:41:42

А если прога без окна? Чем сообщения принимать будешь?


Дата: Июл 18, 2003 03:15:30

А технология Hyper Threading (HP) ведь тоже
несколько потоков, а процессор один.

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.068