毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx

上传人:小飞机 文档编号:4266020 上传时间:2023-04-12 格式:DOCX 页数:67 大小:122.20KB
返回 下载 相关 举报
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx_第1页
第1页 / 共67页
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx_第2页
第2页 / 共67页
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx_第3页
第3页 / 共67页
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx_第4页
第4页 / 共67页
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业论文设计基于MTK平台移动终端应用层软件的设计与实现.docx(67页珍藏版)》请在三一办公上搜索。

1、Newly compiled on November 23, 2020毕业论文设计基于MTK平台移动终端应用层软件的设计与实现软件工程XXXX企业指导教师姓名职称学校指导教师姓名职称XX工程领域作者姓名二XX年三月提交论文日期XX教授Application software Based on MTK platformDesign and Implementation of Mobile Terminal应用层软件的设计与实现基于MTK平台移动终端题(中、英文)目代号分类号学号密级UDC编号摘 要目前,手机已成为最广范围内使用的便携式电话终端。很多国家也成功地将本土品牌手机推向了国际市场。在手机

2、的研发过程中,人机交互接口(MMI)给进行移动通信的人与手机提供了交往的界面,它的设计优劣直接影响了手机销售市场的占有率,本文对人机界面的设计与实现进行了研究和探讨。本文首先介绍了手机发展现状和课题选题由来,阐明了课题的现实意义和主要任务。基于手机结构和嵌入式操作系统介绍了本项目的软件开发平台MTK平台,并详细分析了该平台MMI层软件结构。其中以手机应用层开发中的典型模块通讯录应用为例,先进行了系统需求分析和方案设计。然后具体实现了模块的各功能与所有界面,并完成了应用间交互的相关功能,后期根据编写的测试用例进行了黑盒测试。最终,样机通过了软、硬件测试,验证了其设计的正确性和可行性,并成功投入市

3、场。关键字:手机 人机交互接口(MMI) MTK 黑盒测试AbstractNowadays, handset has become a cellular phone terminal in the most widely used field. A great many countries succeeded in designing various handsets labelled by their own brand in international market. The Man-Machine-Interface(MMI) provides such an interface tha

4、t brings the convenience to both human and handset in the handset projects. And the advantages or not of design could make an important influence on the market share of mobile terminal products. The thesis makes the related R&D to design and achieve a friendly interface.The thesis first introduces t

5、he present situation and background of handset, and clarifies the significance of the topic and main task. On the basis of the architecture of handset and the embedded system, introduces the software development platform of this project, MTK platform, and the software architecture of MMI. Taking a t

6、ypical application, phonebook as an example, makes the requirement analysis and practical plan design firstly. Then goes deep into the detailed realization of function and interface, and fulfills the communication between related applications. In the later period, according to test case, finishes th

7、e Black-box Testing and debugging. Finally, passes all the testing of software and hardware, which verifies the validity and feasibility of the early design, finished products have been poured into market.Keyword: Handset Man-Machine-Interface(MMI) MTK Black-box Testing目 录第一章 绪 论 手机发展现状 移动通信的发展从1876

8、年贝尔发明电话以来,经历了长达一个多世纪的发展,电话通讯服务已走进了千家万户,成为国家经济建设、社会生活和人们交流信息所不可缺少的重要工具。在最近二十年中,通讯技术和业务发生了巨大变化,通信的地点也由固定方式转向移动方式。随着现代生活节奏越来越快,移动通讯发展迅猛,其通讯工具手机的更新换代和市场争夺战也愈演愈烈。国外手机生产企业认为质量和信誉是品牌的保证。同时,他们针对手机这种特殊商品的特点,即科技产品和时尚产品二位一体,致力于研究创新,从外型、功能、质量等方面不断改善力求做到尽善尽美。手机不再只是用来通话的,它已经成为一个集照相机、游戏机、音乐播放器、电影院等强大功能为一身的电子消费品。例如

9、,诺基亚的主要目标消费群是中高收入的白领阶层,摩托罗拉则是以追求潮流与时尚的年轻族为目标。同时,他们很重视促销、售后服务等一系列提高品牌价值和产品附加值的营销环节。国内在营销机理及营销管理的研究上,无论从框架体系,还是方法手段乃至观念都难于超越国外模式,基本上处于追赶型研究状态,但我国与国外研究的差距显然在以递增的速度缩小。目前,我国手机市场有30多个品牌,生产厂商40多家。整个手机市场保持着“寡头”格局,诺基亚、摩托罗拉、三星、索爱、飞利浦、NEC等着名外资品牌市场份额在四分之三。其余被以联想、波导、夏新、TCL为龙头的国产手机瓜分,他们在国家政策的扶持下,守护着国产品牌的尊严。我国部分的手

10、机生产商已基本掌握了协议栈软件、应用软件的开发,以及整机电路、模具、造型的自主设计、大生产技术与产业化,个别企业还掌握了基带、射频等核心芯片设计、物理层软件开发技术,并拥有整机设计能力,我国手机及多媒体信息终端产品的研发技术水平得到显着提高。手机所需的大部分元器件都可以在国内生产,移动通信产业链已基本形成1。 手机软件开发平台手机开发分为硬件、软件开发。硬件就是指外观设备、芯片等,而软件分为底层软件、应用软件。其中芯片设计是相对技术含量高的环节,其市场长期为国外厂商所垄断。国内厂商在04-05年间起步发展,新进厂商采用降低芯片成本、芯片附赠软件平台的模式,逐渐占据国内手机市场。手机芯片包含基带

11、处理器、射频芯片、应用处理器等,可为音频、视频等多媒体配备相应自己的芯片2。国外厂商有Ti、FreeScale、ARM、Intel、ADI、高通等,国内厂商有MTK、展讯、大唐移动、凯明、鼎新等。据iSuppli公司数据显示,2006年MTK基带市场份额为44%。国内手机采用MTK芯片的品牌有:联想、天阔、普天、三新、三盟、宇宙、南方高科、诺科、康佳、科健、采星、迷你、波导、CECT、TCL、奥克斯、东信、长虹、托普、吉事达等。MTK是联发科技股份有限公司的英文简称,它作为全球IC设计领导厂商,专注于无线通讯及数位媒体等技术领域。公司提供的晶片整合系统解决方案,包含无线通讯等在市场上居领导地位

12、。在MTK的手机解决方案中,将手机芯片和手机软件平台预先整合到一起。这种方案可以使终端厂商节约成本,加速产品上市周期。MTK公司的产品因为集成较多的多媒体功能和较低的价格在大陆手机公司和手机设计公司得到广泛的应用。MTK的Turn-key方案(将芯片与手机开发所需的软件平台乃至第三方软件捆绑销售)的巨大成功则证明了在这一领域平台技术不再是TI、英飞凌这些巨头的专属。这一策略使得MTK在手机市场取得了骄人的业绩3。但是并不是所有的国产手机都简单的运用MTK最被人称颂的total solution,而是“取其精华”,利用自己对市场的理解生产出具有自身特色的MTK手机。例如成功坐上了国产手机的第一把

13、交椅的天语手机。 手机软件分类按照软件安装的方式来分类,可以将手机软件分为前装软件和后装软件。前装软件是指在手机用户购买手机的时候,已经预先安装在系统内的软件。如通讯录、短信息等是设计厂商捆绑在操作系统的前装软件;后装软件是指在用户购买手机之后,通过下载或者与电脑连接等方式获取并安装的软件。按照应用类型分类,可以分为基本功能类(如通讯录、短消息)、信息资讯类(如腾讯QQ),工具类(如地图),娱乐类(如影院),游戏类等。 课题的现实意义本课题来源于本人在实习公司参与的手机研发项目A302,以其中的通讯录模块为例,详细阐述了GSM网络中MTK平台应用层软件的设计与实现。本项目的客户要求是希望从界面

14、外观、功能操作等各方面,在MTK平台上达到与某款手机高仿的效果。因此本课题的实践背景是基于MTK的total solution方案,按照用户需求并结合手机应用软件开发平台中的应用层概念,在应用层基础版本上进行基本功能类、前装软件的MMI二次开发。移动终端的应用层软件需要嵌入式实时操作系统的支持,基于一定的嵌入式操作系统提供操作系统抽象层,便于上层应用软件的开发和移植。应用层软件即人机交互接口(MMI)所反映出来的界面,其操作之简易性对于移动终端产品的优劣也具有举足轻重的作用。它是相对独立于通信设备标准的,有利于二次开发和项目移植,对于嵌入式移动终端应用软件的研究具有长远的现实意义。另外,从市场

15、效益的角度来说,不仅给公司带来了可观的经济价值,同时又为消费者购买移动终端产品提供了一个更有竞争力的选择。 论文的工作和结构在研发手机项目中,对通讯录模块研究与开发的工作经历了四个主要阶段:第一阶段:学习阶段。在原有移动通信的理论基础上,进一步对移动通信系统进行深入学习,阅读大量数字移动通信系统的书籍,着重于对移动终端所涉及到的理论进行有针对性的学习,为后续的工作奠定了良好的专业理论基础。同时,为了更好的进行软件设计,阅读了MTK平台软件设计的相关文章和文档,并参阅软件工程的书籍,学习必要的软件设计知识。对整个手机系统软件的架构进行把握。第二阶段:设计阶段。在了解了移动通信终端协议体系和整个手

16、机架构的前提下,对通讯录模块进行了总体设计。第三阶段:应用阶段。理论结合实践在手机软件平台上设计实现了通讯录模块的基本操作(如电话条目存储、删除、复制等)、来电免打扰、快速拨号等全部功能和界面。第四阶段:测试阶段。通过严格测试,并在程序结构上进行优化。根据实习期间所完成工作,将论文结构安排如下:第一章 绪论本章通过对比国内外手机发展先介绍了移动通讯的发展情况,然后分析了手机市场最大竞争力软件开发平台,由此简单介绍了项目应用平台MTK。最后阐明了本课题的实践背景、现实意义和论文各章节安排。第二章 手机系统结构本章分析了手机平台的硬、软件结构。在软件结构中重点介绍了移动通信体系结构,用举例对比的形

17、式介绍了几种常见的手机操作系统。最后着重阐述了手机嵌入式实时操作系统中的核心概念。第三章 MMI的研究与分析本章首先分析了MTK平台的总体结构。由于项目针对的是MMI层软件开发,开始重点分析MMI的软件结构。其中主要介绍了MMI Task运行机制、重要接口,以及MMI的各个模块。第四章 通讯录应用的设计与实现本章以通讯录模块为例,详细阐述了如何对该模块进行需求分析和设计,并在MMI层实现了通讯录各功能及相应界面。第五章 手机应用层的软件测试 本章首先列举了手机应用层软件测试方法,然后介绍了一个重要的调试工具MTK平台提供的软件仿真工具MoDIS。通过编写的通讯录应用的黑盒测试用例完成测试,最终

18、给出测试结果。第六章 总结与展望本章总结课题结果、不足之处以及展望。第二章 手机系统结构 手机硬件结构手机电路由无线收发信机、基带信号处理电路、基带控制电路、存储电路、键盘、显示器、外部接口等部分组成4其硬件结构,如图所示。MT6205 GSM BasebandMT6119RF TransceiverMBuzzerBatteryFET+DC inT/RSwitchPATXVCOVCOPLL26MHzVCTCXOI/QControlDSP52MHzDSPCoprocessorsMCU/DSPInterfaceRAMROMJTAGDebug256KbRAMARM7TDMI26MHzROMTDMAT

19、imerPLLRTCPWMLCDGPTSIMEMIWTDInterruptsDMAsSystem BusGPIOFlashUARTKPSubLCDSRAMMainLCDADCDACADCDACPowerSuppliesSIMCardMT6305PMIC图 手机硬件结构1.射频单元射频单元的发信通路将基带单元产生的s的TDMA帧数据流信号按GMSK调制方法形成I、Q信号,再调制到900MHz或1800MHz射频信号,经射频开关由天线发射出去,收信通路将天线接收的信号经低噪声放大、解调产生基带I、Q信号,通过解调和均衡将模拟的I、Q信号进行数字化,恢复出数字基带信号,送基带电路处理。射频单元的本振

20、信号通常从时基电路获得基准频率,然后采用锁相环技术实现频率合成。2.基带芯片与基带信号处理电路基带芯片是通信终端产品的关键部件,现在流行的一般有单IC和双IC封装两种形式。多家公司可以大量供应成套的芯片组。基带信号处理电路包括信道编/译码、加密解密、TDMA帧形成/信道分离及基准时钟电路、话音编/译码、码速适配器等。送话器的话音信号经过8kHz抽样及A/D变换,成为均匀量化的数据流,经话音编码、信道编码、交织、加密等处理,形成s的TDMA帧数据流,送调制器发送。在接收通道执行与发信通道相反的过程。帧及信令控制以时钟基准部分提供统一帧号、时隙号、1/8bits时钟等基础,实现同步。3.控制器控制

21、器实现对手机系统的控制,包括协议处理、射频电路控制、基带电路控制、键盘输入、显示器输出、SIM卡接口及数据接口等功能。 手机软件结构手机系统软件主要由:移动通信协议栈、设备驱动、操作系统、MMI和WAP组成。 移动通信协议体系结构GSM协议的分层原理来自于开放式系统互连(OSI)参考模型5-7。根据协议分层的概念,通信处理过程可以看作由最低层到最高层的若干有序的逻辑层次构成,每层都存在实体单元。最低层是信息在两个远距离实体之间的物理传输,要依赖物理介质,而最高层代表外部用户的观点。每一层向它的上层提供服务,这些服务是对下一层提供服务的扩充。GSM协议栈分为三层:物理层、链路层、网络层,如图中的

22、L1、L2、L3。第三层 L3第二层 L2第一层 L1第三层 L3第二层 L2第一层 L1中间层数据链路层 物理 连接MS侧网络侧SMSCCSSMMRMLAPDm物理层模块管理子层第三层第二层物理层MS的Um接口信令软件总体框图图 GSM协议结构分层模型第一层:物理层。物理层是协议体系中的最低层,它包括各类信道,为高层信息的传输提供基本的逻辑信道;每个逻辑信道都有自己的服务接入点(SAP),移动台的接入方式采用多址接入方式,可以在空闲时间检测周围的无线电环境,把检测结果定时的传给基站,确定是否进行小区切换。第二层:链路层。链路层属于中间层8-10(LAPDm:Link Access Proto

23、col for Dm Channel Dm信道链路连接协议)。它包括各种数据传输结构,对数据传输进行控制。LAPDm的基本功能是把单个的bit构成一个集合,以便在移动台和基站之间提供可靠的无线数据链路,所有的链路功能都是建立在这个基本结构单元上,这个单元称为帧,帧的结构采用HDLC(高层数据链路控制)的定义方式。链路层协议主要由、系列标准来描述11。第三层:网络层。第三层实体提供在一个蜂窝移动网和其相连接的其他公众移动网中建立、维护和终止电路交换连接的功能。还要提供必要的补充业务和短消息业务的控制功能。按照第三层实体所要完成的功能可以分成无线资源管理(RR)、移动管理(MM)和连接管理(CM)

24、三个子层(CC、SMS、SS)。无线资源管理子层(RR):提供的功能是完成与物理传输资源有关的管理。提供的服务包括:专用物理信道的建立与维持、应网络请求而进行的越区切换、信道传输模式的改变和质量测量等。移动管理子层(MM):具有支持移动用户的移动特性所必须的功能。提供的服务包括:当移动台激活与去激活时,或者用户所处定位区改变时,MM实体负责通知网络;MM实体不需要完成用户身份鉴别和注册的工作。连接管理子层(CM):包括呼叫控制(CC)、短消息业务(SMS)和附加业务(SS) 实体。呼叫控制具有为建立与拆除MS端主叫和被叫时的电路交换连接所必须的功能,提供的服务包括:发起呼叫、连接呼叫和释放呼叫

25、等12;短消息业务支持完成各种补充业务,如:呼叫转移、来电号码显示等;附加业务实体则支持完成点到点或广播短消息内容的接收与发送。我们现将协议体系进行必要的转化,提出协议栈的概念,并按协议规范对协议栈的功能确定如下。所提到的协议栈是对应与GSM标准13-15的L2和L3层,同时此协议栈还实现L3 层之上的短消息的第四层和第五层结构,分别为中继层(SMRL)和传输层(SMTL)。此外,此协议栈还需要支持SIM卡单元和小区广播的功能模块。由协议栈总体结构的描述可知,L3层是整个协议栈的核心,它包括了大部分的手机功能实现。它提供一个蜂窝移动网和与其相连接的其它公共移动网之间的建立、维护和释放电路交换的

26、功能;提供必要的支持补充业务、短消息业务和呼叫控制的功能;L3还包括移动管理和无线资源管理的功能。此外,最新开发的L3层应当能支持GPRS业务,并提供相应复杂的控制功能。在软件设计过程中,L3层主要由大量的程序模块构成,这些程序块在第三层各主体之间、第三层与相邻层以及相关层之间传递携带各种信息的消息单元。因此可以说,解决了L3层协议的设计也就基本上解决了整个协议栈软件的设计工作。 软件设备驱动16设备驱动主要用来解释来自MCU的命令,实现对外设的控制。这个模块处理许多用户可见的手机行为,例如键盘处理、LCD显示。该模块通过函数调用或与L4实体进行消息交互的方式被引用,通过访问设备寄存器来提供必

27、要的控制功能。手机系统中的软件设备驱动如图所示:UARTSPIAUX taskBMTPMICCameraUSB taskMSDCGPT,RTC,WDTPWM, AlerterJPEG DecoderADC SchedGPIOKeyPadLCDIrDA taskSIM图 软件设备驱动外设的功能解释如下:SIM:用户识别模块,写入用户信息UART:通用异步收发设备SPI:串口界面LCD:液晶显示器GPIO:通用输入输出RTC:实时时钟。当要求在某个时间闹铃,或者在某个时间段给MMI发送消息提示(以1秒为基准),这就由软件clock模块读写RTC。WDT:看门狗计时器GPT:一般设定的时钟PWM:脉

28、冲宽度调制Alerter:报警设备KeyPad:键盘,该模块处理所有从键盘发送来的信息,处理后并把按键信息发给上层。PMIC:电源管理芯片BMT:电池充/放电管理AUX task:耳机taskUSB task:协议和驱动IrDA task:IrDA和驱动MSDC:内存卡驱动,支持SD、MMC卡和内存片Camera:照相机JPEG Decoder:控制硬件JPEG解码器的软件 手机操作系统现在市场上流行三类手机嵌入式操作系统17:第一类是“实时操作系统(RTOS)”。其目的主要是驱动硬件,任务调度。这类操作系统一般是封闭系统,也就是一旦手机出厂,这类手机不能直接动态加载新的软件应用。RTOS手机

29、使用相对简单,经济实惠。对多数只把手机当做通讯工具的人来说,事先预装浏览器、彩信、三到五款游戏也就足够了。这类手机操作系统的主要代表为Nucleus、ThreadX、uC/OS、RT-Linux等。对于智能手机来说,RTOS需要借助JAVA中间件等来扩展业务,运行效率问题比较突出。第二类是“智能手机操作系统”。在完成第一类手机操作系统任务的基础上,这类系统进一步加强人机交互的一致性体验,强调多任务之间的协同操作,规范程序间通讯和编程模型。这类系统也被称为开放式操作系统,即手机出厂后,消费者可以借助于个人计算机,手工从因特网上下载新软件、游戏等。智能手机操作系统的主要代表为Symbian、Win

30、CE、PalmOS、Linux等。它们的软件体系架构沿用PC模式,即软件要事先安装到本地永久存储器之后才能使用。第三类是“网络软件运行平台”。其目的是在第二类手机操作系统之上,构建一个所谓“中间件”平台。消费者可以很容易地、动态地、透明地下载移动电讯网上的一些新兴增值业务、游戏等,无需个人计算机作为扩展手机业务的中介。这类手机操作系统有JAVA、BREW、WIPI(韩国标准)等。由于GPRS带宽和流量费的限制,这类手机操作系统现在还不是主流。在网络软件运行平台上,消费者无需事先安装软件,软件可以直接下载到内存里运行。这类软件的使用和维护也比PC模式简单很多。下面介绍市场上主流的手机操作系统18

31、:系统Symbian是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,可以支持GPRS、蓝牙、SyncML,以及3G技术。最重要的是它是一个标准化的开放式平台,任何人都可以为支持Symbian的设备开发软件。与微软产品不同的是,Symbian将移动设备的通用技术,也就是操作系统的内核,与图形用户界面技术分开,能很好的适应不同方式输入的平台,也可以使厂商可以为自己的产品制作更加友好的操作界面,符合个性化的潮流,这也是用户能见到不同样子的Symbian系统的主要原因。现在为这个平台开发的java程序已经开始在互联网上盛行。用户可以通过安

32、装这些软件,扩展手机功能。 CE系统Windows CE系统包括 Pocket PC和Smartphone,前者针对无线PDA,后者专为手机,已有多个来自IT业的新手机厂商使用,增长率较快。Pocket PC 2002 推出了应用在手机上的Phone Edition(电话版本),国内贴牌机多普达686就使用了这个系统。不过它在移动通讯方面的功能并不是很全面。针对这种情况,微软于2002年底发布了专门为手机开发的操作系统SmartPhone2002,像Symbian Pearl一样,是专为移动通讯设备开发的系统。虽然从众多手机厂商的反应来看,全球手机五大厂商中只有三星购买了微软的软件许可,故其在

33、手机市场上占有率不高。系统Linux系统件是一个源代码开放的操作系统,目前已经有很多版本流行。但尚未得到较广泛的支持,其发展的最大阻力在于它对硬件要求比较高,而且没有一个强有力的推广方。这样就导致Linux手机的成本比较高,而且版本混乱。但Linux的优势也相当明显,首先它是免费的,其次它是开源的,每一家愿意的厂商都能够加入到Linux操作系统的底层开发中。系统Palm OS是Palm公司的是一种32位的嵌入式操作系统,它的操作界面采用触控式,差不多所有的控制选项都排列在屏幕上,使用触控笔便可进行所有操作。作为一套极具开放性的系统,开发商向用户免费提供Palm操作系统的开发工具,允许用户利用该

34、工具在Palm操作系统的基础上编写、修改相关软件,使支持Palm的应用程序丰富多彩、应有尽有。5.非智能手机操作系统低端手机也有操作系统,但功能非常简单,主要支持通讯录调用等。对于非智能手机设计生产商来说,不追求系统的强扩展性和第三方软件的添加,一般手机操作系统只需提供核心功能,如多任务调度、中断、通信机制等,便于上层应用软件的开发和移植即可。例如:MTK平台使用Nucleus Plus操作系统,Brew平台使用的是rex(Real-time Executive system)操作系统,展讯平台操作系统抽象层支持的是Threadx 操作系统。Nucleus Plus是美国源代码操作系统商ATI

35、公司推出的新一代嵌入式操作系统,属于抢先式实时多任务操作系统内核,95%的代码使用ANSI C编写,非常便于移植于各种处理器家族。从实现的角度讲,不同于传统嵌入式开发,Nucleus Plus是以函数库的形式链接到目标应用程序中,形成可执行目标代码,下载到目标板上或烧到ROM/FLASH ROM 中去执行。Nucleus Plus内核在典型的CISC体系结构上占据大约20k空间,而在典型的RISC体系结构上占据空间为40k左右,其内核数据结构占据字节的空间。 人机交互接口MMI随着社会的发展,人们对手机的要求越来越高,良好的通话质量,美观的外形,友好的人机界面,已成为人们追求的目标。因此,手机

36、人机界面的设计和开发无论对用户还是对公司,都日益重要。其主要提供移动台(手机)的全面控制和手机与用户之间的接口,功能包括:用户键盘输入、手机状态和呼叫处理过程显示、SIM卡和通讯录的管理、PIN码的控制、缩位拨号等。 手机嵌入式系统实时操作系统(Real Time Operating System)是根据操作系统的工作特性而言的。实时是指物理进程的真实时间。实时操作系统是指具有实时性,能支持实时控制系统工作的操作系统。首要任务是调度一切可利用的资源完成实时控制任务,其次才着眼于提高系统的使用效率,重要特点是要满足对时间的限制和要求。 多任务处理机制在嵌入式实时系统中,进程(或任务)是操作系统的

37、核心,操作系统的存在归根结底就是为了提供一个运行程序的空间。多任务系统的执行过程实际上就是一系列任务在三种状态中循环流动、轮流被内核调度的过程。每个任务都是一个无限的循环,而且在同一时刻可运行的任务只能处于运行态、就绪态或阻塞态三种基本状态之一19。如图所示:运行就绪阻塞被调度时间片用完资源释放或事件完成等待资源或事件图 任务状态及转化在市场推动下,手机功能在不断发展。摄像头、MP3、蓝牙这些功能可以依靠硬件,对CPU的压力还不是很大。但java虚拟机、嵌入式浏览器等应用软件就会对CPU资源有较高的要求。不管是单CPU还是双CPU,多任务机制在手机中就显得非常重要。在同一时间我们会有许多的事情

38、要去做,比如进行电源管理,协处理器管理,文件系统管理,串口管理,显示管理,SIM卡管理,LCD显示管理,用户输入管理等等。如果是单任务串行机制,那么操作系统的实时性就无法保证了。 基于优先数的任务调度每个进程都有一个优先数,数值大的表示优先级高,系统在调度时总选择优先数大的占用CPU。优先数的确定有两种:静态优先数法:进程创建时就规定好它的优先数,这个数值在进程运行时不变。确定数值时可以考虑采让外设进程或终端用户进程优先。动态优先数法:进程的优先数在执行过程中可以根据情况而改变。大多数的嵌入式实时操作系统使用的是基于优先级的可抢占式调度策略,应当采用优先级继承和优先级天花板策略来解决和避免优先

39、级反转问题。手机嵌入式系统中,任务优先级的概念体现在窗口管理机制上。设置窗口优先级的目的是为了保护那些重要的窗口不被打断。例如,当手机在呼叫状态时是处于Call窗口的,在Call的过程中不能够出现被SMS或者Alarm窗口打断的情况,否则会影响正常的Call过程。 任务间的通信在一个实时系统中,可能有许多任务作为一个应用的一部分执行。系统必须提供这些任务间的快速且功能强大的通信机制。两个并行进程可以通过互相发送消息进行合作,消息是通过消息缓冲而在进程之间相互传递的。任务之间的通信有三种方式:信箱、队列FIFO和管道PIPE。1.信箱信箱是任务间发送消息的接口,也是OS提供的一种机制。每个任务可

40、以定义一个信箱,其他任务可以给它发送消息。每个消息的结构中有个是信号量,它与某一事件联系,而此事件是由于信箱中来了消息激发的。然而如果一个任务需要从多个信箱中得到消息,它必须能够知道事件的标识和事件已经发生。信箱可以看成是长度为1的队列,它消耗的资源少于队列,运行速度快于队列。2.队列FIFOFIFO是一种先进先出的队列。它类似于一个管道,只允许数据的单向流动。每个FIFO都有一个名字,允许不相关的进程访问同一个FIFO。因此也成为命名管。3.管道PIPE管道一般用于两个不同进程之间的通信。当一个进程创建一个管道,并调用fork创建自己的一个子进程后,父进程关闭读管道端,子进程关闭写管道端,这

41、样提供了两个进程之间数据流动的一种方式。 任务间的同步内核也要提供为了有效地共享不可抢占的资源或临界区所需的同步机制。任务之间的同步有三种方式:信号量、事件组和信号。1.信号量(semaphore)信号量提供了对临界资源的控制机制。所谓的临界资源指的是在同一时刻只能为一个用户所使用的资源。对信号量的基本操作是得到(obtain)和释放(release)信号量。得到信号量是信号量的值减少;释放信号量使信号量的值增加。2.事件组(event group)事件组提供一种机制,指明了某种系统事件的发生。一个事件由在事件组变量中的某一位(bit)来代表,该位被称为一个事件标志。事件标志的使用是同步的,任

42、务并不知道事件标志的出现直到出现特定的服务请求。通常每个事件组中有32个事件标志。3.信号(signal)信号以异步方式操作,当信号出现时任务被中断,一个先前被任务定义的特定的信号处理程序被执行。每一个任务具有处理32个信号的能力。每一个信号由变量的一位(bit)代表。 小结在本章中首先介绍了手机的硬件结构和软件结构,其中详细研究了移动通信协议体系结构,并用对比的方式介绍了流行的嵌入式实时操作系统,最后重点对嵌入式实时系统的特点做了详细的分析。本项目是基于GSM网络,从界面、功能、外观等各角度在MTK平台上达到高仿某款手机的效果。而该款手机采用的Symbian操作系统在智能移动终端上拥有强大的

43、应用程序以及通信能力,它的特征包括文件系统、图形用户界面框架、多媒体支持、TCP/IP栈和库,提供的软件开发包可以供第三方应用程序开发使用。Symbian体系中有多个可选择的UI平台以适应不同的用户需求。这些优点是普通手机平台难以实现的,当然这也是本项目的难点所在。因此,项目的首要任务是先对原始需求进行充分评估和合理设计。第三章 MMI的研究与分析 MTK平台总体设计手机软件主要包括运行软件和调试软件两大部分。本项目中运行软件主要由:GSM协议栈、Nucleus操作系统、设备驱动、MMI和WAP模块组成。MTK提供的调试软件有:Catcher、META20。它们的作用在于监视软件的实时运行,加

44、速手机运行软件的开发。整个软件的结构如图所示:CatcherMETAJAVAMMIWAPL2/L3 Protocol StackDriversL1 Protocol StackL4CckNucleusOS图 MTK软件结构其中,Drivers是整个系统外围设备的驱动程序,WAP是无线应用协议,JAVA是J2ME软件。 适配层KALMTK平台使用了Nucleus Plus实时操作系统。本系统设计了一个操作系统适配层(KAL)在其上做了个内核抽象层的封装,使得手机软件独立于Nucleus操作系统。为了确保MMI task上所有程序能在PC机上正常的运行,这层是必须的。它封装了一些API,它们为其他

45、软件提供了很多系统服务函数,例如时钟管理、任务管理(同步和通信)、资源管理,内存管理等21。如图所示:OSLKALNucleusor otherRTOS图适配层KAL 适配层L422MTK平台中,L4层是MMI与AT和协议栈之间的一个适配层。也就是说,二者通过L4层完成通信过程。一般地,我们将L4以下的部分称为下层,上面的称为上层或应用层。详细结构如图所示:KAL OS adaptationNucleus OSDriverPS/L1RMI(AT)FMIATCIL4AL4CUEMSMUSMSALCSMTCMENGPHBRACL4图适配层L4MMI:包括RMI和FMI两个部分。前者即远程MMI(例

46、如,PC端),通过UART口利用AT命令与协议栈通信;后者包括了MMI的所有特性。L4A:FMI对应的L4适配层,FMI和L4A之间的服务节点是原始节点。L4C:L4的控制实体,处理所有应用的请求和响应。ATCI:AT命令解释器,解释来自PC端的AT命令,同时命令L4C执行相应的动作。UEM:用户设备适配。驱动的适配,如KEYPAD、LED、GPIO等。PHB:电话本管理。处理电话本的相关操作,如存储等。SMU:安全管理单元。安全性管理以及STK。CSM:电路交换协议栈管理。RAC:注册接入控制。包括GSM/GPRS的注册管理等。SMSAL:短消息服务应用层。处理短信存储、收发短信、小区广播等。TCM:终端文本管理。 task间的通信机制23在MTK平台中,系统被划分为若干个独立的task,它们由操作系统来统一管理调度。一个事件的处理往往是多个task交互完成的,这就需要每个task之间都可以进行通信,它们都是通过消息队列来接受或发送消息的。如图所示:CC TaskSIM TaskL4 TaskMMI Taskmore TaskMODL4CMODTCMMODSMSALMODCSMMODUEMMODRACMODSMUMODPHBSystem图 task

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号