當前位置:編程學習大全網 - 遊戲軟體 - MTK是什麽東西。。

MTK是什麽東西。。

MTK是現在市場上所有國內手機設計、制造商使用的最多的壹個完整的手機產品解決方案,大部分做手機的技術人員都對此有接觸和了解。不過,MTK的整套軟件系統十分龐大且復雜,很多剛接觸這套系統的軟件工程師壹時不知如何進行配置和客戶化定制。本文在此對整個MTK軟件系統的工程結構和配置進行了簡單介紹,希望通過此文和大家相互交流MTK軟件系統的維護和修改、定制方面的心得。

MTK使用了nucleus實時操作系統,在其上做了個內核抽象層的封裝,以適應多種實時操作系統,如oscar、ThreadX、nucleus。整個軟件系統包括nucleus操作系統、平臺設備驅動、協議棧、文件系統、WGUI、MMI、J2ME等。在這裏MMI部分幾乎包括了操作系統內核、協議棧、文件系統之上的所有部分,其中WGUI也在其中。

MTK的PC模擬版使用VC的編譯器和鏈接器生成,ARM版使用ADS1.2的編譯器和鏈接器生成。因為MTK的整個軟件系統是壹個很龐大而且復雜的工程,並且要支持多個MTK的產品系列和多家客戶的客戶化支持,使用集成開發環境(IDE)已經無法勝任,而且很難做到整個工程的自動構建和資源、代碼的生成。所以MTK的軟件系統使用了windows下的GNU開發工具鏈(MinGW)來進行工程的管理、配置和構建,MTK將MinGW放到了第三方工具中。另外還使用了perl腳本來解析用戶輸入的命令行參數,因此第三方工具中還包含了ActivePerl(windows下的perl解釋器)。不過,整個軟件系統並沒有使用MinGW的全部工具,好象只使用了make這個工具,由幾個Makefile控制了構建的過程,在編譯和鏈接時根據最終生成PC模擬版還是ARM版而分別調用VC的編譯器和鏈接器或ADS1.2的編譯器和鏈接器。

接下來我們從具體的工程實踐來看MTK的手機軟件系統。

壹. MTK手機軟件系統的目錄結構簡介

MTK手機軟件系統的主要目錄如下所示,因整個工程的目錄樹非常龐大,為簡單起見和減小篇幅,去除了在工程結構中相對不重要的目錄。

.

|-- Fast_DL

|-- ROM

|-- adaptation

|-- applib

|-- bootloader

|-- config

|-- custom

| |-- app

| | `-- TOP_6227_BB

| |-- common

| |-- drv

| | |-- LCD

| | | `-- TOP_6227_LCM

| | `-- image_sensor

| | `-- MT9D011

|-- drv

|-- fs

|-- inc

|-- init

|-- interface

|-- j2me

|-- kal

|-- make

| |-- applib

| | |-- applib.def

| | |-- applib.inc

| | |-- applib.lis

| | `-- applib.pth

| |-- bootloader

| |-- config

| |-- custom

|-- media

|-- mmi

|-- modis

|-- mtk_lib

| `-- MT6227

| `-- S01

| `-- gprs

| |-- abm.lib

| |-- adaptation.lib

| |-- applib_inet.lib

|-- nucleus

|-- nvram

|-- plutommi

|-- tools

  • 上一篇:淘寶網玩具芭比娃娃
  • 下一篇:阿蘭的《Lanlan》 歌詞
  • copyright 2024編程學習大全網