Real-time software upgrade
Abstract
The various technologies presented herein relate to upgrading industrial control software in real-time. During utilization of a first software to control an industrial process, a determination can be made that the first software needs to be replaced (e.g., partially or entirely) owing to a newer version of software is ready to be deployed, a vulnerability in the first software has been determined, etc. Rather than closing the industrial process down while the first software is replaced, a second software can be deployed such that the first software and the second software are operating in parallel (e.g., receiving the same operational data, process states). When a critical point (upgrade location) in the first software has been reached, control of the industrial process can be switched to the second software, thereby enabling control of the industrial process to occur without having to temporarily cease operation and/or monitoring of the industrial process.
- Inventors:
- Issue Date:
- Research Org.:
- Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1464604
- Patent Number(s):
- 10037203
- Application Number:
- 15/221,843
- Assignee:
- National Technology & Engineering Solutions of Sandia, LLC (Albuquerque, NM)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- DOE Contract Number:
- AC04-94AL85000
- Resource Type:
- Patent
- Resource Relation:
- Patent File Date: 2016 Jul 28
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING
Citation Formats
Chavez, Adrian R., Phan, Kandy, Hosic, Jasenko, Birmingham, Ryan Michael, and Patel, Jaykumar D. Real-time software upgrade. United States: N. p., 2018.
Web.
Chavez, Adrian R., Phan, Kandy, Hosic, Jasenko, Birmingham, Ryan Michael, & Patel, Jaykumar D. Real-time software upgrade. United States.
Chavez, Adrian R., Phan, Kandy, Hosic, Jasenko, Birmingham, Ryan Michael, and Patel, Jaykumar D. Tue .
"Real-time software upgrade". United States. https://www.osti.gov/servlets/purl/1464604.
@article{osti_1464604,
title = {Real-time software upgrade},
author = {Chavez, Adrian R. and Phan, Kandy and Hosic, Jasenko and Birmingham, Ryan Michael and Patel, Jaykumar D.},
abstractNote = {The various technologies presented herein relate to upgrading industrial control software in real-time. During utilization of a first software to control an industrial process, a determination can be made that the first software needs to be replaced (e.g., partially or entirely) owing to a newer version of software is ready to be deployed, a vulnerability in the first software has been determined, etc. Rather than closing the industrial process down while the first software is replaced, a second software can be deployed such that the first software and the second software are operating in parallel (e.g., receiving the same operational data, process states). When a critical point (upgrade location) in the first software has been reached, control of the industrial process can be switched to the second software, thereby enabling control of the industrial process to occur without having to temporarily cease operation and/or monitoring of the industrial process.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2018},
month = {7}
}
Works referenced in this record:
Kitsune: efficient, general-purpose dynamic software updating for C
conference, January 2012
- Hayden, Christopher M.; Smith, Edward K.; Denchev, Michail
- Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Dynamic Code Update
patent-application, June 2009
- Russell, George; Richards, Andrew
- US Patent Document 12/333189; 20090150872
Thread suspension system and method using trapping instructions in delay slots
patent, October 2001
- Bush, William; Wolczko, Mario
- US Patent Document 6,308,319
Update Management Apparatus and Update Management Method
patent-application, August 2012
- Arakawa, Hiroshi
- US Patent Document 13/441270; 20120198432
Non-disruptive method, system and program product for overlaying a first software module with a second software module
patent-application, September 2005
- Needham, Thomas D.
- US Patent Document 10/811707; 20050216904
DYMOS: a dynamic modification system
conference, January 1983
- Cook, Robert P.; Lee, Insup
- Proceedings of the symposium on High-level debugging - SIGSOFT '83
State copying method for software update
patent, October 2002
- Gard, Bengt Erik Ingemar; Kling, Lars-Orjan; Johnsson, Sten Edvard
- US Patent Document 6,463,584
Method and system for minimizing disruption during in-service software upgrade
patent, January 2013
- Hanselmann, Peter J.
- US Patent Document 8,364,843
Intelligent system health indicator
patent-application, August 2006
- Dang, Anh Tuan; Hua, Binh; Hua, Hong Lam
- US Patent Document 11/060608; 20060184714
Dynamic software update
patent, July 2007
- Jhanwar, Raj; Yaryan, Tom; Hennessey, David
- US Patent Document 7,251,812
Control software updating technique for a network apparatus
patent-application, March 2007
- Sakuda, Kenji; Oshima, Yasuhiro
- US Patent Document 11/514616; 20070055970
Software Replacement in a Stream Processing System
patent-application, October 2008
- Waitzmann, Carsten; Winkler, Andreas
- US Patent Document 11/838655; 20080256528
Systems and Methods for Performing Uninterrupted Network Upgrades with Controllers
patent-application, January 2016
- Stolarchuk, Michael; Roth, Carl D.; Shankar, Alok
- US Patent Document 14/337193; 20160019044
State transfer for clear and efficient runtime updates
conference, April 2011
- Hayden, Christopher M.; Smith, Edward K.; Hicks, Michael
- 2011 IEEE 27th International Conference on Data Engineering Workshops
Insertion of multithreaded execution synchronization points in a software program
patent, February 2013
- Beylin, Boris; Glanville, Robert Steven
- US Patent Document 8,381,203
Method and Device for Updating a Computer Application
patent-application, June 2011
- Molinie, Alain; Lavigne, Eric; Leclaire, Vincent
- US Patent Document 12/995746; 20110145807
Dynamic software updates for real-time systems
conference, January 2009
- Wahler, Michael; Richter, Stefan; Oriol, Manuel
- Proceedings of the 2nd International Workshop on Hot Topics in Software Upgrades
Efficient Per-Thread Safepoints and Local Access
patent-application, July 2010
- Titzer, Benjamin L.; Mathiske, Bernd J. W.; Manivannan, Karthikeyan
- US Patent Document 12/359114; 20100192139
Path Specializations for Runtime Code with Phase Behavior
patent-application, June 2009
- Steensgaard, Bjarne; Petrank, Erez; Pizlo, Filip
- US Patent Document 11/947031; 20090144712
System Including Software and Non-Stop Upgrading Method of Running Software
patent-application, April 2017
- Hong, Seung Woo; Yoon, Ho Sun; Ryu, Ho Yong
- US Patent Document 15/163875; 20170109156
Contextual effects for version-consistent dynamic software updating and safe concurrent programming
conference, January 2008
- Neamtiu, Iulian; Hicks, Michael; Foster, Jeffrey S.
- Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p. 37-49
Dynamic Software Updates
patent-application, October 2013
- Mannarswamy, Sandya Srivilliputtur; Saraswati, Sujoy
- US Patent Document 13/453238; 20130283252
Synchronized Firmware Update
patent-application, May 2012
- Heinrich, David; Emerson, Theodore F.
- US Patent Document 12/913486; 20120110562
Non-Disruptive Software Updates for Servers Processing Network Traffic
patent-application, February 2014
- Banavalikar, Bhalachandra G.; Bhagavathiperumal, Chidambaram; Kamble, Keshav Govind
- US Patent Document 14/072075; 20140059530