![]() |
![]() ![]() ![]() ![]() |
|
Синий экран при исключениях FPU в Win9XDelphi , Синтаксис , Ошибки и Исключения
Оформил: DeeCo Автор: Alexander Petruhiv Условия возникновения бага - системная плата с VIA694/694T/KT133/KT133A, ОС Win95/98/Me. Под Win XP баг не проявляется. Следующий код вызывает "синий экран" с исключением 0E. На нормально работающей машине просто напечатается 64К раз строка Trapped.
program extest;
{$APPTYPE CONSOLE}
uses SysUtils;
{$O-}
var
i: integer;
a, Res: Double;
begin
a := 0;
for i := 0 to 65535 do
try
Res := i / a;
except
writeln('Trapped');
end;
end.
ТИПОВЫЕ РЕШЕНИЯ.
Предложенный тест проходит так, как описано, на материнской плате с чипсетом VIA KT266 (CPU Athlon 1000): под Win98SE система трапается с синим экраном и исключением 0E, а под Win2000 сбоев не наблюдается. Поступали сообщения об аналогичной проблеме в связке Win98+K7/K6/K5. Данный материал свидетельствует о том, что и с процессорами Intel такое бывает (чипсеты VIA694/694T используются в материнских платах для Celeron и P3, а KT133/KT133A - для K7 Athlon и Duron). Очевидно, список чипсетов может быть еще расширен. Одно общее обстоятельство сохраняется - ОС серии Win9X. Поэтому этот "камень" отнесен к категории СИСТЕМА, хотя, на первый взгляд, он просится в HARDWARE. Как минимум, еще одно радикальное решение можно предложить - использовать Windows линии NT. В статье описывается баг 'синий экран' при исключениях FPU в ОС Win9X на системах с чипсетами VIA694/694T/ KT133/KT133A, который не проявляется под Windows XP. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: Ошибки и Исключения ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||