程序理解中信息存储与检索技术的研究与实现

来源 :浙江工业大学 | 被引量 : 0次 | 上传用户:good2009good
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着软件工程领域的发展,软件维护问题已成为当前软件产业面临的重要课题。在软件维护过程中,程序理解是一项枯燥、费时且困难的任务,必须借助程序理解辅助系统进行辅助分析。而信息的存储与检索效率是影响程序理解辅助系统效率,乃至程序理解效率的关键因素之一。目前,绝大多数程序理解辅助系统采用专业的数据库管理系统作为信息存储与检索的后台支撑。由于专业数据库管理系统在其他方面考虑的因素较多,相应地降低了存储与检索的效率。另外,专业数据库管理系统要求使用特定的检索语言,这也增加了检索操作的处理时间和程序理解的难度。针对上述问题,本文的主要工作是研究和实现了一个具有较高存储与检索效率、支持大型程序和增量式更新的程序信息库。首先,根据程序设计语言的符号类型,提出信息分类存储的思想。按照类型的不同,将软件源程序信息存储在不同的信息库文件中,由各个库文件共同组成一个统一的程序信息库;接着在借鉴专业数据库存储与检索机制的基础上,分析研究了B+树的性能和索引机制,提出利用B+树结构设计程序信息库的存储与检索模型。从“自底向上批量插入关键字”、“对关键字进行压缩存储”和“选定合适的阶数m值”三个方面出发对B+树的存储结构进行优化设计,并设计B+树结点间与结点内双层索引;然后根据程序理解的需要设计了四种不同的检索方式,分别支持程序理解辅助系统四个窗口中的信息显示要求;最后对一系列由不同数量的信息记录组成的文件进行实验,在信息的存储空间与检索时间上测试信息库的存储与检索效率。实验结果表明,信息库在牺牲部分存储空间的基础上较好地实现了信息的快速存储与检索。
其他文献
Tim Berners-Lee于2000年12月在XML2000会议上,提出下一代互联网的概念——语义网(Semantic Web),目的在于赋予万维网上所有资源唯一的标识,并在资源之间建立起机器可处理的
第一台PC机的出现距今已有20余年,基于传统PC-AT架构的BIOS(基本输入输出系统)方案仍然应用在PC中。BIOS的基本功能就是在OS启动前操控平台负责系统引导,然而它的架构过于老
克隆攻击是无线传感器网络中存在一种非常严重的安全威胁,攻击者只要放置少量克隆节点就可以控制整个无线传感器网络。针对克隆节点如何解决,学术界已经开展了一系列相关研究
流媒体简单地说,就是一边下载一边播放的视频、音频媒体信息。流媒体技术包括适应网络传输的编码格式,QoS控制机制和控制协议。目前的流媒体软件大多是基于客户端/服务器模式的
随着计算机技术与无线射频技术的飞速发展,基于远距离无线射频识别(RFID)技术的读写器越来越多地受到各种行业的关注,并产生了许多在RFID基础上的应用需求。由于RFID技术起步发
C语言作为一门主流的编程语言,在操作系统、编译器、嵌入式软件等领域得到广泛使用,这些领域的软件的安全性问题直接影响整个软件领域的安全。与其他语言相比,C语言具有指针
近年来,跟随着互联网的出现和不断发展,人们进行信息交流的方式发生了巨大的改变。传统的以纸张、磁带、录像带等实物载体的信息交流方式已逐渐被以文档、音频文件、视频文件
互联网架构的飞速发展,促进了Web应用的广泛应用。Web应用在国计民生、商业领域和个人生活中发挥着日益重要的作用。现今,Web应用已发展成为一种成熟而又复杂的分布式系统,并且
随着现代社会日益趋于信息化和网络化,网络信息系统在日常生活中扮演着举足轻重的作用。虽然传统的安全措施提高了网络信息系统的安全性,但各种入侵事件还是不断的发生,为此必须
网格计算是分布式高性能计算的发展产物。利用网格技术,人们可以将原本毫无关系的服务器、存储系统与网络联合在一起,组成一个超级计算系统,为用户提供高质量的计算与信息服务,但