Advertisement

CSMWrap – DOS és XP indítása UEFI rendszereken

ACSMWrapegy olyan eszköz, amely egy CSM (Compatibility Support Module) és VESA VBIOS segítségévelemulálja a hagyományos BIOS környezetetUEFI-only rendszereken.Ez lehetővé teszi, hogy olyan régi operációs rendszerek, mint aFreeDOS, Windows XP vagy Windows 7, elinduljanak olyan gépeken, amelyek nem rendelkeznek natív BIOS támogatással.

A CSMWrap a SeaBIOS projekt CSM moduljára és VESA VBIOS-ára épül.További hozzájárulások érkeztek a Nyu-EFI-től az EFI C futásidejű környezet, build rendszer és fejlécek terén, valamint az EDK2-től kódrészletek formájában.A közösség tagjai, mint például @CanonKong, tesztelési visszajelzésekkel és általános ismeretekkel járultak hozzá a projekthez.

Jelenleg az alábbi feladatokat látja el működése során:

  • A hagyományos BIOS memória régió (0xC0000–0xFFFFF) feloldásaírásra.

  • A SeaBIOS CSM modul betöltésea memóriába.

  • Memóriatérkép konfigurálásaa hagyományos alkalmazások számára.

  • VGA BIOS beállításaaz EFI GOP (Graphics Output Protocol) információi alapján.

  • E820 memóriatérkép létrehozásaaz EFI memóriatérkép alapján.

  • Alapvető kompatibilitási táblák biztosítása, mint az ACPI és SMBIOS.

  • A CSM modul és a hagyományos szolgáltatások inicializálása.

  • Az irányítás átadásaa hagyományos boot folyamatnak.

Jelenleg aFreeDOS, Windows XP és Windows 7indítását teszi lehetővéQEMU-ban (q35 és piix4 gépeken egyaránt) illetve bizonyos valós hardvereken. Reméljük, hogy a jövőben már sokkal több információnk lesz ezzel kapcsolatban.

Mivel egy jelenleg is aktív fejlesztés alatt álló projektről van szó, ez a lehetőség még kidolgozás alatt áll és nagyon vegyesek lehetnek a tapasztalatok.

Above 4G Decoding:A CSMWrap működéséhez szinte elengedhetetlen, hogy a BIOS/UEFI beállításokbanaz Above 4G Decoding le legyen tiltva.Ennek oka, hogy a hagyományos BIOS csak az első 4 GB memóriához fér hozzá, míg az UEFI firmware-ek gyakran a GPU VRAM BAR-t a 4 GB fölé helyezik. 

AGPU VRAM BAR(Base Address Register) egy technikai fogalom, amely aPCIe (Peripheral Component Interconnect Express)rendszeren belül határozza meg, hogyan éri el a CPU a GPU videómemóriáját (VRAM-ját).

Lehetővé teszi, hogy a rendszer (elsősorban a CPU)közvetlenül hozzáférjen a GPU VRAM-jához, például:

  • nagy adatblokkok másolására

  • gyors adatfeldolgozásra (pl. DMA)

  • fejlettebb virtualizációra (pl. GPU passthrough)

A GPU hagyományosanDMA (Direct Memory Access)használatával másolta az adatokat a rendszermemória és a VRAM között, AVRAM BARlehetővé teszi, hogy a CPUközvetlenül írjon/olvassona VRAM-ba, ha az elérhető a címtérben.

Legacy régió feloldása:A CSMWrap jelenleg azEFI_LEGACY_REGION2_PROTOCOL-ra támaszkodik a hagyományos régió írásának engedélyezéséhez.Ez a protokoll nem minden rendszeren érhető el.Azokban az esetekben, ahol ez nem áll rendelkezésre, a CSMWrap megpróbálja a chipset PAM regisztereit használni a dekódoláshoz, ami nem mindig sikerül.

Windows videó módbeállítási problémák:A Windows XP/7 videó módbeállítási logikája néha inkompatibilis módokat próbál beállítani azint10hhasználatával, ami villogást vagy fekete képernyőt okozhat a hagyományos OS-re való átváltás után.Ez ismert probléma, és a jövőben javításra kerülhet.Addig is megpróbálhatod a GPU illesztőprogramját beépíteni az OS képébe, hogy elkerüld a VESA BIOS használatát.

A CSMWrap használatához egyszerűen másoljuk fel acsmwarp.efifájlt és használjuk bootloaderkéntaz EFI partíción, vagy nyilván ahonnan indítani szeretnénk.

Ne felejtsük elletiltani a Secure Boot-ot és az Above 4G Decoding-eta BIOS/UEFI beállításokban!

ACSMWrapkódja és további infók és letöltés a GitHub linken:CSMWrapGitHub

Jó töltögetést és tesztelgetést!

Translate »