基于不中断通信下的软件更新方法研究

来源 :企业技术开发·下半月 | 被引量 : 0次 | 上传用户:himayu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:软件更新几乎所有的应用都会使用到,可是大多数软件更新的时候,可能无法使用当前的应用,尤其是一些监控领域,可能即需要软件更新,也不能中断监控信息,否则可能会失去一些重要的监控数据,所以文章提出一种方法,实现即不中断通信传输,又可以实现软件的安全更新。
  关键词:软件更新;不中断通信
  中图分类号:TN965.8文献标识码:A文章编号:1006-8937(2011)08-0100-01
  
   软件更新是软件不断完善的重要步骤,在传统软件更新过程,可能无法使用当前系统的全部的功能,即使可以使用全部功能,但涉及到通信的模块,也可能会中断;但有些特殊领域,往往不可以中断通信,一旦中断通信,可能会无法及时与其它主机或者服务器进行通信,可能会造成资产等重要信息丢失,针对这一问题,文章研究一种方法可以实现软件的安全更新,也可以保证通信不中断,保证数据的安全可靠。
  1普通更新方法
  普通的程序方法,一般采用服务器对客户端发送更新指令,然后客户端会接收指令,然后启动新的线程,进行文件传输,当文件传输结束后,客户机选择提示用户是否进行程序更新,如果更新则会退出主程序,然后运行更新后的程序,此时假设客户机还会与另一服务器发送一些实时信息,当原始进程中断的时候,通信就会关闭,则更新的这段时间的信息将无法全部发送给指定的服务器。具体过程参见图1。
  2不中断通信下更新方法
  针对普通更新方法中存在中断通信的问题,提出文章的更新软件思想,就是在普通的更新基础上,当更新包接收完成后,可以想办法将主进程所有正在通信的套接字转移给新的版本进程,这样就可以让新的进程来接管原始通信,也就能保证通信不中断,参见图2,具体的过程如下:①服务端下发更新指令。②客户端启动新的线程去连接服务端特定的端口。③服务端发送更新包。④客户端接收更新包,但更新包接收完毕后,启动新版本的程序,并监听某一端口,等待传递通信套接字。⑤新版本程序启动后,即可请求老版本的进程传递通信套接字,接收完毕后可以通知老版本进程不要再通信了,然后接管与服务端的通信,通信正常接收后可以kill原始进程。
  在Linux系统下可以通过sendmsg与recvmsg两个函数实现不同进程之间传递套接字,Windows系统下可以通过WSADuplicateSocket函数实现此功能。因为如果直接使用共享内存或者消息队列等进程间通信的方式来将套接字传递给对方,这样是行不通的,因为套接字在一个进程内的值,与在系统内实际的值是不一样的,在应用与系统之间存在一个转换,但是使用上述两个函数,就可以保证传输后是可以直接与系统内核对应的值。
  3结语
  通过文章所述方法,可以在不中断通信的基础上实现程序的更新,这种方式可保证程序的易用性,也能保证信息的可靠性。但是在本方法的基础上,还需要在程序中对于何时移交套接字,以及何時让原始进程停止读套接字内的流,做一些处理。
  
  参考文献:
  
  [1] CSDN.如何在多进程里共享socket[DBOL].http://topic.csdn. net,2003-01-18.
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文
其他文献
屋架在正常使用状态,主要是轴心受力,但在施工阶段,屋架翻身扶直时,屋架上弦受弯必须对吊点进行强度校核。规范和施工手册中主要介绍予应力钢筋混凝土屋架的吊点强度校核,下面根据
设η是任意给定的实数,λ1,λ2,λ3,λ4是非零实数不全同号,并且λ1/λ2是无理数,素变量Pj满足不等式|λ1p1+λ2p22 +λ3p32 +λ4p43 +η|≤(max pj) -σ在有无穷多组素数解
【正】各市、县(区)人民政府,自治区政府各部门、直属机构:自治区公安厅《关于加强多种形式消防队伍建设发展的指导意见》已经自治区人民政府同意,现转发给你们,请认真贯彻执
一元训练理论是融合技术和体能两个因素进行的综合训练理论,通过对人体身体机能的规律研究以及运动技能的改进,研发先进的训练手段和方法.对教学实践中一元训练理论的应用方
【正】宁政办发[2007]238号2007年11月23日各市、县(区)人民政府,自治区政府各部门、直属机构:自治区编办、人事厅、财政厅、农牧厅、公安厅拟定的《全区三轮汽车、低速载货
近几年来全国小型公共娱乐场所发生了数起群死群伤的重、特大火灾,文章通过火灾案例分析社会市场经济发展下的小型公共娱乐场所消防安全现状,解决消防监督管理上盲点和难点,提出
采用新方法证明一道IMO几何题.在此基础上通过连续地一般化、特殊化反思,得到了两个定理和4个推论,并把此方法引申运用于蝴蝶定理及其推广.
设计了一种基于Android的智慧校园平台.该平台的开发分为两个部分:客户端基于Android,使用Android Studio开发,利用Genymotion运行测试;后台服务器端使用PHPStorm开发,利用Ap
【正】自治区政府各部门、直属机构、直属事业单位:经自治区人民政府第一次常务会议研究,同意《自治区政府直属机关单位效能目标管理考核试行办法》,现予以印发,请遵照执行。
摘要:倒闸操作是电力系统保证安全、经济供配电的一项极为重要的工作,箕操作技术的科学与否决定了电力系统囊行的正常与否。文章将对电气倒闸操作技术进行探讨。  关键词:电气倒闸;操作条件;操作技术  中图分类号:TM732 文献标识码:A 文章编号;1006-8937(2011)02-0110-01    一般来说可以把变配电所的电气设备分为四种情况,即运行、热备用、冷备用和检修。而使一种状态转换到另一