ไมโครซอฟท์ออกเครื่องมือตัวใหม่ ARM64EC (“Emulation Compatible”) มาเพื่อแก้ปัญหาการนำแอพ x86/x64 ไปรันบน Windows 11 on ARM
เดิมทีการรันแอพ x64 บน ARM ทำได้ 2 วิธีคือ คอมไพล์ใหม่เป็น ARM ทั้งหมด (ประสิทธิภาพดี แต่เสียแรงทำ) หรือรันบนอีมูเลเตอร์ (ประสิทธิภาพไม่ดี แต่รันได้เลย)
ปัญหาคือแอพที่ใหญ่และซับซ้อนมากๆ อาจมีไลบรารีหรือปลั๊กอินจากบริษัทอื่นๆ ที่ยังไม่รองรับ ARM ทำให้การคอมไพล์ใหม่ทั้งหมดเป็นไปไม่ได้เลย ไมโครซอฟท์จึงออก ARM64EC เพื่อแก้ปัญหาแบบไฮบริด ให้ไบนารี x86 และ ARM ผสมผสานกันได้
การใช้ ARM64EC จะทำให้เราสามารถแปลงโค้ดบางส่วนเป็น ARM เพื่อรันแบบเนทีฟได้ก่อน โค้ดส่วนที่ยังเป็น x64 จะรันในอีมูเลเตอร์ต่อไป วิธีนี้ช่วยให้นักพัฒนาสามารถค่อยๆ พอร์ตโค้ดทีละส่วนเป็น ARM ได้
ไมโครซอฟท์ระบุว่าตอนนี้แอพของตัวเองที่เริ่มใช้ท่านี้แล้วคือ Office for ARM 64 บิต ที่จะเปิดให้ทดสอบในเร็วๆ นี้
ARM64EC เปิดให้ใช้งานแล้ว ผู้ใช้ต้องติดตั้ง Windows Insider SDK ของ Windows 11 ร่วมกับ Visual Studio 16.11 Preview 2 ขึ้นไป


ที่มา - Windows Developer, Office Insider
on
ซึ่งมองว่าควรจะเปิดให้ตั้งแต่
IDCET Tue, 29/06/2021 - 11:07
ซึ่งมองว่าควรจะเปิดให้ตั้งแต่ตอนทำ Windows on ARM เปิดตัวแล้วด้วยซ้ำ แนวทางเดียวกับ Universal App ของ Apple ไปเลย แต่จะดีอีกหน่อยถ้ามี Rosetta บน Windows on ARM แล้วใช้งานได้ราบรื่นเหมือน x86-64
น่าสนใจ
tom789 Tue, 29/06/2021 - 12:39
น่าสนใจ รอดูประสิทธิภาพว่าจะเป็นยังไง นะ
นั่นคือ Office บน x86 กับ ARM
darkleonic Tue, 29/06/2021 - 14:30
นั่นคือ Office บน x86 กับ ARM จะมาจาก source code เดียวกัน ไม่มีปัญหาเปิดไฟล์เพี้ยนแน่นอน?
สาธุ
iamfalan Tue, 29/06/2021 - 15:38
In reply to นั่นคือ Office บน x86 กับ ARM by darkleonic
สาธุ
สังหรใจว่า Microsoft
xenatt Tue, 29/06/2021 - 18:13
สังหรใจว่า Microsoft กำลังจะทำ Windows Phone แบบที่ Run App Android ได้
ผมก็แอบสงสัยอยู่
hisoft Tue, 29/06/2021 - 19:53
In reply to สังหรใจว่า Microsoft by xenatt
ผมก็แอบสงสัยอยู่
แต่ดัน Windows Arm แน่นอน
xenatt Tue, 29/06/2021 - 22:12
In reply to ผมก็แอบสงสัยอยู่ by hisoft
แต่ดัน Windows Arm แน่นอน
จำได้ว่า Microsoft
hisoft Tue, 29/06/2021 - 23:37
จำได้ว่า Microsoft เคยแนะนำว่าถ้าไม่ได้มีความจำเป็นอะไรก็ให้ลง x86 บนเครื่อง x86-64 เพราะอาจเจอส่วนเสริมที่ไม่รองรับ 64 bit