본문 바로가기

내 컴퓨터/내 잡다 문서

Wince 5.0과 6.0의 차이


Wince 5.0과 6.0의 차이

- 윈도우CE 6.0은 그 동안 윈도우 CE가 가지고 있던 메모리 구조의 취약점을 대폭 개선하였다. 최신의 비쥬얼 스튜디오 닷넷 2005(Visual Studio .NET 2005) 개발 도구와의 통합으로 개발 생산성을 향상 시켰습니다.

- 윈도우 CE 5.0까지 응용프로그램당 32MB 메모리 사용이라는 제한과 32개의 시스템 프로세스 및 응용프로그램 운영이라는 제한도 대폭 개선되었다. 6.0은 응용프로그램당 2GB의 메모리를 사용하고 32,000개의 시스템 프로세스 및 응용프로그램을 운영할 수 있습니다.


- 디바이스 매니져, GEWS 매니져의 형태 변경
기존에는 device.exe와 gwes.exe의 "프로세스" 형태이던 커널 컴포넌트 매니저가 6.0에서는 dll형태로 변경되었습니다.

- 커널/유저모드의 명확한 구분
5.0에서는 유저모드에서도 커널모드 함수에 마음대로 접근이 가능했었습니다만, 6.0으로 올라오면서 유저모드는 설사 그 파일이 DLL일지라 하더라도 커널모드 함수에 접근이 되지 않습니다.
(예를들면 주소를 직접 지정하여 들어간다거나 k.coredll.dll의 함수를 익스포트해서 사용한다거나 하는 작업을 6.0에서는 못합니다. coredll.dll의 함수는 커널모드 함수를 사용할 수 없기 때문에 익스포트할 경우 함수가 동작하지 않습니다)
그럼 어떻게 하느냐...
커널모드로 빌드된 dll을 OS에 포함시켜두고 IOControl등을 통해 유저모드 어플/dll이 커널모드 dll을 통해 접근해야 합니다. 짜증난다면 짜증나는 일이지만 보안의 측면에서는 당연한 변화입니다.
참고로 coredll조차 k.coredll.dll(커널모드 커널)과 coredll.dll(유저모드 커널)로 나뉘어 있을 정도입니다.

- 커널의 부하를 최소화하기 위한 윈도우 CE 고유의 마이크로-커널 구조를 그대로 이어가면서 커널과 시스템 프로세스간의 호출 이동 시간을 대폭 개선한 통합커널 구조가 사용됩니다.

- ARM11 성능 향상
확인된 바는 아니지만 ARM컴파일러가 ADS에서 RVDS로 변경되면서 ARM 기계어 성능이 향상된다고 합니다.

...
그냥 출처대로 퍼와서 대충 조합시킨건데.. 흠?;;

출처 : http://blog.naver.com/ddrkcodz?Redirect=Log&logNo=10033701694
         http://cafe.naver.com/wincepro/48385