IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> Память
dark0ut
сообщение 20.12.2002 17:43
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской

Репутация: -  0  +


Реально ли подвесить комп через pascal
А то я вчера значит
GetMem(p,64000);
а Dispose - соседям оставил;)
такое началось
страница в IE открывалась 5 минут и т.д.
Возможно такое?


--------------------
Админ StudCity.RU
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mj
сообщение 20.12.2002 20:57
Сообщение #2


Adminь
****

Группа: Администраторы
Сообщений: 803
Пол: Мужской
Реальное имя: Евгений

Репутация: -  5  +


тормознуть можно, а повесить разве что 98'ую...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Vit
сообщение 26.12.2002 6:01
Сообщение #3


Бывалый
***

Группа: Пользователи
Сообщений: 156
Пол: Мужской

Репутация: -  0  +


Win 95/98/ME намертво вешает такой код

Код
Repeat
 asm
   cli
 end;
Until False;


или можно запустить (ShellExecute) файл с именем "c:concon"

С NT/2000/XP как и ожидалось такие номера не пройдут.

Сообщение отредактировано: volvo - 24.12.2004 15:56


--------------------
With the best regards Vit

Все всегда уезжают навсегда. Вернуться невозможно-вместо нас всегда возвращается кто-то другой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mj
сообщение 26.12.2002 17:31
Сообщение #4


Adminь
****

Группа: Администраторы
Сообщений: 803
Пол: Мужской
Реальное имя: Евгений

Репутация: -  5  +


Цитата
Win 95/98/ME намертво вешает такой код

Repeat
 asm
   cli
 end;
Until False;


или можно запустить (ShellExecute) файл с именем "c:concon"

С NT/2000/XP как и ожидалось такbt номера не пройдут.

Поясню тем кто не знает asm, cli обозначает отрубить все апаратные прерывания... Под NT эту команду процесор почемуто просто не замечает...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Vit
сообщение 26.12.2002 22:32
Сообщение #5


Бывалый
***

Группа: Пользователи
Сообщений: 156
Пол: Мужской

Репутация: -  0  +


Цитата
Под NT эту команду процесор почемуто просто не замечает...


Ядро NT имеет собственные процедуры обработки для команд Jmp, Cli, Int и некоторых других. Поэтому если программа не является сервисом, то вместо этих команд выполняются специальные процедуры ядра NT которые эмулируют эти команды.


--------------------
With the best regards Vit

Все всегда уезжают навсегда. Вернуться невозможно-вместо нас всегда возвращается кто-то другой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 17.01.2003 13:59
Сообщение #6


Гость






Ну, про 9х говорить нечего. Его повесить крайне просто. Например :
asm
 CLI
 HLT
end - запрещаем прерывания и делаем паузу до их возникновения. Для надёжности можно загнать в цикл. А вот с NT надо быть хитрее. У меня только 2 варианта реализации :
1). Нагло. Создаём Run-Time нить с наивысшим приоритетом (лучше при помощи Job'а) и в цикле занимаем FPU, а заодно и CPU.
2). Коварно. Нахально. Неожиданно. Переводим процессор в реальный режим, перехватываем все прерывания и творим, что хотим. Одно "но". Даже у меня и моего "товарища" возникли проблемы в реализации этого метода. Надо код оптимизировать буквльно на несколько тактов (исходя из подопытного Celeron-330), а вот как...

А вот испоьзуя BP или что либо иное под Real-Time или Protected Mode такого не добиться. А жаль.
 К началу страницы 
+ Ответить 
mj
сообщение 22.01.2003 9:16
Сообщение #7


Adminь
****

Группа: Администраторы
Сообщений: 803
Пол: Мужской
Реальное имя: Евгений

Репутация: -  5  +


Цитата
1). Нагло. Создаём Run-Time нить с наивысшим приоритетом (лучше при помощи Job'а) и в цикле занимаем FPU, а заодно и CPU.

Ну взять на себя полную загрузку программа может ухитрится, это на самом деле легко делается через ловушки (пример я увидел на всем известном переводчике LingoWare)...
Но сама система то при этом не виснет и рано или поздно программа будет выгружена... smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.04.2024 14:59
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"