On-line: PSP, гостей 0. Всего: 1 [подробнее..]
АвторСообщение



Пост N: 43
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 17.12.06 17:12. Заголовок: Влияние вызова дисковых функций на быстродействие TIME() / SECONDS()


hi all.
Clipper 5.2e + Blinker6. Мне давно известен один эффект, но я не понимаю его природы.

Кто-нибудь может объяснить, почему этот вот цикл:
#DEFINE I_MAX 20000 // двадцать тысяч
FOR I=1 TO I_MAX
K:=TIME() // или K:=SECONDS() -- всё равно
NEXT

-- выполняется на машине P-2400/RAM 512 то 15 секунд, то 20, а то и все 50 сек.
При этом процессор грузится практически на 0 (ноль) процентов и, чтобы его раскочегарить, надо держать нажатым Shift или Ctrl или Alt. Замена вызова TIME() на SECONDS() не помогает (имхо, в этом ничего неожиданного нет).

Но этот же цикл, добавленный внутри всего лишь одной функцией, обращающейся к... ДИСКУ (!!), выполняется практически мгновенно:
#DEFINE I_MAX 20000
FOR I=1 TO I_MAX
K:=TIME()
FILE('C:\1')
NEXT

Почтеннейшая публика! Объясните, плз, почему это всё так происходит.
ЗЫ-1. Забавно, что если вызывать ф-цию FILE() с аргументом = пустой строке или с некорректным именем (типа "C:\><"), то будет опять всё плохо (т.е. она перестаёт волшебным образом помогать).
ЗЫ-2. Тесты проверялись на МИНИМАЛЬНО необходимом наборе библиотек. Никаких приблуд типа SIX,DBFAXF, __WAIT_B, DISIDLE etc. Сборка шла только с BLXCLP52 и CLIPPER.LIB

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 29 , стр: 1 2 All [только новые]


администратор




Пост N: 527
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.12.06 17:33. Заголовок: Re:


Загляни в эту тему
http://clipper.borda.ru/?1-0-0-00000304-000-10001-0

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 44
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 17.12.06 21:22. Заголовок: Re:


Как раз сегодня, перед этим постом, я эту ветку перечитал. Но там ведь про разгрузку ЦПУ идёт речь, кажется ?
А у меня вопрос, имхо, немного "обратный": про НАгрузку :-). То есть, почему ф-ция time() (или seconds()) *** НЕ *** может грузануть ЦПУ при выполнении цикла. И самое загадочное, почему в этом помогает вызов именно "дисковой" функции (да еще только с корректным с тю.зр. DOS-именования файлов аргументом).
SUV мне говорил как-то, что время он черпает не с помощью клипперных time()/seconds(), а лезет за ними в BIOS (кажись). Но в упомянутой ветке (http://clipper.borda.ru/?1-0-0-00000304-000-10001-0) он же (SUV) говорит, что:

SUV пишет:

 цитата:
Использование вместо seconds() своей функции, считывающей время не через сервис DOS, а из области данных BIOS приводит к очевидному замедлению системных часов



и еще он пишет, что переделал ядро клиппера с целью нормальной работы seconds().
Вот я и хочу спросить у публики: а без переделки ядра никак эти тормоза не обойти ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 529
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.12.06 22:12. Заголовок: Re:


я пас..........

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 47
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 18.12.06 12:40. Заголовок: Re:


да, офигеть...
у меня тоже самое: включение дисковой функции "волшебным образом" ускоряет цикл...

Скорость: в первом варианте ~ 1500 итераций/секунду
во втором ~ 9600

WinXP + 5.2e + Blinker 6.0 DBFNTX + использую разгрузку через IamIdle() из FT, но на время теста отключал ее нафих.




Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 87
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 18.12.06 13:34. Заголовок: Re:


У меня результаты такие (WinXP + Clipper 5.2e + DosIdle()):

- без File() - 15 с
- с File("C:\1") - 10 c
- с File("C:\<>") - 18-20 c


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 10
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 18.12.06 14:00. Заголовок: Re:


p519446 пишет:

 цитата:
Как раз сегодня, перед этим постом, я эту ветку перечитал. Но там ведь про разгрузку ЦПУ идёт речь, кажется ?
А у меня вопрос, имхо, немного "обратный": про НАгрузку :-).


Правильно Дима говорит - перечитай ту ветку. Вопрос у тебя как раз по ней.

 цитата:
То есть, почему ф-ция time() (или seconds()) *** НЕ *** может грузануть ЦПУ при выполнении цикла.


Не "не может грузануть", а винды, при получении от дос-задачи запроса "скока время", считают, что программе не хрен делать (как при считывании кнопки), а значит, ее можно тормознуть. Процессорное время у задачи принудительно отбирается. То, что дос работает, и то, что системе самой делать не хрен - в расчет не берется. Время просто отбирается - и все.

Вызов file("c:\1") помогает. Видимо, при обращении доса к некоторым сервисам, винда понимает, что работа идет и время отбирать не надо. Но не ко всем сервисам. Эксперименты показывали, что при вызове seconds() замедление работы доса происходит даже в случае работы с базами.

Считывание времени из BDA может привести к остановке дос-времени (виндовое время продолжает идти). Подробно не описываю - долго.

Считывание времени из портов RTC не пробовал. Обнаружил, что если перед считываением счетчика тиков предварительно дернуть сервис клавиатуры - время в BDA обновляется и не замирает. Тем и пользуюсь.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 48
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 18.12.06 14:52. Заголовок: Re:



 цитата:

Вызов file("c:\1") помогает. Видимо, при обращении доса к некоторым сервисам, винда понимает, что работа идет и время отбирать не надо. Но не ко всем сервисам.



Чую одним местом - что не в винде это дело... никто с другим линкером собрать не пробовал ? Мне кажется, дюже умный 6,0 получился, даже не в меру...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 255
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 18.12.06 15:34. Заголовок: Re:


У меня есть такое предположение, которое имеет смысл, если вы собираете программу в защищенном режиме. Вполне возможно, что при вызове DOS прерываний процессору необходимо переключиться из защищенного режима в реальный режим работы. А затем обратно в защищенный. Может быть когда стоит одна функция времени, то процессор постоянно "скачет" из защищенного режима в реальный и обратно. Когда же стоят две функции, то может быть обратный выход из реального в защищенный режим происходит по выходе из цикла?
Это лишь мое предположение. Если же вы проверяли это в реальном режиме, то значит я не прав.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 15
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 18.12.06 15:40. Заголовок: Re:


Григорьев Владимир пишет:

 цитата:
Вполне возможно, что при вызове DOS прерываний процессору необходимо переключиться из защищенного режима в реальный режим работы. А затем обратно в защищенный. Может быть когда стоит одна функция времени, то процессор постоянно "скачет" из защищенного режима в реальный и обратно. Когда же стоят две функции, то может быть обратный выход из реального в защищенный режим происходит по выходе из цикла?



В DPMI для вызова любого прерывания происходит переключение туда-обратно на время прерывания

Команда прерывания - привилегированная, при ее обнаружении происходит исключение, которое обрабатывается блинкеровским обработчиком исключений. (dpmi-сервер) Он запоминает, что хотят, переключается в реальный режим, вызывает дос (при этом происходит исключение, которое обрабатывается уже операционной системой), запоминает возвращаемые значения, переключается в защищенный, продолжает выполнение программы со следующей за командой прерывания инструкцией. "Выход из реального по выходу из цикла" - так не бывает

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 16
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 18.12.06 15:47. Заголовок: Re:


Sergy пишет:

 цитата:
Чую одним местом - что не в винде это дело... никто с другим линкером собрать не пробовал ?



Дело в винде. Весь сервис программам дос предоставляется windows-ом.

Если ОС считает, что при вопросе "скока время" нужно приостановить дос-задачу и поделать свои мутные дела - значит так тому и быть. И единственный выход - не спрашивать.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 45
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 18.12.06 23:11. Заголовок: Re:


suv3 пишет:

 цитата:
винды, при получении от дос-задачи запроса "скока время", считают, что программе не хрен делать (как при считывании кнопки), а значит, ее можно тормознуть. Процессорное время у задачи принудительно отбирается. <...>
Вызов file("c:\1") помогает. Видимо, при обращении доса к некоторым сервисам, винда понимает, что работа идет и время отбирать не надо. Но не ко всем сервисам.



Профессор, может быть, Вы и правы.
Но как объяснить, что при время виндузой отбирается и НЕ отдаётся, даже если далее в цикле (после вызова seconds()) дать команду, которая уж ТОЧНО потребует от ЦПУ некоторого мыслительного процесса. Например, если вызывать математич. функцию:

#DEFINE I_MAX 20000 // двадцать тысяч
LOCAL R
FOR I=1 TO I_MAX
K:=TIME() // или K:=SECONDS() -- всё равно
R:=LOG( SQRT(I)**2.367+ (I%7)**3.1587 )
NEXT

-- то ЦПУ так и останется в нулевой загрузке.
Что, виндуза такая "беспощадная", что НЕ отдаёт обратно кванты времени ЦПУ даже для операций в плавающей точкой, если я перед этой операцией спросил её "скока время" ?
ЗЫ. Насчет обращений к БД -- согласен. Действительно, виндуза НЕ отдает обратно время даже при команде записи в БД, а также при dbSeek(). В общем, странно всё это.

Григорьев Владимир пишет:

 цитата:
Если же вы проверяли это в реальном режиме, то значит я не прав.


Я проверял в BLI EXE EXT. В реал моде не работаю вообще.

Sergy:

 цитата:
никто с другим линкером собрать не пробовал ? Мне кажется, дюже умный 6,0 получился, даже не в меру...


В блинкере 7.0 та же песня (впрочем, он еще "умнее" 6-го :-)).
Собирать линкером causeway не пробовал; но со всеми библами (six, dbfaxs etc) моя прога на нём вываливается по какому-то страшному GPF. Сразу. Ковыряться в причинах не пробовал, некогда.
Exospace сборку выполняет чёрт знает сколько времени, так что отпадает.





Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 46
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 19.12.06 02:39. Заголовок: Re:


Очередные новости.
1) сборка в реал моде *** НЕ *** влияет на быстродействие выполнения цикла;
2) при переводе в полноэкранный режим все начинает работать достаточно БЫСТРО (!). И время работы не зависит от того, запустил ли я .exe через ярлык или через оболочку типа FARa или Volkov Commander. След., виндуза не всегда отбирает у задачи кванты ЦПУ при вопросе "скока щя время"!
3) САМОЕ интересное. Если создать ярлык на этот .exe-шник и зайти в его св-ва, выбрать там вкладку "Разное" и установить бегунок в разделе "Приоритет при ожидании" в КРАЙНЕЕ ЛЕВОЕ положение, то всё начинает летать со 2-ой космической скоростью. При малейшем сдвиге бегунка вправо -- опять тормоза. При попытке сделать то же самое через .bat-файл, дав команду start test.exe /realtime -- снова тормоза (я это давно, кстати, просёк: в виндузе команда start с указанием приоритета не работает для 16-разрядных приложений; таск манагер при указании ЛЮБОГО приоритета всегда показывает для соотв-щего процесса ntvdm.exe приоритет = "Средний").

К сожалению, я не могу считать панацеей способ п. 3 (создание ярлыка на .exe'шник с указанием приоритета при ожидании = MAX). Потому что обычно приложения запускаются в некотором окружении предварительных и завершающих команд, т.е. через .bat-файл (а там как раз эта фишка не работает). И еще потому, что такая задача, запущенная с макс. приоритетом, будет клинить насмерть другие задачи.

4) манипуляции с тем же ярлыком на .exe'шник в разделе свойств "Память" (EMS, XMS, DPMI) бесполезны. Эффект от их изменения нулевой.

Какие будут комменты, коллеги ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 47
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 19.12.06 02:57. Заголовок: Re:


ЗЫ. У кого-нить есть компилятор типа borland C ? если да, то не сочтите за труд, сделайте, плз, аналогичную прогу и запустите её -- что будет ? вдруг все эти "волшебства" происходят вообще не из-за виндузы, а из-за какой-то кривоты в клиппере/блинкере ?!

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 48
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 19.12.06 03:47. Заголовок: Re:


ЗЫ-2. Еще один результат: сборка старым клиппером (87) и компоновщиком PLINK86.EXE также приводит к .exe-шнику с тормозами. И также работает способ увеличения до максимального приоритета при ожидании в св-вах ярлыка этого экзешника. Отсюда вывод: блинкер, кажись, тут ни причём.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 29
Зарегистрирован: 27.04.06
ссылка на сообщение  Отправлено: 19.12.06 11:59. Заголовок: Re:

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 21
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 19.12.06 13:11. Заголовок: Re:


saulius пишет:

 цитата:
Но как объяснить, что при время виндузой отбирается и НЕ отдаётся, даже если далее в цикле (после вызова seconds()) дать команду, которая уж ТОЧНО потребует от ЦПУ некоторого мыслительного процесса. Например, если вызывать математич. функцию:

#DEFINE I_MAX 20000 // двадцать тысяч
LOCAL R
FOR I=1 TO I_MAX
K:=TIME() // или K:=SECONDS() -- всё равно
R:=LOG( SQRT(I)**2.367+ (I%7)**3.1587 )
NEXT

-- то ЦПУ так и останется в нулевой загрузке.



блин, что же тут непонятного? цпу в нулевой = задаче дают мало времени. причина - она не вызывает никаких сервисов, кроме "скока время"

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 22
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 19.12.06 13:15. Заголовок: Re:


p519446 пишет:

 цитата:
Какие будут комменты, коллеги ?



считывать время функцией xpSeconds(), которую я тебе дал

вот и все комменты

зы. ссылки на микрософт - не по теме

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 531
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.06 16:06. Заголовок: Re:


suv3 пишет:

 цитата:
считывать время функцией xpSeconds()


И мне дай пожалуйста ;) !

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 24
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 19.12.06 16:16. Заголовок: Re:


куда давать-то

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 533
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.06 16:19. Заголовок: Re:


suv3 пишет:

 цитата:
куда давать-то


xharbourxСОБАЧКАгмайлмТОЧКАсом

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 534
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.06 16:57. Заголовок: Re:


suv3
Получил , спасибо !!!

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 92
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 19.12.06 17:25. Заголовок: Re:


suv3 пишет:

 цитата:
куда давать-то


Да и я не отказываюсь - хочется попробовать!
ort sobaka ukrpost net

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 535
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.06 18:01. Заголовок: Re:


ort пишет:

 цитата:
Да и я не отказываюсь - хочется попробовать!


Если Юра не против я могу сложить прямо сюда в формате MIME , потому как чую что это не последняя
просьба

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 25
Зарегистрирован: 11.12.06
ссылка на сообщение  Отправлено: 19.12.06 18:28. Заголовок: Re:


клади конечно)

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 537
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.06 19:07. Заголовок: Re:


Текст , файл пойдет ниже.

 цитата:

Итак, экспериментально установлено, что байты в памяти (область данных биос), хранящие кол-во тиков с полуночи (время) обновляются только в определенные моменты, то есть при обращении к некоторым сервисам дос. К каким - точно не установил. Помню, что при определенных циклах (например, проход по базе) время практически стояло на месте. А при других, вроде бы таких же - шло нормально. Потом вдруг было установлен сервис, при обращении к которому байты обновляются. Забор времени происходит след образом - дергается сервис клавиатуры. а потом считывается счетчик тиков. Этот счетчик тиков уже клипперными средствами (ну так мне тогбы было гибче сделать) делится на коэффициент (я не был уверен в коэффициенте, поэтому я сделал это деление не в ассемблере, а в клиппере)

в sound.obj - функция tcounter()
в клиппер так

#define TimeMultiplier 54.9254834838
func xpSeconds()
local i
i := TCounter()
i := i / 1000
i := i * (TimeMultiplier)
ret i



Файлик

 цитата:

MIME-Version: 1.0
Content-Type: application/octet-stream; name="SOUNDOBJ.ZIP"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="SOUNDOBJ.ZIP"

UEsDBBQAAAAIAOGQkzXLurefqgIAAOIDAAAJAAAAU09VTkQuT0JKVZNPaNNQHMd/Sdq03bp0ylQc
etMpKJ7EHbwsTV67sizpkrTuDxh7UKTsMlx3ckMYyLYqVJCiQ0Q9edyhSPXgf1DXFQR38OJBmKXg
UWUw6uLvvSQDD+/l8/v+vr9vXh/pjW6IWUZOV8/I1uhmlQe4uiTA0OO71X3QxRqOTcbtkGKoRLgX
geEYxwtcrBqHsKPKthyi21vaAAiFuUQ1CqKaNo1ctrwaAtHlp27VuZjjZGUzo6cM2EMZRIaKLyka
0SHCUM8EoAWg+qBa/hjrWLaB810+0ICox5gQkLZHakAY4g9rNM0kNjsEffqHQPQOQUELQPXBOwSC
hpdAnzR4XNY0Q6GO8ZRJCIO0KSch7qiGZRJZy+i2CQksmJMqFkmDhEKa2MOGZY/iHUMv1rRpExWN
GdliDhoZTCT82iIaUfBHQBcKmDhCm3HknB5UPV541jTsPFFYaf1fYjeZoWoaotR5Aa8HwpQ0WK0k
ALioreBnYBOzAXC40oOKOJJUjVSqBtCp9GIdG81oWsYiivoSgK9IKEUcm308EYBD3oxXTwIcDwwq
0eSJc3SChTi2bjAPAMxX4iiF6Xv05wCDSyEYesLdedTDcQBbhWOdVqHxEX3li2L929kX++H8l2v9
27/KX7cKT4VSNC60CmvPWsrKu1Zy5UMr+WmdB2rPWmPm4oIIs1K9LWxfEcvr5c+1m80DkxNT48wj
ep4it4puWFCWUztF3uPB5VSnKDC+fqok1Dk4zfVxS6ldd25Has+47lxHat93pbbj1nshK7Vvu7v6
buk7y26s/Wldaqz9xs3PRsO026hxzYM/jwSvC3W/LiVq0OwfM5mw+D7UEC8UhyKvpmGgnOMHymEn
Ymb3en8fHIWNy/kTGzO45nG9wbWZP7nxI9/X5PJ9D1fw7zz7D1BLAQIUABQAAAAIAOGQkzXLuref
qgIAAOIDAAAJAAAAAAAAAAAAIAAAAAAAAABTT1VORC5PQkpQSwUGAAAAAAEAAQA3AAAA0QIAAAAA




Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 93
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 20.12.06 10:48. Заголовок: Re:


Получил, вставил, заработало!
Спасибо, Юрий! Спасибо, Паша!
Не силен я в этих системных штучках -
удивляюсь как можно обмануть или обойти систему!

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 94
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 20.12.06 10:54. Заголовок: Re:


ort пишет:

 цитата:
Спасибо, Юрий! Спасибо, Паша!


Извините, должно быть так:
Спасибо, Юрий! Спасибо, Дима!

Просто, в последнее время все больше с Пашей общался.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 265
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.12.06 17:58. Заголовок: Re:


Я проблему понимаю так (это я обнаружил по работе со своим классом SAY). Вы запускаете программу в Windows. Это - многозадачная система. Каждой задаче выделяется квант времени и назначается приоритет. Я так думаю, что дисковые операции - самые приоритетные и запускаются в первую очередь. Это делается в виду того, что 1) дисковые операции самые медленные, и поэтому желательно их пропускать вперед, чтобы совсем не сделать их медленными; 2) запуск дисковой операции освобождает процессор для решения других задач, так как дисковые операции в основном не требуют участия процессора.
Итак, когда у вас стоит просто SECONDS(), то Windows выделяет вашей программе кванты времени в соответствии с "живой" очередью. Когда же у вас в цикле стоит обращение к дисковым функциям, то ваша программа получает управление "вне очереди", то есть ее приоритет увеличивается, она чаще получает управление, а значит чаще происходит обновление памяти для счетчика BIOS и обращение к нему.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 62
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 25.12.06 18:36. Заголовок: Re:


Григорьев Владимир пишет:

 цитата:
Итак, когда у вас стоит просто SECONDS(), то Windows выделяет вашей программе кванты времени в соответствии с "живой" очередью.


Имхо, при наличии вопроса "скока щя время?" windows вообще отрубает задачу от ЦПУ. Потому что если это время НЕ спрашивать, а, скажем, выполнять что-то другое (например, вычислятьв цикле логарифм от квадратного корня счетчика), то задача всё же ПОЛУЧАЕТ кванты ЦПУ.
Видимо, SUV прав: запрос времени виндуза воспринимает так: "ах, ты время вопрошаешь ?! получи, но делать тебе, братец, нечего видимо! так что обойдёшься дальше без квантов ЦПУ".
Какое-то странное исключение из этого правила будет, если задача развёрнута на весь экран: кванты всё же даются (но не много :)). Или если в св-вах ярлыка .exe-шника задать приоритет при ожидании = 100% (см. мои посты вверху).




Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 29 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 145
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет