Bug in AMD Ryzens Virtual 8086 mode enhancements (VME)?

Bereits kurz nach der Vor­stel­lung des AMD Ryzen ver­such­ten wir in unse­rem Forum Ant­wor­ten zu fin­den auf die Fra­ge, wes­halb eini­ge älte­re, in einer Vir­tua­li­sie­rungs­soft­ware gesam­mel­te Betriebs­sys­te­me wie etwa Win­dows XP 32 Bit unter Ryzen nicht mehr boo­ten woll­ten. Alle mög­li­chen vir­tua­li­sier­ten Sys­te­me boo­te­ten, selbst so exo­ti­sche wie Open­In­dia­na. Nur mit Win­dows XP und ähn­li­chen gab’s Pro­ble­me.

Nach mehr als einem Monat Tap­pen im Dun­keln gibt’s nun eine mög­li­che Erklä­rung: Ryzen hat ein Pro­blem mit VME. Außer in unse­rem eige­nen Forum gibt’s offen­bar auch in ande­ren Foren wie Red­dit oder AMDs eige­ner Com­mu­ni­ty ähn­li­che Fäl­le. Das Pro­blem liegt nicht an der Vir­tua­li­sie­rung:

To be clear, the pro­blem is not at all spe­ci­fic to vir­tua­li­za­ti­on. It has been con­fir­med on a Ryzen 5 1500X run­ning FreeDOS—which comes with the JemmEx memo­ry mana­ger, which enab­les VME by default. Until VME was dis­abled, any attempt to boot with JemmEx fai­led with inva­lid opcode excep­ti­ons. After dis­ab­ling VME, Free­DOS worked nor­mal­ly.

Das bedeu­tet, dass 32-Bit-Win­dows-Betriebs­sys­te­me ab Ver­si­on 4.0, die die Vir­tu­al 8086 mode enhan­ce­ments nut­zen, der­zeit Schwie­rig­kei­ten haben, unter AMDs Ryzen zu boo­ten. In der Pra­xis dürf­te das wenig Rele­vanz haben, denn wer instal­liert schon ein 32-Bit-Win­dows, das maxi­mal 4 GiB RAM adres­sie­ren kann, auf einem Ryzen-Sys­tem? Daher trat das Pro­blem bis­her nur in vir­tua­li­sier­ten Umge­bun­gen auf, wo Anwen­der ver­such­ten, alte Sys­te­me in einer VM zu star­ten, um dort irgend­wel­che Spe­zi­al­an­wen­dun­gen zu star­ten. Für Vir­tu­al­Box scheint es bereits einen Work­a­round zu geben für die Pro­ble­ma­tik.
Dan­ke SPINA und Atom­boss­ler für die Hin­wei­se.