可扩展设计(精选10篇)
可扩展设计 篇1
摘要:针对Tenca提出的基为8的Montgomery模乘器,采用基为64的改进设计,使其在不同运算长度下,运算速度比Tenca的设计平均提高了48%。同时对硬件设计进行了优化,缩短了关键路径的延迟。该设计具有良好的可扩展性,能够支持任意位数的模乘运算,可广泛应用于不同性能和面积需求的公钥密码协处理器设计。
关键词:Montgomery乘法器,高基,可扩展
模乘运算在公钥密码系统中(例如RSA算法、椭圆曲线密码算法(ECC)以及ElGamal算法等)有着广泛的应用。Montgomery模乘算法利用易于硬件实现的加法和移位操作来实现大整数的模乘运算,避免了复杂的除法运算,从而大大提高了模乘运算的效率[1]。
本文提出一种高速可扩展的Montgomery乘法器设计方案,该方案是在Tenca提出的Booth-8 Montgomery模乘法器的基础上,采用Booth-64编码进行改进,使速度平均提高了48%。同时对数据通路进行了优化,使得流水线数据通路的平均延迟大大降低。
1 MWR2kMM算法分析
Tenca等人在参考文献[2]中提出一种MWR2kMM算法,MWR2kMM算法如下:
其中,k表示基,X为模乘运算的乘数,Y是被乘数,M是模数。其中,操作数长度为N,部分积用为S表示,Y、M和S分成NW个BPW bit的字进行运算,xj表示X的第j bit,Sk(i)表示第i个字的第k位,Ca、Cb表示进位,q Yj、qMj分别是在计算部分积过程中Y和M的系数。
核心数据路径采用流水线组织结构,每一级之间用寄存器隔开。每个MMcell单元完成一轮外循环,每个时钟输入Y、M、SS、SC的一个字参与运算,并把Y、M和计算出来的SS、SC传递该下一级。为了能使数据路径可伸缩,加入了两个FIFO分别用来存储SS和SC。如图1所示,NS是流水线级数,由面积和时间需求来决定。
2 基为64的高速Montgomery乘法器设计
Tenca提出的模乘器设计中Booth编码采用的基为8,并且能够支持操作数长度可变的模乘运算,对操作数按字进行运算,缩短了关键路径的延迟,并且使用CSA(Carry Save Adder)提高了整体的系统性能。
通过分析,采用基为8的Booth编码可以将部分积数量减少为原来的1/3,而采用基为64的Booth编码则可以将部分积数量减少为原来的1/6。据此本文对Tenca提出的设计方案进行改进,因此提出基为64的高速Montgomery乘法器。
对于基为64的设计,乘数X每次扫描6 bit,经Booth编码后得到7 bit的输入数据,同时Y和M每次输入一个字。乘数X的Booth编码为:
xi-1是前一组扫描数据的最高位,qY的值表示为:
通过计算可知,qy的取值范围为[-32,32],这样需要预先计算3Y、5Y、…、31Y的Y奇数倍的值,从而占用大量的存储空间,且电路复杂,显然难以直接应用到模乘器的硬件设计中。为了解决这个问题,可以将qy用一个线性表达式qY=ha+b来表示,其中h为系数,a、b为变量。
为了确定系数h和变量a、b的取值范围,便于硬件实现,将a、b的取值范围限定在集合{±0,±1,±2,±3,±4}中。通过观察,要使qY=32,由于a、b的值最大为4,则要求h≥7;同时,要使qY=5,a取1、b最小为-4,要求h≤9。考虑到硬件的快速实现,系数h取8。则有:
qY=8a+b,其中a,b∈{±0,±1,±2,±3,±4}(3)
通过对qY进行线性表示,可以将qYY运算转化为计算8(a Y)+bY的值。为了进一步简化电路设计,a=3时,可以把3Y拆分成4Y与-Y的和;a=-3时,可以把-3Y拆分成Y与-4Y的和,这种方法同样适用于b。因此对a和b进行再编码,即a=qYa1+qYa2,b=qYb1+qYb2。qY可以分解为a和b,a和b又分解为qYa1、qYa2、qYb1、qYb2,这样可以避免对3Y进行预计算,大大简化了电路的设计[3]。
对于qM,它取决于S和M的最低6 bit的值,即qM:=Sk(-0)1..0(2k-Mk(-0)1-.1.0)mod 2k。在k=6时,qM的取值范围为[0,63]。为了进一步简化电路,对qM进行研究发现,当qM在[-32,32]范围取值时,同样可以使S的低6 bit变为0。系数qM从[0,63]转换到qM′[-32,32]的方法为:
本设计对于qM′的解码采取与qy相同的办法,首先对qM′采用线性表示,然后进行二次编码,输出qMa1、qMa2和qMb1qMb2。处理单元MMcell的结构如图2所示,其中qY解码器用来根据Xj信号进行解码,产生部分积选择信号qya1、qya2和qyb1、qyb2,而qM解码器根据S和M的最低6 bit的值,产生部分积选择信号qMa1、qMa2和qMb1、qMb2。对于部分积的求和运算,本文采用4~2的进位保留加法器,以减少关键路径的延迟,这样输出结果由SS和SC两部分组成。
3 性能分析与比较
对于基为64的Montgomery乘法器,计算一次模乘运算的总时钟周期数时,需要考虑NW≤2NS和NW>2NS两种情况,NW代表操作数所含的字数。一个MMcell需要两个时钟周期的执行时间,因此一个字经过流水线的总时钟周期数是2NS+1。由于每次可处理6 bit,所以需要轮循环。完成一次模乘运算的时钟周期数为:
从表1可以看出,在不同条件下,本文的设计在性能上平均比Tenca的设计提高了48%。本文采用字长32 bit,级数NS=8实现基为64的Montgomery乘法器,且使用Verilog HDL语言实现上述设计,并使用ModelSim对设计进行了仿真验证;基于SMIC 0.18μm CMOS标准数字逻辑工艺,利用Design Compiler进行了综合设计,结果显示频率达到251 MHz,面积为37 381门。
顾叶华在参考文献[4]中对Tenca提出的流水线结构进行了优化,提出了一种基为4的Montgomery乘法器方案。面积和速度的比较如表2所示。从表中可以看出,本设计在512 bit和1 024 bit下具有最小的时间×面积的值,综合性能最优。
本文对Tenca提出的基为8的可扩展Montgomery模乘器进行改进,采用了更高的基为64的设计,进一步减少了部分积的个数,缩短了运算时间。与Tenca在参考文献[2]中的设计相比,时钟周期数平均减少了48%,并且缩短了关键路径的延迟相比,综合性能具有明显地提高。
参考文献
[1]KOC C K,ACAR T,KALISKI B.Analyzing and compar-ing Montgomery multiplication algorithms[C].IEEE Micro,1996:26-33.
[2]TENCA A F,TODOROV G,KOC C K.High-radix designof a scalable modular multiplier[A].Cryptography Hardwareand Embedded System-CHES 2001.Springer Verlag,Berlin,Germany,2001:189-205.
[3]颜晓东,李树国.二次Booth编码的大数乘法器设计[J].清华大学学报(自然科学版),2007,47(10):1681-1684.
[4]顾叶华,曾晓洋,赵佳,等.一种新型操作数长度可伸缩的模乘器VLSI设计[J].计算机工程,2007,33(19):227-229.
可扩展设计 篇2
可扩展的冲击-接触并行计算研究
冲击-接触计算模型在汽车碰撞、金属成型等的模拟计算中有着广泛的`应用,鉴于冲击-接触计算过程复杂和计算量大,本文在分布式可扩展的并行计算平台上,设计并实现了冲击-接触的并行计算.算例证明,计算平台稳定可靠,算法简单实用,且具有较好的并行效率和可扩展性.
作 者:寇哲君 程建钢 姚振汉 作者单位:清华大学,工程力学系,北京,100084刊 名:计算力学学报 ISTIC EI PKU英文刊名:CHINESE JOURNAL OF COMPUTATIONAL MECHANICS CHINESE JOURNAL OF COMPUTATIONAL MECHANICS年,卷(期):20(3)分类号:O34关键词:冲击-接触 并行 可扩展
可扩展设计 篇3
可扩展财务报告语言(XBRL)作为一种新的企业信息披露标准和技术正在得到广泛的推广和应用。它将改革网络财务报告模式,对会计信息资源的开发和利用提供新的技术支撑手段和平台。XBRL自1998年在美国诞生以来,得到了迅速的发展。截止到2006年7月,XBRL国际组织(xbrl.org)拥有的成员数从初创期间的十几家发展到了四百五十多家,应用领域则涵盖了资本市场、金融监管、税务稽查、工商管理、保险和审计等诸多方面。我国的上海证券交易所和深圳证券交易所在“上市公司信息披露电子化标准”的框架下,从2003年年报开始,实施基于XBRL的上市公司定期报告报送系统。2006年,我国财政部王军副部长5月29号致函中国会计信息化专业委员会:“已确定借助会计准则委员会的组织架构,建立我国的XBRL组织,并拟以中国会计准则委员会的名义加入XBRL国际组织”。2007年,《财务经理人》杂志刊登了财务经理人协会(FEI)首席执行官Colleen Cunningham的文章,文中列出了2007年财务报告所面临的十大挑战,其中就包括XBRL的运用带来的挑战。然而,对于我国大多数企业及其财会人员来说,虽然作为企业财务信息的使用者,他们也认为现有的财务信息不能满足决策的需求,但他们还不了解XBRL,不知道XBRL有什么好处。对一项新技术的应用首先要投入资金,投入就要有产出,而企业应用XBRL的收益主要是一种间接效益和社会效益。那么,企业应用XBRL的动因何在?我国还能在企业推广应用XBRL吗?
一、来自于企业外部的呼声
(一)适应经济全球化和会计国际化趋势的需要
当今,企业面临的是全球市场的激烈竞争,而作为反映企业财务状况和经营成果的财务报告是企业参与全球市场竞争的重要的信息载体。通过互联网及时报告企业的经营成果和财务状况,是企业争取全球的客户资源、供应商以及投资商的重要途径之一。会计作为一种商业语言,要求其具备“国际标准语言”的呼声越来越高,商业报告尤其是财务报告全球化已日趋迫切。一方面,各国各地区的会计界积极推进会计准则的国际趋同进程;另一方面,支持企业在互联网上发布及时的财务信息的新标准和技术——XBRL的出现满足了网络财务报告模式变革的需求。XBRL首先在全球范围内制定了在互联网上表达、存储、传递、输出企业财务信息的标准体系,包括两部分内容:技术规范(Specification)和分类标准(Taxonomy)。前者是XBRL的核心,它规定了XBRL的理念和原则;后者是技术规范的具体应用。由于各国会计准则的差异,分类标准会有所不同,但必须基于特定版本的技术规范制定。对于技术规范,XBRL国际组织已公布了XBRL1.0版、XBRL2.0版、XBRL2.1版,拟采用XBRL技术的国家或其它领域可以从三种版本(规格书)中任选一种来制定分类标准(即应用标准)。目前,国际组织和发达国家都出台了一些分类标准。XBRL将从根本上改变企业编制和报告财务信息的方式,它将WORD、PDF、HTML格式的仅供阅读的电子版的传统财务报告转变成自带语义的可继续处理的财务信息,解决了信息披露与数据采集一体化以及跨平台使用的根本问题,方便全球各地的客户、投资商、供应商等通过互联网及时采集和分析企业财务信息,作出最佳决策。例如,微软公司于2002年就在自己的网站上提供了按美、加等五国会计准则以及按国际会计准则编制的XBRL格式的年度利润表,以便全球的投资者和客户了解公司的赢利状况。近年来,发达国家采用XBRL格式在互联网上递交财务报告的公司日益增多。我国企业要走出国门,融入国际化的大市场,需要适应经济国际化大环境的要求,这将成为推动企业应用XBRL的动力。
(二)适应证券、税务、审计等政府部门对企业监管的需要
证券、税务、审计等政府机构承担着一个国家或一个地区对企业的经济活动进行监督和管理的职能,独立审计师更是承担着经济警察的职责,企业必须按照相关法规和管理要求,按期向税务、审计、证券等管理部门提交纳税报告和财务报告。传统报告模式提交的纸质或其电子版格式的报告,由于没有统一的会计数据格式,加上各个企业信息系统的数据库平台不同,证券、审计等机构需要花费较高的数据采集和转换成本,不便于独立审计师和政府机构的相关管理人员进行审查和评价。XBRL提供了一种标准方法来表达、存储、传递和输出企业的财务数据和经济交易数据,并且与信息系统平台无关。它将报告的内容(数据)与显示的样式分开,使财务报告“数出一门”,又能按各类信息用户要求的格式输出。基于XBRL的财务报告的优势,证券、税务、审计等各个政府监管机构和独立审计师能通过互联网以更快、更经济的方式,从企业的同一个数据源获得统一格式的企业的经济交易和财务数据,降低数据采集、转换的成本和风险,便于财务、审计等各类分析性软件的应用,提高了证券、税务、审计等部门的工作效率,也便于实施在线审计和事中监督。由此,XBRL将得到各级政府监管机构的青睐,政府将会出台一系列政策鼓励企业应用基于XBRL格式的财务报告,以其宏观引导给企业应用XBRL带来推动力量。
(三)适应投资者、债权人等信息用户对企业的需求
我国的资本市场经过将近二十来年的发展,逐步走向理性和成熟。无论是银行、投资机构还是个人投资者都要求增加财务报告的透明度,都渴望公平地获得及时的、方便于分析和利用的财务信息,以便能准确地发现问题和机遇,及时、正确地作出投资决策,帮助其获得成功。而传统的在网上公布的财务报告只不过是纸质财务报告的电子化,只能阅读,不便于对财务报告中的信息资源再次进行分析和利用。例如,投资者或银行要进行行业内企业赢利能力的比较或某企业前后几年财务状况的比较,必须收集相关企业的财务报告数据重新输入,数据采集的成本和风险较大,远远不能满足网络计算潜在的应用能力(如在网络上挖掘实时共享交易数据)的需要。而XBRL以非线性的信息组织形式、灵活的Web应用、经济的开发成本、便捷的数据处理、开放的标准和数据的选择性更新等优越性受到投资者和债权人等信息用户的青睐,用XBRL格式在网上公布的企业财务报告将受到资本市场信息用户的重点关注和利用,这亦将成为企业推广应用XBRL的动力。
二、来自企业内部管理的需求
(一)改善与资本市场的信息沟通,获得筹资机会,降低资金成本
企业融资离不开资本市场,银行是企业最主要的债权人,上市公司更希望在证券市场上有很好的表现,以便筹集到需要的资金。企业要获得筹资机会和降低资金成本取决于很多因素,包括企业的健康状况、财务报表中体现的信息质量高低以及财务分析者视野的宽窄等。企业的健康状况一般体现在反映盈利水平的指标上,高质量的盈利水平代表着低资金成本;财务报表呈报给金融机构的信息越真实,越容易理解,就越能使金融机构较快理解企业盈利的质量水平,进而使企业取得更好的贷款比率;财务分析者视野的宽广体现在财务报表的信息披露是否充分上,企业提供更多透明和有用的信息会改善企业同投资者的关系,良好的伙伴关系和信誉能在一定程度上减低资金成本。由于XBRL具有标记功能,能够使信息需求者获得企业标记的全部信息,而不用担心被第三方歪曲。企业可以通过自己的网站,用XBRL格式“实时报告”销售收入和赢利状况等,还可对外发布新闻稿、公司的规章制度和内部控制等,使金融机构和投资者能快速获得和处理公司的信息,保证企业财务信息的透明度,在一定程度上解决了资本市场所面临的会计信息失真问题,节约了由所谓的信息不对称导致逆向选择带来的成本。
Hunton对“实时报告”的供给与需求的理论基础进行回顾与分析时认为,可以运用经济学上的成本收益分析方法评价与比较实时报告系统与传统报告系统。从收益方面来说,实时报告允许决策者获取实时信息将会降低股价变动性、信息风险、交易溢价、资本成本以及内部信息供给压力。而且,实时报告的成本主要是先进信息交流技术基础设施的开发与实施成本。一旦先进信息交流技术基础设施建立并有效运行后,实时报告的增量成本将会非常低微,尤其是XBRL技术的应用,使有关的网上系统能够无缝接合共同工作,能更有效率、低成本地缩短公司报告时间,从技术上促成在线持续报告的实现。
(二)改善企业内部管理平台,有利于及时分析和利用信息,提高管理绩效
在企业实现管理信息化的进程中,不少公司希望利用扩展标记语言(XML)的优点,加强企业内部信息系统间的协调和跨平台数据重复利用,以方便数据合并和报表编报。XBRL正是基于XML这一标记语言,继承了它拥有的所有技术优势。一方面,XBRL的“下钻”功能使得公司管理层在阅读报告时可以随时查阅相关明细信息,而不再只是面对单调的汇总数字,有助于提高管理者对报表数据的理解,帮助其作出有效的管理决策;另一方面,企业可以通过互联网方便地采集同行业的其他企业或上下游企业基于XBRL格式的财务报告及经济交易数据,运用分析软件与企业进行对比分析。例如,原材料的采购成本和产品的市场占有率等等。由于XBRL在互联网上统一了数据的输入、输出格式,不受信息系统平台的限制,能以最低的数据采集成本收集企业外部的有关信息,结合企业内部的数据进行比较分析,产生各种决策相关的报告,帮助管理者防范经营风险,提高管理绩效。
另外,对于一个企业的财务部门来说,如果企业采用XBRL总分类账的格式保存会计数据和经济交易数据,能迅速可靠地产生内部管理报告、对外的财务报表、纳税报表和其他规范性文档,包括银行信用贷款报告等,减少了各类报告编制的成本,提高了报告编制的准确度和可靠度。
(三)有利于企业兼并与重组中的财务信息处理
在全球经济一体化的环境下,企业进行跨行业、地区或国家的扩张、兼并或并购时有发生。企业的兼并与重组需要进行两个或多个企业之间会计数据的合并处理。而兼并与重组的企业之间采用的是不同平台的会计信息系统或ERP系统,会计数据结构不同,将涉及繁多的接口程序,给企业整合后进行的会计数据处理带来高昂的处理成本。在这种情况下,XBRL的出现能为不同信息系统之间的数据交流提出一个低成本、高品质的解决方案,只要将输入输出接口设计为以XBRL为基础的统一格式与型态,就可解决整合后的信息系统跨越各种不同平台的问题,可以使企业内部存在的不同的信息系统生成的信息能够进行合并、汇总,节约了由繁多的接口程序带来的高昂的开发成本。这样,被兼并或并购的企业不需放弃原有的系统即可实现系统间的数据交流,这显然有助于降低并购成本,提高企业整合的效率。
三、结束语
经济管理对会计的需求和会计数据处理技术的发展一直是推动会计发展的主要动力。上文从企业的外部环境和内部管理两方面分析了推动企业应用XBRL的因素,XBRL技术的快速发展也在影响证券、审计和会计界,同时也在推动企业的应用。科技领袖像微软、Oracle、SAP、光谱、日立与埃德加在线以及一些新软件公司如Rivet软件公司,已宣布将开发以可扩展财务报告语言即XBRL为基础的新产品和新技术。2002年11月,微软公司推出与普华永道、纳斯达克证券交易公司合作的.Net Web服务计划,该计划能够使投资者和分析家们利用微软公司的网络、通过互联网对存储的财务数据进行访问并分析。这个项目就是以XBRL和Microsoft Office XP 智能客户端为基础,项目的核心是 Excel Investor's Assistant,它使用XML Web services直接向桌面发送 XBRL数据。用户可以通过使用自己熟悉的工具Microsoft Excel来轻松地访问和分析数据。
可扩展设计 篇4
一直以来,远程监控都是一个智能系统必不可少的要求。许多复杂场景的远程监控采用视频监控形式[1 - 2]。近年来,伴随着智能家居的发展,越来越多的研究开始关注家电设备的远程监控[3 - 5],因为系统规模小,这些控制相对简单。随着大型系统中大量智能设备的应用,远程监控技术得到越来越多的研究[6 - 9]。由于监控信息的多样化,基于扩展性和互换性要求,XML技术在监控系统中得到广泛的应用[8 - 9]。
同上述研究相比,数字标牌系统在远程监控方面面临更多挑战。比如一个数字标牌系统往往有大量不同版本、不同类型的播放终端,且不同时期要监控的信息也不一样。这都增加了监控系统的难度。本文根据数字标牌系统远程监控面临的问题,充分利用可扩展的结构设计和XML技术,设计了一种扩展性强的远程监控系统。最后通过实际测试,显示这样的设计是可行有效的。
1 系统框架结构及关键技术
1. 1 系统框架结构
监控系统的主要目标有两个,一是可以通过系统了解终端设备的工作情况; 二是可以通过系统对终端设备进行必要的控制。此外,也需要终端设备发生重要状况时可以主动发出报警信息。
考虑到实际应用环境的需要和网络情况的适应性,本方案采用的系统框架结构如图1 所示。
图1 是一个逻辑框架结构,图中,管理程序和监控程序之间有一个接入服务器,这主要是考虑大多数被监控的设备及监控信息管理者都处于内网中,二者无法直接访问,利用接入服务器中转,便于管理程序和监控程序进行通信。同时,接入服务器对监控程序和管理程序进行接入管理,也保证了系统的安全要求。
1. 2 系统结构的扩展性
系统中的监控程序运行于不同的终端设备上,可能具有不同的监控要求。这些监控要求还可能随着时间的变化而变化。比如,早期监控程序可能仅仅监控终端的功能程序执行情况,如通过接口获取一些特别变量值、读取运行日志等; 而后期可能又需要监控系统信息,比如内存占用大小、磁盘剩余空间、系统运行进程等多方面信息。可扩展的体系结构应该很方便地反应检测信息和控制行为的更新变化,所以采用合理的监控程序结构设计是需要重点考虑的。
目前,有许多可扩展的程序设计技术,比如动态库技术、中间件技术、动态升级技术等。良好的结构可以确保在系统要求监控信息和行为发生改变时,对系统的修改和影响最小。基于此,本系统采用了可动态升级的动态库组件作为控制程序的核心,实现了监控系统结构扩展性要求。
1.3基于XML的监控信息表示
为了适应多种多样的且频繁变化的监控信息的采集、传输、显示和控制管理,采用一种扩展的信息描述方法也是本系统的必然要求。
XML可扩展标记语言在数据表示和数据交换方面具有强大的功能,已成功应用在各种领域的数据交换和系统集成中。在本系统中,为了实现监控信息与传输的无关性,特别设计了监控信息标记语言( MIML) ,通过合理的协议设计,接入服务器完全不需要知道监控信息的具体内容。而管理程序只要根据语言描述展现信息即可。因此,针对不同终端的不同监控要求,虽然其监控信息内容因为不断升级而不一样,但是并不需要接入服务器和管理程序同步升级,大大简化了系统的维护工作。
2 系统设计与实现
2. 1 基于XML的监控信息描述
可扩展的监控系统需要支持各种监控信息的采集传输和显示,特别是考虑到未来扩展和升级的要求。一般来说,远程监控信息体现在如下几个方面:
1) 管理程序发送远程控制要求,监控程序返回远程控制结果和控制后状态信息;
2) 发生故障或者意外时,监控程序主动向管理程序发送的告警信息;
3) 管理程序定时或者随机发送的查询信息请求,监控程序返回恰当的信息。
信息的产生、执行和显示主要在监控程序和管理程序之间。管理程序需要能够识别并合理显示监控程序送过来的各种信息; 而监控程序能够根据配置或者管理程序的要求,及时执行控制命令或者返回查询信息,并主动汇报异常信息。根据扩展性要求,需要管理程序能够合理显示一种监测信息; 而监控程序可以根据播放终端的类型,合理地执行管理程序的控制要求及给出可升级的信息。
采用具有扩展性的XML为基础,本方案专门为监控信息传输和处理而建立的MIML可以很好地实现上述各种监控信息的需要,实现监控程序和管理程序之间的数据信息扩展性共享。
根据监控信息的特点,MIML主要是描述各种监控信息的内容和显示方式,结合了XML描述数据内容的特点和HTML描述显示的功能。这样设计的好处在于,无论监控程序如何升级,显示的信息如何变化,管理程序都可以很好地显示给用户查看。
MIML对每个信息内容采用3 个标签表示,即名称、类型和值。对于一组信息具有分类属性。对一组或者一个信息还有一个统一的显示描述。分别描述其标题、位置、颜色、字型等简单的显示要素。以下是一个符合MIML的简单描述代码:
MIML支持默认处理,比如显示属性如果都是默认显示,则可以不需要描述; 另外,对于一些二进制数据,比如图片、声音或者文件传输,MIML仅传输相关URL,然后由具体传输协议处理,这大大简化了MIML的设计。为了动态获取监控程序的功能,type为5 时表示后面跟子控制命令,由于篇幅关系,不再对子控制命令做详细说明。
为了处理方便,MIML严格实行端到端逻辑,仅仅是监控程序和管理程序之间的逻辑。同时,为了扩展性要求和处理方便,设计了可扩展的监控信息传输协议,采用option = value的格式。如图2 所示。
协议的选项包括3 种,即信息类型( type) ,表示监控信息的种类; 信息内容( content) ,表示信息的具体XML描述; 信息长度( length) 则表示信息内容的长度,避免XML内容中具有选项字而影响协议的解析。信息类型的设计要便于分类处理,结合监控程序和管理程序设计的需要,信息类型的设计如表1 所示。
信息类型是可扩展的,具体一个设备可以监测或者控制的信息类型可以通过一个查询得到,然后再根据信息类型进行详细查询,以确保系统的可扩展性要求。
2. 2 监控程序设计
虽然数字标牌系统终端类型多样,且要求监控的信息在不同类型之间也具有差异,但是确保相似的程序架构设计可确保信息处理和升级流程具有一致性。目前大多数播放终端采用了Linux和Windows平台,虽然Android系统也逐渐流行,但是其内核仍然是Linux的。考虑到监控程序不需要界面,完全是自动执行,因此仅仅考虑给予Linux和Windows的服务程序编程模式。
无论Linux和Windows的服务程序,都支持C语言程序并可采用动态库技术,因此采用适合动态升级的动态库插件有利于满足监控程序的监控能力扩展改进要求。其程序结构如图3 所示。
在图3 中,程序由3 个层次的模块构成。其中通用通信模块完成与接入服务器的基本通信要求。而最上面的监控模块都是动态库,它们对外具有统一的接口。在导入内存后,向协议分析和任务派发模块注册其可以处理的信息类型。这些监控模块可以随时替换升级、增加或者减少。比如对于可以远程控制的,可以增加远程控制模块,实现对终端的关机、重启等操作; 对于具有传感器的终端,可以增加处理类型为6 的监控模块,从而支持对传感器的信息获取和检查。最大限度地适应了数字标牌终端类型多样和监控信息区别对待的要求。
各个动态模块分别对所负责的信息类型进行处理,即对接收到XML要求的信息进行解析或者要返回的信息进行XML封装。协议分析与任务派发模块( PATD) 是总控模块,协调整个程序的工作。它负责获取管理程序发来的请求,主要对类型0 的报文进行分析。由于每个动态模块都需在PATD进行注册,管理程序对监控程序的能力查询可以在PATD完成并返回。而其他的要求则分别送到相应的模块处理。各个动态模块完成具体的监控功能后,返回的信息通过PATD封装返回给管理程序。
2. 3 管理程序设计
相对于监控程序来说,管理程序比较简单。由于是管理人员使用,并不需要自动升级和过多的扩展性考虑,所以结构并不复杂。其设计重点是如何解析各种MIML以形成良好的监控信息展示效果。在实际数字标牌系统中,设备监控功能仅作为数字标牌系统设备管理的一个功能模块而存在。在此不再详细介绍。
3 系统测试及结果分析
为了体现设计的效果,本文设计了一个简单的实验环境,如图1 所示的结构布置。按照前述的设计原理,实现了监控程序,运行于一个Windows XP系统的播放器下。然后实现了一个用C#编写的简单管理程序。接入服务器仅实现一个简单的转发处理。一开始,监控程序只有信息类型为3 和4 两种动态库,点击系统情况,管理程序的界面如图4 所示。
然后在监控端增加了一个控制模块,重新运行监控程序和管理程序,点击远程控制按钮,可以得到如图5 所示的界面。
通过图4 和图5 比较,可以很容易看出监控程序容易实现监控功能的扩展,由于采用了易于扩展的MIML描述信息,管理程序可以自动适应监控程序的功能扩展,很好地实现了方案意图。
4 小结
本文针对数字标牌系统大量播放终端存在监控问题,讨论了可扩展的远程监控系统设计的关键技术在于两个方面,一是设计具有动态升级功能的监控模块; 二是设计具有扩展性的监控信息描述语言。设计并实现了一个可扩展的远程监控系统,包括监控信息的描述方法MIML以及在此之上的传输协议实现方案,支持动态改进的监控程序和管理程序结构等。实际测试结果表明,按照这样设计的系统可很好地适应数字标牌监控系统复杂多样的情况,方便动态升级等扩展改进的需要。
摘要:针对数字标牌终端一般处于无人现场维护管理的状况,设计出一个可扩展的远程监控系统是开发的难点。首先讨论了数字标牌终端实现远程监控的扩展性需要和关键技术,接着给出了远程监控通信协议的设计与实现,配合终端远程监控模块的可扩展性设计,很好地解决了各类终端在远程监控方面面临的扩展性难题。目前该监控系统已经使用,效果良好。
可扩展设计 篇5
提取码 kzlp
ps:本来里面有5个漏洞利用插件和一个工程的,但是由于一些隐晦的原因我最后删掉了。=_=
压缩包里有说明文件,插件接口和开发包(开发包没怎么写,就是一些很常用的功能,本来还行写发送 http 请求的方法来着,但是想想既然都有 httpclient 和 curl了,就不写了了。
如果大家有兴趣为 skadi 开发插件或者希望添加什么功能,还有如果想要源码的话,发送邮件到我的邮箱 hoerwing@foxmail.com 。
可扩展设计 篇6
传染病的及时准确上报具有重要意义。我国已建立了覆盖全国的传染病上报机制,《传染病防治法》将发病率较高、流行面较大、危害严重的多种传染病列为法定上报传染病,实行分类管理上报。目前, 许多医院仍然采用从临床手工采集信息,手工汇总后上报至我国疾控系统的传染病网络直报系统(network direct reporting system,NDRS)的方法。据卫生部2005年质量调查显示,全国被调查的250家医疗机构法定传染病平均漏报率为23.14%;被调查医院门诊病例传染病报告的不及时率为24.04%;录入网上报告卡的性别、患者属性、病种、发病日期、诊断日期、医生填卡日期这6项关键指标与门诊日志上相应指标的不一致率为49.12%。手工模式既容易造成漏报、错报情况的发生,又不易保存和查询,还缺乏监测机制,故建立基于信息化的上报系统非常有意义[1]。
1系统设计
1.1传统传染病上报
根据《传染病防治法》,在大型医院中一般执行二级传染病上报运行机制[2]。传统的纸质传染病上报流程如图1所示,首先由医院各诊室医生填写纸质传染病报告单,并交由专职传染病报告员进行汇总整理,接着再将传染病信息人工上报到中国传染病疾控中心网站。 在这种上报流程中, 医生工作繁重、传染病知识水平参差不齐,加上传染病种类繁多,导致漏报现象十分严重。同时纸质报告单容易丢失,不易保存和查询。这些都给传染病疫情的实时准确上报造成了困难。
基于国内医院医院信息系统(hospital information system,HIS)应用的进展,目前已有部分医院采用了基于客户端/服务器(Client/Server,C/S)的传染病上报系统,这些系统能够较准确地采集HIS的数据,但是在上报数据导入NDRS时不够理想,且C/S模式安装更新复杂[3,4]。因此我们设计并实现了基于可扩展标记语言(extensible markup la-nguage,XML) 的浏览器/服务器(Browser/Server,B/S)模式上报系统,可以很好地实现收集数据高效准确,向NDRS上报数据高效快速。
1.2基于XML的传染病上报系统模块设计
由于传统上报流程存在的诸多问题,我院设计了传染病上报系统,新型传染病上报系统模块图如图2所示。系统包括:用于各门诊医生进行填报信息的客户端,含用于录入患者传染病信息的数据采集模块;用于防止医生漏报的系统监测模块,此模块会对“医生诊断”字段中的疾病关键字进行监测,并依据国家重点关注的传染病所建立的传染病关键字集检测医生是否存在漏报现象;用于分析和统计患者信息的数据统计分析模块;用于把医院业务内网的患者传染病信息导出为XML文件的数据导出模块。 因为医院网络与互联网是物理隔离的,所以首先需把患者的传染病信息加密后通过数据导出模块保存为XML类型的文件,然后通过U盘把文件传递到外网(互联网),再通过NDRS网站数据加载模块把信息自动填报到中国疾控中心系统网站。新型传染病上报的流程如图3所示。
2基于XML的传染病上报系统的实现
国家重点关注传染病包含法定传染病39种,其他法定管理以及重点检测传染病13种[4],其中,艾滋病、急性弛缓性麻痹(AFP)、甲型流感病毒(H1N1)、 乙肝、手足口等都需要填写附卡。如艾滋病附卡含有婚姻、民族、籍贯、现住详细地址、接触史、最有可能感染途径、样本来源、实验室检测结论、艾滋病确诊日期等特征来描述艾滋病。如果用传统关系表结构进行设计[5],婚姻、民族、地址、样本来源等字段都需要建立单独的字典表进行描述,且如果有增加的传染病附卡,则要增加表来满足需求;如果是增加某种传染病的特征 ,则要增加字段来满足需求。这样数据库表结构改变的成本是巨大的,造成表的冗余度非常高。
基于以上分析,同时基于目前数据库系统对XML的支持[6,7],我们依据“查询统计字段+完整XML描述”的设计思路来进行系统的设计。首先把报告卡编号、患者ID等关键字段用常规关系表存储,以实现高效的数据查询功能。同时把患者的基本信息和传染病信息整体存储为XML类型字段 。所有疾病的附卡可通过XML的自我描述性在一张“报告卡” 里反映出来。这样利用XML的特性既保留了数据的逻辑组织,又可以动态扩展,解决了医疗信息的扩展性和逻辑性问题。DCPS_report表为传染病的信息表,该表结构如下:
它包括传统利于统计检索的关系字段和XML字段2个部分。
以下为基于XML描述的“报告卡”,它将贮存在DCPSXML(XML类型)字段中:
通过DCPSXML字段展示了所有的上报信息, 数据库还对XML类型字段提供了进行操作的5种方法(query、exist、value、modify、nodes),可实现对XML内容的高效处理[8]。
3应用效果
本系统有效地缩短了医生的填报时间,减轻了专职传染病报告员繁重的填报工作负担,取得了很好的应用效果。当系统监测到医生诊断疾病为传染病时(传染病关键词库)则弹出传染病上报页,系统可自动提取患者基本信息,方便医生进行填报,如图4所示。
医生上报成功后,传染病上报专员通过访问报告卡查询上报页(如图5所示),可对医生上报的传染病信息进行审核,如信息完整且准确无误则通过数据导出模块将数据加密后导出为XML文件。
传染病上报专员首先把内网的数据导入到U盘,然后通过数据加载模块加载U盘中的XML文档,再通过该模块以医院注册账户登录NDRS (NDRS前端已嵌入在加载模块内),点击下方数据即可实现自动填报,图6中深色部分为上报成功项目。数据加载过程各项操作均可在秒内完成,大大提高了效率。
4结语
可扩展设计 篇7
为充分发挥多媒体技术优势, 进一步提高教师多媒体课件的创作水平, 我院于举行了多媒体课件大赛。课件的评分标准包括教学设计、内容呈现、技术运用、创新与实用。课件内容既可以选取某些知识点, 也可以选取一课时或一个教学单元。本课件采用Authorware平台开发而成, 界面中部分图像元素使用网上公开的资源再创作而成。
1 功能特点
1.1 功能
该多媒体课件具有六个模块 (如图1所示) :课程描述、课程内容、教学组织、创新特点、学生作品和后台管理模块。其中学生作品以多媒体调用形式展示, 后台管理以应用程序界面展示。
前四个模块每一项都采用图文并茂的方式, 比如课程目标用圆环套圆环的方式, 最里面的圆环是核心任务, 最外层的基本任务 (如图2) ;再比如, 课程内容的课程基本信息中, 用图形的方式给出了该课程跟其他课程的关系 (如图3) ;还有课程主要内容展示 (如图4) 。这些都有助于观者更直观的了解该课程。
1.2 特点
本课件具有以下几个特点:
(1) 交互性能较高, 既适用于上课演示又可供学生课下自学;
(2) 使用Authorware制作《authorware多媒体创作》这门课的课件, 体现了画饼教学法和项目驱动教学法, 可提高学生学习的兴趣;
(3) 该课件结构具有较强扩展性, 可以方便的增添模块, 可以导入PPT文件, 稍作改动即可做成其他课程的课件。
(4) 充分使用已经有的PPT资源。
2 关键技术的实现
2.1 authorware 中的各种交互技术的运用
丰富的交互类型是authorware的一个显著特点, authorware提供了十三种交互类型, 几乎涵盖了用户交互的大部分形式, 包括:按钮交互、热键交互、热区域交互、热体交互、热对象交互、文本框交互、条件交互、事件交互等等。所以使用authorware制作的课件应该充分利用好这一点, 这也是本课件的特点之一。本课件主要使用的交互类型有:按钮交互、热区交互、条件交互和事件交互。
主界面 (图1) 中, 四个一字排开的模块使用了热区交互, 当鼠标移入时可触发进入按钮的显示, 点击进入按钮可进入该模块。学生作品和后台管理 (图1中的问号) 则使用了按钮交互。主界面中的所有交互属于整个结构的第一层交互。
进入某一个子模块如“课程描述”子模块后, 即进入第二层交互。此层交互主要使用按钮交互和条件交互。下方的“全局导航条”使用了条件交互。条件交互包含的条件表达式如下:
...............
原理是:当鼠标进入某个区域时 (如进入下方导航条的“主页”) , 则触发交互条件, “主页”两字变亮, 点击“主页”可回到主界面。Cursor X和Cursor Y代表鼠标光标坐标, bottombutton变量的作用是激活导航条 (即显示导航条) 。
2.2 Authorware 结合 Power Point
Authorware和Power Point这两个平台可以制作多媒体课件, 但他们各有所长——前者功能强大, 产品交互性好;而后者使用简单、普及率高。如果能将两者优势互补, 那制作出的课件就既能充分利用广泛使用的PPT课件资源, 又可以实现良好的交互。下面介绍四种Authorware结合Power Point的方法。
2.2.1 使用 ole 对象插入 ppt 文件
首先在Power Point中的新建演示文稿文件命名为“第一章.ppt”。然后在Authorware新建显示图标并打开它, 在菜单栏选择Insert→OLE Object命令打开Insert Object对话框。勾选“从文件创建”, 在输入框右侧单击“浏览”按钮找到要先前制作好的“第一章.ppt”, 并勾选“链接”复选框, 可将link.ppt插入到当前文件中, 此时展示窗口中会出现“第一章.ppt”的第一页幻灯片内容。
此时, 选择Authorware中的Edit菜单, 再选择“Linked演示文稿OLE Object”, 选择Attributes选项, 屏幕上将会出现Object Attributes对话框。选择Activation Trigger下拉列表框, 选择Single Click项, 再选择Trigger Verb下拉列表框, 从中选择“放映”项, 同时注意选中Package as OLE object复选框。完成后即可将放映方式设置为单击放映, 这样一来, 运行Authorware课件会自动链接PPT, 随后的播放如同在PPT中播放一样。
这样制作的课件兼具Authorware和Power Point两者的优势, 链接到Authorware的PPT幻灯片如需修改或者增删内容, 只需打开Power Point对所插入的PPT幻灯片对象直接进行编辑即可。
这种方式可以将PPT做成内置, 然后给PPT设置密码, 以防别人修改或盗用。但是如果课件内容需要修改, 比如要调用其他PPT文件, 需要使用authorware重新编辑程序。
2.2.2 调用 powerpoint viewer 播放 PPT 文件
使用Microsoft Power Point Viewer, 可查看Power Point 2000、Power Point 2002、Power Point 2003、Power Point 2007和Power Point 2010中创建的演示文稿。Power Point Viewer还能打开受密码保护的Power Point演示文稿。
在Authorware中 , 可通过Jump Out Return函数调用Programe中指定的应用程序, Authorware仍在后台运行。
结合Power Point Viewer和Jump Out Retur函数, 可以使authorware调用Power Point Viewer播放PPT文件。
我可以这样来调用一个PPT文件。写一个计算图标, 代码如下:
program:=File Location^"pptviewerpptview.exe"
pptname:=File Location^"xx.ppt"
if File Type (pptname) then
Jump Out Return (program, pptname)
end if
这个方法不需要authorware重新编辑源程序, 只需要创建一个文本交互, 当我需要展示另一个PPT, 只需要在文本框中输入文件名即可。
但是有一点需要改进——外部文件播放完毕以前, 人为操作使authorware程序成为当前活动窗口时, 程序向下继续执行。如果同时再打开一个外部文件, 就会出现两个外部文件窗口, 不够美观。在此提出, 共同探讨。
2.3 调用外部程序
2.3.1系统函数法
Jump Out Return函数的格式:
Jump Out Return ("program", "document", "creator type")
参数说明:
"program"参数:来指定要执行的exe文件名。"document参数:指定要由"program"打开的文档名。"creator type"参数:仅用于Macintosh系统中。
2.3.2 外部函数法。
Win Exec函数的格式:
Win Exec (LPCSTR lp Cmd Line, UINT u Cmd Show)
参数说明:
LPCSTR lp Cmd Line是一个命令行参数, UINT u Cmd Show参数指定如何展示Windows应用程序窗口。
学生作品展示模块和PPT资源调用模块都使用了这两个函数。
3 结束语
多媒体课件的核心价值在于多种媒体集中展示, 大量图片信息直观有效的传递, 以及较好的交互性能。我们以一个案例为切入点, 介绍了如何设计界面, 如何结合PPT资源, 如何创建友好的交互方式。在整个过程中虽然克服了一些困难, 但仍然不够完善, 还望各位专家指正。
参考文献
[1]缪亮.Authorware多媒体课件制作实用教程 (第三版) [M].北京:清华大学出版社, 2011-8.
[2]毕广吉.Authorware7.0完全学习手册[M].北京:清华大学出版社, 2007-8-1.
[3]李永.Authorware多媒体课件制作经典教程模块模板精讲[M].北京:清华大学出版社, 2009-10-1.
[4]宋一兵.Authorware多媒体技术教程[M].北京:人民邮电出版社, 2008-9-1.
可扩展设计 篇8
X3D (Extensible 3D) 是Web3D协会 (Web3D Consortium) 发布的新一代国际规范, 是VRML97的继承和发展, 兼容VRML97的所有节点和功能, 同时具有更先进的统一的应用程序接口、包括XML在内的多种文件编码格式的支持、组件化的结构以及更为严格的一致性等新的特性。随着VRML/X3D的广泛应用, 为方便虚拟场景的开发, 相应的场景编辑器也迅速发展起来, 常用的有Vrmlpad、NNS X3D Modeler、Seamless 3D、Vizx3D、X3D-Edit等, 它们在功能上各有特点。NNS X3D Modeler提供了完整的场景设计环境, 包括代码、视图等多种窗口, 支持几何节点、Script节点的IDE设计等[1]。X3D-Edit支持VRML和XML编码格式文件的输入、输出和相互转换, 提供大量的X3D场景示例文件, 对X3D标准节点提供在线帮助, 支持多系统、跨平台服务等[2]。Vizx3D的优势在于提供对多纹理以及H-Anim2的支持[3]。
综上所述, 目前的场景编辑器对常规的虚拟场景的集成开发提供了较为完善的支持, 对VRML/X3D的推广应用起了极大的推动作用。但是对于使用者而言, 场景编辑环境对X3D规范的支持是固定的, 编辑器的功能建立在封闭的规则库之上, 而可扩展性是X3D规范的重要特性, 使用者在使用时经常会根据自己的需要扩展新的节点, 并在以后的应用中重复使用。因此, 编辑器提供面向用户的对规范扩展的直接支持, 对使用者具有重要意义。
在分析总结X3D规范扩展方法的基础上, 本文提出了一种可扩展的X3D场景编辑器, 分析了系统体系结构, 并重点探讨了规则库的组织及实现、节点扩展的规一化处理、场景信息转换及X3D编码转换等几个系统实现的关键问题。
1 X3D规范及其扩展[4,5,6]
X3D规范定义了一组虚拟现实环境的描述语言, 它用节点与节点域表达所有的概念 (包括时间、几何体、感应器等) 。X3D采用模块化的组织结构, 引入组件、支持级别和概貌的概念, 以满足不同层次、不同领域的需要。在X3D中, 有些节点可以包含子节点, 因而产生了父节点与子节点的关系, 但这样的关系不是任意建立的, 必须遵循X3D规范的内容模型。X3D中父子节点关系共分为十类, 对应于十种内容模型定义。
可扩展性是X3D规范的重要特性。X3D是一个开放式的规范体系, 定义了127个标准节点, 同时支持所有组织和个人在各自特定领域的应用扩展。对X3D的扩展有两种途径, 一是规范语言级的扩展, 即按标准节点的模式扩展实现具有特定功能的新节点, 此种扩展需提供浏览器的直接支持, 又称为内节点扩展;另一种是基于X3D提供的原型机制 (Prototype) 实现的原型节点扩展。原型是一种用户自定义的新节点类型, 可以像其他标准节点一样, 通过对节点类型的实例化建立新节点。原型的定义可以由各种节点组成, 包括标准节点和其他自定义节点, 以定义原型节点的功能。原型节点具有和标准节点一样的节点接口, 包括节点域和事件。
2 系统体系结构
编辑器由X3D规则数据库、浏览器类库和编辑器框架组成模块化的开放式体系结构, 如图1所示。规则数据库和浏览器类库独立于编辑器框架, 分别提供X3D规则信息和浏览器类库支持;编辑器框架提供系统集成开发环境, 实现系统主要功能。
集成开发环境按功能可划分为规则扩展、场景编辑、编码转换、实时浏览等主要功能模块。规则数据库存储X3D规范的相关规则信息及用户自定义的原型节点信息, 由编辑器框架作相应的规则提取, 提供X3D内节点、原型节点以及相关的内容模型信息, 是场景开发向导和文件语法检查的基础。集成开发环境提供的规则扩展接口, 以参数化的输入模式, 实现X3D内节点和原型节点的扩展信息输入, 并通过归一的节点信息提取, 修改规则数据库, 实现规则库的扩展。编辑器提供标准的XML和传统的VRML两种场景文件格式编码, 并通过独立的编码转换模块, 统一为XML DOM的场景信息数据结构, 实现两种编码格式的相互转换。
X3D浏览器类库为独立的类库封装模块, 提供X3D场景解析、渲染的基本功能, 基于类库提供的应用编程接口 (API) , 可实现集成开发环境的场景浏览器功能, 实现编辑场景的实时浏览。为便于X3D内节点的扩展实现, 本系统采用开放源码的OpenVRML浏览器类库。
如此, 整个编辑器系统基于可扩展的X3D规则数据库、可扩展的浏览器类库和编辑器框架组成模块化的开放式体系结构, 支持包括内节点和原型节点扩展的X3D规则扩展, 再结合独立的浏览器类库扩展, 以实现编辑器对X3D规则扩展的完整支持。
3 几个关键问题
3.1 规则库的组织及实现
(1) 规则库基本结构
规则数据库主要存储X3D节点及相关内容模型信息, 是整个平台系统的基础。节点信息主要由两张Access数据表来保存, 规则关系数据库基本结构如图2所示。
节点名称表主要包含节点的基本信息, 包括“节点名称”和“containerField”两个字段, 其中“containerField”也是X3D节点的一个基本属性域, 用以表示节点功能以及与其它节点的相互关系。“url”字段为原型节点专用, 保存原型节点定义所在的资源位置。节点属性表提供节点接口域的详细信息, 包括节点名称、域名、域值数据类型、域事件类型和预设值五个字段, 以描述相应域的特性。节点名称相同的记录为同一节点的属性信息。节点名称表和节点属性表之间通过关键字“节点名称”构成一对多的关系结构。以两张数据表来分别保存节点的基本信息和详细信息, 可方便节点信息的提取和扩展。
(2) 内容模型实现
X3D规范的内容模型定义了父节点与子节点之间的包含关系, 是编辑环境开发引导和语法检查的重要内容。本系统内容模型的实现主要是利用节点名称表中的“containeField”字段。
以“ShapeChildContentModel”内容模型为例。该内容模型主要限定Shape节点中所包含的子节点, 可以有一个Appearance节点和一个几何节点, 顺序不拘。X3D的几何节点包括Geometry3D组件和Geometry2D组件中的所有节点以及Text、IndexdLineSet等多个描述几何特性的节点, 它们的“containerField”域值都为“Geometry”。因此, 该内容模型定义可描述为凡是“containerField”域值为“Geometry”的节点都可作为Shape节点的子节点, 同时也包括Appearance节点。如此, 基于节点的“containeField”域, 建立简单的逻辑判断, 就能实现规范的内容模型。
3.2 节点扩展的归一化处理
在X3D的规则扩展中, 原型节点和标准内节点具有相同的节点接口, 只是原型节点在定义、申明和使用时有特定的语法要求。基于此, 可对两种节点的扩展作信息的归一化提取, 以实现节点扩展的定义、注册和使用的归一化处理。
原型节点和标准内节点的提取信息基本一致, 如前述规则数据库的基本结构, 只是在节点名称表中增添一个“url”字段, 用以保存原型节点定义所在的资源 (一般为一X3D文件) 位置。原型节点和标准内节点分别对应两张数据表。原型节点定义包括节点接口和节点体定义两部分, 节点体可以由各种标准内节点组成。系统提供专门的原型节点定义环境, 以参数化的方式实现接口定义, 以统一的节点信息引导实现节点体定义, 并能实现原型节点信息的自动提取和注册。集成编辑环境与原型节点定义如图3所示。
原型节点和标准内节点以一致的方式实现信息保存, 因此在使用时可以标准内节点一致的方式实现节点信息引导和调用, 而由系统对原型节点定义和申明做相应的自动导入和格式控制处理, 以适应原型节点定义和使用的特定内容, 而对于用户, 这些内容是透明的, 从而大大方便了原型节点的定义和使用。如此实现了原型节点和标准内节点扩展和使用的归一化。
3.3 场景信息转换
XML文档对象模型 (XML DOM) 提供了一个标准的方法来操作存储在XML文档中的信息, 可看作一个应用编程接口 (API) , 用来作为应用程序和XML文档之间的桥梁。本系统使用Microsoft开发的MSXML解析器。MSXML解析器以动态链接库的形式提供, 它实际上是一个COM对象库, 封装了所有进行XML解析所必需的对象。MSXML解析器根据XML文档生成一个DOM树结构, 它能够读XML文档并根据文档内容创建一个节点的逻辑结构[7]。通过XML解析生成的DOM树结构是系统的核心数据结构, 是场景信息提取、树形结构浏览、语法检查以及编码转换实现的基础。系统以DOM树结构为核心的场景信息转换流程如图4所示。
3.4 X3D编码转换
X3D支持标准XML和传统的VRML两种文件编码格式, 针对两种编码格式的语法区别, 基于MSXML解析器, 专门构建了针对两种编码格式的X3D文件编码转换器。基于COM技术, 转换器以MFC扩展型动态链接库形式实现, 应用接口为两个接口对象类, 利用接口对象暴露的属性和方法, 可方便地将转换器集成到编辑器框架环境中, 实现两种文件编码的相互转换[8]。
4 结 论
可扩展性是X3D标准的重要特性, X3D场景编辑环境提供面向用户的扩展支持, 是X3D规范扩展性在实际使用中的自然延伸, 对于使用者具有重要意义。基于可扩展的X3D规则库、浏览器类库和编辑器框架组成的开放式体系结构, 本编辑器系统除了支持常规的编辑器功能外, 还可实现基于内节点扩展和原型节点扩展的完整的X3D规则扩展。通过对原型节点和标准内节点扩展的归一化处理, 尤其是对原型节点的定义和使用的透明化支持, 大大方便了用户的扩展开发使用。
参考文献
[1]NSS X3D Modeler[DB/OL].http://www.xmodeler.com, 2006.
[2]X3D-Edit for X3D[DB/OL].http://www.web3d.org/x3d/content/, 2006.
[3]Flux Studio[DB/OL].http://www.mediamachines.com/, 2006.
[4]Web3D Consortium, ISO-IEC-19775-FDIS-X3dAbstract Specification[DB/OL].http://www.web3d.org/x3d/specifications, 2006.
[5]Web3D Consortium, ISO-IEC-19776-FCD-X3dEncodings[DB/OL].http://www.web3d.org/x3d/, 2006.
[6]段新昱.虚拟现实基础与VRML编程[M].北京:高等教育出版社, 2004.
[7]胡朝辉.利用MSXML解析XML文本[EB/OL].http://www.ccw.com.cn/app/aprog/, 2006.
可扩展路由协议研究 篇9
随着IPV4全球路由表(global routing table)项数目的枯竭以及IPV6的开发使用,全球互联网的路由体系面临着巨大的挑战。这一严峻的形势让全球的网络研究者意识到,继续使用层次化结构路由模式无疑会使得现有的形势继续恶化,而IPV6的使用只能使其得到暂时性的缓解,却无法从根本上解除危机。随着互联网使用人数呈指数型增长,日益庞大的路由表带来的路由器空间消耗和处理器的开销会持续增加,硬件上的升级也无法匹配该速度。
因此,近年来,针对互联网路由的延展问题在全世界范围内掀起了一股热潮,诸多理论研究相继开展,并针对不同的方向提出了不同的解决方案,如基于DHT的VRR[1]以及BVR[2]、基于Landmark的TZ策略[3,4](Thorup-Zwick)、基于DHT和TZ策略结合的Disco[5]等。在国内,互联网的可扩展性研究也已经受到了学术界的广泛关注,清华大学、国防科技大学等名校也都长期开展了可扩展性方面的研究工作,但目前还没有较优的研究成果出现。本文通过介绍几种常见的紧凑路由策略,列出评价紧凑路由策略的三项重要指标,着重讲述对紧凑路由算法Disco在算法缺陷上进行的改进,使其在stretch方面得到了有效的降低,同时弥补了Disco在完善性上的缺陷,从而使得改进后的算法达到了延展性更优、缺陷度更小的目的。并且,在文章的最后,通过几种算法的实际问题,指出目前紧凑路由急需解决的问题和未来可能的发展方向。
1 背景
随着互联网路由体系的弊端逐步显露,新的概念也随之提出。“以内容为中心”这一概念最早由MIT的AdjieWinoto等人于1999年明确提出[6]。2008年提出的NDN(N-amed Data Networking)网络形式因之受到了重点关注。而今,这一概念已被广泛接受,并进行了着重的研究。
“以内容为中心”,顾名思义,就是以数据提到主机成为网络中的第一类对象,将数据显式的命名,从而将数据的名字与数据的位置相分离,这就与当今的IP层次化路由模式显现不同。这种基于数据名字的路由方式,被称为命名数据路由。现今,已有较多的算法实现了命名数据路由,如TRLAD[7]、FARA[8]、LISP9[9]等。
命名数据路由最终的目标是以命名数据层替代IP层成为新的thin-waist。这种方式可以在极大程度上解决因IP路由表项数目的枯竭所引发的问题,实现命名空间无限化。
命名数据路由的思想一经提出,即受到了广泛关注,在互联网发展受到局限的现如今,寻求新型的路由模式成为了主要任务之一,而这种“寻找关注,而非关注寻找”的行为模式完全符合绝大多数互联网用户的需求。
基于这种思想,以命名数据网络为目标的紧凑路由研究已发展得如火如荼,而且,因为现有的层次化路由模式中灵活度弱、地址空间消耗过大等问题的存在,使得这方面的研究工作的开展更是显得迫在眉睫,刻不容缓。
2 紧凑路由策略与评价指标
2.1 评价指标
(1)可扩展性(Scalability),表示路由器存储空间的上界。现如今的互联网路由协议在n个节点的网络中要求每个节点的路由表大小为O(n)比特,这是现有路由体系的弊端之一,随着未来互联网体系的扩大,网络拓扑下的可扩展性必然会成为路由评价一项重要指标。保证可扩展性不仅仅是对算法本身的一种优化,更多的则是对所设计的协议在使用期限上的一种保障。若要具有较好的可扩展性,紧凑路由策略则应具有较小的空间要求,并且传递的消息也要尽可能地少(不考虑拓扑的情况下)。
(2)延展性(stretch),具有延展性,则延展度低。延展度表示实际路由的路径与理论最短路径之间的比值,用来衡量协议路由策略的优劣。直观地,延展度越低,路由策略越优。
(3)扁平性(flat names),这一性质针对命名数据网络。具有扁平性,则可以在数据上,而非地址上进行路由。
紧凑路由,从理论上来说,就是同时既具有可扩展性,又保证了延展性的路由算法。其基本思想是,平衡路由表的大小和路径的长度,允许有限的路径延展以换取较大幅度的空间缩减。而满足扁平性,则是针对“以内容为中心”这一概念,致力于使紧凑路由同样适用于目前较为流行的理论体系。
2.2 典型紧凑路由策略
目前,已提出的多种紧凑路由策略多为集中式,并不适用于分布式网络当中,而且算法本身相对而言,也较为复杂,所以,紧凑路由的研究仍处于理论阶段,如何将其转化入实践层面,目前尚不够明确。但理论体系的发展却非常地迅速,广泛流传的算法也已经较多,如Landmark routing、TZ、S4、BVR、VRR、Ford[10]和Disco等。
2.2.1 界标层次化路由
界标层次化路由[11](Landmark routing)是对基于分区的层次化路由的一种改进,目的是使得层次化更有利于动态管理。基本思想是,迭代地选择网络中的节点作为界标,并且在界标的基础上构建层次化结构;节点中除了存储路由表之外,还需存储若干界标的信息。路由时,如目标节点不在自身的路由表当中,该信息则被传递到最近的界标上,然后通过界标转发给目标节点。
界标层次化路由的关键部分为界标以及基于界标层次化的构建,如图1所示。当一个界标被选取出来之后,以r为半径范围内的所有节点均需要存储该界标的信息,这些节点被称为邻域,而界标本身却不需要存储邻域的信息。当这一步骤完成后,LMi[id]表示标识为id的第i级界标,层次化构建指的是第i+1层均需要从第i级界标中选取,且半径ri+1需要大于ri,从而保证上一级的界标必然能够找到下一级的界标,实现层次化。该路由策略中,节点地址是由层次化界标构成的,使得通过各级界标,最终可找到目标节点。
S4将TZ算法改进用于无线传感器网络中,形成的S4网络拓扑如图2所示。S4算法的基本思想是随机产生多个界标,均匀地分布在网络当中,节点邻域是以节点到最近界标距离为半径范围内的所有节点的集合。每个节点除存储自身邻域信息之外,还需要存储全部的界标信息;界标本身则存储着所有的以其自身为最近的节点信息。路由时,如果目标节点不在节点自身的邻域当中,则将该信息发送到目标节点的最近界标中去,利用该界标转发。S4策略对于TZ的改进表现在界标选取、邻域构建以及地址存储三个方面,但需要指出的是,虽然S4对无线传感网络的适应性较好,却同时破坏了TZ策略对于可扩展性的限制。
2.2.3 BVR
BVR的基本思想是利用贪心的方式局部优化,从而达到全局优化的目的。构建灯标(Beacon)并且以到达灯标的距离向量作为节点地址,在这样的节点地址上通过构建距离方程进行贪心路由;如贪心算法失败,BVR同样构建了回溯算法,通过周围可以抵达目标节点的“邻居”重新路由。BVR数据包头含有目标节点标识、目标BVR地址以及最短距离地址向量三个部分,这种结构保证了源节点必然能够找到目标节点的目的的实现。BVR算法很好地提高了路由算法的可扩展性,但因为贪心算法的局限性,该算法可能会驻停在局部极小处,从而导致过高的延展度。
2.2.4 虚拟环路由
虚拟环路由(Virtual Ring Routing)的基本思想是使用DHT技术,将所有节点根据自身的标识大小排序,组成一个虚拟环。每一个节点的路由表中需存储其在环上的前驱和后继节点的路由信息、物理邻居的路由信息以及所有经过i的最短路径的源节点和目标节点的路由信息。与Chord环相类似,路由时,当前节点通过路由表中与目标节点标识最为相近的节点转发消息。VRR的可扩展性平均起来是较好的,但在某些个别节点上却较差,另外,VRR算法本身的延展性较差,延展度高。
基于已经提出的三项评价指标,上文中简单介绍的几种路由策略以及下文着重介绍的Disco关于这三项指标的比较结果如表1所示。
3 Disco改进策略
3.1 Disco的简单介绍
Disco是基于TZ策略以及DHT技术结合产生的、一种具有较好的可扩展性、延展性以及扁平性的紧凑路由策略。
Disco中的基本要素分为五个部分:界标、邻域、路径学习、地址以及命名无关到命名相关的映射。
(1)界标:Disco采用随机模式选取界标,以概率[(logn)/n]1/2为基础,均匀地选取,从而保障了整个网络中界标的数目会在左右变动。节点界标指的是距离本节点最近的界标。
(2)邻域:指个距离本节点最近的节点集合。节点中需存储邻域范围内所有节点的路由信息。如图3所
(3)路径学习:每个节点路由表中需存储到达所有界标以及邻域中所有节点的路由信息,因此,就需要对这些节点进行路径学习。
(4)地址:节点地址模式为lv→v,lv表示节点界标,v表示目标节点,→表示最短路径。地址的使用借助了显示路由模式,将地址空间的使用量降到了相当的程度,使得每个数据包携带的地址空间都不大,可扩展性因之得到了保障。
(5)命名无关到命名相关的映射:使用DHT技术,将名字与地址分布式地映射在多个分布式的哈希数据库中。
除了以上五个基本要素之外,为了确保能够降低第一个数据包的延展度,Disco采用了color-group的思想,重新建组,将组内信息在组内共享。Disco中的路有方式如下:
当源节点s需向目标节点t发送数据包时,若t为界标或在s的邻域中,则直接路由;若t在s的哈希数据库中,则直接利用地址路由;否则,s查找自己的邻域中与t哈希值匹配位数最高的节点,由该节点转发。
3.2 Disco改进策略
设V(v)表示节点v的邻域,L表示landmark的集合,L(v)表示节点v的节点界标,G(v)表示节点v的匹配组,Addr(v)表示节点v的地址。
目标节点为t,源节点为s,s→t表示s到t的最短路径。路由过程可以简单描述如下:
在路由的过程中,除了目标节点或者t∈L或者t∈V(s):可以直接使用最短路径路由之外,其余的路由模式都是通过界标或者其他节点转发,这也是导致延展度可能增加的主要原因所在。针对这种状况,在上述基础上,使用捷径启发的方式,则能够较好地降低延展度。当然,并不需要对路径中所有的节点均采用捷径启发式;对于转发节点之后的每个节点,就没有必要进行学习。因此,在源节点s到目标地址的Landmark发送消息的过程中,对于途径上的每个节点,均进行捷径启发,判断该节点是否存有到达目标节点的最短路径,如存在,则直接通过最短路径到达目标节点。即,在上文路由过程的基础上,数据包每到一个节点k,路由器自动查找自己的邻域,一旦找到最短路径,直接k→t。
以上的三种路由选择,可以很明显地看出Disco算法存在的缺陷,在目标节点非Landmark且不属于V(s),同时也不存在于G(s)中的时候,Disco选择邻域中与目标节点t哈希值匹配最长的节点进行转发,从k的取值中可知这种情况下找到目标节点t的概率极大,但仍然存在无法找到目标节点t的概率。这样网络中就可能存在着不可达点,目标节点的延展度会无限加大,超越设置的延展度界限,同时在安全性和完整性方面也各有缺陷。
因此,增加如下的模块:在Landmark选取结束,节点进行路径学习的初期,Landmark之间相互通信的过程中,每个Landmark均分配一个特殊的标识M(L)。M(l)是独属于Landmark l本身的一种标记,所有Landmark均明确其它Landmark的标识。在节点进行路径学习的过程中,Landmark将接收到的所有节点哈希值与M(l)匹配的节点地址存储在I自身的哈希数据库中。文中,称与M(l)相匹配的所有节点为界标l的关联组。
路由时,当源节点s无法找到目标节点t时,则将消息发送到节点界标中去;节点界标通过识别标识,将该消息转发到该标识的界标中去,从而最终找到目标节点。即,在上述的路由过程中增加第四项:
(4)若s无法找到t,则
当然,这样的设计势必会增加Landmark的负载,接下来,将会证明,增加的部分不会过度加重界标的负载。
证明:在界标相互通信时确定标识M,假定标识是均匀的,这也是需要致力于完成的。
3.3 实验结果分析
拓扑图:G(n,m)随机图,节点数目1 024,节点平均度为8。
Disco和改进后的Disco在空间可扩展性方面的实验比较结果如图4所示。改进后的Disco相比改进前在空间使用上有所增长,但增长的幅度很小。所以,通过适当地改进空间使用,达到了降低延展度的目的。
Disco和改进后的Disco在路径延展度方面的实验比较结果如图5所示。图5表明了改进后的Disco在路径延展度方面相对S4以及原有的Disco较优。改进后的Disco在延展度方面已经有了提高。
4 结束语
Disco是一种同时具备可扩展性、延展性以及扁平性的紧凑路由策略,有着较好的性能和应用前景。通过对Disco的改进,较好地降低了路径延展度,并进一步保障了Disco的正确性。
需要说明的是,包括Disco在内的紧凑路由策略,均是以要优于现有的路由机制为目的而提出的,然而,互联网是一个大型、动态的拓扑结构,对于现有的互联网的拓扑结构和演化机理方面的知识体系不足以支持紧凑路由策略的深入研究,因此,目前的紧凑路由策略多还是基于静态的拓扑层面上,对于各种频繁的拓扑变化、节点变动等问题还没有一个可以完全的适应的算法。因此,对于现实的网络,如何匹配、改进、评估现有的紧凑路由算法仍是个需要进一步探究的问题。另外,如何将紧凑路由机制与现有的BGP协议相融合,也是急需解决的问题之一。
“以内容为中心”概念的提出以及紧凑路由策略的研究发展给出一个网络路由模式未来的发展方向,在现有的互联网机制弊端频现的今天,各种路由算法以及路由架构正在不断地被提出。在未来,以内容为接口,以“寻找关注,而非关注寻找”行为模式为主体,抛弃复杂有限的层次化地址路由模式,将成为一种极具有前景的研究方向。
参考文献
[1]CAESAR M,CASTRO M,NIGHTINGALE E,et al.Virtual r-ing routing:network routing inspired by DHTs.ACM SIGCO-MM Computer Communication Review,2006:36(4):362.
[2]FONSECA R,RATNASAMY S,ZHAO J,et al.Beacon vectorrouting:Scalable point-to-point routing in wireless sensornets.In NSDI,2005-05.
[3]THOURUP M,ZWICK U.Compact routing schemes[C]//Proc.SPAA,ACM,2001:1-10.
[4]KRIOUKOV D,FALL K,YANG X.Compact routing on Inter-net-like graphs.In IEEE INFOCOM,Citeseer,2004,1:209-219.
[5]SINGLA A,GODFREY P B.Scalable routing on flat names.[C]//Proc of ACM CoNEXT,2010-11.
[6]ADJIE-WINOTO W,SCHWARTZ E,BALAKRISHNAN H.etal.The design and implementation of an intentional naming s-ystem.SIGOPS Oper.Syst.Rev.,1999,33(5):186-201.
[7]GRITTER M,CHERITON D R.An architecture for content r-outing support in the internet[C]//USENIX Symposium on Int-ernet Technologies and Systems,2001-03.
[8]CLARK D,BRADEN R,FALK A,et al.Fara:reorganizing theaddressing architecture.SIGCOMM Comput.Commun.Rev.,2-003,33(4):313-321.
[9]FARINACCI D,FULLER V,MEYER D,et al.Locator/ID s-eparation protocol(LISP).In Internet-Draft,2009-03.
[10]FORD B A.UIA:A Global Connectivity Architecture for M-obile Personal Devices[D].Massachusetts Institute of Techno-logy,2008-09.
[11]TSUCHIYA P F.The landmark hierarchy:a new hierarchy f-or routing in very large networks[C]//Proc.SIGCOMM,NewYork,USA,ACM,1988:35-42.
简单介绍可扩展标记语言XML 篇10
1 XML的发展概况
XML是什么?XML是Extensible Markup Language的缩写,译为可扩展的标记语言。XML是一套完善的定义语义标记的规则。
为了说明XML的发展历史,让我们先看看图1。
在20世纪80年代末期,位于瑞士的欧洲原子物理实验室(CERN)的研究人员为了使他们的工作方便而开发了WEB技术,他们的目的是将实验室网络上的研究文档共享。到了1986年,ISO国际标准化组织颁布了ISO 8879号国际标准,即SGML(Standard Generalized Markup Languge-标准通用标记语言),它是一种通用的文档结构描述置标语言。由于SGML非常复杂,不易使用,在1992年,CERN的研究人员把WEB技术(纯文本浏览器和最初版本HTML-简化的SGML)提交给INTERNET协会,从此,HTML(Hyper Text Markup Language)开始流行,并逐渐发展成一个庞大的家族,版本由原来的HTML 1.0,HTML 2.0,HTML 3.2,HTML 4.0到目前的HTML4.1,以及兼容XML格式的XHTML 1.0(Extensible Hyper Text Markup Language),XHTML 1.1和XHTML 2.0(XHTML 2.0的第五个工作草案在2003年5月6日公布)。
虽然HTML已经非常流行,并且现在的程序员大多数都在使用它来创建WEB网站,但是,由于HTML是一个实例置标语言,无法完整描述数据内容,也不能描述矢量图形、科学符号等对象,格式表现不能独立,结构不严格等诸多因数,在1998年2月10日,国际互联网论坛W3C(World Wide Web Consortium)发布XML 1.0,随后在2000年10月6日发布了XML 1.0(Second Edition),错误修正见http://www.w3.org/XML/xml-19980210-errata,2003年10月30日发布了XML 1.0(Third Edition),错误修正见http://www.w3.org/XML/xml-V10-2e-errata。为简单化SGML,XML重新定义了一些SGML的内部值和参数,并删去大量繁杂的、不常用的、使编程复杂的特征,内容见http://www.w3.org/TR/NOTE-sgml-xml-971215。其实XML是SGML的一个子集,它包含了很多SGML特性,继承了SGML的优点,但是要比SGML简单得多,比HTML更令编程人员喜爱。正是由于这些原因,XML的Internet应用大量涌现。如化学标记语言(Chemical Markup Language)、数学标记语言(Mathematical Markup Language)、同步的多媒体集成语言(Sychronized Multimedia Integration Language)、可伸缩的矢量图形(Scalable Vector Graphics)、矢量标记语言(Vector Markup Language)、音乐标记语言(Music ML)、语音朗读标记语言(Vox ML)、濒道定义格式(Channel Definition Format)等等。
2 XML的优点
XML和HTML都从属于SGML,但是XML是一种元标记语言。XML描述的是文档的结构和意义,而不描述页面元素的格式化,用户可以根据自己的需要定义标记来描述和创建文档,这样的文档结构严谨,层次分明,语义更加明确,更适合人类的阅读习惯和更便于计算机的查找、存档。例如,描述广东省气象局各处室科室的电话号码。通常人们用Microsoft Word描述的格式如下:
广东省气象局
电信台:
运行科电话:87754050
运行科Email:YXK@grmc.gov.cn
网络科电话:87625482
网络科Email:WLK@grmc.gov.cn
……
气象台:
短时科电话:87777786
短时科Email:DSK@grmc.gov.cn
短期科电话:87778667
短期科Email:DQK@grmc.gov.cn
……
……
如果改为用XML来描述,则为如下:
<广东省气象局>
<电信台>
<科室>
<名称>运行科
<电话>87754050
<科室>
<名称>网络科
<电话>87625482
……
……
比较上述两种文档,XML格式描述的结构和语义更加清晰明了,易于理解,并且XML文档是一种纯文本,非专有的格式,不受版权、专利等其他知识产权的限制,可以使用任意的编辑器进行编辑,可以显示在各种设备上。而用Word等其他专用编辑软件编辑的文档受到专有格式的限制,不利于数据交换,不利于计算机的查找。
XML和HTML相比,两者都支持统一字符编码协会(Unicode Consortium)制定的通用字符集(UCS-Universal Character Set),都支持层叠样式单(CSS-Cascading Style Sheets)外观输出;不同在于XML支持文档类型定义DTD(Document Type Definition),支持专有的可扩展的样式语言(XSL-Extenible Style Language),支持比HTML更为复杂的XLink和XPointer链接等。在信息交互方面,XML同样可以使用列表(有序olist和无序ulist)和表格(table)来组织和表示数据,创建表单(form)和XML数据库,通过“POST”方法将表单中的控件(文本框TEXT、口令框PASSWORD、复选框CHECK、单选框RADIO等)内容提交给服务器完成信息交互。
3 XML文档结构
以“广东省气象局各处室科室的电话号码”为例创建一个简单的结构完整的XML文档。如下:
Metelephone.xml
<广东省气象局>
<电信台>
<科室>
<名称>运行科
<电话>87754050
<科室>
<名称>网络科
Metelephone.dtd
Metelephone.xsl
xmlns="http://www.w3.org/TR/REC-html40"
result-ns="">
- 电话:
- EMAIL:
- 电话:
微软(Microsoft)IE5.0以上版本支持XML文档浏览。
4 结束语
随着因特网(Internet)的飞速发展,Web的应用也越来越广泛,超文本不仅用来传送文字信息,更多的是传送多媒体信息———图片、声音、视频、动画。XML的出现,为网络应用注入了强大的动力,它不仅具有良好的可读性、易编写和易维护等特性,而且使得多媒体信息在不同的系统之间相互交流成为现实。XML新的版本正在制定中,有关XML的详细资料请参阅国际互联网论坛W3C(World Wide Web Consortium)的主页http://www.w3.org。
摘要:XML全称EXtensible Markup Language,翻译为扩展的标记语言,是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。比SGML简单得多,比HTML更令编程人员喜爱,它包含了很多SGML特性,继承了SGML的优点,文档结构严谨,层次分明,语义更加明确,具有良好的可读性、易编写和易维护等特性,而且使得多媒体信息在不同的系统之间相互交流成为现实。本文通过例子,简单介绍XML的使用,从中感受XML极其简单易于掌握和使用。
关键词:XML,历史发展,优点,文档结构,介绍
参考文献
[1]吴敏,丁永生,陈家训.XML的研究现状及展望[J].微型电脑应用,2001,17(4):5-9.
[2]李莉,吾守尔.斯拉木,缪成.XML在电子政务中的应用[J].计算机工程,2003,23(Z2):170-179.
[3]吴文辉,殷建平,姚丹霖.关系模式到XML模式的转换研究[J].计算机工程与科学,2004,30(18):165-167.