FEX 2412 پروجيڪٽ جو رليز، جيڪو x86 ۽ x86-64 آرڪيٽيڪچر لاءِ مرتب ڪيل راندين ۽ ايپليڪيشنن کي هلائڻ لاءِ هڪ ايموليٽر تيار ڪري ٿو، پيش ڪيو ويو آهي. Linux- ARM64 (AArch64) پروسيسرز سان سسٽم تي ماحول. ٻين شين جي وچ ۾، FEX ايموليٽر کي Asahi پروجيڪٽ پاران لانچ کي منظم ڪرڻ لاءِ استعمال ڪيو ويندو آهي Linux-ايپل سلڪون ARM چپس سان سسٽم تي هلندڙ ماحول، اسٽيم ڪيٽلاگ مان رانديون، x86_64 آرڪيٽيڪچر لاءِ مرتب ڪيل. پروجيڪٽ ڪوڊ C++ ۾ اسيمبلي انسرٽس سان لکيل آهي ۽ MIT لائسنس تحت ورهايو ويو آهي.
ARM86 ماحول ۾ x64 ايپليڪيشنن کي هلائڻ لاءِ گهربل لائبريريون روٽ فائل سسٽم (rootfs) جي تصوير سان هڪ اوورلي پرت جي صورت ۾ ڳنڍيل آهن، اسڪواش فارميٽ ۾ فراهم ڪيل آهن. اهڙي پرت ان کي ممڪن بڻائي ٿو بغير هڪ الڳ ڪروٽ ماحول پيدا ڪرڻ کان سواء. اڳ ۾ ئي پروجيڪٽ پاران ٺاهيل روٽ ايف جي تصويرن جي لوڊ ڪرڻ خاص طور تي تيار ڪيل يوٽيلٽي FEXRootFSFetcher پاران ڪئي وئي آهي.
ميزبان ماحول جي مخصوص صلاحيتن تائين رسائي کي منظم ڪرڻ لاءِ، جيئن آواز ۽ 3D گرافڪس سان ڪم ڪرڻ لاءِ اوزار، خاص ٿنڪ لائبريريون روٽفز ۾ رکيل آهن جيڪي لائبريرين ۾ ڪالن کي ترجمو ڪن ٿيون ۽ ميزبان سسٽم جي پاسي تي ڪوڊ (مثال طور، ڪالز کي. OpenGL ۽ Vulkan). ساڳيون لائبريريون پڻ استعمال ڪري سگھجن ٿيون ميزبان پاسي تي مهمان ماحول ۾ ڪوڊ تائين رسائي حاصل ڪرڻ لاءِ. اڳتي وڌڻ لاءِ موجود لائبريريون شامل آهن: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client and libxshmfence.
نئين ورزن ۾ تبديليون شامل آهن اسٽيم ڪلائنٽ کي لانچ ڪرڻ سان مسئلا حل ڪرڻ، x86 PAUSE هدايتن جي ايموليشن کي تبديل ڪرڻ لاءِ YIELD جي بدران ARM WFE هدايتون استعمال ڪرڻ، سسٽم ڪالن جي ايموليشن مهيا ڪرڻ ضروري آهي گيم پيڊس سان ڪم ڪرڻ لاءِ، CPUID ۽ RDTSCP ايموليشن کي بهتر ڪرڻ، FEXCore جي بحالي. (ايموليشن پس منظر سي پي يو)، AVX ايڪسٽينشن جي ايموليشن ۾ بگ ختم ڪرڻ.
جو ذريعو: opennet.ru
