欢迎来到天天文库
浏览记录
ID:38265205
大小:82.50 KB
页数:15页
时间:2019-06-07
《MTK软件工程与配置简介》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、<软件工程和配置简介>软件工程和配置简介<软件工程和配置简介>RevisionHistory:DateAuthorVersionDescriptionofChange2008-10-17BeijingSW1.0.1Creatdraft<软件工程和配置简介>目录一.MTK手机软件系统的目录结构简介4二.MTK手机软件系统的构建过程7三.MTK手机软件系统的配置12四.增加模块的配置实例14<软件工程和配置简介>MTK是现在市场上所有国内手机设计、制造商使用的最多的一个完整的手机产品解决方案,大部分做手机的技术人员都对此有接触与了解。不过,MTK的整套软件系统十分庞大且复杂,很多刚接
2、触这套系统的软件工程师一时不知如何进行配置与客户化定制。本文在此对整个MTK软件系统的工程结构与配置进行了简单介绍,希望通过此文与大家相互交流MTK软件系统的维护与修改、定制方面的心得。MTK使用了nucleus实时操作系统,在其上做了个内核抽象层的封装,以适应多种实时操作系统,如oscar、ThreadX、nucleus。整个软件系统包括nucleus操作系统、平台设备驱动、协议栈、文件系统、WGUI、MMI、J2ME等。在这里MMI部分几乎包括了操作系统内核、协议栈、文件系统之上的所有部分,其中WGUI也在其中。MTK的PC模拟版使用VC的编译器与链接器生成,ARM版使用AD
3、S1.2的编译器与链接器生成。因为MTK的整个软件系统是一个很庞大而且复杂的工程,并且要支持多个MTK的产品系列与多家客户的客户化支持,使用集成开发环境(IDE)已经无法胜任,而且很难做到整个工程的自动构建与资源、代码的生成。所以MTK的软件系统使用了windows下的GNU开发工具链(MinGW)来进行工程的管理、配置与构建,MTK将MinGW放到了第三方工具中。另外还使用了perl脚本来解析用户输入的命令行参数,因此第三方工具中还包含了ActivePerl(windows下的perl解释器)。不过,整个软件系统并没有使用MinGW的全部工具,好象只使用了make这个工具,由几
4、个Makefile控制了构建的过程,在编译与链接时根据最终生成PC模拟版还是ARM版而分别调用VC的编译器与链接器或ADS1.2的编译器与链接器。接下来我们从具体的工程实践来看MTK的手机软件系统。一.MTK手机软件系统的目录结构简介MTK手机软件系统的主要目录如下所示,因整个工程的目录树非常庞大,为简单起见与减小篇幅,去除了在工程结构中相对不重要的目录。.
5、--Fast_DL
6、--ROM
7、--adaptation
8、--applib
9、--bootloader
10、--config
11、--custom
12、
13、--app
14、
15、`--TOP_6227_BB
16、
17、--common
18、
19、--drv
20、
21、
22、-
23、-LCD
24、
25、
26、`--TOP_6227_LCM
27、
28、`--image_sensor<软件工程和配置简介>
29、
30、`--MT9D011
31、--drv
32、--fs
33、--inc
34、--init
35、--interface
36、--j2me
37、--kal
38、--make
39、
40、--applib
41、
42、
43、--applib.def
44、
45、
46、--applib.inc
47、
48、
49、--applib.lis
50、
51、`--applib.pth
52、
53、--bootloader
54、
55、--config
56、
57、--custom
58、--media
59、--mmi
60、--modis
61、--mtk_lib
62、`--MT6227
63、`--S01
64、`--gprs
65、
66、--abm.lib
67、
68、-
69、-adaptation.lib
70、
71、--applib_inet.lib
72、--nucleus
73、--nvram
74、--plutommi
75、--toolsFast_DL是开发时下载二进制映像与资源等的相关文件的目录。ROM是固化在ROM(可能是Flash的只读区)中的相关代码与头文件的目录,在给客户的发布版中大都只有一些导出函数的头文件,其中似乎还有一个跳转表的东西ROMSA_FuncTable。kal是上面所说的内核抽象层的相关文件的目录。nvram是存取NV中的内容的相关代码的目录。nucleus是nucleus实时操作系统的目录,在给客户的发布版中只有头文件。drv是驱动相关的代码的目
76、录。fs是文件系统相关的目录,好像只支持fat格式的。tools是工程相关工具的目录,包括MinGW。interface是系统各层的接口的目录,还包含重要模块的接口,如bluetooth、WIFI。<软件工程和配置简介>config是一些系统与任务(task)相关头文件的目录,感觉不像是配置相关的目录。inc是中断控制与寄存器地址相关头文件的目录。modis是PC模拟版的相关目录,包括了虚拟的GSM网络、SIM卡等,以及模拟器需要的字符串、图片等资源,还有PC模拟版的库、VC的相
此文档下载收益归作者所有