Box86 ۽ Box64 emulators جا نوان نسخا، توهان کي ARM سسٽم تي x86 رانديون هلائڻ جي اجازت ڏئي ٿي

Box86 0.2.6 ۽ Box64 0.1.8 ايموليٽرز جا ريليز شايع ڪيا ويا آهن، جيڪي X86 ۽ x86_64 آرڪيٽيڪچرز لاءِ ARM، ARM64، PPC64LE ۽ RISC-V پروسيسرز سان گڏ سامان تي مرتب ڪيل لينڪس پروگرامن کي هلائڻ لاءِ ٺهيل آهن. پروجيڪٽ ڊولپرز جي هڪ ٽيم پاران هم وقت سازي سان ٺاهيا ويا آهن - Box86 32-bit x86 ايپليڪيشنن کي هلائڻ جي صلاحيت تائين محدود آهي، ۽ Box64 64-bit executables کي هلائڻ جي صلاحيت فراهم ڪري ٿو. پروجيڪٽ گيمنگ ايپليڪيشنن جي لانچ کي منظم ڪرڻ تي تمام گهڻو ڌيان ڏئي ٿو، بشمول وائن ۽ پروٽون ذريعي ونڊوز بلڊز کي لانچ ڪرڻ جي صلاحيت مهيا ڪرڻ. پروجيڪٽ جو سورس ڪوڊ C ۾ لکيل آهي ۽ MIT لائسنس تحت ورهايو ويو (Box86, Box64).

پروجيڪٽ جي هڪ خاصيت هڪ هائبرڊ عملدرآمد ماڊل جو استعمال آهي، جنهن ۾ ايموليشن صرف ايپليڪيشن جي مشين ڪوڊ ۽ مخصوص لائبريرين تي لاڳو ٿئي ٿي. عام سسٽم لائبريريون، جن ۾ libc، libm، GTK، SDL، Vulkan ۽ OpenGL شامل آهن، انهن اختيارن سان متبادل آهن جيڪي ٽارگيٽ پليٽ فارمن لاءِ آهن. هن طريقي سان، لائبريري ڪالون بغير تخليق ڪيا ويا آهن، نتيجي ۾ اهم ڪارڪردگي حاصلات.

ڪوڊ جي ايموليشن جنهن جي لاءِ ڪو به متبادل نه آهي اصل ۾ ٽارگيٽ پليٽ فارم جي هڪ ٽيڪنڪ استعمال ڪندي متحرڪ ريڪمپيليشن (DynaRec) مشين جي هدايتن جي هڪ سيٽ کان ٻئي ڏانهن. مشين جي هدايتن جي تشريح ڪرڻ جي مقابلي ۾، متحرڪ ٻيهر ٺاھڻ 5-10 ڀيرا وڌيڪ ڪارڪردگي ڏيکاري ٿو.

ڪارڪردگي جي تجربن ۾، Box86 ۽ Box64 ايموليٽر، جڏهن Armhf ۽ Aarch64 پليٽ فارمن تي عمل ڪيو ويو، خاص طور تي QEMU ۽ FEX-emu پروجيڪٽس کان وڌيڪ ڪارڪردگي ڏيکاريا، ۽ انفرادي ٽيسٽن ۾ (glmark2، openarena) انهن ڪارڪردگي حاصل ڪئي هڪجهڙائي واري اسيمبلي کي هلائڻ لاءِ. پليٽ فارم. compute-intensive 7-zip ۽ dav1d ٽيسٽن ۾، Box64 جي ڪارڪردگي 27٪ کان 53٪ تائين هئي ڏيهي ايپليڪيشن جي ڪارڪردگي (مقابلي لاءِ، QEMU 5-16٪ جا نتيجا ڏيکاريا، ۽ FEX-emu - 13-26٪ ). اضافي طور تي، هڪ مقابلو ڪيو ويو Rosetta 2 ايموليٽر سان، ايپل پاران استعمال ڪيو ويو x86 ڪوڊ هلائڻ لاءِ سسٽم تي M1 ARM چپ سان. Rosetta 2 7zip-based test مهيا ڪيو 71% جي ڏيهي تعمير جي ڪارڪردگي سان، ۽ Box64 - 57%.

Box86 ۽ Box64 emulators جا نوان نسخا، توهان کي ARM سسٽم تي x86 رانديون هلائڻ جي اجازت ڏئي ٿي

ايپليڪيشنن سان مطابقت جي طور تي، 165 راندين مان آزمائشي، اٽڪل 70٪ ڪاميابي سان ڪم ڪيو. اٽڪل 10٪ ٻيو ڪم، پر ڪجهه تحفظات ۽ پابندين سان. سپورٽ ٿيل گيمز ۾ شامل آهن WorldOfGoo، Airline Tycoon Deluxe، FTL، Undertale، A Risk of Rain، Cook Serve Delicious ۽ سڀ کان وڌيڪ GameMaker رانديون. انهن راندين ۾ جن ۾ مسئلن جو ذڪر ڪيو ويو آهي، انهن راندين جو ذڪر ڪيو ويو آهي جيڪو يونٽي 3 ڊي انجڻ تي ٻڌل آهي، جيڪو مونو پيڪيج سان ڳنڍيل آهي، جنهن جي ايموليشن هميشه مونو ۾ استعمال ٿيندڙ JIT جي تاليف جي ڪري ڪم نه ڪندي آهي، ۽ اهو پڻ مناسب آهي. اعلي گرافڪس گهرجون جيڪي هميشه ARM بورڊن تي حاصل نه هوندا آهن. GTK ايپليڪيشن لائبريرين جو متبادل في الحال GTK2 تائين محدود آهي (GTK3/4 جو متبادل مڪمل طور تي لاڳو نه ڪيو ويو آهي).

نئين رليز ۾ مکيه تبديليون:

  • Vulkan لائبريري لاء پابند شامل ڪيو ويو. شامل ڪيل سپورٽ Vulkan ۽ DXVK گرافڪس API لاءِ (DXGI جو نفاذ، Direct3D 9، 10 ۽ 11 Vulkan جي چوٽي تي).
  • GTK لائبريرين لاءِ بهتر ٿيل پابنديون. gstreamer ۽ لائبريرين لاءِ شامل ٿيل بائنڊنگس عام طور تي GTK ايپليڪيشنن ۾ استعمال ٿيل آهن.
  • RISC-V ۽ PPC64LE آرڪيٽيڪچرز لاءِ شامل ڪيل ابتدائي مدد (صرف تشريح واري موڊ) لاءِ.
  • SteamPlay ۽ پروٽون پرت لاءِ سپورٽ کي بهتر بڻائڻ لاءِ سڌارا ڪيا ويا آهن. AArch64 بورڊن جهڙوڪ Raspberry Pi 3 ۽ 4 تي اسٽيم مان ڪيترن ئي لينڪس ۽ ونڊوز رانديون هلائڻ جي صلاحيت مهيا ڪري ٿي.
  • بهتر ميموري مينيجمينٽ، ايم ايم پي ڪارڪردگي، ۽ ميموري تحفظ جي خلاف ورزي جي ٽريڪنگ.
  • libc ۾ ڪلون سسٽم ڪال لاءِ بهتر سپورٽ. نئين سسٽم ڪالن لاءِ سپورٽ شامل ڪئي وئي.
  • متحرڪ ريڪمپيليشن انجڻ SSE/x87 رجسٽرز سان ڪم کي بهتر بڻايو، نئين مشين ڪوڊز لاءِ سپورٽ شامل ڪئي، فلوٽ ۽ ڊبل نمبرن جي بهتر تبديلي، اندروني منتقلي جي بهتر پروسيسنگ، ۽ نئين آرڪيٽيڪچرز لاءِ سپورٽ جي اضافي کي آسان ڪيو.
  • بهتر ٿيل ELF فائل لوڊ ڪندڙ.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو