手机软件结构设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
手机软件结构设计说明书1、手机软件概述
Media Tek inc. GSM软件方案提供电路交换。可以实现语言和数据应用。本方案提供两种带宽的访问(GSM900和DCS1800)
本方案由五部分组成:L1协议、设备驱动、协议栈、MMI和WAP应用。Media Tek 同时提供三种工具给用户:Catcher,META和MCT。如下图所示。
Figure 1 软件结构图
软件方安由三个组件构成
1.MS的可执行软件,这是在手机上运行的部分,包括以下模块:-OS:Nucleus OS.
-L1协议栈:GSM的物理层。
-Drivers:设备驱动,象SIM,URAT,GPIO,等等。
-L2/L3协议栈:GSM协议栈层。
-MMI:人机界面。
-WAP:无线应用协议。
-JAVA:J2ME软件。
2 手机工程测试结构,即所谓的META.
3 Catcher
这些组件以下做简要的描述。
2005.04.14 Lihua add 总体讲手机软件就是通讯软件(协议栈)和GUI(MMI)的联合体。
1.手机软件结构说明
1.1.OS
Media Tek 采用Nucleus OS 真正的实时操作系统。A KAL OS 适配层被用来使Media Tek的软件适应Nucleus OS。这个API提供一系列的系统服务函数给其他的task,象primitives,timers,queue,memory management,event,等等。
1.1.1.OS提供的用户接口
nucleus.h
/* This file contains system constants common to both the */
/* application and the actual Nucleus PLUS components. This file */
/* also contains data structure definitions that hide internal */
/* information from the application. */
#define NU_Create_Task TCCE_Create_Task
#define NU_Delete_Task TCCE_Delete_Task
#define NU_Reset_Task TCCE_Reset_Task
#define NU_Terminate_Task TCCE_Terminate_Task
#define NU_Resume_Task TCCE_Resume_Service
#define NU_Suspend_Task TCCE_Suspend_Service
#define NU_Relinquish TCCE_Relinquish
#define NU_Sleep TCCE_Task_Sleep
#define NU_Change_Priority TCSE_Change_Priority
#define NU_Change_Preemption TCSE_Change_Preemption
#define NU_Change_Time_Slice TCSE_Change_Time_Slice
#define NU_Check_Stack TCT_Check_Stack
#define NU_Current_Task_Pointer TCC_Current_Task_Pointer
#define NU_Established_Tasks TCF_Established_Tasks
#define NU_Task_Information TCF_Task_Information
#define NU_Task_Pointers TCF_Task_Pointers
#define NU_Create_Mailbox MBCE_Create_Mailbox
#define NU_Delete_Mailbox MBCE_Delete_Mailbox
#define NU_Reset_Mailbox MBSE_Reset_Mailbox
#define NU_Send_To_Mailbox MBCE_Send_To_Mailbox
#define NU_Broadcast_To_Mailbox MBSE_Broadcast_To_Mailbox
#define NU_Receive_From_Mailbox MBCE_Receive_From_Mailbox
#define NU_Established_Mailboxes MBF_Established_Mailboxes
#define NU_Mailbox_Information MBF_Mailbox_Information
#define NU_Mailbox_Pointers MBF_Mailbox_Pointers
#define NU_Create_Queue QUCE_Create_Queue
#define NU_Delete_Queue QUCE_Delete_Queue
#define NU_Reset_Queue QUSE_Reset_Queue
#define NU_Send_To_Queue QUCE_Send_To_Queue
#define NU_Send_To_Front_Of_Queue QUSE_Send_To_Front_Of_Queue
#define NU_Broadcast_To_Queue QUSE_Broadcast_To_Queue
#define NU_Receive_From_Queue QUCE_Receive_From_Queue
#define NU_Established_Queues QUF_Established_Queues
#define NU_Queue_Information QUF_Queue_Information
#define NU_Queue_Pointers QUF_Queue_Pointers
#define NU_Create_Pipe PICE_Create_Pipe
#define NU_Delete_Pipe PICE_Delete_Pipe
#define NU_Reset_Pipe PISE_Reset_Pipe
#define NU_Send_To_Front_Of_Pipe PISE_Send_To_Front_Of_Pipe
#define NU_Send_To_Pipe PICE_Send_To_Pipe
#define NU_Broadcast_To_Pipe PISE_Broadcast_To_Pipe
#define NU_Receive_From_Pipe PICE_Receive_From_Pipe
#define NU_Established_Pipes PIF_Established_Pipes
#define NU_Pipe_Information PIF_Pipe_Information
#define NU_Pipe_Pointers PIF_Pipe_Pointers
#define NU_Create_Semaphore SMCE_Create_Semaphore
#define NU_Delete_Semaphore SMCE_Delete_Semaphore
#define NU_Reset_Semaphore SMSE_Reset_Semaphore
#define NU_Obtain_Semaphore SMCE_Obtain_Semaphore
#define NU_Release_Semaphore SMCE_Release_Semaphore
#define NU_Established_Semaphores SMF_Established_Semaphores
#define NU_Semaphore_Information SMF_Semaphore_Information
#define NU_Semaphore_Pointers SMF_Semaphore_Pointers
#define NU_Create_Event_Group EVCE_Create_Event_Group
#define NU_Delete_Event_Group EVCE_Delete_Event_Group
#define NU_Set_Events EVCE_Set_Events
#define NU_Retrieve_Events EVCE_Retrieve_Events
#define NU_Established_Event_Groups EVF_Established_Event_Groups
#define NU_Event_Group_Information EVF_Event_Group_Information
#define NU_Event_Group_Pointers EVF_Event_Group_Pointers
#define NU_Create_Partition_Pool PMCE_Create_Partition_Pool
#define NU_Delete_Partition_Pool PMCE_Delete_Partition_Pool
#define NU_Allocate_Partition PMCE_Allocate_Partition
#define NU_Deallocate_Partition PMCE_Deallocate_Partition
#define NU_Established_Partition_Pools PMF_Established_Partition_Pools #define NU_Partition_Pool_Information PMF_Partition_Pool_Information #define NU_Partition_Pool_Pointers PMF_Partition_Pool_Pointers
#define NU_Create_Memory_Pool DMCE_Create_Memory_Pool
#define NU_Delete_Memory_Pool DMCE_Delete_Memory_Pool
#define NU_Allocate_Memory DMCE_Allocate_Memory