MTK手机软件系统工程和配置简介 .doc

MTK手机软件系统工程和配置简介 .doc

ID:29345496

大小:112.00 KB

页数:12页

时间:2018-12-18

MTK手机软件系统工程和配置简介 .doc_第1页
MTK手机软件系统工程和配置简介 .doc_第2页
MTK手机软件系统工程和配置简介 .doc_第3页
MTK手机软件系统工程和配置简介 .doc_第4页
MTK手机软件系统工程和配置简介 .doc_第5页
资源描述:

《MTK手机软件系统工程和配置简介 .doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、MTK手机软件系统工程和配置简介  MTK是现在市场上所有国内手机设计、制造商使用的最多的一个完整的手机产品解决方案,大部分做手机的技术人员都对此有接触和了解。不过,MTK的整套软件系统十分庞大且复杂,很多刚接触这套系统的软件工程师一时不知如何进行配置和客户化定制。本文在此对整个MTK软件系统的工程结构和配置进行了简单介绍,希望通过此文和大家相互交流MTK软件系统的维护和修改、定制方面的心得。    MTK使用了nucleus实时操作系统,在其上做了个内核抽象层的封装,以适应多种实时操作系统,如oscar、ThreadX、nucleus。整个软件系统包括nucleu

2、s操作系统、平台设备驱动、协议栈、文件系统、WGUI、MMI、J2ME等。在这里MMI部分几乎包括了操作系统内核、协议栈、文件系统之上的所有部分,其中WGUI也在其中。    MTK的PC模拟版使用VC的编译器和链接器生成,ARM版使用ADS1.2的编译器和链接器生成。因为MTK的整个软件系统是一个很庞大而且复杂的工程,并且要支持多个MTK的产品系列和多家客户的客户化支持,使用集成开发环境(IDE)已经无法胜任,而且很难做到整个工程的自动构建和资源、代码的生成。所以MTK的软件系统使用了windows下的GNU开发工具链(MinGW)来进行工程的管理、配置和构建,M

3、TK将MinGW放到了第三方工具中。另外还使用了perl脚本来解析用户输入的命令行参数,因此第三方工具中还包含了ActivePerl(windows下的perl解释器)。不过,整个软件系统并没有使用MinGW的全部工具,好象只使用了make这个工具,由几个Makefile控制了构建的过程,在编译和链接时根据最终生成PC模拟版还是ARM版而分别调用VC的编译器和链接器或ADS1.2的编译器和链接器。   接下来我们从具体的工程实践来看MTK的手机软件系统。一.MTK手机软件系统的目录结构简介    MTK手机软件系统的主要目录如下所示,因整个工程的目录树非常庞大,为简

4、单起见和减小篇幅,去除了在工程结构中相对不重要的目录。 .

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、-- LCD

23、   

24、   

25、   `-- TOP_6227_LCM

26、   

27、   `-- image_sensor

28、   

29、       `-- MT9D011

30、-- drv

31、-- fs

32、-- inc

33、-- init

34、-- 

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、-- a

67、bm.lib

68、               

69、-- adaptation.lib

70、               

71、-- applib_inet.lib

72、-- nucleus

73、-- nvram

74、-- plutommi

75、-- tools     Fast_DL是开发时下载二进制映像和资源等的相关文件的目录。ROM是固化在ROM(可能是Flash的只读区)中的相关代码和头文件的目录,在给客户的发布版中大都只有一些导出函数的头文件,其中似乎还有一个跳转表的东西ROMSA_FuncTable。   kal是上面所说的内核抽象层的相关文件的目录。nvram是存取NV中的内容的相

76、关代码的目录。nucleus是nucleus实时操作系统的目录,在给客户的发布版中只有头文件。drv是驱动相关的代码的目录。fs是文件系统相关的目录,好像只支持fat格式的。tools是工程相关工具的目录,包括MinGW。interface是系统各层的接口的目录,还包含重要模块的接口,如bluetooth、WIFI。config是一些系统和任务(task)相关头文件的目录,感觉不像是配置相关的目录。inc是中断控制和寄存器地址相关头文件的目录。   modis是PC模拟版的相关目录,包括了虚拟的GSM网络、SIM卡等,以及模拟器需要的字符串、图片等资源,还有PC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。