王瑞荣[1]2003年在《基于事件触发并发数据流模型的可视化编程语言研究》文中研究指明目前,面向虚拟仪器的可视化编程语言(或称图形化编程语言)多是基于动态纯数据流(DHDF)模型的。由于DHDF的自然属性(数据驱动)与目前大多数操作系统的事件驱动模型不能很好地结合,导致了两个明显的不足:运行效率低,CPU占用率高;对外部事件响应速度慢,系统实时性差。与此同时,测控技术的发展也对测试软件提出了新的要求,希望作为核心的软件能够在高效利用硬件平台实现并发处理的同时及时响应并处理具有一定时限的任务。 本文通过对测控系统以及与之相关的操作系统的运行机制的分析,提出了一种事件触发并发数据流(ECDF)模型,并且在该模型的基础上设计并实现了面向虚拟仪器的可视化语言—E语言。文中不仅给出了ECDF模型的文法描述和调度算法,也给出了E语言及其开发环境的设计与实现方法。与其它面向虚拟仪器的可视化编程语言相比,基于ECDF模型的E语言有以下几个特点: 1.并发多线程机制。部分虚拟仪器控件之中含有线程,在这些线程中可以实现阻塞调用、重迭I/O、事件监听以及回调等操作模式。 2.事件触发。这里的事件触发有两层含义:一是内含线程的控件,其操作运行可以由外部事件触发;二是纯数据流调度器可以由线程控件发出的事件激活。通过纯数据流调度器的自动关闭与事件激活机制,使得E语言可以在没有数据可以处理的时候让出CPU。 3.带FIFO的边。这种带FIFO的边用于线程控件与非线程控件、线程控件与线程控件之间的数据传输。这种边不仅解决了异步数据传输的问题,而且在外部数据流暂时高于内部处理速度的情况下起到了缓冲器的作用。这样做的好处是:只要FIFO具有足够的深度,就能忍受足够长时间的外部高速数据流,大大提高了系统对交发性数据流的处理能力。 4.多视图的主子程序结构。利用多视图可以同时观察主程序与子程序,提高了可视化语言的直观感与可读性。 5.六类仪器控件模型。根据需要完成的功能并考虑实现的难度,把控 摘要件模型分成六类。提出利用内含线程的虚拟仪器控件实现同一资源双向对话的通信模型。 6.分支与循环结构。针对数据流语言中的设计难点,提出了简单、实用的分支与循环结构。用这些结构可以完成迭代、递归等复杂的数学计算。 测试结果表明:与原有的基于DHDF模型的可视化语言相比,E语言不仅实现了并发运行机制,而且在事件驱动的操作系统上运行时具有更高的效率和更好的实时性能。该语言不仅适合处理突发性高速数据流,也适用于反应式系统设计。 文中还提出了一种用于描述单率、异步数据流语言的RTL文法。文法中引入传输事件常量与状态谓词侣tate Predicates)解诀了异步节点的 RTL文法描述问题。利用该文法可以对基于单率异步数据流的可视化程序进行实时性检验。
王瑞荣, 汪乐宇, 周泓[2]2003年在《基于事件触发并发数据流的可视化语言》文中认为数据流模型不仅可以有效地描述数据处理问题,而且具有很好的可视性与直观性,因此特别适合用于开发面向虚拟仪器的可视化编程语言.目前开发的可视化编程语言多是基于纯数据流(HomogeneousDataflow)模型的.纯数据流模型不能很好地与目前多数操作系统基于的事件驱动模型协调,存在CPU利用率低,对外部事件响应慢等缺点.在事件触发并发数据流(ECDF)的基础上,提出了一种面向虚拟仪器的可视化编程语言E.该语言支持并发多线程机制,支持外部事件驱动、阻塞调用(锁定)以及重迭I/O模式.针对不同的操作模式提出了六类仪器控件,同时还提出并实现了同一资源的双向对话通信模式.试验结果表明:该语言运行效率高、对外部事件响应时间短,对虚拟仪器系统具有较强的描述能力.
张鑫[3]2009年在《基于组件的医学影像处理算法平台的研究与实现》文中认为ITK和VTK等着名的医学影像算法平台存在着学习成本高,不易使用,开发和维护困难等缺点。为了给科研人员提供一个更好的开发环境,开发基于组件的医学影像算法平台具有重要的实用价值。本文构建一个使用组件编程的医学影像处理算法平台,平台以组件代表医学影像处理算法,用组件及它们间的连线来构建一个医学影像处理过程。这样可以快速组建程序,大大提高了编程效率。主要工作如下:根据医学影像处理的特点,设计了本文平台的编程语言—扩展数据流语言,并给出了该语言的验证方法,为平台的语法分析器的实现提供了理论基础。在对比分析了各种数据流模型之后,提出了树形数据流模型来实现平台的组件、端口和边,进一步明确组件与端口的关系,改进了遍历组件的方法,提高了可视化程序的执行效率。基于JGraph实现了一个组件编程的医学影像算法平台,该平台提供了一个友好的编程界面,能处理包括DICOM格式在内的各种医学影像,通过继承该平台组件的基类可以自由扩展平台的组件库。实验表明,与传统的文本编程的平台相比较,该组件平台易于掌握,创建医学影像处理程序更简单、更快速。
参考文献:
[1]. 基于事件触发并发数据流模型的可视化编程语言研究[D]. 王瑞荣. 浙江大学. 2003
[2]. 基于事件触发并发数据流的可视化语言[J]. 王瑞荣, 汪乐宇, 周泓. 浙江大学学报(工学版). 2003
[3]. 基于组件的医学影像处理算法平台的研究与实现[D]. 张鑫. 沈阳航空工业学院. 2009
标签:计算机软件及计算机应用论文; 编程语言论文; 可视化论文; 虚拟仪器论文; 线程论文;