一种跨容器的柜面系统信创迁移方法及设备技术方案

技术编号:38471571 阅读:30 留言:0更新日期:2023-08-11 14:48
本发明专利技术公开了一种跨容器的柜面系统信创迁移方法及系统,方法包括:将精简柜面系统得到精简容器系统;将外设模块的外设驱动打包至精简容器系统中,得到容器镜像文件;柜面终端启动容器镜像文件进入容器系统,需要访问目标外设模块时,生成网络报文请求,将网络报文请求传入容器系统;容器系统的外设驱动服务根据网络报文请求生成外设驱动调用包;根据外设驱动调用包调用目标外设模块对应的外设驱动,从而提供外设服务并完成柜面系统的外设调用响应。解决了因驱动版本个别文件更新失败导致整体前端应用无法使用的问题;满足了柜面系统信创迁移的需求;同时利用外设驱动服务的模块切换机制解决了柜面系统模块切换无法实现无感快速切换的问题。快速切换的问题。快速切换的问题。

【技术实现步骤摘要】
一种跨容器的柜面系统信创迁移方法及设备


[0001]本专利技术属于计算机
,尤其涉及一种跨容器的柜面系统信创迁移方法及设备。

技术介绍

[0002]大部分银行Windows平台下的柜面应用系统都是基于IE浏览器和OCX控件(或IE浏览器与NET Framework服务)的轻型业务系统,其OCX控件可能会加载调用一系列依赖库。因IE浏览器和OCX控件及.NET Framework服务无法在Linux系统上使用,基于金融设备领域信息创新与安全自主的需求,必须给柜面系统建立一套可以在国产Linux系统和国产CPU的自主信创平台架构下可用的前端外设调用系统。结合柜面前端系统轻型化的需要,应用系统架构首推基于开源Chromium浏览器的B/S应用架构;而外设调用方面,信创智柜上常用的中间件服务+常用规范SP(驱动服务提供程序)架构的方式,可以满足柜面前端系统调用外设的需要,但因层次进程解耦的需要,中间件服务+常用规范SP的架构往往是一个模块需要至少一个中间件服务进程和一个SP进程,这种多进程多层次的外设调用系统架构虽可一定程度增强柜面前端系统稳定性,但却需要耗费大量的硬件资源方能支撑其稳定、流畅运行;实际上此类中间件服务+常用规范的SP的方式在实际的柜面系统使用过程中,频发外设驱动响应慢、无法启动、业务系统卡顿等问题,已充分证明该架构无法适用柜面前端轻型系统调用外设的需要。由于银行柜面机器硬件资源的限制,要求外设服务和驱动尽量精简、占用硬件资源少,因此柜面应用系统的信创迁移需要解决应用和外设驱动信创迁移调用的需求,同时需要满足外设驱动精简化的需求。
[0003]原Windows桌面系统外设驱动、信创智柜驱动远程更新时常常因端机环境差异导致失败,从而导致网点设备经常在版本更新后无法使用的问题出现。例如,历史版本不一致导致的依赖环境不一致,从而使得新增加的外设服务和SP无法正常运行;端机进程终结不彻底、权限不够导致部分文件更新失败;因网络环境问题,部分驱动文件可能下载失败导致更新后外设服务和SP不完整而无法正常运行。
[0004]原Windows柜面系统在外设模块切换方面无法做到热拔插:柜员在进行外设型号更换或拔插时,除了硬件的切换变更外,往往还需要通过工具修改或手动修改端机的多个配置文件、拷贝或更新某些驱动文件,然后重启设备才能使得修改生效,此类切换方式不仅加大了行方柜员的模块切换工作量,而且浪费了大量的业务操作时间。因此本次柜面系统的信创迁移,还需要满足外设模块的热拔插切换需求。

技术实现思路

[0005]为了弥补现有技术的缺陷,本专利技术提供了一种跨容器的柜面系统信创迁移方法及设备。
[0006]为了解决上述技术问题,本专利技术所采用的技术方案是:第一方面,本申请提供一种跨容器的柜面系统信创迁移方法,包括:
将柜面终端的柜面系统进行精简化处理得到精简容器系统;将柜面终端的外设模块的外设驱动采用全依赖软件环境打包技术打包至精简容器系统中,将精简容器系统和外设驱动一并导出,得到容器镜像文件,将容器镜像文件发送至柜面终端;当柜面终端启动容器镜像文件还原得到包含外设驱动服务的容器系统,且需要访问目标外设模块时,生成网络报文请求,并通过网络共享层将网络报文请求传入容器系统;通过容器系统内的外设驱动服务根据网络报文请求生成外设接口任务,根据外设接口任务生成外设驱动调用包;根据外设驱动调用包通过驱动共享层调用目标外设模块对应的外设驱动,使得目标外设模块提供外设服务。
[0007]进一步的,生成网络报文请求之前,还包括:获取模块配置文件,模块配置文件包括柜面终端的每一个外设模块的任务进程配置参数;根据模块配置文件为每一个外设模块启动任务处理子进程;对每一个任务处理子进程创建任务队列。
[0008]进一步的,网络报文请求包括目标外设模块的模块名,通过容器系统内的外设驱动服务根据网络报文请求生成外设接口任务,包括:通过容器系统内的外设驱动服务根据网络报文请求解析得到模块名;根据模块名确定目标外设模块对应的任务处理子进程;将网络报文请求加入对应模块的任务处理队列中,等待排队执行;从任务处理子进程的任务队列中得到外设接口任务。
[0009]进一步的,根据外设接口任务生成外设驱动调用包,包括:获取外设接口任务的任务名称;根据任务名称确定对应硬件模块的驱动接口组合集;根据驱动接口组合集确定待调用的外设驱动指令及驱动调用顺序;根据驱动调用顺序对每一个外设驱动指令生成外设驱动调用包,通过驱动共享层将外设驱动调用包传输至柜面终端,并将指令顺序执行结果组合反馈至任务处理子进程。
[0010]进一步的,根据外设驱动调用包通过驱动共享层调用目标外设模块对应的外设驱动之前,还包括:从预设的模块驱动配置文件中,获取同功能的外设模块的厂商驱动库列表;当对应模块任务处理子进程启动时,根据厂商驱动库列表进行模块驱动库加载和实例化,得到每个模板驱动库对应的模块驱动对象。
[0011]进一步的,方法还包括:当目标外设模块为U口设备模块时,根据每一个U口设备模块的设备标识及对应的模块驱动对象,生成映射表;当检测到U口设备模块进行了拔插事件时,获取拔插U口设备模块的拔插设备标识,查找映射表中是否具有与拔插设备标识对应的模块驱动对象;若查找到对应的模块驱动对象,则调用拔插设备标识对应的模块驱动对象;若未查找到对应的模块驱动对象,则忽略此次拔插事件,并进行下一步的模块状
态轮询;获取目标外设模块的状态值,判断目标外设模块是否状态正常;若状态正常,则将当前模块驱动对象切换至状态正常的模块驱动对象;若状态不正常,则进行下一个模块状态查询,直到确定状态正常的外设模块,并将当前模块驱动对象切换至状态正常的模块驱动对象。
[0012]进一步的,将柜面终端的外设模块的外设驱动采用全依赖软件环境打包技术打包至精简容器系统中,将精简容器系统和外设驱动一并导出,得到容器镜像文件,将容器镜像文件发送至柜面终端,包括:获取所述柜面终端的外设模块的外设驱动文件;创建并安装虚拟基础软件依赖环境;基于所述虚拟基础软件依赖环境,通过加密算法对所述外设驱动文件进行加密,得到加密外设驱动文件,采用全依赖软件环境打包技术,将所述加密外设驱动文件及其依赖环境压缩打包成整体的外设驱动包;将所述外设驱动包拷贝至所述精简容器系统中,将所述精简容器系统和所述外设驱动一并导出,得到容器镜像文件;将所述容器镜像文件发送至所述柜面终端。
[0013]进一步的,外设驱动文件包括待编译文件和非待编译文件,基于虚拟基础软件依赖环境,通过加密算法对外设驱动文件进行加密,得到加密外设驱动文件,采用全依赖软件环境打包技术,将加密外设驱动文件及其依赖环境压缩打包成整体的外设驱动包,包括:基于虚拟基础软件依赖环境,通过国密SM4加密算法生成打包加密密钥;根据打包加密密钥生成加密密钥对象;根据外设驱动文件的待编译文件生成待处理文件实例;根据加密密钥对象及待处理文件实例,生成临时加密文件;根据加密密钥对象、待处理文件实例及临时加密文件,通过预置编译进程编译生成进程对象;根据进程对象及本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种跨容器的柜面系统信创迁移方法,其特征在于,包括:将柜面终端的柜面系统进行精简化处理得到精简容器系统;将所述柜面终端的外设模块的外设驱动采用全依赖软件环境打包技术打包至所述精简容器系统中,将所述精简容器系统和所述外设驱动一并导出,得到容器镜像文件,将所述容器镜像文件发送至所述柜面终端;当所述柜面终端启动所述容器镜像文件还原得到包含外设驱动服务的容器系统,且需要访问目标外设模块时,生成网络报文请求,并通过网络共享层将所述网络报文请求传入所述容器系统;通过所述容器系统内的外设驱动服务根据所述网络报文请求生成外设接口任务,根据所述外设接口任务生成外设驱动调用包;根据所述外设驱动调用包通过驱动共享层调用所述目标外设模块对应的外设驱动,使得所述目标外设模块提供外设服务。2.根据权利要求1所述的跨容器的柜面系统信创迁移方法,其特征在于,所述生成网络报文请求之前,还包括:获取模块配置文件,所述模块配置文件包括所述柜面终端的每一个外设模块的任务进程配置参数;根据所述模块配置文件为每一个外设模块启动任务处理子进程;对每一个任务处理子进程创建任务队列。3.根据权利要求2所述的跨容器的柜面系统信创迁移方法,其特征在于,所述网络报文请求包括所述目标外设模块的模块名,所述通过所述容器系统内的外设驱动服务根据所述网络报文请求生成外设接口任务,包括:通过所述容器系统内的外设驱动服务根据所述网络报文请求解析得到模块名;根据所述模块名确定所述目标外设模块对应的任务处理子进程;将所述网络报文请求加入对应模块的任务处理队列中,等待排队执行;从所述任务处理子进程的任务队列中得到外设接口任务。4.根据权利要求3所述的跨容器的柜面系统信创迁移方法,其特征在于,所述根据所述外设接口任务生成外设驱动调用包,包括:获取所述外设接口任务的任务名称;根据所述任务名称确定对应硬件模块的驱动接口组合集;根据所述驱动接口组合集确定待调用的外设驱动指令及驱动调用顺序;根据所述驱动调用顺序对每一个外设驱动指令生成外设驱动调用包,通过驱动共享层将所述外设驱动调用包传输至所述柜面终端,并将指令顺序执行结果组合反馈至任务处理子进程。5.根据权利要求3所述的跨容器的柜面系统信创迁移方法,其特征在于,所述根据所述外设驱动调用包通过驱动共享层调用所述目标外设模块对应的外设驱动之前,还包括:从预设的模块驱动配置文件中,获取同功能的外设模块的厂商驱动库列表;当对应模块任务处理子进程启动时,根据所述厂商驱动库列表进行模块驱动库加载和实例化,得到每个模板驱动库对应的模块驱动对象。
6.根据权利要求5所述的跨容器的柜面系统信创迁移方法,其特征在于,所述方法还包括:当所述目标外设模块为U口设备模块时,根据每一个U口设备模块的设备标识及对应的模块驱动对象,生成映射表;当检测到U口设备模块进行了拔插事件时,获取拔插U口设备模块的拔插设备标识,查找所述映射表中是否具有与所述拔插设备标识对应的模块驱动对象;若查找到对应的模块驱动对象,则调用所述拔插设备标识对应的模块驱动对象;若未查找到对应的模块驱动对象,则忽略此次拔插事件,并进行下一步的模块状态轮询;获取所述目标外设模块的状态值,判断所述目标外设模块是否状态正常;若状态正常,则将当前模块驱动对象切换至状态正常的模块驱动对象;若状态不正常,则进行下一个模块状态查询,直到确定状态正常的外设模块,并将当前模块驱...

【专利技术属性】
技术研发人员:李小龙赵建青余官杰佘磊陈治
申请(专利权)人:中电长城长沙信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1