嵌入式实时操作系统报告.docx
《嵌入式实时操作系统报告.docx》由会员分享,可在线阅读,更多相关《嵌入式实时操作系统报告.docx(14页珍藏版)》请在冰点文库上搜索。
嵌入式实时操作系统报告
学号:
1325260453
《嵌入式实时操作系统》课程报告
学院:
信息与控制工程学院
专业班级:
控制科学与工程
姓名:
XXX
成绩:
目次
第一章绪论
1.1研究背景
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。
嵌入式系统过去主要应用于工业控制领域。
随着以计算机技术和通讯技术为主的信息技术的快速发展,以及Internet的广泛应用,嵌入式系统除了可以在传统的计算机上运行外,还可以广泛应用于PDA(PersonalDigitalAssistant,个人数字助理)、机顶盒、VCD、DVD、车载PC、手机等众多电子设备。
利用嵌入式软件,人们可以使用手持计算机或移动电话收发Email,或者通过WebTV访问Internet,用WebPhone拨打国际长途电话12I。
嵌入式系统将广泛应用于信息家电、工业控制、军事应用、POS(PrimaryOperatingSystem,主操作系统)网络及电子商务和环境工程等各个领域。
业界分析家认为在Internet电话、游戏装置和手持通讯装置的推动下,嵌入式系统将会有突飞猛进的发展。
它与Internet紧密结合,支持强大的移动性和智能性,并且具备强大的通讯能力。
嵌入式系统发展形式逐步多样化,将为用户提供更多的选择。
嵌入式系统和智能手机密不可分。
随着嵌入式系统的发展,智能手机也在不断地进化。
今天的智能手机已经向话音、数据、图像综合的方向演变。
昔日外形笨重、功能单一的智能手机已是明日黄花。
2005年,智能手机发展迅猛,不断推出新的产品,可以说是智能手机发展迅猛的一年。
智能手机以其强大的功能和便捷的操作等特点得到人们的青睐。
智能手机作为集语音通信、多媒体和掌上电脑功能于一体的移动通信终端产品,其最初源于掌上电脑,智能手机最早于1999年现身,当时摩托罗拉推出天拓A6188手机,是全球第一部具有触摸屏和中文手写识别输入功能的移动电话,被称为PDA手机的鼻祖。
这种新颖的功能整合手机面世后,因为价格一直居高不下,所以未能进入广大普通手机消费者的视野,直到2002年,包括摩托罗拉、爱立信、诺基亚等在内的手机业巨头一连推出了9款PDA手机,这时智能手机才渐成气候,逐渐走进平常人的视野。
与传统手机相比,智能手机的优势非常明显,不但内容丰富,还具有可以无限扩展的强大功能以及硬件的可升级性,这使得智能手机能够真正实现通信、电脑和互联网的融合,而要实现智能手机的这些功能,必须依靠移动互联网。
正是因为移动互联网所提供的丰富数据业务,智能手机的发展才如此迅速。
1.2智能手机概述
现代经济的飞速发展,人民生活水平大幅度提高,智能手机已逐渐成为人们日常生活的一部分。
从外观看,智能手机更像个PDA,它能在手机上欣赏MP3、下载游戏和MTV、用MSN和QQ进行在线聊天。
智能手机,说通俗一点就是一个简单的“1+1=1”的公式:
“掌上电脑+手机=智能手机”。
其实智能手机和其它手机最容易区分的一点就是“是否拥有操作系统”。
简单地说,判定一款手机是否为智能手机,我们要看操作系统的程序扩展性,看其是否可以支持第三方软件安装、应用。
从广义上说,智能手机除了具备手机的通话功能外,还具备了PDA的大部分功能,特别是个人信息管理以及基于无线数据通信的浏览器和电子邮件功能。
智能手机为用户提供了足够的屏幕尺寸和带宽,既方便随身携带,又为软件运行和内容服务提供了广阔的舞台,很多增值业务以就此展开,如:
股票、新闻、天气、交通、商品、应用程序下载、音乐图片下载等。
融合3C可(Computer,Communication,Consumer)的智能手机必将成为未来手机发展的新方向。
智能手机是和3G技术相伴而生的概念,是移动通信终端与PC融合的产物。
自2005年以来,智能手机这一新兴的高端2.5G终端就一直被媒体誉为“3G手机的敲门砖”和“3G的试金石”。
相关人士表示,由于智能手机与3G手机有着诸多共同点,智能手机已经成为厂商进入3G终端领域的预演,以智能手机为突破将为厂商在未来的3G之争中提供重要的基础和经验,从某种意义上说,智能手机已经敲开了3G的大门¨41。
智能手机将承载更多的增值服务,“拇指经济”需要以手机作为工具和使用平台,而智能手机将承载更多的移动增值业务。
未来技术的发展方向是3C融合(计算机,通信产品,消费电子产品)与“三网融合”(互联网,电信网,广电网)。
总的来说,智能手机虽然还有许多不足的地方需要发展和完善,但就目前来看,智能手机以其特有的优势跻身主流市场,并且承载着众多的数据业务,成为3G来临前的预演,在融合了11r、互联网、通信三大产业后,相信会有越来越多的手机厂商更加清晰地看到手机技术和产品的智能化发展趋势,从而更好地把握手机产业的现在和未来。
1.3Linux概述
Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intelx86系列CPU的计算机上。
这个系统是由全世界各地的成千上万的程序员设计和实现的。
其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。
Linux的出现,最早开始于一位名叫Linus的计算机业余爱好者,当时他是芬兰赫尔辛基大学的研究生。
他的目的是想设计一个代替Minix(UNIX的一个小的分支)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能,因而开始了Linux雏形的设计。
Linux以它的高效性和灵活性著称。
它能够在PC计算机上实现全部的Unix特性,具有多任务、多用户的能力。
Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。
Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。
它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用WindowsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。
1.4Linux主要特性
1.4.1开放性
开放性是指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。
凡遵循国际标准所开发的硬件和软件,都能彼此兼容,可方便地实现互连。
1.4.2多用户
多用户是指系统资源可以被不同用户各自拥有使用,即每个用户对自己的资源(例如:
文件、设备)有特定的权限,互不影响。
Linux和Unix都具有多用户的特性。
1.4.3多任务
多任务是现代计算机的最主要的一个特点。
它是指计算机同时执行多个程序,而且各个程序的运行互相独立。
Linux系统调度每一个进程平等地访问微处理器。
由于CPU的处理速度非常快,其结果是,启动的应用程序看起来好像在并行运行。
事实上,从处理器执行一个应用程序中的一组指令到Linux调度微处理器再次运行这个程序之间只有很短的时间延迟,用户是感觉不出来的。
1.4.4良好的用户界面
Linux向用户提供了两种界面:
用户界面和系统调用。
Linux的传统用户界面是基于文本的命令行界面,即shell,它既可以联机使用,又可存在文件上脱机使用。
shell有很强的程序设计能力,用户可方便地用它编制程序,从而为用户扩充系统功能提供了更高级的手段。
可编程Shell是指将多条命令组合在一起,形成一个Shell程序,这个程序可以单独运行,也可以与其他程序同时运行。
系统调用给用户提供编程时使用的界面。
用户可以在编程时直接使用系统提供的系统调用命令。
系统通过这个界面为用户程序提供低级、高效率的服务。
Linux还为用户提供了图形用户界面。
它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好的图形化界面。
1.4.5设备独立性
设备独立性是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。
Linux是具有设备独立性的操作系统,它的内核具有高度适应能力,随着更多的程序员加入Linux编程,会有更多硬件设备加入到各种Linux内核和发行版本中。
另外,由于用户可以免费得到Linux的内核源代码,因此,用户可以修改内核源代码,以便适应新增加的外部设备。
1.4.6供了丰富的网络功能
完善的内置网络是Linux的一大特点。
Linux在通信和网络功能方面优于其他操作系统。
其他操作系统不包含如此紧密地和内核结合在一起的连接网络的能力,也没有内置这些联网特性的灵活性。
而Linux为用户提供了完善的、强大的网络功能。
支持Internet是其网络功能之一。
Linux免费提供了大量支持Internet的软件,Internet是在Unix领域中建立并繁荣起来的,在这方面使用Linux是相当方便的,用户能用Linux与世界上的其他人通过Internet网络进行通信。
文件传输是其网络功能之二。
用户能通过一些Linux命令完成内部信息或文件的传输。
远程访问是其网络功能之三。
Linux不仅允许进行文件和程序的传输,它还为系统管理员和技术人员提供了访问其他系统的窗口。
通过这种远程访问的功能,一位技术人员能够有效地为多个系统服务,即使那些系统位于相距很远的地方。
1.4.7可靠的系统安全
Linux采取了许多安全技术措施,包括对读、写进行权限控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。
1.4.8良好的可移植性
可移植性是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。
Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。
可移植性为运行Linux的不同计算机平台与其他任何机器进行准确而有效的通信提供了手段,不需要另外增加特殊的和昂贵的通信接口。
第二章智能手机操作系统
2.1智能手机操作系统介绍
智能手机操作系统是一种运算能力及功能比传统功能手机系统更强的手机系统。
使用最多的操作系统有:
Android、PalmOS、Symbian、WindowsPhone和BlackBerryOS。
他们之间的应用软件互不兼容。
因为可以像个人电脑一样安装第三方软件,所以智能手机有丰富的功能。
智能手机能够显示与个人电脑所显示出来一致的正常网页,它具有独立的操作系统以及良好的用户界面,它拥有很强的应用扩展性、能方便随意地安装和删除应用程序
2.2智能手机操作系统比较
目前,市场上的智能手机操作系统主要有五种,分别是:
Symbian、WindowsPhone、PalmOS、Android和BlackBerryOS操作系统。
这里,对这五种操作系统做了如下分析和比较。
2.2.1Symbian
Symbian操作系统是一种32位抢占式多任务操作系统,具有功耗低,内存占用少等特点,非常适合手机等移动设备使用。
Symbian将移动设备的通用技术,也就是操作系统的内核,与图形用户界面技术分开,这就使得它能很好的适应不同输入方式平台,所以有不同晃面的Symbian系统。
由于支持Symbian操作系统的移动通讯终端设备厂商众多,因此市场上有相对较多的支持该系统的不同品牌和型号的终端产品。
同时,由于这个系统为第三方应用程序开发商提供了一个开放、标准的开发平台,因此,这些开发商一方面可以很容易地开发、设计相关的应用程序,另一方面也拥有了较多可以使用的终端产品。
因为支持Symbian操作系统的移动通讯终端设备厂商都是各家自己独立开发设计用户接口程序的,所以往往互不兼容。
另外,由于Symbian的定位是以手机为主,硬件方面的使用过于保守,软件的扩展性更不用说。
再者,由于各移动通讯终端设备厂商并非专业的应用软件开发,因此在应用软件的开发上要面I临很多的困难,尤其是在办公软件、媒体录播软件等方面,导致Symbian操作系统没有足够的应用软件可以选用。
2.2.2WindowsPhone
早在2004年时,微软就开始以“Photon”的计划代号开始研发WindowsMobile的一个重要版本更新,但进度缓慢,最后整个计划都被取消了。
直到2008年,在iOS和Android的冲击之下,微软才重新组织了WindowsMobile的小组,并继续开发一个新的行动操作系统。
原本计划它的正式版是在2009年发行,但是许多方面的延迟使得微软决定先用WindowsMobile6.5来过渡
WindowsPhone的研发一蹴而就。
造成的后果之一就是,旧有的WindowsMobile应用程序无法正常在WindowsPhone系统中运行。
WindowsPhone开发部门的副总裁泰瑞·迈尔森(TerryMyerson)说道:
“为了要借由不使用手写笔、改采电容型的触控屏幕、以及其它硬件的更动来改善WindowsPhone7的使用经验,我们不得不打破WindowsMobile6.5的应用程序兼容性。
”
WindowsPhone,作为WindowsMobile的继承者,WindowsPhone使用了一套称为“Metro”的新用户界面,其与微软已经中止的Kin很相似。
其主画面,亦称为“开始画面”,是由许多正方或长方图形、称为“动态砖”(LiveTiles)的元素所组成的。
动态砖相当于可以连结至应用程序、功能以及其它独立的组件(如连络人、网页或媒体项目)的按钮。
用户可以自行增加、重新排列或删除动态砖。
即使在设备锁定的情况下,动态砖也能够依据其所代表的内容随时更新——例如,电子邮件的动态砖上面会显示尚未阅读的邮件有几封;或者是气象的动态砖也能够显示实时更新的天气内容。
目前动态砖只支持纵向的版面,无法在横向模式中显示。
WindowsPhone起步早,发展慢。
虽然如此,目前WindowsPhone7已经应用在NOKIA手机上,并作为NOKIA手机主打系统推广到市面上。
2.2.3PalmOS
PalmOS操作系统由Palm公司自行开发,这种操作系统是更倾向于PDA的操作系统。
采用Palm操作系统的智能手机,其实就是“具备移动电话功能的掌上电脑”而己,其操作系统和以往掌上电脑的Palm操作系统没什么区别。
这样低的评价Palm操作系统的智能手机,很大程度上是考虑到其扩展性。
虽然Palm操作系统已经发展很久,但其许多功能都需要通过第三方软件协调实现,这种操作方式与Symbian和Linux相比,显然差了很多。
所以,Palm操作系统在智能手机领域的发展,并非一帆风顺。
这也难怪我们称其为“具备移动电话功能的掌上电脑”,而不是“具备掌上电脑功能的移动电话”了。
2.2.4Blackberry
黑莓系统是加拿大ResearchInMotion(简称RIM)公司推出的一种无线手持邮件解决终端设备的操作系统,由RIM自主开发。
它和其他手机终端使用的Symbian、WindowsMobile、ios等操作系统有所不同,Blackberry系统的加密性能更强,更安全。
安装有Blackberry系统的黑莓机,指的不单单只是一台手机,而是由RIM公司所推出,包含服务器(邮件设定)、软件(操作接口)以及终端(手机)大类别的PushMail实时电子邮件服务。
“黑莓”(Blackberry)移动邮件设备基于双向寻呼技术。
该设备与RIM公司的服务器相结合,依赖于特定的服务器软件和终端,兼容现有的无线数据链路,实现了遍及北美、随时随地收发电子邮件的梦想。
这种装置并不以奇妙的图片和彩色屏幕夺人耳目,甚至不带
发声器。
“911”事件之后,由于Blackberry及时传递了灾难现场的信息,而在美国掀起了拥有一部Blackberry终端的热潮。
2.2.5Android
Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统.早期由原名为"Android"的公司开发,谷歌在2005年收购"Android.Inc"后,继续进行对Android系统开发运营,它采用了软件堆层(softwarestack,又名软件叠层)的架构,主要分为三部分。
底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以Java编写。
安卓系统,界面华丽,操作方便,功能强大,更加人性化,开源系统,但是硬件配置要求比较高,系统相对不太稳定,问题较多。
第三章Linux在智能手机操作系统中的应用
3.1Linux的应用
随着半导体产品性能和效率的不断提高,今天的移动设备正在迅速提升其功能和复杂性。
尤其是,随着移动设备开始超越昨天的PC功能,且出货量也大大超过后者(大于5:
1),移动电话正在成为下一代的客户端设备。
但这一趋势同时也带来了大量的问题,市场成熟度就是其中之一。
对运营商而言,市场成熟度已经导致他们更加关注通过附加服务来提高从每个用户那里得到的平均收入(ARPU)。
但是由于缺乏清晰的标准,当运营商试图在一系列各自为政的设备上推广新服务时,必须招致巨大的成本和资源负担。
为了减小这一分散局面,移动运营商正努力在全行业推动规范的建立。
随着手机制造商和移动运营商继续建立和部署新功能及新服务,将其作为在日渐成熟和竞争日益激烈的市场中扩大业务的手段时,他们发现传统的专有开发平台已经不能充分满足其发展需要。
此外,市场压力也在迫使手机制造商在努力控制和降低成本的前提下专注于增值业务。
利用Linux,运营商看到了能够直接影响软件平台的机会,并获得了他们认为继续扩大业务所必须的某种控制程度。
Linux向运营商提供了一个具有延伸性的开放平台,可以被适当剪裁以满足运营商的标准和规范以避免分散,同时又可由客户定制并提供个性化特色服务。
其它专有平台提供很少(甚至是完全没有能力提供)的个性化特色或标准化服务,这导致了产品的千篇一律和分散化。
鉴于Linux的可扩展性,运营商将其看成是在自有网络中配置标准化平台的绝好机会,可以减轻部署新应用和服务所需的测试工作量,从而减少运营费用。
手机制造商在其设备中采用Linux后,可以向其用户提供独特的全新体验,同时可满足运营商的规范并减少他们开发和认证的综合费用。
基于这个原因,许多顶级手机制造商开始将Linux视作一个通用的解决方案,能够在广泛的设备范围内起到作用。
Linux还允许他们为可预见的未来制定一个充满活力并具有高度竞争力的路线图。
借助于功能更强大的半导体元件及操作环境,移动电话的性能也在不断增强,成为体积更加小巧但功能齐全的计算设备,从而为市场带来一个提供各种高级应用和游戏功能的机会(并非是必须的)。
但随着这些高级功能的出现,系统的复杂性以及对企业级开发工具的需求也在增加。
幸运的是,由于从企业环境中成长,Linux的生态体系非常适合于先进软件开发的需要。
再加上大量的开发人员、先前大量存在的应用软件、多种用于Linux平台的功能强大的开发工具,这些都增加了软件开发人员的选择性和灵活性。
具体来说,多个商家提供的基于Eclipse的开发工具已经使得Linux的软件开发更为容易。
Eclipse为开发和调试软件提供了一个完全的图形开发环境,而且可以很容易地用于运行Linux、Solaris和Windows操作系统的工作站之中。
以Eclipse为框架,软件开发工具商提供了一个熟悉的软件环境,同时可以使他们的资源集中于为产品添加最有效的功能。
昂贵的小批量“智能电话”通常使用相互独立的应用和基带处理器,并且还包括针对不同处理器的专用存储器。
过多的半导体器件增加了设计的成本,同时增加了产品的功耗,从而导致电池寿命缩短。
使情况更糟糕的是,专用基带处理器特别增加了对第二种操作系统的要求,从而降低了开发效率并增加了成本。
Linux领域最新的发展已经极大地改善了响应时间。
这些改进已经使得平台的优化版本能够在满足基带处理的“硬实时”需求的同时,提供丰富的应用、游戏和多媒体性能,而且所有这些都只靠单一处理器来驱动。
在称之为“单芯片组”的设计中采用Linux,可以使手机制造商以相当低的价格提供高端功能。
3.2智能手机系统体系结构
智能手机操作系统是在嵌入式操作系统基础之上发展而来的,专为手机设计的操作系统,除了具备嵌入式操作系统的功能外,如进程管理、文件系统、网络协议栈等,还需有针对电池供电系统的电源管理部分、与用户交互的输入输出部分、对上层应用提供调用接口的嵌入式图形用户界面服务、针对多媒体应用提供底层编解码服务、Java运行环境。
针对移动通信服务的无线通信核心功能及智能手机的上层应用等。
Android等智能手机操作系统的体系结构如图3.1所示。
图3.1Android等智能手机操作系统的体系结构
3.3Android体系结构
Android 采用了分层的体系结构,各层的结构和功能非常清晰。
从上往下看,Android
分为四层,分别是:
应用层、应用框架层、Android运行环境和系统运行库层、Linux 内核层,如图3.2所示。
图3.2Android智能手机操作系统的体系结构
3.3.1应用层
应用层位于Android体系结构的最上层。
Google在Android中内置了一些核心应用程序,如图3.2所示,有主屏幕(Home)、联系人(Contacts)、电话(Phone)、浏览器(Browser),另外还有日历(Calendar)、地图、SMS短消息程序、图库(Gallery)、输入法、闹钟(Alarm)等。
开发者还可以使用应用框架层提供的API编写自己的应用程序,这也是Android开源的巨大优势之一。
应用程序主要用Java语言编写,自Android1.5开始,Google提供了NDK开发工具,可以方便地开发基于JNI的应用程序。
NDK便于开发者开发需要基于C/C++才能实现的功能,也可以提高程序执行效率。
3.3.2应用框架层
应用框架层是Android体系结构的第二层,它不仅为应用层提供API,而且是一种重要的机制。
这种机制为应用层提供了可以复用的组件,提供了应用层开发的规范,屏蔽了应用层与底层交互的复杂性。
应用框架层提供的API并不完全对第三方应用程序开放,有一部分API是隐藏的。
开发第三方应用程序需要依赖AndroidSDK提供的API,它只是应用框架层API的一个子集。
3.3.3Android运行环境和系统运行库层
Android运行环境和系统运行库层位于Android体系结构的第三层。
本层相当于中间件层,为应用框架层提供服务,它分成两个部分:
一部分是系统运行库,包含各种系统库和第三方库;另一部分是Android运行环境,这里主要是使用C++和C实现的。
应用框架层为应用层提供的功能,在底层大多是由系统运行库实现的。
Android应用层使用的多媒体、浏览器、数据库、图形引擎等,其功能实现均位于该层Android应用层的Java程序运行在虚拟机中。
Android提供了Dalvik虚拟机以支持Java运行环境.
3.3.4Linux 内核层
Android自ICS开始基于Linux3.0内核,充分利用了Linux内核基于权限的安全模型、内存管理、进程管理、网络协议栈和驱动模型等优点,并在LowMemoryKiller、进程间通信(Binder)、电源管理以及日志系统(Logger)等方面引入了不同于标准Linux的全新实现。
Android对标准Linux内核做了大量剪裁和优化,其修改主要集中在以下方面:
(1)弃用标准Linux 的GUI系统。
(2)采用更有效率的BionicLibc库代