แฮงก์โอเวอร์โปรเจ็กต์เพื่อเปิดแอพพลิเคชั่น Windows บน ARM64

รูปภาพที่โดดเด่นของไวน์ Android

ผู้พัฒนาโครงการไวน์ Stefan DösingerและAndré Hentschel ได้ประกาศเปิดตัวโปรแกรมจำลอง Hangover เวอร์ชันสาธารณะเป็นครั้งแรก นี้ อนุญาตให้เรียกใช้แอปพลิเคชัน Windows แบบ 32 บิตและ 64 บิต ออกแบบมาสำหรับสถาปัตยกรรม x86 และ x86_64 ในสภาพแวดล้อม Linux และ Android ที่ใช้สถาปัตยกรรม ARM64 (Aarch64)

ตรงข้ามกับการรัน Wine ด้วยสภาพแวดล้อมระบบที่น้อยที่สุดโดยใช้ QEMU ในโหมดจำลองที่ระดับการเรียกระบบ (โดยใช้เคอร์เนลเดียวกับระบบหลัก)

เกี่ยวกับโปรแกรมจำลองอาการเมาค้าง

โครงการ อาการเมาค้างช่วยให้ผู้ใช้สามารถมีประสิทธิภาพที่สูงขึ้นอย่างเห็นได้ชัด การเร่งโครงการนี้ ทำได้โดยการถ่ายโอนเลเยอร์การจำลองไปยังระดับ Win32 / Win64 API แทนที่จะเลียนแบบการเรียกระบบปกติโดยใช้การจำลอง Win32 / Win64 ตามหลัง
ปัจจุบันโครงการอนุญาตให้ผู้ใช้เรียกใช้เฉพาะแอปพลิเคชันและเกมธรรมดาที่ใช้ Win64 และ Win32 API

สำหรับ Linux มีการใช้การรองรับ Direct3D ซึ่งยังไม่พร้อมใช้งานสำหรับ Android เนื่องจากการรองรับ OpenGL ES ใน Wine ไม่สมบูรณ์

การสนับสนุนดีบักเกอร์ไม่มีอยู่จริงและการจัดการข้อยกเว้นมีข้อบกพร่องที่ทราบแล้ว ด้วยเหตุผลเหล่านี้ระบบป้องกันการคัดลอกและระบบป้องกันการโกงจึงมีแนวโน้มที่จะแย่กว่า Wine เวอร์ชันปกติ

โดยทั่วไปแอปพลิเคชัน 64 บิตสามารถคาดหวังได้ว่าจะมีรูปทรงที่ดีกว่าแอปพลิเคชัน 32 บิตเนื่องจากไม่จำเป็นต้องมีโครงสร้างข้อมูลใด ๆ
เพื่อรับประกันการทำงานจะใช้การติดตั้ง Wine เป็นประจำเสริมด้วยไลบรารีและเลเยอร์ DLL ต่างๆ
ในระบบ Linux แอปพลิเคชัน Windows จะทำงานโดยอัตโนมัติเมื่อ QEMU อยู่ในไดเร็กทอรี Wine ("C: \ x86 \ qemu-x86_64.exe.so")

ในขณะที่บน Android จะเสนอให้ใช้ยูทิลิตี้ cmd เพื่อดำเนินการ
พื้นที่ที่อยู่ จำกัด ไว้ที่ 4GB เมื่อจองแต่ละที่อยู่ต่ำกว่า 4GB

ก่อนหน้านี้ไลบรารีไวน์ที่สำคัญส่วนใหญ่จะโหลดสูงกว่า 4GB เพื่อให้พื้นที่ด้านบนต่ำกว่า 4GB ว่างมากที่สุด ข้อเสียคือการเริ่มกระบวนการใหม่จะใช้เวลาประมาณ 2 วินาที

ไวน์ 4.0

Hangover a Wine สำหรับ ARM64

Wine มองว่าแต่ละกระบวนการเป็นกระบวนการ 64 บิตดังนั้นเลเยอร์ WoW64 จึงไม่ทำงาน. สิ่งนี้จะทำงานได้ดีสำหรับแอปพลิเคชันแบบ 32 บิตหรือ 64 บิตล้วน แต่จะทำให้เกิดปัญหากับแอปพลิเคชันแบบผสมที่คาดว่าจะมีความแตกต่างระหว่าง C: \ windows \ system32 และ C: \ windows \ syswow64

เกี่ยวกับการเปิดตัวแอพพลิเคชั่น Windows 32 บิต (x86) ได้รับการประมวลผลในระดับการแปลของโครงสร้างที่ส่งระหว่างแอปพลิเคชันและไวน์ (รุ่น LLP64 บน Windows จะรักษาความเข้ากันได้พื้นฐานของเฟรมเวิร์กระหว่าง WinAPI 32 บิตและ 64 บิต)

ในการเรียกใช้แอปพลิเคชัน Windows 32 บิตจะใช้ชุดประกอบ Wine 64 บิตและแต่ละกระบวนการจะถือว่าเป็น 64 บิตก่อน

ในฝั่งโฮสต์รองรับเฉพาะสถาปัตยกรรม ARM64 และ x86_64 เท่านั้น แต่โค้ดจะรวมเข้าด้วยกันทำให้สามารถย้ายโปรเจ็กต์ไปยังสถาปัตยกรรมอื่น ๆ ตามลำดับไบต์จากอายุน้อยที่สุดไปจนถึงเก่าแก่ที่สุด (endian) โดยไม่ต้องใช้ความพยายามมากนัก

ยังมีอะไรให้ขัดอีกเยอะ

ประสิทธิภาพของอาการเมาค้างในขณะนี้ทำให้เป็นที่ต้องการอย่างมาก ตั้งแต่จคอขวดหลักคือประสิทธิภาพของโค้ดที่ QEMU สร้างขึ้น

อย่างไรก็ตาม เมื่อทำงานบนอุปกรณ์ Android Nvidia Shield TV ประสิทธิภาพเพียงพอสำหรับการเล่นเกมจากยุค 2000

แอปพลิเคชันที่ทดสอบใน Hangover ได้แก่ Notepad ++, ANNO 1602, Age of Wonders, Warhammer 40k: Dawn of War, The Settlers II 10th Anniversary, Prince of Persia 3D, Worms 2 และ Worms Armageddon ตัวอย่าง DirectX 9 SDK ยังทำงานด้วยความเร็วที่ยอมรับได้

รุ่นนี้เป็นไปตามรหัสพื้นฐานของ Wine 4.0 ซึ่งแสดงในหมายเลขเวอร์ชัน Hangover 0.4.0 เลเยอร์การจำลองขึ้นอยู่กับโครงการ QEMU


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา