Menu

윈도우 10 ARM 정보 공개

2017.05.16 01:00

빌딩주인 IT




-



마이크로소프트는 빌드 2017 컨퍼런스에서 윈도우 10 on ARM 의 정보를 추가로 공개했습니다.

 

앞서 스냅드래곤 820 에서 돌아가는 윈도우 10 ARM 영상이 공개된 적 있는데
이번에 실기에서 돌아가는 모습과 x86 에뮬레이션의 원리를 밝힌 것입니다. 
 
 
전문적인 내용을 짧게 이야기해 설명이 애매한데 나름 이해한 내용을 써보면 이렇습니다.
 
 
-  퀄컴이 만든 엔지니어링 개발 보드에서 윈도우를 돌림
스냅드래곤 835, 4GB 램의 사양입니다.
 
 
-  윈도우 10 프로를 그대로 이식
윈도우 스토어, 엣지 브라우저, 코타나, 윈도우 헬로, 윈도우 잉크 등 들어가 있습니다
스냅드래곤 835 가 64bit 프로세서이기 때문에 64bit 윈도우가 돌아가는 것이 확인됩니다.
 
 
-  스토어에서 UWP 앱, Win32 프로그램 포팅 앱 둘 다 다운로드 가능
 
 
-  X86 에뮬레이션 덕에 Win32 프로그램 사용 가능
7-Zip install exe 으로 설치하고 실행하는 것을 시연합니다.
 
 
-  드라이버 내장하여 레거시 USB 액세서리 플러그 앤 플레이 가능
영상에서 USB 카메라를 꽂아 사용하는 것을 시연합니다.
 
 
-  x86 에뮬레이션의 정보를 공개
구조는 위의 그림에서 우측에 있습니다.
 
 
-  윈도 10 ARM 의 커널, 드라이버, 네이티브 DLL (OS 라이브러리),
시스템 서비스 (NTDLL) 등 뼈대는 ARM64 코드로 구현되었습니다
파란색 박스 속 내용이 ARM 코드로 구현된 것입니다.
 
 
-  x86 에뮬레이션은 윈도우 온 윈도우  (Windows on Windows)  방식을 이용
WOW 는 레거시 코드 호환을 위해 개발된 것으로
레거시 OS 의 커널, 드라이버, 기타 구성 요소를 모아놓은 추상화 레이어입니다
윈도우 NT 를 시작으로 지금까지 내장되어 온 기술입니다.
 
 
-  WOW 레이어는 구조가 다른 64비트 윈도우가 32비트 프로그램 호환성을 갖게 되는 이유이며
이는 WOW64 레이어에서 x86 32bit 프로그램을 처리하기 때문입니다
x86 에뮬레이션도 이 방식으로 진행되며
따라서 x86 앱 개발자는 윈도우 10 ARM 을 위한 별도 작업을 하지 않아도 될 것입니다.
 
 
-  하지만 x86 CPU 와 ARM CPU 는 명령어 인스트럭션 셋트가 다르다는 문제가 있습니다
때문에 x86 명령어를 ARM 명령어로 번역하는
동적 바이너리 변환기 (Dynamic Binary Translator) 가 추가됩니다
즉 CPU 를 소프트웨어 에뮬레이션 하는 것입니다.
 
 
-  번역은 런타임 중에 이뤄지며 변환된 ARM 명령어는
향후 빠르게 쓸 수 있게 메모리나 디스크에 캐시로 저장됩니다
이를 통해 x86 프로그램의 시스템 호출 (System call) 은 네이티브 수준으로 이뤄지게 될 것입니다.
 
 
-  ARM64 코드로 컴파일한 x86 DLL 인 CHPE 가 추가
이를 통해 32비트 자료형 → 64비트 자료형 변환 프로세스를 줄여줍니다.
 
 
-  많은 코드를 ARM 네이티브로 구현하였기에
앱 코드, 시스템 코드, 커널 간 콜 시간에 따라
네이티브에 가까운 x86 앱 퍼포먼스를 볼 수 있다고 합니다.
 
 
-  윈도우 10 ARM 에서 UWP 앱은 네이티브로 작동
프로세서, 램, 배터리를 소모하는 x86 에뮬레이션 과정이 없기 때문에
ARM UWP 앱은 x86 앱보다 더 잘 돌아갈 것입니다.
 
 
-  스토어와 iHeartRadio 라는 UWP 앱을 실행한 상태에서
작업 관리자를 보면 스냅 835 의 모든 코어를 사용하고 있는 걸 볼 수 있습니다
앱 속성에서 ARM 패키징된 앱인 것이 확인됩니다.
 

-  ARM 패키지로 빌드할 때 개발자는 코드를 바꾸지 않아도 됩니다
ARM UWP 앱을 패키징하고 스토어에 제출하는 것으로 끝입니다.
 
 
-  윈도우 10 ARM 이 다가오고 있으므로
ARM UWP 앱에 소극적이던 개발자들은 생각을 다시 해보라고 마무리합니다.
 
 
 


https://www.youtube.com/watch?v=DRBMBkL7SCM      *   해당 영상으로 13분 17초 길이입니다.

  





저작자 표시 비영리 변경 금지
신고


댓글 0

티스토리 툴바