|
|
| Посл.отвђт | Сообщен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) ведь тоже несколько потоков, а процессор один. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.068 |