<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > WindowsCE.net 4.2目錄解析

WindowsCE.net 4.2目錄解析

作者: 時(shí)間:2011-02-24 來(lái)源:網(wǎng)絡(luò ) 收藏

windowsCE的目錄結構巨大而龐雜,盡管windowsCE的幫助對這個(gè)龐大的目錄結構進(jìn)行了說(shuō)明仍然有很多目錄下對應的代碼在windowsCE help沒(méi)有介紹其具體用途,下面就將windowsCE的目錄結構進(jìn)行簡(jiǎn)單的介紹。
1.SDK
在windowsCE.net4.2的根目錄下存在PLATFORM,PRIVATE,SDK,OTHERS,PUBLIC五個(gè)目錄。SDK是其中最為簡(jiǎn)單的一個(gè)目錄結構SDKBINI386下所存放的就是開(kāi)發(fā)所需要的工具集,編譯器等等,在這里我就不再啰嗦了。
The SDK directory contains tools that are used by Platform Builder. However,
it does not contain the tools that are used to build the image. The tools
contained by the SDK directory are:
.. Processor compilers
This directory contains the cross compilers and assemblers for supported
platforms.
.. Development tools
This directory contains the tools such as, Error Lookup, GuidGen, and Link
and Nmake.
.. Miscellaneous utilites
This directory contains the utilities, such as Zoomin, and Windiff.

2.other
這個(gè)目錄下的內容比較雜,有諸如ATL,MFC的頭文件,運行庫等開(kāi)發(fā)應用程序所需的庫文件和其一部分代碼。其中有個(gè)文件目錄對開(kāi)發(fā)系統來(lái)說(shuō)是比較重要的,就是CETK的客戶(hù)端OTHERSWCETK,通過(guò)該目錄下的文件可以訂制自己的Windows CE .NET Test Kit客戶(hù)端。
The Others directory contains all the Windows CE runtime libraries and
headers, components for .NET Compact Frameworks, and Samples for ATL
and MFC. The Others directory contains the following subdirectories:
.. ATL
This directory contains ATL headers, libraries and source code for
debugging. The library debug symbols are also included.
.. DOTNET
This directory contains the .NET processor specific binaries and portable
.NET Compact Framework files.
.. MFC
This directory contains MFC Headers, Libraries and Source Code for
debugging. The library debug symbols are also included.
.. SAMPLES
This directory contains the MFC and ATL sample applications.
.. WCETK
This directory contains the Windows CE Test Kit (CETK) processor
specific binaries. CETK provides tests for each class of devices. Within the
CETK, you can choose the appropriate test to perform on your device driver
and the tool remotely runs the tests on your target device.

3.PLATFORM
PLATFORM下存放的就是傳說(shuō)中的BSP了,這些BSP提供對各種開(kāi)發(fā)板的硬件抽象層,bootloader,soc驅動(dòng)等資源,由此可見(jiàn)這個(gè)目錄下的資源是硬件相關(guān)的,一般說(shuō)來(lái)該目錄下每個(gè)文件夾都對應一個(gè)SDB的,下面以SMDK2410為例說(shuō)明platform目錄結構的內容.
|platform|--smdk2410----|--CESYSGEN
|--DRIVERS------|--DISPLAY
| |--DRVLIB
| |--KEYBD
| |--PCMCIA
| |--PWRBTN
| |--SERIAL
| |--TOUCHP
| |--USB
| |--WAVCLICK
| |--WAVEDEV
|--EBOOT--------|--ARM
| |--BIN
|--FILES--------|--INTLTRNS
|--GWE----------|--BUILDEXE
| |--NLEDDRV
|--INC |
|--KERNEL-------|--BUILDEXE-----|--KERN
| | |--KERNKITL
| | |--KERNKITLPROF
| |--HAL
| |--PROFILER
|--NAND*
|--UTILITIES*
其中NAND和UTILITIES是2410的bsp特有的,NAND包含的是以NANDFLASH為啟動(dòng)介質(zhì)的啟動(dòng)代碼,UTILITIES里面的內容是包含調試信息的可執行文件-三星的測試程序(用ADS的調試器AXD就可以使用該文件)。
CESYSGEN一般都只有一個(gè)叫makefile的文件,通常該文件指向$(_WINCEROOT)publiccommoncesysgenCeSysgenPlatform.mak 也就是公共的platform生成文件,該文件為產(chǎn)生windowsCE項目提供支持。
DRIVER目錄下的內容也是很直接的,也就是各種soc的設備和板載設備的驅動(dòng)。例如:display就是lcd控制器的驅動(dòng),keybd就是鍵盤(pán)驅動(dòng)等等
eboot目錄下面的文件是ethernet bootloader的源文件,通常這個(gè)目錄下的文件都來(lái)自于PUBLICCOMMONOAKDRIVERSETHDBG所提供的模版改寫(xiě)得到,因此發(fā)現該目錄下文件使用到未知的函數時(shí)都可以到上述文件中尋找答案。(bootloader的源文件是完整的,有興趣的男男女女都大可研究一下)
FILES下面就是一個(gè)雜物倉庫,里面可能有BSP提供的應用程序和生成系統所需要的信息文件。要是想要知道該bsp的入口點(diǎn),調整鏡像,了解靜態(tài)高內存分配等信息大可以到這兒一看,INTLTRNS子目錄下定義了一些字串,這些字串在生成系統的時(shí)候用來(lái)替換CEPB生成注冊表所使用的標示。
GWE里面就是GWES的部分了,這里面NLEDDRV下面的文件是LED提示燈的驅動(dòng),至于buildExe就是生成gwes.exe所需的文件了,事實(shí)上這個(gè)目錄下是空的,因為使用CSP里面的GWS.lib等所提供的接口已經(jīng)完備了。
INC就是頭文件的聚集地,這個(gè)就不說(shuō)了。
KERNEL:
這個(gè)目錄結構是整個(gè)bsp的關(guān)鍵所在,內核就在這兒誕生。
buildexe目錄下的三個(gè)文件夾-KERN-KERNKITL--KERNKITLPROF分別生成kernel的三個(gè)版本kernel only/kernel with kitl transport/kernel with kitl and profiler,第一個(gè)版本就是最基本的kernel也就是以后用作發(fā)布用的,第二個(gè)提供了kitl傳輸界面,可對系統進(jìn)行調試,而kernkitlprof提供了傳輸界面的同時(shí)還提供了專(zhuān)門(mén)的性能計時(shí)器用作測定系統性能。
PROFILER目錄下面的就是性能計時(shí)器的代碼。
HAL下面是內核硬件抽象層的代碼所在。
基本上platform文件夾就是這個(gè)樣子了,比起后面還沒(méi)有說(shuō)的private和public目錄來(lái)說(shuō)這兩個(gè)文件夾的結構還是相對簡(jiǎn)單明了的。
我們看看后面都還有什么東西

4.PUBLIC
這個(gè)文件夾是我這輩子見(jiàn)到過(guò)的最最可怕的目錄結構之一??偠灾@里面什么東西都有,一個(gè)字"雜",難說(shuō)得上什么分類(lèi)。先來(lái)看看第一級子目錄的結構吧。
|public-|--WCESHELLFE *
|--SHELLSDK *
|--SHELL *
|--WCEAPPSFE
|--VIEWERS
|--SQLCE
|--SPEECH
|--SERVERS
|--SCRPIT
|--IE
|--RDP
|--NETCF
|--IABASE
|--HLBASE
|--DirectX
|--DCOM
|--DATASYNC
|--COMMON
COMMON下面的東西很多,現在我們先繞開(kāi)不說(shuō)。我還是從上往下說(shuō)吧(流汗中...)
4.1關(guān)于shell
WCESHELLFE,SHELLSDK,SHELL這三個(gè)目錄下的東西都是shell相關(guān)的(別問(wèn)我什么是shell,它就是你天天看到,最最熟悉你還不知道它的存在的那個(gè)玩意兒).SHELL下面提供了standshell和AYGSHELL,standShell就是標準的windowsCEshell看起來(lái)和tablePC的樣子差不多,其中AYGshell原來(lái)是給Pocket PC設計的,這兩個(gè)shell都可以在CEPB的IDE里面選。
至于WCESHELLFE,主要是各種windowsShell的組件:
CTLPNL就是控制面板的組件,有了這個(gè)你可以自己做自己的控制項,且不愉快?
FTPUPDATE提供了通過(guò)ftp升級firemire的程序,作用也是給大家照貓畫(huà)虎
LANG 和INPUTMETHODS 是輸入法支持,這個(gè)我不了解就不亂說(shuō)了
Taskman 這個(gè)就比較有意思,恐怕很多人都會(huì )需要這個(gè)東西,用這個(gè)shell可以直接生成一個(gè)空的桌面,沒(méi)有圖標,沒(méi)有icon,除了藍色的桌面什么都沒(méi)有,不過(guò)這個(gè)不能通過(guò)IDE選項生成,照幫助也是弄不出來(lái)的,需要修改sysgen.bat才行。
至于這個(gè)目錄下面的那些個(gè)什么FILE ,inc,lib與上面提到的同名的文件夾作用差不多,我就不再說(shuō)了.
shellSDK就比較簡(jiǎn)單了,里面也就是開(kāi)發(fā)SHELL應用程序所要用的head和lib,沒(méi)啥好講了。
Modules and components relative to the far-east enabled
shell, such as, task manager and control panel components


4.2 WCEAPPSFE
傳說(shuō)這里面有word和outlook,我沒(méi)弄過(guò),也不清楚。
既然別人這么說(shuō)我就當它有吧。

4.3 VIEWERS
這個(gè)聽(tīng)名字就知道是干什么的,也就是windowsCE帶的那一對查看器,比如什么pdf啊,excel啊,word啊什么的,不過(guò)都不是source都只是lib了,所以也沒(méi)什么大的意思的。

4.4 SQLCE
這個(gè)就是SQLCE的老家,不過(guò)和上面一樣,還是沒(méi)得改,更沒(méi)得寫(xiě),一樣的無(wú)聊。

4.5 SPEECH
這個(gè)目錄下面是MS SAPI5.0,里面包括了TTS和語(yǔ)音識別,免費的??!不過(guò)只支持漢語(yǔ)和英語(yǔ)還有日語(yǔ)的TTS其他的語(yǔ)言一概不支持。同樣也是不開(kāi)放代碼,順便說(shuō)一句,file里面有個(gè)voice目錄,那個(gè)是發(fā)聲文件,要想聽(tīng)別的聲音就要自己換,要是誰(shuí)知道哪兒有這些vce文件請告訴我一下。

4.6 SERVERS
這個(gè)目錄下主要是windowsCE的網(wǎng)絡(luò )服務(wù)。上次記得有人問(wèn)我類(lèi)似路有器的遠程管理界面(web shell)是怎么弄的,在這兒找答案吧。

4.7 SCRPIT IE
這個(gè)不用說(shuō)了就是天天用的Internet Explorer還有java-vb script支持所在。其中IE是可以訂制的。

4.8 RDP
該目錄下面提供遠程桌面的支持(我理解為用于windowsCE的木馬),包括遠程軟件的客戶(hù)端和服務(wù)端。里面有個(gè)第三方軟件,具體的使用方法我也不是很清楚。

4.9 NETCF
Dot Net Compact Framework.事實(shí)上目錄下面是空的,到底這些.net的文件都在那兒呢?看看makefile就可以知道,這里面用到的資源都是來(lái)自于前面講過(guò)的%WINCEROOT%OTHERSDOTNET下面。
4.10 IABASE
4.11 HLBASE
這兩個(gè)合到一起講,這兩個(gè)目錄存在的目的不是給PB的IDE用的,而是在命令行模式下創(chuàng )建工程的模版,里面有很多.bat文件,對應了一些默認的配置,這個(gè)和PB IDE里面的向導是一致的。兩個(gè)目錄的區別在于,一個(gè)帶顯示一個(gè)不帶,這就決定了配置有很多相關(guān)的東西不一樣:如gwes等,所以分開(kāi)兩個(gè)目錄,使用不同的sysgen.bat文件。在CE5.0中已經(jīng)將這兩個(gè)目錄合二為一了。
Internet Appliance Base Configuration
Headless Base Configuration

4.12 DirectX
DirectX就是DirectX了,看看目錄結構
├─CESYSGEN
Sysgen目錄下
├─OAK
│ ├─FILES
│ │ ├─INTLFILE
│ │ └─INTLTRNS
│ ├─INC
│ ├─LIB
│ └─VOIP
│ ├─VOIPMEDIA_REF
│ ├─VOIPPROV
│ │ ├─FILE
│ │ ├─LDAP
│ │ ├─MANUAL
│ │ ├─MANUAL_CORE
│ │ ├─TEST
│ │ └─XMLHELPER
│ └─VOIPUI
│ ├─APP
│ │ └─RES
│ ├─HELPER
│ ├─IME
│ ├─INC
│ └─STATE
└─SDK
├─INC
├─LIB
└─SAMPLES
├─D3D
│ ├─BOIDS
│ ├─SIMPLE
│ └─TUTORIALS
│ ├─TUT01_CREATEDEVICE
│ ├─TUT02_VERTICES
│ ├─TUT03_MATRICES
│ ├─TUT04_LIGHTS
│ └─TUT05_TEXTURES
├─DDRAW
│ ├─INCLUDE
│ └─SRC
│ ├─DDEX1
│ ├─DDEX2
│ ├─DDEX3
│ ├─DDEX4
│ ├─DDUTIL
│ ├─DONUTS
│ └─MOSQUITO
├─DDVD
│ ├─ANXJTEST
│ ├─DVDPLAY
│ └─DVDSAMPLE
├─DSHOW
│ ├─BASECLASSES
│ │ ├─HEADED
│ │ └─HEADLESS
│ ├─FILTERS
│ │ ├─BALL
│ │ ├─DUMP
│ │ ├─EZRGB24
│ │ └─INFTEE
│ └─PLAYERS
│ ├─CEPLAYIT
│ ├─DDXCLMV
│ ├─HLPLAYIT
│ └─PLAYWND
├─DSOUND
│ ├─CAPTUREECHO
│ └─DSPLAY
├─DXMISC
│ ├─DDCAPS
│ └─DXVIEW
├─MIXER
│ └─TMIX
├─STB
│ └─STBIHOST
├─VOIP
│ └─VOIPDEMO
│ ├─RESOURCES
│ └─SOURCE
└─WMP
└─CEPLAYER
└─RES

4.13 DCOM
該目錄提供DCOM/COM的支持,可惜的是沒(méi)有源碼,僅僅是2二進(jìn)制的鏈接庫。值得注意的是SDK目錄下面的sample目錄下提供比如:regsvr32等等常用的工具。

4.14 DATASYNC
Device-side communication components.

5 publiccommonOAKdriver
不要以為這個(gè)目錄下的東西就像它的名字一樣全部都是驅動(dòng),事實(shí)上這個(gè)目錄下面有很多驅動(dòng)和windows組件,我們在windowsCE IDE中選取的很多特性的源代碼都在這里,而且這兒提供了很多開(kāi)發(fā)模版供我們寫(xiě)代碼使用,個(gè)人認為用好這個(gè)目錄是我們是定制自己的windowCE的關(guān)鍵,特色windowsCE就從這里開(kāi)始。:)
到這里順便說(shuō)一個(gè)事情,OAK這個(gè)目錄名一直困擾我多年,直到前段時(shí)間有位叫做"土豹子"的兄弟告知才明白,oak原來(lái)是OEM adaptation kit的意思。
下面我們就來(lái)看看這下面都有什么東西吧。
├─1394
│ ├─DRIVERS
│ │ ├─CLIENT
│ │ │ ├─1394DCAM
│ │ │ ├─AVC_STREAM
│ │ │ └─AVC_VCR
│ │ └─VIRTUAL
│ │ ├─1394DCAM
│ │ ├─AVC_UNIT
│ │ └─AVC_VVCR
│ ├─INC
│ └─TEST
│ ├─DRIVER
│ │ ├─1394DIAG
│ │ ├─1394VDEV
│ │ └─COMMON
│ ├─INC
│ └─UI
│ └─TOPOMAP
1394驅動(dòng)。
├─ACM
│ ├─ACMDWRAP
│ ├─GSM610
│ ├─MSFILTER
│ └─PCMCONV
├─BATTDRVR
│ └─TEST
│ ├─GETBAT
│ └─SETSTUBBAT
ACM是Audio Compression Manager 的簡(jiǎn)寫(xiě)也就是音頻壓縮管理器,該目錄下面所提供了G.711 (A-law 和 mu-law 編碼), GSM 610, G.722.1, 和 SIREN,說(shuō)白

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>