动态库在像管设计中的一种应用方法
一、引 言
在电子光学的发展中,像管设计由起初的经验设计到计算机模拟[3](正设计、逆设计)到优化设计,经历了一个较长的时期。其中优化设计涉及的一个重要问题,即边界数据的更改。因为像管设计及优化设计中要频繁更改系统结构或电参数以寻求最佳效果。这就要求能够有一种方法能从外部设定系统的更改方式或优化参数,以适应不同结构、不同要求的管型。在DOS状态下,采用的方法是“形成边界数据”,实际上就是用户自编一个格式固定的边界形成程序,确立电极间的结构关系和优化参数,作为子进程程序;由父进程程序(主程序)重复调用该程序,以达到修改电极结构和参数,从而计算像质,最终满足优化要求。由于DOS状态自身的限制,尤其是内存的限制,对一些管型的计算精度不够,优化结构不能作为最终结果,而由于WINDOWS环境优越的界面及内存管理特点,像管的设计及优化设计从DOS环境向WIN-DOWSW环境发展势在必行。本文作者在“像管设计及优化设计高级软件包”的研制中,为解决形成边界数据的问题,引入了WINDOWS环境下的动态连接库,针对像管设计及优化设计自身所具有的特点,提出了一种在像管设计及优化设计中使用动态连接库的较佳方案。
二、动态连接库常规方法
在WINDOWS环境下对动态连接库的使用一般采取输入库的方案,其基本思想就是:输入库中包含与应用程序模块及DLL模块相联系的信息,以帮助WINDOWS在DLL中寻找执行代码。下面给出此方法的结构框架[1]。
1.动态库文件结构
DLL的定义文件(DEF)
LIBRARY WIN-DLL
其中EXPORTS说明了动态库中的二个外部函数Inputdata和Editdata;LIBRARY限定了动态库名为WIN-DLL。
DLL的C源代码文件结构
2.WINDOWS应用程序使用DLL结构
应用程序定义文件结构
其中IMPORTS说明了动态库中的二个可调用函数,前缀WIN-DLL(DLL库名)必不可少。
应用程序C源文件结构
由1、2可以看出,应用程序能够访问到函数Inputdata、Editdata是靠DLL定义文件结构中的LIBRARY与应用程序定义文件结构中的IMPORTS所建立起来的联系,由于应用程序编译生成EXE后直接限定了动态库的灵活使用,使动态库变成了“静态”的动态库,无法灵活更改动态库,因此使应用程序无法适应更多结构相同、执行要求不同的动态库。
三、像管设计及优化设计中的动态库
由于像管设计及优化设计要针对大量、不同的管型,这就要求动态库要随时更改,尤其是动态库库名,而上述方法却无法自由更改动态库库名,为适应这种要求,本文提出一种“直接获取地址”的动态库方法,其基本原理及结构如下所述[2]。
相关文章
- 2024-06-07电流变液减振器在抑制深孔切削颤振上的研究
- 2024-03-20寄生虚反射对外差干涉椭偏测量的影响
- 2022-05-24基于现场总线监测系统的PLC控制制造系统
- 2024-04-10极紫外望远镜各通道夹角的测量
- 2024-08-02基于干涉原理的高精度直线度误差测量



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。