F0 0F C7 C8 er en sekvens af bytes , der danner en ugyldig maskininstruktion for x86 - familieprocessorer . I processorer Pentium MMX og Pentium OverDrive , på grund af en hardwarefejl, førte en kommando, der blev udført på ethvert privilegieniveau, til et dødt hænge af processoren, hvilket negativt påvirkede pålideligheden af systemet som helhed.
Instruktionen er en kommando:
lock cmpxchg8b eax
Operanden kan være et hvilket som helst register bortset fra eax. cmpxchg8b bruges til at sammenligne indholdet af et par registre eax og edx med 8 bytes af indholdet i et eller andet hukommelsesområde. Dette forsøger at indsætte et 8-byte resultat i et 4-byte register.
I sig selv kaster denne kommando ganske enkelt en undtagelse , men når den kombineres med låsepræfikset (den bruges til at forhindre to processorer i at få adgang til det samme hukommelsesområde på samme tid), bliver undtagelsesbehandleren ikke kaldt, processoren stopper med at behandle afbrydelser , og en genstart er påkrævet for at bringe den til en fungerende tilstand.
Denne instruktion kræver ingen særlige privilegier , og på grund af den høje udbredelse af Intel-processorer , var problemet alvorligt. Selvom det ikke forårsagede nogen permanent skade på hardwaren, kan det også forårsage datatab i tilfælde, hvor der opstod en processorfejl under en diskskrivningsoperation med en ikke-tømt buffer, en interrupt eller anden ikke-atomisk operation.