国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:邓岸华,乔磊,杨孟飞
单位:邓岸华,西安电子科技大学 计算机科学与技术学院, 陕西 西安 710071;北京控制工程研究所, 北京 10019011,乔磊,北京控制工程研究所, 北京 10019002,杨孟飞,中国空间技术研究院, 北京 10009403
关键词:数据压缩;LZ77;嵌入式操作系统;资源受限;匹配记录表;多重索引
基金:国家自然科学基金(61632005,62032004,61802017)
随着星载计算机系统功能的日益复杂,程序规模也在快速扩大.在存储资源极其受限的背景下,需要稳定、有效的代码压缩功能来保障星载软件的正常存储与运行.混合压缩算法是目前无损数据压缩的主流算法,具有压缩率高、代码规模和计算资源需求大的特点.然而,在航天星载计算机等嵌入式系统中,由于其运行环境特殊,需要较高的可靠性和抗干扰能力,无法实现混合压缩算法应有的效果.同时,单一压缩模型压缩率较低.针对以上问题,在LZ77算法代码体积和内存消耗优势的基础上提出了改进方法为压缩过程设计一种新的匹配记录表以存储高价值数据索引来辅助压缩,实现了原算法局部性优势与高价值数据全局分布的互补,更大程度上减少了数据冗余;结合动态填充、变长编码等进一步优化编码结构,降低存储需求;最终,设计并实现了一种更加适合航天嵌入式环境的无损数据压缩算法(LZRC).实验结果表明:(1)新算法在比LZ77算法代码体积仅多出3.5 KB的条件下,对软件代码的平均压缩比提高了17%;(2)新算法的运行内存需求仅为混合压缩算法的12%,代码体积也减少了84%,更加适合星载计算机系统.
来源:2022年第10期
《软件学报》期刊编辑部