(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf_第1页
(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf_第2页
(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf_第3页
(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf_第4页
(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机应用技术专业论文)cramfs文件系统空洞管理算法的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京邮电学院硕士论文 缩略词 缩略词 英文全称译文 c r a m f sc r a maf i l es y s t e mo n t oas m a l lr o m压缩r o m 文件系统 e x t 2 e x t e n d e df i l es y s t e mv e r s i o n2 第二代扩展文件系统 f o t a f i r m w a r e0 v e rt h ea i r 固件空中传输技术 o m a o p e nm o b i l ea l l i a n c e 开放移动联盟 r o m f sr o mf i l es y s t e mr o m 文件系统 r t o sr e a lt i m eo p e r a t i o ns y s t e m 实时操作系统 s y n c m l s y n c h r o n i z a t i o nm a r k u pl a n g u a g e 同步标记语言 s y n c m l s y n c h r o n i z a t i o nm a r k u pl a n g u a g e 设备管理同步标记语言 d md e v i c em a n a g e m e n t v f sv i r t u a lf i l es y 吼e m 虚拟文件系统 南京邮电学院学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电学院或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:日期 南京邮电学院学位论文使用授权声明 南京邮电学院、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电学院研究生部办理。 研究生签名:导师签名:日期: 摘要 最近的几年中,移动电话已经不仅仅是为了提供语音,人们对移动电话提 出了更多的需求,多媒体、移动存储以及商务应用已经成了移动电话必不可少 的功能。 为了提供这些越来越复杂的功能,移动设备终端中的软件往往非常复杂, 这种复杂性也使得移动电话制造商很难保证手机发布之后不再需要对软件进行 升级更新。 为了解决这种复杂性带来的诸多问题,比如版本发布之后发现漏洞,f o t a 技术被业界得到了广泛认可。通过这种技术,移动设备可以从相关站点下载软 件升级并执行自动修复功能,这样就避免了召回产生的大量费用。同样,也可 以升级软件来支持新的业务,而这一切都可以远程实现。 本文就是针对特定的平台( 嵌入式l i n u x ) 详细描述了f o t a 的实现过程。 由于嵌入式设备往往采用一些特殊的文件系统,而且其存储介质价格昂贵,所 以如何有效的管理升级文件系统之后所带来的空洞就是一个非常关键的问题。 本文对嵌入式l i n u x 文件系统中所采用的c r a m f s 文件系统进行了研究,给 出了文件系统升级的详细方法,然后针对文件系统升级产生的空洞进行了研究 并给出了空洞管理的优化策略。第一种是在不改变原来文件系统结构的情况下 从特定的区域选择文件来填充空洞,第二种是在文件系统中添加特定的字段来 限制每个空洞的大小。最后分析了两种策略对文件系统性能的影响以及空洞优 化的效率。 关键词:s y n c m ld m f o t a ,c r a m f s 南京邮电学院硕士论文 a b s t r a c t o v e rt h el a s ts e v e r a ly e a r s ,m o b i l et e l e p h o n e sh a v eu n d e r g o n eat r a n s f o r m a t i o n f r o mr e l a t i v e l ys i m p l ev o i c e b a s e dh a n d s e t st om o r es o p h i s t i c a t e dm u l t i m e d i a c o m m u n i c a t i o nd e v i c e su s e df o raw i d er a n g eo f p e r s o n a la n db u s i n e s sa p p l i c a t i o n s i no r d e rt op r o v i d et h i sb r o a da r r a yo ff e a t u r e s ,m o b i l eh a n d s e t sr e q u i r e i n c r e a s i n g l yc o m p l e xe m b e d d e ds o f t w a r e ,o f t e nr e f e r r e d t oa sf i r m w a r e t h e g r o w i n gc o m p l e x i t yo ff i r m w a r e ,h o w e v e r ,m a k e si t d i f f i c u l tf o rm o b i l eh a n d s e t m a n u f a c t u r e r sa n dm o b i l en e t w o r ko p e r a t o r st oe n s u r et h a tt h eh a n d s e tp r o v i d e dt oa l a s e rf u n c t i o n sp r o p e r l yo v e rt h ee n t i r el i f eo f t h ed e v i c e t oa d d r e s st h eg r o w i n gc h a l l e n g eo fp r o v i d i n gh i g h e rq u a l i t ya n dm o r er e l i a b l e f i r m w a r ef o rm o b i l ed e v i c e sat e c h n o l o g yk n o w na s “f i r m w a r eo v e r t h e a i r ( f o t a 、 u p d a t i n gi sg a i n i n gb r o a da c c e p t a n c ei nt h em o b i l ec o m m u n i c a t i o n si n d u s t r y f o t a u p d a t i n ge n a b l e sm o b i l ed e v i c em a n u f a c t u r e r sa n dn e t w o r ko p e r a t o r st ou p d a t et h e f i r m w a r et h a tc o n t r o l st h ef u n c t i o no ft h eh a n d s e tr e m o t e l y t h i sr e p a i rm e t h o di s s i g n i f i c a n t l yl e s se x p e n s i v ea n d m o r ec o n v e n i e n ti na d d i t i o nt od e l i v e r i n gr e p a i r st o f i xf a u l t yf i r m w a r e ,t h ef o t au p d a t i n gt e c h n o l o g yc a nb eu s e dt od e l i v e rl l e w f e a t u r e sa n ds e r v i c e st oc u s t o m e r s t h i sp a p e rd e s c r i b e st h ep r o c e s so f r e a l i z a t i o na b o u tf o t ab a s e do nt h es p e c a i l p l a t f o r m ( e m b e d d e dl i n u x ) b e c a u s ee m b e d d e dl i n u xu s u a l l ya d o p t ss o m es p e c i a l f i l es y s t e m sa n dt h es t o r a g ed e v i c ei sv e r ye x p e n s i v e ,i ti sak e yq u e s t i o nt h a th o wt o m a n a g eh o l e sa f t e ru p d a t i n gf i l es y s t e m w em a k ead e e pr e s e a c ho l lc r a m f sf i l es y s t e ma n di m p l e m e n tu p d a t i n gf i l ei n e m b e d d e dl i n u x a f t e ru p d a t i n gaf i l et h ef i l es y s t e mw i l lg e n e r a t ean e wh o l ea n d h o wt om a n a g et h eh o l e si st h ef o c u si nf i l es y s t e m t h ep a p e ro f f e r st w om e t h o d so f o p t i m i z i n gt h eh o l e s t h ef i r s ti st om lh o l e sw i t hf i l e ss e l e c t e df r o ms p e c i a la r e a s t h e o t h e ri st oa d ds p e c i a lf i e l d si nf i l es t r u c t u r et ol i m i tt h es i z eo fe v e r yh o l e a tl a s tw e a n a l y z et h ei n f l u e n c eo f t w om e t h o d sa n dt h ee f f i c i e n c yo f o p t i m i z i n gh o l e s k e y w o r d s :s y n c m ld m ,f o t a ,c r a m f s 2 南京邮电学院硕士论文 引言 课题背景 随着移动通信技术的成熟和广泛应用,人们已经不再满足于手机的简单通 信功能。移动娱乐、移动理财、移动上网等数据业务的需求已成为移动运营商 们拓展市场空间、提高移动通信附加值、增强用户忠诚度的重要手段。 复杂的功能必须要复杂的操作系统所支持,现在的高端手机价格昂贵、功 能复杂,对操作系统和硬件要求极高,一旦手机出现问题召回的成本非常大。 在线对手机进行升级是目前比较有效的解决方案。这样可以对用户进行终生服 务,既可以解决版本中发现的b u g ,也可以扩展手机的功能用来支持越来越多 的增值服务。我们从文件系统角度分析了手机在线升级中遇到的问题并给出了 相应的解决方案。 课题来源 本文所涉及的课题来源于摩托罗拉a 7 8 0 上f o t a 模型的前赡性研究。 本人作为项目组成员之一,完整地参加了这个课题。在课题研究中与项 目组其他成员合作,共同实现了整个f o t a 模型,并独立完成了其中c r a m f s 文 件系统空洞研究部分的工作。 论文组织结构 本文从f o t a 系统框架、嵌入式h i n u x 中c r a m f s 文件系统升级原理到空洞 管理都进行了全面地阐述。全文共分五个章节,内容组织如下: 第一章主要介绍了f o t a 系统的架构和实现,并介绍了其中关键的s y n c m l l ) m 技术,并对s y n c m l 的框架结构,同步协议,表示协议等进行简单描述。 第二章介绍了嵌入式操作系统的特点和嵌入式l i n u x 上的软硬件丌发平台 和其与桌面系统的差异,重点阐述了嵌入式l i n u x 系统的开发模式。 第三章从l i n u x 的e x t 2 型文件系统入手,分析了虚拟文件系统的实现机制, 最后分析了一下文件系统如何与操作系统进行交互的。 第四章具体分析了c r a m f s 文件系统的特点,对其结构进行了分析,给出了 在c r a m f s 文件系统中进行文件升级的方法,并对系统的各个模块进行了仔细分 析。 南京邮电学院硕士论文 第五章是关于空洞优化算法的。c r a m f s 文件系统在升级之后的空洞管理是 我们研究的重点,本章提出了解决这个问题的两种策略,并分别给出了两种策 略对文件系统性能的影响以及优化算法在实际系统中运行的结果。 6 南京邮电学院硕士论文 第一章f o t a 及s y n c m l 技术概述 1 1f o t a 1 1 1f o t a 的产生 随着移动通信技术的成熟和广泛应用,人们已经不再满足于手机的简单通 信功能。移动娱乐、移动理财、移动上网等数据业务的需求已成为移动运营商 们拓展市场空间、提高移动通信附加值、增强用户忠诚度的重要手段。 在移动通信领域,s t k ( s i m c a r d t 0 0 1 k i t ) 技术的出现曾经一度加速了移动 增值业务的普及。利用s t k 技术,可以在s i m 卡中很方便地设计出功能丰富、 操作更加简便的菜单,使用户能够以可视化、交互式的方式享受运营商提供的 多种增值业务。然而,由于用户s i m 卡中指令菜单修改并不方便,造成了s t k 技术难以在移动增值服务方面实现进一步推广。直到o t a 空中下载技术的出现, 才真正帮助s t k 技术快速在s i m 卡的市场应用中打开局面。 o t a ( o v e r - t h e a i r ) 技术实现应用数据传输的一种方式,是指用户可以根 据自己的需要,随时增加或珊j 除自己o t a 卡上的业务菜单,以次实现增值服务 的个性化和业务更新的实时性,同时使运营商能更方便、迅速地全面展开各项 服务。 o t a 技术的实现借助与s t k 功能和短消息通道,支持空中下载的o t a 卡提 供可行的人机接口界面,供用户发起下载申请。o t a 应用下载服务器根据用户 请求以数据短消息( s i m d a t a d o w n l o a d 模式) 的形式将相关的服务下载内容 发给用户手机,并将下载数据透明地传递给用户o t a 卡,o t a 卡对下载内容进 行组织存贮,实现相应的s t k 卡菜单管理。 o t a 技术的一个应用方向是移动设备管理m d m ( m o b i l ed e v i c e m a n a g e m e n t ) 。移动通信的发展让手机不再是一个简单的通话工具,而是拥有 更多的娱乐功能、个人信息管理功能、多媒体功能复杂的功能带来了复杂的 设备管理,当出现手机黑屏、死机或者其他软件故障、错误删除或者遗失了手 机中存储的数据、希望将数据从旧手机复制到新手机时,人们希望能够享受到 如同i t 技术人员提供给p c 用户那样方便的设备管理服务,如通过无线网络进 南京邮电学院硕士论文 行远程问题诊断、故障修复! 软件升级、参数更新、管理用户数据等。通过o t a , 能够方便有效地改善手机品质提高客户满意度,在客户支持服务和手机售后保 修方面为厂商节省大量成本。 o t a 技术的另一个应用方向是手机功能升级,有助于改善用户体验和使手 机更加个性化。首先,可以促进手机的用户晃面( u i ) 客户化,通过空中下载 更新指令,实现u i 表面更新或者程序升级,这样,运营商可以方便地删除已经 中止的服务或者增加新的服务功能,而这种改变会迅速地反映到手机用户界面 中。此外,手机用户还可以通过空中下载软件进行杀手级应用安装和升级,比 如病毒防御、f l a s h 播放器、即时聊天信息软件、j 2 m e 等,这就使原有手机的 功能得到了最大限度的提升。 然而在2 0 0 0 年至2 0 0 2 年间,用空中下载方式o t a 的软件更新被认为是不 可能的。因为,9 6 k b 秒的无线网络速度较慢,缺乏s s l 支持、数字签名和证 书等网络安全保障,此外,由于以前从未使用过,人们对使用差分的固件更新 的可行性还存在疑虑。在固件空中传输技术f o t a ( f i r m w a r eo v e r t h e a i r ) 出 现之前,使用差分技术的固件更新需要先在有线的环境下进行测试。使用有线数 据传输速度更快,可以达到1 9 6 或3 8 4 k b 秒,在工厂或服务中心进行也使得 系统更新更安全。f o t a 的出现大大扩展了这项技术的商用价值。 1 1 2f o t a 系统架构 f o t a 在实际应用中可以采用p u s h 方式来运作,也就是说,在用户不知道 的情况下服务器将需要更新的内容p u s h 给用户,由用户来决定是否更新。 一般来说,由手机厂商和移动运营商提供下载内容,具体到手机厂商来说, 如果他们的手机软件需要更新,或者它们的手机操作系统需要打上安全补丁, 就可以把这些内容放在服务器上,然后由客户选择下载或者强制用户进行更新。 下图就是整个f o t a 的系统架构图,从架构图中可以看到,服务器中需要提 供软件版本管理,提供升级软件包的下载,在服务器端需要对软件包加载鉴权 信息,在客户端下载后可以采用同样的鉴权码进行解码以及完整性校验帆 南京邮电学院硬士论文 客户端 图卜lf o t a 系统组件围 服务端 下面重点结合手机端操作系统进行一下f o t a 过程分析,下图描述了客户端 基本框架。 9 南京邮电学院硕士论文 图卜2f o t a 客户端工作原理 1 1 3f o t a 工作流程 固件升级协议规定了一系列的标准命令,这些命令是在升级过程中用来管 理固件的。在升级过程中,要特别注意发现设备、安全、下载和安装过程。 在这里,不得不提到s y n c m ld m ( d e v i c em a n a g e m e n t ) 协议。d m 协议就是为 了管理无线设备而诞生的。o m a 下载协议已经规定了完备而灵活的下载规范。4 可以用来下载一般性内容,也可以用来下载用户定制的一组内容。有了d m 和下 载规范,我们可以下载国件更新软件包以及相关描述文件来对固件进行管理更 新【2 1 。 固件升级一般包含以下几个部分: 步骤一:固件升级初始化 在开始任何固件升级之前,设备( 手机) 需要建立和服务器端的数据连接。 以下两种机制是必须支持的: 用户激发方式 1 0 南京邮电学院硕士论文 网络激发方式 对于用户来说一般没有什么特定的要求,我们可以提供一个便捷的菜单让 用户作出选择。用户激发方式也就是由用户发起一个d ms e s s i o n 的过程。 至于网络启动过程,也就是说设备管理模块提供一个框架,由网络发送给 客户个通知消息来告知用户开始一个d m 过程。这里采用的技术也就是常说的 w a pp u s h 技术。 步骤二:设备信息交互 为了能够让服务器提供相应的升级软件包,设备必须把自己的相关信息发 送给服务器,一般来说,为了保证升级的正确性,业界已经制定了一系列的规 范来进行双方的信息交互 3 】a 步骤三:固件下载 固件下载发生通过d m 进行r e p l a c e 指令进行的,因为这是f h 操作者的决策 来判断对哪些固件进行升级,但这也带来了一些缺点。 步骤四:固件安装 这里并不对终端如何进行固件升级进行假设,也就是说,固件升级可以根 据特定的操作系统和硬件设计具体的方案。 一般可以用下面的x m l 语言来表述: 3 x u p d a t e q 下a 唱e t q r e x e c 步骤五:通知u p d a t e 进度 在u p d a t e 过程中,客户端必须通知服务器完成的进度,以便服务器决策下 一步操作。如果一个u p d a t e 完成,就可以由服务器继续完成和客户端的整个 s e s s i 0 1 3 。 1 2s y n c m l 协议简述 南京邮电学院硕士论文 目前,移动计算和通信设备的流行很大部分原因是因为它们具有一些方便 的功能,比如说在需要时可以发送信息给其他用户,用户可以随时随地地利用 掌上设备访问信息和执行应用程序,甚至在飞行中也可以获得和更新信息。而 这种数据交互和执行应用程序的结果需要存储到手持设备中,也需要与其他数 据设备中这种类型的数据保持一致,比如,在手机中和p d a 中都存有通讯录, 在办公室和家里的p c 机或者笔记本也都存有相同的通讯录,我们希望这些设备 中的信息能保持一致,这就是数据同步。但是目前在数据同步领域还有两种方 式没有实现:一是支持任何移动设备同步的网络数据类型,二是支持任何类型 数据的移动设备。这样的直接后果是目前存在的大量的互不兼容的数据同步协 议,并且只是支持部分移动设备和部分数据类型。单一同步标准的缺乏为最终 用户、设备制造商、应用程序开发者和设备提供商制造了很多问题。因此,急 需这样一种能支持各种数据类型和多种终端设备通用的同步协议。 通用同步协议的目标是普遍适用,同步两端可以是任何一种类型、在任一 种网络上面,同步操作的数据可以是任何一种网络数据。任种移动设备包括 掌上电脑、p d a 、移动电话、自动计算机和桌面计算机。同时一个用户可以在不 同的设备上访问、操作同样的数据集合,例如,用户可以使用掌上设备或者移 动电话阅读电子邮件,还可以维护一个一致的、更新的纪录。同步两端可以使 用任意类型的数据类型,包括电子邮件、日历、事务管理信息、数据库中的企 业数据和w e b 文档。这种功能使得想要通过电子邮件接收订单的用户可以在同 样的设备上访问公司的目录清单系统,用来最后决定交付日期。实现这个目标, 通用同步协议需要下列特性二 可以有效的在有线和无线网络上运作: 支持多种传输协议: 支持任意的网络数据: 可由多种应用程序访问: 考虑到移动设备的资源限制: 构造于现有的全球互联网和w e b 技术之上: 协议最小功能就是赋予所有设备最常用的同步能力。 南京邮电学院硕士论文 s y n c m l ( s y n c h r o n i z a t i o nm a r k u pl a n g u a g e ,同步标记语言) 就是这样一 个新的通用标准,它由i b m 、l o t u s 、s t a f i s hs o f t w a r e 、m o t o r o l a 、n o k i a 、 p a l mi n c 、p s i o n 等商家组织发起成立数据同步论坛组织s y n c 札发起组制 定的,该协议发展成为一个可以被用户广泛接受的工业界通用的同步协议。自 2 0 0 0 年1 2 月s y n c m l l 0 发布以来,已经有将近7 0 0 家全球的公司宣布支持该 协议m i 。 s y n c m l 协议基于x m l 语言,s y n c m l 消息是以x m l 文挡形式表示的,在各种 网络上传播的s y n c m l 包和消息被注册成两种m i m e ( m u t i p u r p o s ei n t e r n e tm a i l e x t e n s i o n ,多用途网络邮件扩充协议) 媒体类型,一种是 a p p li c a t i o n v n d s y n c m l + x m l 类型,用来鉴别基于纯文本的s y n c m l 消息;另 一种是a p p l i c a t i o n v n d s y n c m l + w b x m l 类型,用来鉴别基于w b x m l 二进制表示 的s y n c m l 消息。 s y n c m l 是一套协议集,它主要包括4 个部分:s y n c m l 数据同步协议的框架 结构、s y n c m l 同步协议、s y n c m l 表示协议、s y n c m l 的传输方式。s y n c m l 同步 协议主要定义的数据同步操作的会话过程中的数据流程,同步双方的握手过程, 数据同步操作的类型等,s y n c m l 表示协议主要涉及同步所支持的数据类型、命 令格式,能够在各种网络传输的s y n c m l 消息格式;s y n c m l 消息可以在任何一 种有线和无线的网络连接上传输,在s y n c m l 协议的传输绑定中定义了可以在基 于h t t p ( h y p e r t e x tt r a n s f e rp r o t o c o l ,超文本传输协议) ,w s p ( w i r e l e s s s e s s i o np o r t o c o l ,无线会话协议) ,o b e x ( i r d ao b j e c te x c h a n g ep r o t o c 0 1 对象交换协议) 三种协议的网络连接上传输s y n c m l 包和消息这三种传输协议 基本含盖了所有的远程和短程连接【5 】d 1 2 1s y n c m l 框架结构 南京邮电学院硕士论文 h t t p w s p o b e x 其他协议 图l 一3s y n c m l 框架结构 这个框架如图卜3 所示。图中虚线框内部表示的是s y n c m l 标准讨论的 s y n c m l 框架结构,虚线框外部是数据同步协议。s y n c m l 框架由s y n c m l 数据格 式、s y n c m l 适配器和s y n c m l 功能接d - - 部分组成。 图中应用“a ”代表一个网络服务,可以与其他网络设备上的一些应用( 在 此图中指的是“b ”) 进行数据同步交互。应用“a ”和应用“b ”之间的数据同 步操作服务可以利用h t t p 协议、w s p 协议、o b e x 协议等公用网络连接。 “s y n c 引擎”负责管理整个同步数据的操作。应用“a ”的数据同步操作 基于数据同步协议,由“s y a c 引擎”负责管理整个操作过程。 “s y n c 服务器代理”管理“s y n c 引擎”对网络的访问,管理客户端和服务 器端的应用进行数据同步的相互通信过程。“s y n c 服务器代理”通过调用“s y n c m l i f , 或在此接口上的函数完成这些功能。 “s y n c m li f ”是面向“s y n c m l 适配器”的应用程序接口( a p i ) 。 “s y n c m l 适配器”负责消息的收发过程,在这个过程中收发双方相互通信, 收发s y n c m l 格式文档。“s y n c m l 适配器”同时负责创建和维护应用“a ”和应 用“b ”之间的网络连接【6 1 。 1 4 南京邮电学院硕士论文 通过调用“s y n c m li f ”的函数,应用“b ”用一个“s y n c m l 客户端代理” 访问网络和它的“s y n c m l 适配器”。 1 2 2s y n c m l 同步协议 在s y n c m l 同步协议中定义了在s y n c m l 客户端和s y n c m l 服务器之间消息的 交互过程,同时定义的数据同步类型包括双向同步,客户端发起单向同步,服 务器端发起单向同步,服务器端通知同步等。s y n c m l 消息给s y n c m l 服务器, 服务器根据s y n c m l 消息中的数据同步服务器中存储的数据,把修改结果消息回 应给s y n c m l 客户端1 7 j 。 1 s y n c m l 客户端:是指包含了同步客户代理并首先把其修改信息发给服 务器的设备,而且客户端必须能接收来自s y n c m l 服务器端的应答消息。尽管总 是s y n c m l 客户端先发送修改消息。但是在某种情况下,服务器端也要能发起同 步过程。s y n c m l 客户通常可以是手机、p c 或p d a 设备。 2 s y n c m l 服务器:是指包含同步服务代理和同步引擎的设备,通常要等 待s y n c m l 客户端发起同步过程并把客户修改消息发送到服务器端。服务器端负 责接收接收客户端的修改消息并进行同步分析。如果在传输层支持服务器端的 命令,s y n c m l 服务器端也可以主动发起同步过程。一般服务器设备或p c 都可 以成为s y n c m l 服务器。 其设计原则必须满足网络延迟的需要、满足各种设备、满足现有的各种储 存模式、满足多种安全需求和多种使用模式。 1 2 3s y n c m l 表示协议 s y n c m l 表示协议定义了用于数据同步操作中实体之间传输的消息的格式 该协议定义了一个x m l 的文档类型描述( d o c u m e n tt y p ed e s c r i p t i o n ,d t d ) 在此d t d 中定义所有的在数据同步操作中所需数据的表示方式,s y n c m l 消息必 须符合d t d 说明,以便在客户端和服务器端进行增、删、改操作信息和结果状 态信息的交互。同时在协议中定义了设备性能信息( 存储能力等) 和各种元信 息( 像安全认证信息) 的描述方法【8 】。 南京邮电学院硕士论文 s y n c m l 表示协议定义的s y n c m l 包的基本结构是各种同步消息的容器, s y n c m l 消息不仅是一个单独的m i m e ( 多用途网际邮件扩充协议) 实体,也是一 个格式良好的x m l 文档。一个s y n c m l 包可以包含一个或者多个格式完整的 s y n c m l 消息,用于客户端和服务器端数据同步操作。对于一个s y n c m l 消息则 可以包含一个或者多个同步命令,s y n c j l 同步消息由以下两部分组成: s y n c l 包 图卜4s y n c m l 包和消息结构 1 ) 消息头:在s y n c m l 消息头中含有消息的路由消息、版本消息、认证消息、 会话消息等等,s y n c m l 消息头由s y n c h d r 元素说明。 2 ) 消息体:在s y n c m l 消息体中包含一个或多个s y n c m l 命令,也包含需要同 步的数据项,s y n c m l 消息体由s y n c b o d y 元素说明。 每一个s y n c m l 命令由单个s y n c m l 元素类型说明,可以包含多个元素类 型以说明s y n c m l 命令的执行细节,这些细节信息包括需要同步的数据、元信息 等等。s y n c m l 命令可以分成消息请求命令和晌应消息命令,其中消息请求命令 包括 a d d :允许发送者将数据元素加入到接收者可以识别的同步数据中去,该 命令必须在s y n c 命令中指定。 a l e r t :允许发送者通知接收者。通知可以作为应用程序和应用程序之间 消息或者是接收用户接口的显示消息扩展。 1 6 南京邮电学院硕士论文 a t o m i c :允许发送者指明一个命令集合可在带有语义或者没有任何语义 的执行。 c o p y :允许发送者复制可被接受者接收的数据。 d e l e t e :允许发送者删除可被接受者接收的数据。d e l e t e 命令可以包含 一个请求未实现数据存档,删除可以是回收删除或者实际删除。 e x e c :发送者可以要求接收者调用一个命名的、可执行的程序。 g e l ;:发送者可以从接收者那里申请数据元素,这个命令不能被s y n c 命 令指定。 m a p :发送者可以接收者更新标识符在两个数据集合之间。 p u t :允许发送者发送数据给接收者,这个命令不能被s y n c 命令指定。 r e l e a s e :允许发送者对接收者可以接受的数据元素进行替换,这个命令 不能被s y n c 命令指定。 s e a r c h :允许发送者进行数据元素的查询。 s e q u e n c e :允许发送者指定一系列按顺序执行。 s y n c :允许发送者指定包含的命令作为同步两个数据集合的部分。 响应信息包括: s t a t u s :当处理前一个请求发生错误的时候,指明一个操作的完成状态。 r e s u lt s :用来返回g e t 或者s e a r c h 命令的数据结果。 s y n c m l 支持一套以不同媒体类型区别的数据格式用来进行信息交换,这些 数据格式在s y n c m l 规范中是强制的。s y n c m l 消息内部也是使用m i m i e 媒体类 型鉴别这些数据格式,并且支持任何一种注册的m i m i e 媒体类型。s y n c m l 与数 据格式和网络传输是独立的,这样使得s y n c l l l 能够支持各种数据格式像v c a r d ( 名片信息) ,v c a l e n d a r ( 同历信息,记事信息) 等等,而成为一个开放的标 准,同时s y n c l - t l 也支持各种根据需要自定义数据格式。 1 2 4s y n c m l 传输绑定 一个通用的数据同步协议可以将在各种网络上的任何一种设备连接起来进 行同步操作,为达到这样一个目的。s y n c i t l 必须能够满足无线通信的特定链路 南京邮电学院硕士论文 要求,因为无线网络的特点是网络传输延迟高,带宽有限,数据传输的成本高 等。 s y n c m l 能够充分利用网络资源,例如:完成一次数据同步只需传输6 个包, 利用这种优化可以大大减少“r e q u e s t r e s p o n s e ”交互的数据传输量,这对于 在空中无线网络进行数据同步操作是非常重要的,为了能够适应有限带宽资源, s y n c m l 利用无线二进制编码( w a pb i n a r yx m l ,w b x m l ) ,使每个包传输的数 据量尽可能地小,因为这种二进制编码能减少数据的存储量,也能减少处理这 些数据所需的资源。对s y n c m l 进行的这些优化使得它对于高延迟的无线网络更 具有顽健性吼 传输绑定是指s y n c m l 规范定义的s y n c m l 包的传输方式,即如何传输和交 换请求消息和响应消息。s y n c m l 规范中的同步协议和表示协议是独立于传输方 式的,因此s y n c m l 消息能够基于任何一种网络数据协议传输,s y n c m l 规范的 传输绑定协议有h t t p ,w s p ,o b e x 三种,同时s y n c m l 也能够基于e - m a i l 的标 准传输协议( s m t p ,s i m p l em a i lt r a n s f e rp r o t o c o l :p o p 3 ,p o s to f f i c e p r o t o c o l ;i m a p ,i n t e r n e tm e s s a g ea c c e s sp r o t o c 0 1 ) 和其他一些网络传输 协议,因为s y n c m l 消息是自包含的,从原理上讲s y n c m l 消息能够基于任何一 种传输方式,而服务器和客户端不必知道网络的物理上的拓扑结构。 1 2 5s y n c m l 参考工具包 虽然s y n c m l 参考工具箱( s y n e m lr e f e r e n c et o o l k i t ,r t k ) 是在 s o u r c e f o r g e 上托管的,但是它的保密工作还是做得比较好的。它是由s y n c m l 联盟自身开发的。当然,该联盟的成员有自己的基于s y n c m l 的产品要销售。所 以,虽然这个开放源码r t k 对我们很有好处,但为了不影响s y n c m l 设计人员的 业务,所以s y n c m l 联盟未对它作很广泛的发布。因此,该工具箱至今没有提供 任何样本应用程序。 资料显示:r t k 是一个比较成熟的产品,可以在w i n d o w s 平台和l i n u x 平台 上编译。但是,l i n u x 用户必须作一些更改,因为该工具箱并未彻底消除一些 小错误,例如期望不区分大小写的文件名。该工具箱包含一个综合c 库,用于 创建、发送、接收和解析s y n c m l 消息。它支持x m l 和w b x m l 编码,还支持盯t p 】8 南京邮电学院硕士论文 ( 用于w e b 上的同步) 、w s p ( 在w a p 上使用) 和o b e k ( 在i r d a 或蓝牙上使用) 传输。 r t k 附带有一套相当全面,但并不十分详细的a p i 文档。该文档中有些部 分似乎与库本身有出入,所以还需查看相应的源文件和头文件。r t k 反映出 s y n c m l 拥有这么多的组件,这使得它稍显杂乱无序。当然,就可移植性而言, c 是一种出众的语言,但p y t h o n 更易于访问。 工具包在x m l 语言和s y n c m l 之间起到桥梁的作用,它主要包括以下几个方 面: 1 使用s y n c m l 工具包 2 使用s y n c b i l 工具包的工作空间 3 使用s y n c m l 工具包解析器 4 使用工具包编码器 5 内容与通信 1 3 本章小结 本章主要介绍了o t a 的应用,f o t a 的背景以及s y n c m l 协议,同时给出了 f o t a 实现的基本架构。其中s y n c m l 协议是数据同步目前被广泛接受的标准, 这些都是本篇论文需要的相关知识。 1 9 南京邮电学院硕士论文 第二章嵌入式l i n u x 操作系统 近年来,随着计算机技术、通信技术的飞速发展,特别是互联网的迅速普及 和3 c ( 计算机、通信、消费电子) 合一的加速,微型化和专业化成为发展的新 趋势,嵌入式产品成为信息产业的主流。现在l i n u x 已经发展成为功能强大、设 计完善的操作系统之;可运行在多种硬件平台,而且开放源代码,可以定制; 可与各种传统的商业操作系统分庭抗争。l i n u x 广泛用于各类计算应用,不仅包 括i b m 的微型l i n u x 腕表、手持设备( p d a 和蜂窝电话) 、因特网装置、瘦客户 机、防火墙、工业机器人和电话基础设施设备,甚至还包括了基于集群的超级计 算机。越来越多的企业和研发机构都转向嵌入式l i n u x 的开发和研究2 1 1 3 1 。 2 1 嵌入式系统的出现 嵌入式系统是以应用为- 中心,以计算机为基础,软硬件可裁剪,适用于系 统对功能、可靠性、成本、功耗严格要求的商用计算机系统,系统结构见图2 一l 。 实时性是嵌入式系统的基本要求,其次,还要求代码小,速度快,可靠性高。 嵌入式应用软件 嵌入式操作系统 l 嵌入式处理器| l 嵌入式外围设备; 嵌入式硬件平台 图2 - 1 嵌入式系统结构 用于控制设备的计算机,也叫做嵌入式系统,它是指对l i n u x 经过裁剪小 型化后,可固化在存储器或单片机中,应用于特定嵌入式场合的专用l i n u x 操 作系统a 它的历史几乎和计算机自身的历史一样长。它们最初于六十年代晚期 在通讯中被用于控制机电电话交换机。由于在过去的十多年里,计算机产业不 断朝着更小的系统方向发展嵌入式系统也与之一起为这些小型机器提供了更 多的功能渐渐地,就需要把这些嵌入式系统连接到某种网络上,因而也就产 生了对网络栈的要求t 这提高了系统的复杂程度并要求更多的存储器和接口, 南京邮电学院硕士论文 还有操作系统的服务。嵌入式l i n u x 的开发和研究已经成为目前操作系统领域 的一个热点。与其它嵌入式操作系统相比( 详见表1 ) ,l i n u x 的特点如下。 表1 专用嵌入式实时操作系统与嵌入式l i n u x 的比较 专用嵌入式实时操作系统嵌入式l i n u x 操作系统 每生产一件产品需交纳一份版 版权费免费 权费 购买费用数十万元( r m b )免费 由开发商独家提供有限的技术全世界的自由软件开发者 技术支持 支持提供支持 网络特性另加数十万元( r 惦) 购买 免费且性能优异 易,代码开放( 有许多应用 软件移值难( 因为是封闭系统) 软件支持) 应用产品 短,新产品上市迅速,因为 长,因为可参考的代码有限 有许多公开的代码可以参 开发周期 考和移植 须改进,可用p t l i n u x 等 实时性能 好 模块弥补 较好,但在高性能系统中须 稳定性 较好 改进 2 2 在嵌入式系统中使用l i n u x 的优点和缺点 虽然大多数l i n u x 系统运行在p c 平台上,但l i n u x 也可以作为嵌入式系统 的可靠主力。l i n u x 流行的“b a c k t o b a s i c s ”方法使得它的安装和管理比 u n i x 更加简单灵活,其优点有: 1 l i n u x 具有广泛的硬件支持特性。典型的压缩包装l i n u x 系统经过打包, 在拥有硬盘和大容量内存的p c 机上运行,嵌入式系统可不要这么高的配置。一 个功能完备的l i n u x 内核要求大约1m b 内存。而l i n u x 微内核只占用其中很小 一部分内存,包括虚拟内存和所有核心的操作系统功能在内,只需占用p e n t i u m c p u 系统的1 0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论