当前位置: 首页 > 毕业资源下载

静态网页设计与制作作业成品

基于JAVA纠错码的冗余技术的研究——EVENODD码的设计与实现(源代码+论文)免费下载

 摘要:

由于网络技术的迅猛发展,存储系统的规模变得越来越庞大。因此它对系统的可靠性提出了严峻的挑战。而采用EVENODD编码算法的布局策略可以同时容许两个数据块同时出错,可以很好的保证系统的稳定性。它已经被广泛应用在RAID(Redundant  Arrays of Independent Disks)等技术中。本论文从EVENODD编码原理出发,详细介绍了EVENODD的编码和译码过程,以及从理论上对该译码的算法进行了分析证明,同时使用java编译技术实现了该编码过程的仿真。在本论文中还对该仿真软件的设计思路、开发过程、以及主要功能模块的实现都进行了详细的介绍。EVENODD码仿真软件的实现是理论运用于实际的又一典范。通过对其编码和译码核心算法的调用,可以实现图片、二进制文件等格式的备份和恢复。


关键字:

 EVENODD编码 ;容错技术 ;系统稳定性;java编译技术


 目录:

毕业设计论文参考



软件设计与目标:  

1.1 设计目标及内容

对于本软件的设计可以概述为以下三个方面:
1)编码算法的设计是本软件要实现的核心内容,通过EVENODD编码原理利用5张原始图片的数据生成2张冗余的校验数据。
2)译码算法是体现运用EVENODD原理能够胜任将出错的两个数据块的数据恢复的关键,也是体现了本原理在现实运用中具有的高可靠性和高稳定性。
3)界面设计是实现友好的人机交互界面不可或缺的重要部分,EVENODD编码的实现过程和结果都要通过该界面表现和保存。
通过对上述内容的设计我们必须达到以下目标:
1)满足用户对EVENODD编码过程的直观理解;
2)创建友好的人机操作界面;
3)满足用户对5张简单图片的备份;
4)满足用户利用备份图片和尚未被破坏的原图片还原出错图片

1.2 软件总体功能结构

1.2.1 功能结构图

软件功能图如图2

毕业设计论文参考

1.2.2 功能说明

1. 图像处理
为了方便EVENODD码的演示,本软件所选用的输入数据就是图片。在正式进行编码之前必须对图像进行一些必要的处理以符合算法的接口标准。因此,图像处理功能模块又可以分成以下几个子功能模块,如:图像载入、图像保存、图像破坏、图像分割、图像表达等。
图像载入:从本地计算机中读取图片文件,可以选择本地计算机中的任何文件夹。
图像保存:将经过处理后的图片保存在当前的文件夹中或者其他文件夹中。
图像破坏:将图片的数据全部破坏供译码使用。它是配合软件的仿真而单独设计的。
图像分割:从以图像格式显示的图片中读取像素并存储在二维数组中,供以后处理使用。
图像表达:像素经过处理后是存储在二维数组中的,该子功能的作用是将二维数组以图片的格式表达出来,与图像分割功能作用相反。
2. 编码
编码功能是整个软件进行的关键,通过原始图片生成2张冗余校验图片,为译码过程的顺利进行做准备。
3. 译码
该功能是在实际生活中运用最广的一部分,它通过尚未有数据损失的原始图像和通过编码形成的尚未遭到数据破坏的校验数据将已破坏的数据恢复出来(已破坏数据块的数目≤2)。

1.3 设计实现的策略及主要算法描述

在该软件的实现过程中,基于面向对象程序设计思想,在实现过程中,把每一个待处理的数据看作一个对象,那么每个对象在实际的应用中也就是一张图片(也可以叫做一个数据块)。.根据EVENODD的编码原理,处理的数组大小m必须为素数,在整个软件的实现过程中取m= 5。由于以上介绍的编码过程都是针对单个数组的,所以在算法处理过程中,必须从每个对象中抽取一列组成单个的数据,将每个4×5大小的数组看作一个基本处理单元,然后按照编码原理进行算法的设计。

1.3.1 VENODD编码算法

1. 算法描述
EVENODD编码算法是产生冗余校验数据的核心算法。在实现该算法过程中,假设接口为5个数据对象,由于在该算法中实际操作对象是一个4×5大小的数组,首先面对的问题是如何将对象中的数据读出来并且将他们组合成符合规格的数组。基于上述情况,设计能从对象数组中获取某列的方法getColumnDatapictureInComp[] objint i)成为必要。利用该方法可以分别在每个对象的数据中获取相应列的数据并返回,组成一个符合规格的数组。这个数组就是最小的处理单元。根据公式(1)可以得到该处理单元产生的水平校验位的值,根据公式(3)不难得出公共校验因子,再由公式(2)对角校验值也就很容易的得到了。将该过程置于一个循环中依次处理对象的每一列,每列产生的水平校验值和对角校验值依照相反的方式重新组合便形成了两个冗余对象即水平校验对象和对角校验对象。
2. 设计流程图
编码算法的设计流程图如图3

毕业设计论文参考

图 3 编码设计流程图


结论:
在这篇文章中我们对EVENODD码的理论进行了详细的阐述,可以肯定EVENODD码可以很好的实现将小于两个数据块数的出错数据恢复出来,并且我们可以相信它在维护各种系统的稳定性方面大有用武之地。EVENODD码的实现过程在这篇文章的后半部分也展开了说明,在理解了它的原理后,我们可以很快的在软件中将它实现出来。在整个课题实现期间,首先我们围绕着怎样使EVENODD码的原理变得更加通俗易懂,其次我们着重在它的实现过程上花了大量精力,从整体结构到每个功能模块,再到对应每个模块的的接口方法都经过了精心的规划和设计。我们希望让读者感觉到,即使是采用一些很简单算法依然能够实现很复杂的系统,真正困难的是系统结构的设计,并不是代码的实现。

最新毕业设计成品

版权所有© 帮我毕业网 并保留所有权利

QQ 1370405256 微信 biyebang

QQ:629001810微信:biyebang

收缩