一种移动系统的进程数据读写优化方法及系统与流程

文档序号:20767812发布日期:2020-05-15 19:13阅读:131来源:国知局
一种移动系统的进程数据读写优化方法及系统与流程

本公开涉及移动设备领域与进程调度领域,具体涉及一种移动系统的进程数据读写优化方法及系统。



背景技术:

在移动系统、物联网设备中,数据的读写与上传,比传统的数据读写复杂很多,因此,常常导致移动设备卡顿、i/o读写超时等现象;读写数据的进程是一个实体,每一个进程都有它自己的地址空间,地址空间一般对应一个文件,一般情况下,包括文本区域、数据区域和堆栈。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令和本地变量。

在进程读写数据的时候,时常会遇上以下问题:1、进程系统时常会与线上的数据库或其他数据源断开连接,在断开连接的情况下,无法发送或接收数据,需要数据交换的协议无法正常工作。因此,数据交换的协议应该提供一个移动端的恢复机制使进程不会死锁。2、网络通信基站的连接区域的随时切换,区域切换可能会影响进程的数据读写过程;3、网络的不可靠连接:在一些信号盲区、弱信号区等客观原因导致网络不可靠,从而使移动设备端或物联网终端的进程死锁,从而导致程序出现卡顿、假死等现有的技术手段难以克服现象。



技术实现要素:

本公开提供一种移动系统的进程数据读写优化方法及系统,通过检查进程、恢复进程,三种进程的转换,扫描各个读写进程,当主socket接收各个读写进程的读写请求,根据读写请求读写服务器端的数据,并构建数据访问队列,根据读写请求发生的顺序依次将各个读写进程依次放入数据访问队列中,检查进程将未完成的读写请求写入一个进程记录队列中,当进程记录队列中的读写请求数量大于记录阈值时将检查进程转换为阻塞态,提供了一个恢复机制使终端设备的进程不会死锁。

本公开的目的是针对上述问题,提供一种移动系统的进程数据读写优化方法及系统,具体包括以下步骤:

创建多个读写进程并对每个读写进程进行标识,创建至少一个检查进程和一个恢复进程,每个读写进程分配一个单独的文件;

主socket接收各个读写进程的读写请求,根据读写请求读写服务器端的数据,并构建数据访问队列,根据读写请求发生的顺序依次将各个读写进程依次放入数据访问队列中;

每隔一个预定时间周期定时将检查进程从阻塞态唤醒为运行态,在内核开始检查是否有读写进程正在进行读写,如果没有读写则让检查进程进入阻塞态休眠;

当检查进程被唤醒为运行态,开始扫描各个读写进程,如果读写进程正在更新数据到文件中则什么也不做,因为读写请求已经终止,其对终端的影响已经消除,不需要进行操作,将检查进程转换为阻塞态;

如果检查进程扫描到有读写进程正在等待文件,则所述读写进程有一个未完成的读写请求,检查进程则撤销终端中的所述读写进程的所有操作后刷新进程;

检查进程访问数据访问队列,将数据访问队列中所述读写进程的读写请求撤销;

检查进程将未完成的读写请求写入一个进程记录队列中,当进程记录队列中的读写请求数量大于记录阈值时将检查进程转换为阻塞态;

当进程记录队列中的元素大于1时将恢复进程从阻塞态唤醒为运行态,恢复进程从进程记录队列的队尾开始按顺序重新向服务器端发起读写请求;

当进程记录队列中的元素为0时,在等待一个预定时间周期的时间后进程记录队列中的元素仍为0,则让恢复进程进入阻塞态进行休眠。

进一步地,读写进程、检查进程、恢复进程均为分为三个基本状态的进程,三个基本状态即运行态,就绪态,阻塞态;

进一步地,主socket为跨网络的消息传送的接口,读写进程通过主socket访问远程的服务器端。

进一步地,终端为移动设备、物联网终端,例如手机、平板电脑、工业pad,通过无线网络与远程的服务器端进行连接。

进一步地,数据访问队列为队列数据结构,是用于暂存读写请求的线性表。

进一步地,预定时间周期为500毫秒,可人工调整。

进一步地,进程记录队列为队列数据结构,是用于暂存读写请求的线性表。

进一步地,记录阈值默认为10,可人工设置。

本发明还提供了一种移动系统的进程数据读写优化系统,所述系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下系统的单元中:

进程创建单元,用于创建多个读写进程并对每个读写进程进行标识,创建至少一个检查进程和一个恢复进程,每个读写进程分配一个单独的文件;

读写请求队列单元,用于主socket接收各个读写进程的读写请求,根据读写请求读写服务器端的数据,并构建数据访问队列,根据读写请求发生的顺序依次将各个读写进程依次放入数据访问队列中;

定时检查唤醒单元,用于每隔一个预定时间周期定时将检查进程从阻塞态唤醒为运行态,在内核开始检查是否有读写进程正在进行读写,如果没有读写则让检查进程进入阻塞态休眠;

检查结束单元,用于当检查进程被唤醒为运行态,开始扫描各个读写进程,如果读写进程正在更新数据到文件中则什么也不做,将检查进程转换为阻塞态;

检查扫描单元,用于如果检查进程扫描到有读写进程正在等待文件,则所述读写进程有一个未完成的读写请求,检查进程则撤销终端中的所述读写进程的所有操作后刷新进程;

读写请求撤销单元,用于检查进程访问数据访问队列,将数据访问队列中所述读写进程的读写请求撤销;

进程记录单元,用于检查进程将未完成的读写请求写入一个进程记录队列中,当进程记录队列中的读写请求数量大于记录阈值时将检查进程转换为阻塞态;

恢复进程唤醒单元,用于当进程记录队列中的元素大于1时将恢复进程从阻塞态唤醒为运行态,恢复进程从进程记录队列的队尾开始按顺序重新向服务器端发起读写请求;

恢复进程休眠单元,用于当进程记录队列中的元素为0时,在等待一个预定时间周期的时间后进程记录队列中的元素仍为0,则让恢复进程进入阻塞态进行休眠。

本公开的有益效果为:本发明公开了一种移动系统的进程数据读写优化方法,可以在进程与线上的数据库或其他数据源断开连接的情况下,保证了终端设备的应用正常工作;提供了一个恢复机制使终端设备的进程不会死锁。在网络通信基站的区域切换中不会影响进程的数据读写过程;减少了终端设备程序出现的卡顿、假死现象。

附图说明

通过对结合附图所示出的实施方式进行详细说明,本公开的上述以及其他特征将更加明显,本公开附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:

图1所示为本公开的一种移动系统的进程数据读写优化方法的流程图;

图2所示为本公开实施方式的一种移动系统的进程数据读写优化系统。

具体实施方式

以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

如图1所示为根据本公开的一种移动系统的进程数据读写优化方法的流程图,下面结合图1来阐述根据本公开的实施方式的方法。

本公开提出一种移动系统的进程数据读写优化方法,具体包括以下步骤:

创建多个读写进程并对每个读写进程进行标识,创建至少一个检查进程和一个恢复进程,每个读写进程分配一个单独的文件;

主socket接收各个读写进程的读写请求,根据读写请求读写服务器端的数据,并构建数据访问队列,根据读写请求发生的顺序依次将各个读写进程依次放入数据访问队列中;

每隔一个预定时间周期定时将检查进程从阻塞态唤醒为运行态,在内核开始检查是否有读写进程正在进行读写,如果没有读写则让检查进程进入阻塞态休眠;

当检查进程被唤醒为运行态,开始扫描各个读写进程,如果读写进程正在更新数据到文件中则什么也不做,因为读写请求已经终止,其对终端的影响已经消除,不需要进行操作,将检查进程转换为阻塞态;

如果检查进程扫描到有读写进程正在等待文件,则所述读写进程有一个未完成的读写请求,检查进程则撤销终端中的所述读写进程的所有操作后刷新进程;

检查进程访问数据访问队列,将数据访问队列中所述读写进程的读写请求撤销;

检查进程将未完成的读写请求写入一个进程记录队列中,当进程记录队列中的读写请求数量大于记录阈值时将检查进程转换为阻塞态;

当进程记录队列中的元素大于1时将恢复进程从阻塞态唤醒为运行态,恢复进程从进程记录队列的队尾开始按顺序重新向服务器端发起读写请求;

当进程记录队列中的元素为0时,在等待一个预定时间周期的时间后进程记录队列中的元素仍为0,则让恢复进程进入阻塞态进行休眠。

进一步地,读写进程、检查进程、恢复进程均为分为三个基本状态的进程,三个基本状态即运行态,就绪态,阻塞态;

进一步地,主socket为跨网络的消息传送的接口,读写进程通过主socket访问远程的服务器端。

进一步地,终端为移动设备、物联网终端,例如手机、平板电脑、工业pad,通过无线网络与远程的服务器端进行连接。

进一步地,数据访问队列为队列数据结构,是用于暂存读写请求的线性表。

进一步地,预定时间周期为500毫秒,可人工调整。

进一步地,进程记录队列为队列数据结构,是用于暂存读写请求的线性表。

进一步地,记录阈值默认为10,可人工设置。

本公开的实施例提供的一种移动系统的进程数据读写优化系统,如图2所示为本公开的一种移动系统的进程数据读写优化系统结构图,该实施例的一种移动系统的进程数据读写优化系统包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种移动系统的进程数据读写优化系统实施例中的步骤。

所述系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下系统的单元中:

进程创建单元,用于创建多个读写进程并对每个读写进程进行标识,创建至少一个检查进程和一个恢复进程,每个读写进程分配一个单独的文件;

读写请求队列单元,用于主socket接收各个读写进程的读写请求,根据读写请求读写服务器端的数据,并构建数据访问队列,根据读写请求发生的顺序依次将各个读写进程依次放入数据访问队列中;

定时检查唤醒单元,用于每隔一个预定时间周期定时将检查进程从阻塞态唤醒为运行态,在内核开始检查是否有读写进程正在进行读写,如果没有读写则让检查进程进入阻塞态休眠;

检查结束单元,用于当检查进程被唤醒为运行态,开始扫描各个读写进程,如果读写进程正在更新数据到文件中则什么也不做,将检查进程转换为阻塞态;

检查扫描单元,用于如果检查进程扫描到有读写进程正在等待文件,则所述读写进程有一个未完成的读写请求,检查进程则撤销终端中的所述读写进程的所有操作后刷新进程;

读写请求撤销单元,用于检查进程访问数据访问队列,将数据访问队列中所述读写进程的读写请求撤销;

进程记录单元,用于检查进程将未完成的读写请求写入一个进程记录队列中,当进程记录队列中的读写请求数量大于记录阈值时将检查进程转换为阻塞态;

恢复进程唤醒单元,用于当进程记录队列中的元素大于1时将恢复进程从阻塞态唤醒为运行态,恢复进程从进程记录队列的队尾开始按顺序重新向服务器端发起读写请求;

恢复进程休眠单元,用于当进程记录队列中的元素为0时,在等待一个预定时间周期的时间后进程记录队列中的元素仍为0,则让恢复进程进入阻塞态进行休眠。

所述一种移动系统的进程数据读写优化系统可以运行于桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备中。所述一种移动系统的进程数据读写优化系统可运行的系统可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种移动系统的进程数据读写优化系统的示例,并不构成对一种移动系统的进程数据读写优化系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种移动系统的进程数据读写优化系统还可以包括输入输出设备、网络接入设备、总线等。所称处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种移动系统的进程数据读写优化系统运行系统的控制中心,利用各种接口和线路连接整个一种移动系统的进程数据读写优化系统可运行系统的各个部分。

所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种移动系统的进程数据读写优化系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

尽管本公开的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本公开的预定范围。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1