Obecný návod na odstranění chyby v Pentiích

Poslední chybu v Pentiích lze poměrně snadno odstranit. Stačí k tomu maličkost - detailní znalost běhu procesoru a operačního systému.
Chyby v procesorech Intel se vyskytly už několikrát. Nejnovější chybu je možno zásahem do jádra operačního systému odstranit. K systému Linux se dodávají i zdrojové text jádra a tak se můžete pokusit odstranit tuto chybu sami. To ale vyžaduje pochopení některých principů chráněného režimu procesoru Pentium.

Již v procesoru 80386 způsobila posloupnost instrukcí POPAD a RET zacyklení procesoru. Tehdy šlo o zjevnou chybu implementace. Asi nejznámější chyba je špatná funkce matematické jednotky u starších Pentií. Tehdy špatná instrukce pro dělení v pohyblivé čárce FDIV způsobovala chybu někdy dokonce i na třetím desetinném místě. Intel se tehdy rozhodl pro výměnu vadných procesorů, celkové náklady jsou odhadovány na 450 mil. dolarů.

Před několika měsíci se objevila chyba u procesorů Pentium II a Pentium PRO. Operace pro výpočty v BCD (binárně kódovaná desítková čísla) aritmetice někdy nevyvolají výjimku (přerušení) při přetečení. I když se to není na první pohled vidět, při složitějších výpočtech to může mít fatální následky.

Smrtící instrukce

Nejnovější chyba se vyskytuje u nejnovějších procesorů Pentium MMX. Celé to spočívá v tom, že po posloupnosti instrukcí F0 0F C7 C8 až CF procesor jednoduše "zamrzne". Tato posloupnost je normálně neplatná a tak by se měla vyvolat obsluha výjimky "neplatná instrukce". Tato výjimka se vyvolá, ale jen za podmínky, že se příslušný ovladač nachází v primární vyrovnávací paměti procesoru.

Zatím jsou známá dvě softwarové řešení tohoto problému. Prvním je vyvolání nějaké jiné neplatné instrukce, tím se příslušný ovladač načte do primární vyrovnávající paměti. Pak se jen jednoduše zamkne tato paměť a procesor dále funguje správně. Má to ale jeden podstatný háček - výkon procesoru se bez této paměti výrazně sníží. Z Pentia se pak stane slabší 486.

"Berlička" se našla

Druhé řešení je sice podstatně složitější, ale pro běžné použití je přijatelnější. Celé spočívá v stránkovacím mechanizmu procesoru v chráněném režimu. Stránkování funguje přibližně tak, že se některé části paměti ukládají do vyrovnávající paměti (třeba na disk). Pak se části paměti načítají zpět do tzv. rámců. Stránkování se to jmenuje proto, že do každého rámce se načítá úsek paměti dlouhý právě 4 KB. Těmto úsekům se říká stránky. Jestliže požadovaná stránka není aktuálně v paměti, je nutné vyvolat výjimku "výpadek stránky", která danou stránku načte. Toto pracuje prakticky automaticky, ale je možno procesoru "přikázat", aby určitou stránku načetl do paměti anebo naopak uvolnil její místo v rámci.

Dále je v chráněném režimu registr ISTR, který ukazuje na tabulku přerušení, kde se nacházejí příslušné ovladače výjimek. Celá finta spočívá v tom, že ovladač výjimky "neplatná instrukce" se v tabulce nachází před ovladačem "výpadek stránky". Registr IDTR se nastaví tak, aby tyto dva ovladače nebyli ve stejných stránkách. Pak se stránka s ovladačem "neplatné instrukce" uvolní z paměti. Pak ale po načtení "smrtící posloupnosti" se nejdříve vyvolá "výpadek stránky". V tomto místě procesor stále ještě žije a je možné úpravou této rutiny způsobit, že se vůbec "neplatná instrukce" nevyvolá. Prakticky to znamená, že se obsluha "neplatných instrukcí" přesouvá pod obsluhu "výpadků stránky".

Oprava spočívá v úpravě rutiny do_page_fault pod operačním systémem LINUX. Ve většině ostatních systémů nejsou k dispozice zdrojové texty, a tak si budete muset počkat na řešení od výrobce. Pevně věřím, že přijde brzy.

Váš názor Další článek: Odpovídá Kevin Cavanaugh, viceprezident firmy Lotus Corp.

Témata článku: Linux, Návody, Návod, Výpadky paměti, Chyba, Obec, Podstatný háček, ODS, Pentium, Fatální následek


Určitě si přečtěte

Podívejte se, jak vypadá mikrofon nebo blecha pod elektronovým mikroskopem

Podívejte se, jak vypadá mikrofon nebo blecha pod elektronovým mikroskopem

** Z Brna pochází třetina světové produkce elektronových mikroskopů ** První československý kus vyrobila Tesla už v 50. letech ** Dnes na ni navazuje třeba brněnský Tescan

Jakub Čížek | 19

Že by konečně revoluce? Nové chytré hodinky od Garminu mají průhledný solární panel

Že by konečně revoluce? Nové chytré hodinky od Garminu mají průhledný solární panel

** Chytré hodinky mají relativně malou výdrž ** Sportovní fénixy od Garminu jsou na tom ale lépe ** Poslední verze nabízí dokonce transparentní solární panel

Jakub Čížek | 56

Vyzkoušeli jsme chytrou čínskou zásuvku Sonoff S26 za tři stovky. Nevyhořeli jsme

Vyzkoušeli jsme chytrou čínskou zásuvku Sonoff S26 za tři stovky. Nevyhořeli jsme

** Je sice z Aliexpressu, ale funguje ** Můžete ji ovládat hlasem přes Amazon Echo nebo Google Home ** Za tři stovky zautomatizuje menší 230V spotřebič

Jakub Čížek | 101

Biblická potopa Česka: Jak bychom dopadli, kdyby nás zatopil oceán

Biblická potopa Česka: Jak bychom dopadli, kdyby nás zatopil oceán

** Představte si biblickou potopu ** Nejprve zaniknou Děčín a Břeclav, pak i Brno a Praha ** Hlavním městem se stane Jihlava a zbytky Čechů přežijí na Kvildě

Jakub Čížek | 92

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

** Mapy.cz neslouží jen k zobrazení podkladů a plánování tras ** Nabízejí celou řadu dalších praktických funkcí a možností ** Vybrali jsme třináct tipů a triků, o kterých možná (ne)víte

Karel Kilián | 31


Aktuální číslo časopisu Computer

Megatest 20 procesorů

Srovnání 15 True Wireless sluchátek

Vyplatí se tisknout fotografie doma?

Vybíráme nejlepší základní desky