首页> 中国专利> 一种突破DOS操作系统内存瓶颈的数据处理方法

一种突破DOS操作系统内存瓶颈的数据处理方法

摘要

本发明公开一种突破DOS操作系统内存瓶颈的数据处理方法,包括以下步骤:1)搭建处理系统框架;2)所述前端管理程序模块对输入数据进行处理,得到标志位文件,并将标志位文件传输至后台服务中间件;3)后台服务中间件对标志位文件的类型进行判断,并根据标志位文件类型将标志位文件输入到计算程序模块中;4)所述计算程序模块对标志位文件进行计算,得到计算结果,并将计算结果传输至后台服务中间件;5)所述后台服务中间件对计算结果进行转换,并将转换后的计算结果写入计算结果接口文件;6)所述前端管理程序模块读取和显示计算结果接口文件。本发明的突破DOS操作系统内存瓶颈的数据处理方法延长了常规基于DOS的操作系统的软件生命周期。

著录项

  • 公开/公告号CN115994028A

    专利类型发明专利

  • 公开/公告日2023-04-21

    原文格式PDF

  • 申请/专利权人 西南计算机有限责任公司;

    申请/专利号CN202211408444.X

  • 发明设计人 袭祥云;柏苗;

    申请日2022-11-10

  • 分类号G06F9/50(2006.01);G06F9/48(2006.01);

  • 代理机构重庆缙云专利代理事务所(特殊普通合伙) 50237;

  • 代理人左倩

  • 地址 400060 重庆市南岸区南坪光电路1号

  • 入库时间 2023-06-19 19:23:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-05-09

    实质审查的生效 IPC(主分类):G06F 9/50 专利申请号:202211408444X 申请日:20221110

    实质审查的生效

  • 2023-04-21

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及数据处理领域,具体是一种突破DOS操作系统内存瓶颈的数据处理方法。

背景技术

随着信息系统设计技术的逐步成熟,软件需求不断增加,对数据的处理越来越多,静态数据直线上升,所需要的空间越来越大。

采用C语言与汇编语言编写并运行常规系统,面对日益增加的用户需求,如数值计算等,在程序运行过程中,分配大量内存存储数据在所难免,故常规内存资源十分紧张,在软件运行过程中,一旦内存不够使用,将大大影响软件的可靠性。

在80X86实地址模式下,通过DOS只能直接寻址1MB以内的空间,实际给用户的只有640KB的空间。为克服DOS内存量不足这一限制,一般有两种方式解决:1、使用扩展内存(ExtendedMemory),2、使用扩充内存(ExpandedMemory)。但是不管扩充内存或扩展内存有多大,DOS的应用程序只能在常规内存下运行,对于静态数据多,耗费内存的应用程序仍不适用。

发明内容

本发明的目的是提供一种突破DOS操作系统内存瓶颈的数据处理方法,包括以下步骤:

1)搭建处理系统框架,包括前端管理程序模块、后台服务中间件、计算程序模块;所述计算程序模块包括汇编计算服务构件和C计算服务构件;

2)所述前端管理程序模块接收输入数据,并对输入数据进行处理,得到标志位文件,并将标志位文件传输至后台服务中间件;

3)后台服务中间件对标志位文件的类型进行判断,并根据标志位文件类型将标志位文件输入到计算程序模块的汇编计算服务构件或C计算服务构件中;

4)所述计算程序模块对标志位文件进行计算,得到计算结果,并将计算结果传输至后台服务中间件;

5)所述后台服务中间件对计算结果进行转换,并将转换后的计算结果写入计算结果接口文件;

6)所述前端管理程序模块读取和显示计算结果接口文件。

进一步,所述前端管理程序模块独立运行于DOS系统。

进一步,所述计算程序模块搭载有计算程序;

所述计算程序包括运行于DOS操作系统的汇编程序和C语言程序、运行于windows操作系统的程序。

进一步,所述输入数据包括需要进行数值计算的数据。

进一步,对输入数据进行处理,得到标志位文件的步骤包括:

a)所述前端管理程序模块接收输入数据,并对输入数据进行整理,得到标准的接口数据;

b)所述前端管理程序模块根据标准的接口数据生成接口数据文件;

c)所述前端管理程序模块根据用户输入数据生成汇编计算服务或C计算服务对应的标志位文件。

进一步,所述后台服务中间件每隔T周期启动一次,启动后,若未接收到标志位文件,则进入休眠状态,等待下一次启动,若接收到标志位文件,则对标志位文件的类型进行判断。

进一步,所述标志位文件的类型包括OLDDATA.DAT和READOVER.DAT;

当标志位文件的类型为OLDDATA.DAT时,后台服务中间件将标志位文件传输至计算程序模块的汇编计算服务构件;

当标志位文件的类型为READOVER.DAT时,后台服务中间件将标志位文件传输至计算程序模块的C计算服务构件。

进一步,当汇编计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:利用汇编计算服务构件对标志位文件的数据进行计算,得到计算结果。

进一步,当C计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:

I)对运行于DOS系统的标志位文件进行数据结构转换,得到运行于windows系统的结构体数据;

II)利用C计算服务构件对所述结构体数据进行计算,得到计算结果;

进一步,当后台服务中间件接收到C计算服务构件传输的计算结果时,对运行于windows系统的计算结果进行了数据结构逆转换,从而得到运行于DOS系统的计算结果。

本发明的技术效果是毋庸置疑的,本发明利用windows2000/xp兼容16位、32位运行程序的特点,将原DOS应用程序的功能模块进行剥离,分为管理程序与计算程序两部分。管理程序作为前端仍在DOS下运行,负责与用户交互,处理业务流程;计算程序负责大批量数据的计算,为管理程序提供计算服务。其中计算程序可以由多个独立构件组成,可以是汇编程序,也可以是C程序和VC程序。这些程序可以分别独立运行于DOS和windows系统上。在兼顾原系统的同时,大大扩展了可处理的数据形式。

管理程序与计算程序的有机结合依赖于新增的后台服务中间件。后台服务中间件在windows平台下运行,负责计算服务资源的调配,通过标志位文件、接口文件交互,完成管理程序与计算程序间的通讯。

本发明的突破DOS操作系统内存瓶颈的数据处理方法延长了常规基于DOS的操作系统的软件生命周期;实现了前端页面与后台计算的分离,节省了系统维护的时间与人力成本;为其他DOS应用程序提供了可持续发展的方法。

附图说明

图1为突破DOS操作系统内存瓶颈的数据处理方法的应用程序架构图。

图2为突破DOS操作系统内存瓶颈的数据处理方法的流程图。

具体实施方式

下面结合实施例对本发明作进一步说明,但不应该理解为本发明上述主题范围仅限于下述实施例。在不脱离本发明上述技术思想的情况下,根据本领域普通技术知识和惯用手段,做出各种替换和变更,均应包括在本发明的保护范围内。

实施例1:

参见图1至图2,一种突破DOS操作系统内存瓶颈的数据处理方法,包括以下步骤:

1)搭建处理系统框架,包括前端管理程序模块、后台服务中间件、计算程序模块;所述计算程序模块包括汇编计算服务构件和C计算服务构件;

所述前端管理程序模块独立运行于DOS系统。

所述计算程序模块搭载有计算程序;

所述计算程序包括运行于DOS操作系统的汇编程序和C语言程序、运行于windows操作系统的程序。

2)所述前端管理程序模块接收输入数据,并对输入数据进行处理,得到标志位文件,并将标志位文件传输至后台服务中间件;

所述输入数据包括需要进行数值计算的数据。

对输入数据进行处理,得到标志位文件的步骤包括:

2.1)所述前端管理程序模块接收输入数据,并对输入数据进行整理,得到标准的接口数据;

2.2)所述前端管理程序模块根据标准的接口数据生成接口数据文件;

2.3)所述前端管理程序模块根据用户输入数据生成汇编计算服务或C计算服务对应的标志位文件。

3)后台服务中间件对标志位文件的类型进行判断,并根据标志位文件类型将标志位文件输入到计算程序模块的汇编计算服务构件或C计算服务构件中;

所述后台服务中间件每隔T周期启动一次,启动后,若未接收到标志位文件,则进入休眠状态,等待下一次启动,若接收到标志位文件,则对标志位文件的类型进行判断。

所述标志位文件的类型包括OLDDATA.DAT和READOVER.DAT;

当标志位文件的类型为OLDDATA.DAT时,后台服务中间件将标志位文件传输至计算程序模块的汇编计算服务构件;

当标志位文件的类型为READOVER.DAT时,后台服务中间件将标志位文件传输至计算程序模块的C计算服务构件。

4)所述计算程序模块对标志位文件进行计算,得到计算结果,并将计算结果传输至后台服务中间件;

当汇编计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:利用汇编计算服务构件对标志位文件的数据进行计算,得到计算结果。

当C计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:

a)对运行于DOS系统的标志位文件进行数据结构转换,得到运行于windows系统的结构体数据;

b)利用C计算服务构件对所述结构体数据进行计算,得到计算结果;

5)所述后台服务中间件对计算结果进行转换,并将转换后的计算结果写入计算结果接口文件;

当后台服务中间件接收到C计算服务构件传输的计算结果时,对运行于windows系统的计算结果进行了数据结构逆转换,从而得到运行于DOS系统的计算结果。

6)所述前端管理程序模块读取和显示计算结果接口文件。

实施例2:

一种突破DOS操作系统内存瓶颈的数据处理方法,包括以下步骤:

1)搭建处理系统框架,包括前端管理程序模块、后台服务中间件、计算程序模块;所述计算程序模块包括汇编计算服务构件和C计算服务构件;

2)所述前端管理程序模块接收输入数据,并对输入数据进行处理,得到标志位文件,并将标志位文件传输至后台服务中间件;

3)后台服务中间件对标志位文件的类型进行判断,并根据标志位文件类型将标志位文件输入到计算程序模块的汇编计算服务构件或C计算服务构件中;

4)所述计算程序模块对标志位文件进行计算,得到计算结果,并将计算结果传输至后台服务中间件;

5)所述后台服务中间件对计算结果进行转换,并将转换后的计算结果写入计算结果接口文件;

6)所述前端管理程序模块读取和显示计算结果接口文件。

实施例3:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,所述前端管理程序模块独立运行于DOS系统。

实施例4:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,所述计算程序模块搭载有计算程序;

所述计算程序包括运行于DOS操作系统的汇编程序和C语言程序、运行于windows操作系统的程序。

实施例5:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,所述输入数据包括需要进行数值计算的数据。

实施例6:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,对输入数据进行处理,得到标志位文件的步骤包括:

a)所述前端管理程序模块接收输入数据,并对输入数据进行整理,得到标准的接口数据;

b)所述前端管理程序模块根据标准的接口数据生成接口数据文件;

c)所述前端管理程序模块根据用户输入数据生成汇编计算服务或C计算服务对应的标志位文件。

实施例7:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,所述后台服务中间件每隔T周期启动一次,启动后,若未接收到标志位文件,则进入休眠状态,等待下一次启动,若接收到标志位文件,则对标志位文件的类型进行判断。

实施例8:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,所述标志位文件的类型包括OLDDATA.DAT和READOVER.DAT;

当标志位文件的类型为OLDDATA.DAT时,后台服务中间件将标志位文件传输至计算程序模块的汇编计算服务构件;

当标志位文件的类型为READOVER.DAT时,后台服务中间件将标志位文件传输至计算程序模块的C计算服务构件。

实施例9:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,当汇编计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:利用汇编计算服务构件对标志位文件的数据进行计算,得到计算结果。

实施例10:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,当C计算服务构件接收到标志位文件时,所述计算程序模块对标志位文件进行计算的步骤包括:

I)对运行于DOS系统的标志位文件进行数据结构转换,得到运行于windows系统的结构体数据;

II)利用C计算服务构件对所述结构体数据进行计算,得到计算结果;

实施例11:

一种突破DOS操作系统内存瓶颈的数据处理方法,主要内容见实施例2,其中,当后台服务中间件接收到C计算服务构件传输的计算结果时,对运行于windows系统的计算结果进行了数据结构逆转换,从而得到运行于DOS系统的计算结果。

实施例12:

一种基于实施例1-11所述突破DOS操作系统内存瓶颈的数据处理方法,步骤包括:

A.前端管理程序接口文件输出:系统需要进行数值计算时,将输入数据进行整理,变成标准的接口数据,形成接口数据文件输出。

B.前端管理程序标志位文件输出:系统根据调用的计算服务类型生成相应的标志位文件。

C.后台服务中间件定时启动:后台服务中间件每隔50毫秒定时启动。

D.需要计算的判断:后台服务中间件检测到标志位文件的输出,判定为需要计算,否则继续等待;

E.标志位为old的判断:当标志位文件为OLDDATA.DAT时,调用汇编计算服务构件;当标志位文件为READOVER.DAT时,调用C计算服务构件。

F.数据结构转换:DOS程序与windows程序的数据结构转换。

G.调用C计算服务构件:C计算服务构件将转换后的结构体数据作为输入条件,完成计算,并将计算结果返回给后台服务中间件。

H、数据结构逆转换:后台服务中间件接收到C计算服务构件的计算结果,将计算结果进行逆转换。

I、将计算结果写入接口文件:后台服务中间件将转换后的结构体数据以二进制方式写入接口文件。

J、前端管理程序读取接口文件结果:系统检测到接口文件的产生,读取接口文件中的计算结果并显示到界面上;

K、调用汇编计算服务构件:在步骤E的判断中,当标志位文件为OLDDATA.DAT时,汇编计算服务构件将前端管理程序保存的数据作为输入条件,完成计算;

L、将计算结果写入数据文件:将汇编计算服务构件的计算结果写入系统的数据文件;

M、前端管理程序读取数据文件结果:前端管理程序检测到计算结果的产生,读取计算结果并显示到界面上。。

实施例12:

一种基于实施例1-11所述突破DOS操作系统内存瓶颈的数据处理方法,内容包括:

如图1所示为采用本发明突破DOS操作系统内存瓶颈的数据处理方法后,系统的应用程序架构图:

重新构建后的系统,由三个独立运行的程序组成,既独立运行又有机合作。前端管理程序作为其中一个程序,独立运行于DOS系统;计算程序是负责数据处理并给出结果的部件,该模块既可以是运行于DOS操作系统的汇编程序和C语言程序,也可以是win32计算程序,未来也可以挂接其他语言的数据处理程序,该模块的形态具备多样化,可以是可执行程序,也可以是动态库;后台服务中间件作为侦听程序,采用定时唤醒,是前端管理程序与计算程序的桥梁。

参见图2,基于图1所述系统架构的突破DOS操作系统内存瓶颈的数据处理方法,步骤包括:

A.前端管理程序接口文件输出:在对原应用程序进行剥离时,为了保证原计算程序的精度,计算程序被分成了C语言计算程序(VC语言计算程序)与汇编计算程序两大类。当需要调用C计算服务时,前端管理程序就会将计算所需要的数据进行整理,变成标准的结构体,并以二进制方式写入接口文件INDATA.DAT;当需要调用汇编计算服务时,前端管理程序将计算所需要的数据直接保存到数据文件中。

B.前端管理程序标志位文件输出:当前端管理程序调用C计算服务时,完成了A步骤,会产生一个标志位文件READOVER.DAT,该文件无内容,仅作为数据写完的标记;当前端管理程序调用汇编计算服务时,完成了A步骤,会产生一个标志位文件OLDDATA.DAT。

C.后台服务中间件定时启动:为了不占用更多的CPU资源,需要将后台服务中间件设置为定时启动,每隔50毫秒启动一次。

D.需要计算的判断:后台服务中间件检测到标志位文件的输出,判定为需要计算,否则继续等待。

E.标志位为old的判断:该标志位用于后台服务中间件调用计算程序的选择,当标志位文件为OLDDATA.DAT时,调用汇编计算服务构件;当标志位文件为READOVER.DAT时,调用C计算服务构件。

F.数据结构转换:前端管理程序的编译器为16位,而C计算服务构件的编译器为32位,为了避免编译器位数差异导致的数据不一致,后台服务中间件对接口文件INDATA.DAT中的结构体数据进行了一一转换,使数据变为适应32位编译器的结构体数据。

G.调用C计算服务构件:C计算服务构件将转换后的结构体数据作为输入条件,完成计算,并将计算结果返回给后台服务中间件。

H.数据结构逆转换:后台服务中间件接收到C计算服务构件的计算结果,将计算结果进行逆转换,使数据变为适应16位编译器的结构体数据。

I.将计算结果写入接口文件:后台服务中间件将转换后的结构体数据以二进制方式写入接口文件OUTDATA.DAT.DAT,写入完成后,会产生一个标志位文件WRITOVER.DAT,该文件无内容,仅作为数据写完的标记。

J.前端管理程序读取接口文件结果:前端管理程序检测到WRITOVER.DAT的产生,读取接口文件中的计算结果并显示到界面上。

K.调用汇编计算服务构件:在步骤E的判断中,当标志位文件为OLDDATA.DAT时,汇编计算服务构件将前端管理程序保存的数据作为输入条件,完成计算。

L.将计算结果写入数据文件:将汇编计算服务构件的计算结果写入前端管理程序的数据文件,写入完成后,会产生一个标志位文件OLDDATA1.DAT,该文件无内容,仅作为数据写完的标记。

M.前端管理程序读取数据文件结果:前端管理程序检测到OLDDATA1.DAT的产生,读取计算结果并显示到界面上。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号