2007. 10. 17. 17:08

Windos CE 5.0 vs. Windows Embedded CE 6.0 ch.2


Windows CE 5.0에서 Windows Embedded CE 6.0으로 넘어오면서 OAL에서 바뀐 점은 다음과 같다.

1. 커널과 OAL의 분리했다.
   -  NKLoader에 의해 합체
   -  독립적으로 업데이트 가틍
2. 전체적인 OAL구조는 같다.
  - OEM함수
  - 커널 접근은 커널 인터페이스를 통해서 가능
3. 새로운 메모리 모델을 OAL에 적용했다.

* OAL(OEM Adapted Layer) - 각 OEM의 platform에 맞게 작성된 사용자가 만든 소스 부분이라 생각하면 된다.

사용자 삽입 이미지
Windows CE 5.0과 달리 Windows Embedded CE 6.0은 커널과 OAL을 분리했다.

Windows Embedded CE 6.0 BSP의 특징.
1. 새로운 커널을 지원
2. 쉬운 BSP개발 및 포팅
3. PQOAL 지원
4. OAL, Kernel 그리고 KITL 독립성 지원

다음 그림을 보면서 디렉토리 구조가 어떻게 바뀌었는지 살펴보자.
사용자 삽입 이미지 사용자 삽입 이미지
Windows CE 5.0과 Windows Embedded CE 6.0의 디렉토리 변경점

Kernel의 변경된 점
1. Windows CE 5.0
  - OAL + Kernel = Kern.exe
  - OAL + Kernel + KITL = kernKitl.exe
  - OAL + Kernel + KITL + Profiler = kernkitlprof.exe
2. Windows Embedded CE 6.0
  - OAL = oal.exe
  - Kernel = kernel.dll
  - KITL = kitl.dll

아래 그림에서 보는것처럼 6.0에서는 커널과 OAL을 분리했고, 서로 통신하기 위한 수단으로 NKGLOBAL과 OEMGLOBAL이라는 구조를 두었다.
사용자 삽입 이미지
Windows Embedded CE 6.0 PQOAL 디자인

이처럼 구조가 Windows CE 5.0과는 다르기 때문에 6.0으로 bsp를 migration하기 위해서는 구조를 파악하는것이 우선이다.

음...

참고 : 웹캐스트 및 웹 자료