advanced building of a windows ce image
DESCRIPTION
Advanced Building of a Windows CE Image. 강의 내용. Platform Builder 디렉토리 구조 Platform Builder 에서의 Build Process Configuration File 수정 새로운 component 생성 및 추가. Platform Builder Directory Structure. Platform Directory Hardware specific file 포함 Public Directory - PowerPoint PPT PresentationTRANSCRIPT
Advanced Building of a Windows CE
Image
모바일운영체제 - Windows CE 2
강의 내용
Platform Builder 디렉토리 구조 Platform Builder 에서의 Build Process Configuration File 수정 새로운 component 생성 및 추가
모바일운영체제 - Windows CE 3
Platform Builder Directory Structure
Platform Directory Hardware specific file 포함
Public Directory Platform 에 독립적인 component 와 WINCE
설정 파일 포함 SDK Directory
Platform 생성을 위한 tool 과 binary Others Directory
다양한 runtime, sample component 저장소 Private Directory
Windows CE .NET OS 의 source code 포함
모바일운영체제 - Windows CE 4
Platform directory (1)
Platform 에 한정적인 Board Support Package (BSP) file
%_WINCEROOT%\Platform 하위 directory 는 각각의 reference
platform 지원 ARM 만을 설치 했을 경우 CEPC / EMULATOR / GEODE / SMDK2410 /
MAINSTONE 등을 생성 각 directory 는 .dirs file, SOURCE
file, .bat file 을 포함
모바일운영체제 - Windows CE 5
Platform directory (2)
CESYSGEN Platform 에 한정된 sysgen 명령을 포함한 makefile
DRIVERS platform 의 모든 driver 의 driver source file
EBOOT platform 의 Ethernet boot loader 를 위한 source file
FILES image 를 build 하기 위한 platform 한정된
configuration file GWE
display, Battery, LED 같은 GWE module 의 hardware 의존적인 부분
모바일운영체제 - Windows CE 6
Platform directory (3)
INC CPU register 와 모든 device 의 address 의
platform 한정적인 header file KERNEL
OEM Adaptation Layer (OAL) function 구현 file LIB
Platform 한정적인 static libraries (.LIB) Build process 간 생성됨
TARGET DRIVER dynamic link library 와 같은 platform
한정적인 modules GWE.EXE 와 NK.EXE 와 같은 system executable Build process 간 생성됨
모바일운영체제 - Windows CE 7
Platform directory (4)
CPU Support Package(CSP) \WINCE420\PUBLIC\COMMON\OAK\CSP 에 존재 각 CPU type 에 대한 common driver, OAL 과
driver 의 library component 를 제공
모바일운영체제 - Windows CE 8
Public directory (1)
Platform 에 독립적인 Component 와 configuration 의 설정 포함
%WINCEROOT%\PUBLIC 에 위치 3 가지 형태의 하위 디렉토리 포함
module, component 와 configuration 하위 directory : Wceshellfe, Wceappsfe, IE, MSMQ
Reference configuration 하위 directory : IABase, HLBase
Custom configuration 하위 directory
모바일운영체제 - Windows CE 9
Public directory (2) Module 과 Component 하위 directory
COMMON DATASYNC : Device 측면의 communication
component DCOM : COM 을 배분하기 위한 모듈 과 component DIRECTX IE MSMQ RDP : Windows 기반의 terminal 을 위한 Remote
Desktop Protocol SCRIPT : JavaScript, VBScript engines SERVERS : Web Server 지원 WCEAPPSFE : Pocket Word/Outlook 응용프로그램
인가 WCESHELLFE : task manager, control panel
component shell 인가
모바일운영체제 - Windows CE 10
Public directory (3)
모든 하위 directory 의 directory structure CESYSGEN
directory build 를 위한 makefile 포함 OAK
OAL Device Driver Kit 의 module 과 component 포함 SDK
Software Development Kit(SDK) 의 module 과 component 포함
일부는 DDK directory 를 포함 Device Driver Kit(DDK) 의 module 과 component 포함
모바일운영체제 - Windows CE 11
Public directory (4)
Reference Configuration 하위 directory 두 개의 reference configuration
IABase(Internet Appliance Base Configuration) %_WINCEROOT%\PUBLIC\IABase
HLBase(Headless Base Configuration)%_WINCEROOT%\PUBLIC\HLBase
각 하위 directory 는 비슷한 내용을 포함한다 : 특정한 pre-made configuration 이 build 될 때 , Batch(*.bat) file
의 collection 이 실행 Batch file 은 Platform 에 포함될 것을 control 하는 환경 변수를 설정 Batch file 은 예를 들어 HLBase_minkern.bat 또는
Electoronic_Payment_Terminal.bat OAK
Files : configuration file 과 configuration 의 default registry로 이루어짐
Misc : OS 에 포함될 module 과 component 를 나열한 CESYSGEN.BAT file 포함
모바일운영체제 - Windows CE 12
Public directory (5)
Custom Configuration 하위 directory configuration 을 생성할 때 , public directory 에 새로운
directory 생성 %_WINCEROOT%/Public/Myplat
RelDir OS image 를 build 하기 위해 요구되는 모든 file 을 포함하는
Release directory 는 module, default registry, default database, memory setting 을 포함
WINCE420 %_WINCEROOT% directory 의 조합은 custom configuration 을
명시 CESYSGEN
Common, Wceshell, Wceapps, IE, MSMQ 와 같은 Project 의 모든 module 과 component 를 포함
OAK(OAL Device Driver Kit) platform file 과 cesysgen.bat file 포함 Sysgen 단계에서 호출
Platform 을 정의한 Workspace file, project file 을 포함한다 .
모바일운영체제 - Windows CE 13
SDK Directory
Platform Builder 에서 사용하는 tool 그러나 , Image 를 build 하기 위해 사용되는 Tool 은
포함하지 않음 %_WINCEROOT_%\SDK Processor compilers
Platform 을 지원하는 cross compiler / assembler 포함
Development tools Error lookup, GuidGen, Link, Nmake
Miscellaneous utilites Zoomin, Windiff
모바일운영체제 - Windows CE 14
Others Directory
모든 Windows CE runtime libraries 와 headers 포함 .NET Compact Frameworks 의 component 와 ATL 와
MFC 의 Samples 포함 %WINCEROOT%\OTHERS ATL
Debugging 을 위한 ATL source code, libraries, headers DOTNET
.NET processor specific binaries 와 portable .NET Compact Framework file
MFC Debugging 을 위한 MFC source code, libraries, headers
SAMPLES MFC 와 ATL sample application 을 포함
WCETK Windows CE Test Kit(CETK) processor specific binaries CETK 는 각각의 Driver class 의 test 를 제공
모바일운영체제 - Windows CE 15
Private Directory
core operating system 의 일부 source code
설치 과정에서 source 설치 여부를 반드시 check 해야 한다 .
source code Kernel GWES component file system manager component
%_WINCEROOT%\PRIVATE
모바일운영체제 - Windows CE 16
Build Process (1)
COMMON
DATASYNC
DIRECTX
IE
MSMQ
RDP
SCRIPT
SERVERS
WCEAPPSFE
WCESHELLFE
..\CESYSGEN\DDK
..\CESYSGEN\OAK
..\CESYSGEN\SDK
\target, \files
C:\WINCE420\PUBLIC\%_TGTPROJ%RelDir\%_TGTPLAT%_X86Debug>
..\platform\.. \target, \files
NK.BIN
Step 1.System Generation
Step 3.Building the Release Directory
Step 2.Feature Build
Step 4.Making an Image
모바일운영체제 - Windows CE 17
Build Process (2)
System generation (Sysgen or CESYSGEN) 가능한 모든 feature list 로부터 platform 을 위해
선택된 feature 를 추출하여 포함하는 단계 C:/WINCE420/PUBLIC/myplat/WINCE420/
cesysgen OS header file 을 platform 의 header file 에
include 하기 위해 filtering
Feature build (build or BSP) Device driver, OAL, Bootloader 와 같은 BSP 에
필요한 elements 를 building, compiling, linking C:\WINCE420\PLATFORM\ User feature, projectfile(.pbp) 가 build,
compile, link 됨과 동시에 dirs, source, makefiles가 built 된다 .
모바일운영체제 - Windows CE 18
Build Process (3)
Building the release directory (buildrel or BUILDREL) 1, 2 단계에서의 file 을 단일 directory 로 copy
한다 . PB – Build – Open Build Release Directory
Making an image (Makeimg or MAKEIMG) Build release directory 로부터 모든 파일을 취하고 ,
단일 file 로 merge 한다 . 이 단일 file 은 reference platform hardware 에
download 한다 . NK.BIN / NK.SRE / NK.nb0
모바일운영체제 - Windows CE 19
Build Process (4)Catalog ItemsCatalog Items
SysgenSysgenFilterFilter OS DesignOS DesignBSP / projectBSP / project
Source CodeSource Code BuildBuild
%_FLATRELEEASEDIR%%_FLATRELEEASEDIR%
Run-TimeRun-TimeImageImage
BUILDRELBUILDREL
12
3
4
① SYSGEN : OS Design 으로 선택된 모듈과 컴포넌트들을 여과(Filtering) 해주는 단계
② Build : OS Design 과 BSP 의 소스 코드들을 compile 하는 단계
③ Build Release (BUILDREL) : Release Directory (%_FLATRELEASEDIR%) 안으로 파일들을 복사해오는 단계
④ Make Image : 최종적인 OS Run-Time Image(NK.BIN) 을 생성해 내는 단계
모바일운영체제 - Windows CE 20
Filtering Filtering / Link/ Link
Step 1. System generation
*.exe / *.dll*.exe / *.dll
*.h / *.lib for Device *.h / *.lib for Device Driver / OEM ApplicationDriver / OEM Application
모바일운영체제 - Windows CE 21
BuilBuildd
Step 2. Feature Build
모바일운영체제 - Windows CE 22
CopCopyy
Step 3. Building the Release Directory
Component / Configuration Component / Configuration FileFile
모바일운영체제 - Windows CE 23
MakeiMakeimgmg
Step 4. Making an Image
모바일운영체제 - Windows CE 24
System generation (1)
모든 component 의 모든 library Module 에 의해 expose 된 모든 function 과 모든
header file Module definition file(.def) IDE 에서 sysgen 을 실행할 때 , 선택된 module 과
component library 를 link Header file 과 system function export file 이
Custom version 의 OS 생성을 위해 추출 Makefile 은 CESYSGEN.BAT 의 변수 설정에 의존적 Makefile 은 선택된 component 와 일치되는 library 를
link 한다 . Build -> Generate Platform Headers
모바일운영체제 - Windows CE 25
System generation (2)
Complete header and source code files
Complete system libraries
Module definitions(.def)
Cesysgen.bat
System-specific header files
Linked libraries
Specific .def files
SYSGEN.BAT
모바일운영체제 - Windows CE 26
Feature Build (1)
Source code 를 complie Dirs 를 이용 , 하위 directory compile 여부 결정 SOURCES file 을 이용 , 어떤 file 을 compile 할지
결정 Object module 을 compile 하고 link 하기 위해
NMAKE.EXE 호출 .exe, .dll 을 위한 target folder 에 binary file 생성
Example : Target \ ARMV4I \ Debug .lib 를 위한 lib folder 에 binary file 생성
Example : Lib \ ARMV4I \ Debug
모바일운영체제 - Windows CE 27
Feature Build (2)
DIRS file 이 존재하면 : DIRS 에 list 된 각각의 directory 를 build
DIRS file 이 존재 하지 않는다면 : build.exe 는 SOURCES file 을 참조해 그것이 포함한 모든
C, C++ 과 assembly file 을 compile 한다 . Build.exe 에 의해 호출된 NMAKE.exe 가 .exe
와 .dll, .lib file 로 build 하고 , link build.exe 에 의해 생성되는 모듈 :
.exe 와 .dll files Target \ %_TGTCPUTYPE% \ %WINCEDEBUG% Example: target \ ARMV4I \ Debug
.lib files Lib \ %_TGTCPUTYPE% \ WINCEDEBUG% Example: Lib \ ARMV4I \ Debug
모바일운영체제 - Windows CE 28
Feature Build (3)
DIRS file 하위 directory 를 build 하기 위한 list 하위 directory 를 DIRS file 에 포함할 수 있다 .
DIRS 에서 DIRS_CE 와 OPTIONAL_DIRS 를 사용할 수 있다 .
DIRS_CE 만약 Windows CE 를 위해 building 할 경우 build 되는
directory 를 명시 OPTIONAL_DIRS
build.exe command line 에서 명시하지 않거나 BUILD_OPTION 환경변수에 directory 를 추가해주지 않으면 , build 할 수 없다 .
DIRS =\DIRS =\Display\Display\Mouse\Mouse\Keyboard\Keyboard\EthernetEthernet
모바일운영체제 - Windows CE 29
Feature Build (4)
SOURCES files 에 의해서 사용된 주요한 macro: TARGETNAME
build 된 module 의 이름 TARGETTYPE
type 을 정의 (.lib/.dll/.exe) DLLENTRY
.dll file 을 위한 entry type EXEENTRY
.exe file 을 위한 entry type TARGETLIBS
link 단계를 위한 .lib file INCLUDES
Header file 을 찾기 위한 path SOURCES
compile 될 모든 source file 반드시 makefile 이 있어야 한다 .
모바일운영체제 - Windows CE 30
Feature Build (5)
MAKEFILEMAKEFILE
LocalLocalProjectProjectfolderfolder
%_MAKEENVROOT%%_MAKEENVROOT%
MAKEFILE.DEFMAKEFILE.DEF
SOURCESOURCE
모바일운영체제 - Windows CE 31
Feature Build (6)
SOURCE file 예 :
build.exe 가 IOPORT.CPP 와 VGAPORT.CPP 를 compile
COREDLL.LIB 와 결과를 link entry 는 DllMain kbdmouse.dll 라는 dynamic link library 생성
TARGETNAME = KbdmouseTARGETTYPE = DYNKINKDLLNTRY = DllMainTARGETLIBS = \$(_COMMONSDKROOT)\Lib\$(_CPUNDPATH)\Coredll.bibINCLUDES = $(COMMONSDKROOT)\IncSOURCES = \
iport.cpp \vgaports.cpp\
모바일운영체제 - Windows CE 32
Building the Release Directory (1) buildrel tool 은 다음 directory 로부터 파일을 copy:
%_PROJECTROOT%/Cesysgen/Oak/Files %_PROJECTROOT%/Oak/Files %_PLATFORMROOT%/%_TGTPLAT/\Files %_PROJECTROOT%/Cesysgen/Oak/Target/
%_TGTCPUTYPE%/%WINCEDEBUG% %_PROJECTROOT%/Oak/Target/%_TGTCPUTYPE
%/%WINCEDEBUG% %_PLATFORMROOT%/%_TGTPLAT%/Target/
%_TGTCPUTYPE%/% WINCEDEBUG%/
모바일운영체제 - Windows CE 33
Building the Release Directory (2)
Makeimg.exe 가 호출 되기 전 모든 file 과 binary 는 %_FLATRELEASEDIR% 에 존재 해야 한다 .
CE version 3.0 이전에는 _FLATRELEASEDIR 에 file 을 copy 하기 위해 Buildrel 을 사용
지금의 Windows CE .NET 에서는 _FLATRELEASEDIR 이 NTFS partition 에 있다면 Buildrel 은 original file 이 어디에 저장되어 있는가에 관계없이 hard link 를 생성하려고 시도
Hard linking 은 파일의 단지 하나의 물리적인 복사본으로서 disk space 에 저장되고 존재
모바일운영체제 - Windows CE 34
Building the Release Directory (3)
buildrel 이 성공적으로 hard link 를 생성하는가에 따라 flatreleasedir 내에 original 의 update 된 file 이 writing
Hard linking 의 결과 어떤 feature(e.g. automatic bib update) 를 실행하기 위해 IDE 는 _FLATRELEASEDIR 내 file 의 외부 management 가 original 을 update 하는 것을 보호 해야 한다 .
IDE 를 통해 개발 한다면 사용자는 직접 _FLATRELEASEDIR 의 어떤 file(e.g. project.bib) 를 편집하거나 _FLATRELEASEDIR 에 private version 의 file 들을 copy 하지 않아도 된다
모바일운영체제 - Windows CE 35
Making an Image (1)
Makeimg 는 Fmerge tool 을 사용하여 build process에서 사용된 configuration file 을 merge: 모든 .bib file 을 unique file(CE.BIB) 에 merge
Binary image build 모든 .reg file 을 unique file(reginit.ini) 에 merge 모든 .dat file 을 unique file(INITOBJ.DAT) 에 merge 모든 .db file 을 image 의 default database 를 정의한
unique file(initdb.ini) 에 merge reginit.ini file 을 binary file(DEFAULT.FDF) 로 압축 특정한 language 에 맞게 바꿀 module 의 resource 를
대체 (language 는 LOCALE 환경 변수에 정의 해야함 )
모바일운영체제 - Windows CE 36
Making an Image (2)
makeimg 는 file 과 binary 가 CE.BIB 에 명시 ce.bib 로부터 binary 와 file 을 windows CE
image 로 결합한다 . Windows CE image 를 완료 Build -> Make Image
모바일운영체제 - Windows CE 37
Explaining Build Errors (1)
Error during the Sysgen phase 일반적으로 file 이 없을 경우 Operating system feature 의 설정 Sysgen 단계의 application build 에서 발생 Build.log 를 참조하여 해결 \Public directory 의 component 를 수정한 경우
Error during the feature build phase Compilation syntax error / Unresolved link error Build.err 검토
Error during the building the release directory phase Disk space 가 부족 / locked file / read only file 인 경우 Hard driver 의 용량 확인 Build.log 확인
모바일운영체제 - Windows CE 38
Explaining Build Errors (2)
Errors during the making an image phase Flat release directory 에 file 이 없을 경우 이전 error / bib file error 에서 초래 Build.log / build.err 확인 Romimage.exe failed in CE.BIB
Bib 에 등록된 file 이 Flat release directory 에 없을 경우
Romimage.exe failed in reginit.ini CE Registry 의 syntax error 가 발생한 경우
Error:Image exceeds Config.bib 에 명시한 NK space 보다 더 큰 image 를
building 하는 경우
모바일운영체제 - Windows CE 39
Integrated Development Environment (1)
Feature View Platform 에 포함된 모든 드라이버 / OS component
표시 선택한 WebPad, Media Appliance 와 같은
configuration 아래에 OS component 가 표시 [IABASE] 또는 [HLBASE] 인 base
configuration 표시 Third party 와 다른 driver 는 BSP 또는 platform
root node 아래에 list 된다 . IDE 내의 각각의 OS component 는 SYGEN 환경
변수와 연관되어 있다 . Feature View 에서 Sysgen feature 와
component 는 추가 / 제거 할 수 있다 .
모바일운영체제 - Windows CE 40
Integrated Development Environment (2)
Resolve Features feature group 이 Unresolved 된 platform 은
특정한 feature 와 연관되지 않은 feature group 을 포함한다 .
platform build 전에 unresolved 된 feature group 을 resolve 해야 한다 .
platform 이 unresolved 된 feature group 을 포함한다면 , Resolve Features dialog box 가 platform 과 BSP 에 feature 를 선택하도록 한다 .
Resolve Features dialog box 는 이미 resolve 된 feature group 의 조합을 remove 또는 modify 할 수 있도록 한다 .
모바일운영체제 - Windows CE 41
Integrated Development Environment (3) Build option 을 이용하여 Windows CE 의 image 를
build 할 때 , full build mechanism 은 단지 변경된 feature 를 build 하려고 한다 .
그러나 feature 의 상호 의존의 복잡성 때문에 때대로 변경되지 않은 feature 가 불필요하게 build 된다 .
이것은 시간이 걸리므로 좀더 낳은 platform building process 방법을 보인다 . Building a Selected Component
FeatureView window 에서 build 될 item 선택 Right-click 하고 , Build Selected Component click
Making the Image Build -> Make Image
Environment Variables Platform Environment Variable Window 에서 환경 변수를
변경한 경우 , 전체 platform 을 rebuild 한다 . CE component(CEC) file 에서 환경 변수를 설정하면
programmatically 하게 trigger 된다 .
모바일운영체제 - Windows CE 42
Modifying Configuration Files 다음 configuration file 은 image 를
생성하기 위해 build process 에서 사용된다 : .BIB files .REG files .DAT files .DB files
모바일운영체제 - Windows CE 43
The Configuration Files: .BIB Files
OS 이미지에 포함되어져야 할 모듈과 컴포넌트 그리고 압축 이미지의 속성을 지정하는 텍스트 파일
Make a Image 과정에서 각 컴포넌트 폴더에 있는 모든 *.bib 을 모아 ce.bib 파일을 생성하고 이를 이용하여 OS 압축 이미지를 생성한다 .
BIB 파일은 다음 네 가지 영역으로 나눈어 기술한다 . Memory Config Modules Files
모바일운영체제 - Windows CE 44
The Configuration Files: .BIB Files MEMORY : OS / Object Store 의 크기 및 시작 번지
Data memory – ROM 또는 RAM memory 영역Program memory – memory application 을 위해 예약된 RAM
영역 NK
Nk 영역은 800000 hex byte(8388608 byte) 의 사이즈 / 시작 번지 8C800000
Data memory 를 위한 ROM 을 다룬다 . RAM
RAM 영역은 7AFFFF hex bytes 의 사이즈 / 시작 번지 8C050000
Program memory 를 위한 RAM 을 다룬다 .
Name Start address Size(bytes) TypeNK 8C800000 00800000 RAMIMAGERAM 8C050000 007AFFFF RAM
Config.bib
모바일운영체제 - Windows CE 45
The Configuration Files: .BIB Files Memory (con’t)
MEMORY section memory type RAM
program memory 와 RAM file system 이 존재하는 RAM 이 동작하기 위한 Memory 영역 명시
이 영역들은 연속적이어야 하며 , 중간에 메모리를 예약하면 안된다 . 실행중인 프로세스와 RAM base file system 을 위한 영역
RAMIMAGE ROM 처럼 다루어 지는 memory 영역을 명시 / system 에
unique 해야 함 한번만 선언되어야 함
RESERVED kernel 에서 사용하지 않고 application 에서 접근 RAM 영역 예약 , 다른 영역과 겹치면 안된다 ( 프레임버퍼 등 ).
모바일운영체제 - Windows CE 46
The Configuration Files: .BIB Files CONFIG : OS image 의 압축 / NK.nb0 생성 여부 등
지정
Compression 또는 ROM size 와 같은 특성을 설정할 경우 사용
ROMFLAGS 옵션을 이용하여 커널 인증 옵션을 설정 ROMFLAGS=0x0001 : 페이징 금지 옵션 ROMFLAGS=0x0002 : 인증을 고려한 동작 모드 지정 옵션 ROMFLAGS=0x0010 : ROMIMAGE 에 포함된 모든 파일을
무조건 신뢰함을 지정하는 옵션
CONFIG AUTOSIZE=ON COMPRESSION=ON ROMFLAGS=0
Config.bib
모바일운영체제 - Windows CE 47
The Configuration Files: .BIB Files
MODULES : memory 에 load 할 object module 명시(.exes/.dll) Example TASKMAN.EXE :
Taskman.exe $(_FALATRELEASEDIR)\Taskman.exe NK SH
S to define it as a system file H to define it as a hidden file R to compress resources C to compress everything D to prevent a debugger from running N to mark a module as non-trusted P to ignore the CPU type on a per-module basis K to signal that ROMIMAGE has to fixup the DLL to
run properly PLATFORM.BIB / PROJECT.BIB / CONFIG.BIB
모바일운영체제 - Windows CE 48
The Configuration Files: .BIB Files
FILES : static data 의 memory partition 을 예약한다 . Example Tahoma.ttf
$(_FALATRELEASEDIR)\Tahoma.ttf NK SHU
S: System file H: Hidden file U: Uncompressed file
모바일운영체제 - Windows CE 49
The Configuration Files: .REG Files default registry setting 을 정의하기 위해 사용 HKEY_LOCAL_MACHINE root key 에서 Init key Launch10 와 Launch20 에 2 개의 string entry Launch10 과 Launch20 의 값은 각각 SHELL.EXE 와
DEVICE.EXE 의 설정 값 이 entry 는 kernel 이 startup 할 때 자동적으로
SHELL.EXE 와 DEVICE.EXE 실행하도록 한다 . COMMON.REG, DATASYNC.REG, DCOM.REG,
DIRECTX.REG IE.REG, MSMQ.REG, RDP.REG, SCRIPT.REG WCEAPPS.REG 와 WCESHELL.REG
PLATFORM.REG PROJECT.REG [HKEY_LOCAL_MACHINE\Init]
“Launch10”=“SHELL.EXE” “Launch20”=“DEVICE.EXE”*.re*.re
ggReginit.iReginit.inini
Default.fDefault.fdfdf
통합통합
압축압축
모바일운영체제 - Windows CE 50
The Configuration Files: .DAT Files image 의 folder 구조를 정의 특정 폴더를 생성 및 복사할 경우 사용 Program Files 과 My Documents 라는 2 개의 directory 가
정의 Windows CE 에서 root directory(\) 에 위치 Program Files 는 하나의 My Project 하위 directory 를 가짐 My Document directory 는 MyFile.doc 라는 file 을 포함 단지 할당만 한다는 것에 주의 . MyFile.doc 는 .BIB file 에 등록되어야 image 에 존재한다 . COMMON.DAT, IE.DAT, MSMQ WCEAPPS.DAT 과
WCESHELL.DAT PLATFORM.DAT PROJECT.DAT *.dat iniobj.dat
Root:-Directory(“Program Files”)Directory(“\Program Files):-Directory(“My Projects”)
Root:-Directory(“My Documents”)Directory(“\ My Documents):-File(“MyFile.doc”,”\Windows\Myfile.doc”)
모바일운영체제 - Windows CE 51
The Configuration Files: .DB Files
default database table 을 생성하도록 지시하는 파일 Windows CE 시스템 및 Application 에 사용될
데이터베이스 .DB file 이 포함되어 image 생성시에 사용 COMMON.DB, WCEAPPS.DB 와 WCESHELL.DB PLATFORM.DB PROJECT.DB *.db initdb.ini
모바일운영체제 - Windows CE 52
Creating a Component (1)
CEC : CE component file OAL, device driver 또는 다른 component
를 개발한다면 , 해당 Component File(.cec)에 의해 Platform Builder Catalog 에 추가할 수 있다 .
Platform Builder environment 에 생성된 component 를 importing 할 수 있다 .
.CEC file 은 catalog 에 통합되어질 component 를 설명한 test file 이다 .
모바일운영체제 - Windows CE 53
Creating a Component (2)
.CEC file 은 4 개의 다른 type 의 block 을 가진다 CECInfo Block : 일반적인 정보를 포함 ComponentType block : 그룹 혹은 생성된
Catalog 항목 포함 MaxResolvedImpsAllowed
(Optional)OS Design 에 존재해야 하는 같은 형태의 구현에 대한 최대 수를 설정하는 Element
일반적으로 1 을 사용 RequiredCEModules
(Optional)OS Design 에 더불어 추가되어야 하는 모듈을 설정하는 Element
모바일운영체제 - Windows CE 54
Creating a Component (3)
.CEC file 은 4 개의 다른 type 의 block 을 가진다 Implementation block : component 구현 정의
Variable (Optional) Catalog Item 과 함께 사용되어야 하는 특별한 환경
변수 EX> Variable( , ) BuildMethod block : 빌드에 필요한 정보 제공
Step: Build Step 을 말합니다 . BSP: Feature Build Step BUILDREL: Release Copy Step MAKEIMG: Make Image Step CESYSGEN: Cesysgen Step
Action 빌드 단계에서 Platform Builder 에 의해 특별한 활동을 수행 즉 , SOURCES 혹은 DIRS 파일에서 정의한 형태로 동작을 수행 #SRCCODE: 소스코드의 위치를 IDE 상에서 보여주는
Element (IDE 상에서 해당 소스 코드를 편집 할 수도 있음 )