论文部分内容阅读
AST3是计划部署在南极昆仑站的三台施密特天文望远镜,用于在南极极夜进行无人职守观测及实时数据处理分析,是南极科考的重要部分。AST3的第一架望远镜及其数据处理计算机将于2011年南极科考时随―雪龙号‖运抵南极昆仑站并投入使用。由于南极地理位置及气候条件的特殊性,目前还不具备为越冬观测配备专门观测人员的条件;同时,望远镜在4个月左右的观测中会产生大量的数据,这些数据无法全部经卫星传回远程进行处理,因此要求AST3具有实时数据处理分析的能力。本文针对课题中一系列关键问题展开了深入的研究,提出了一套系统的解决方案,为无人职守条件下测光流程自动化、系统高可靠性及数据处理的实时性提供了必要的支持。在流程整合及自动化管理方面,采用了基于Linux平台守护进程服务的设计方案:通过监听文件系统事件,自动触发测光流程,并在执行过程中对流程进行有效监控,同时保存必要的日志信息以备后续检查。在可靠性保障方面,本文设计了一套基于“自治计算”的多级保障模型,即在系统的各个层面分别提供有针对性的保障。从最基本的进程级监控、工作流监控到守护进程交叉保护、局域网多处理计算机间负载均衡与数据备份等,并提供了基于读写工作断点方式的崩溃恢复机制,为系统的全局可靠性提供有效支持。在测光流程实时性保证方面,首先深入分析了制约整体性能的瓶颈所在,继而在不产生过多额外功耗的前提下,利用多核CPU及CPU加高性能GPU的并行硬件平台,分别设计了基于OpenMP及CUDA的并行优化方案,通过测试,得到较好的结果,为满足实时性要求奠定了坚实的基础。同时,为了确保系统能在南极严峻的自然环境下长期工作,本文还设计了一套非常严格的测试机制。AST3软件系统的所有代码都经过严格的验证:包括各个模块的单元测试及系统整体的整合测试。此外,还通过自动化脚本模拟错误注入的方式,进行了长期压力实测,初步验证了设计的有效性。