Movatterモバイル変換


[0]ホーム

URL:


US5155837A - Methods and apparatus for software retrofitting - Google Patents

Methods and apparatus for software retrofitting
Download PDF

Info

Publication number
US5155837A
US5155837AUS07/317,919US31791989AUS5155837AUS 5155837 AUS5155837 AUS 5155837AUS 31791989 AUS31791989 AUS 31791989AUS 5155837 AUS5155837 AUS 5155837A
Authority
US
United States
Prior art keywords
software
old
new
partition
retrofitting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US07/317,919
Inventor
Cheng-Chung Liu
Daniel S. Lo
Zaher A. Nazif
Fu-Lin Wu
Donald W. Zobre
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intellectual Ventures II LLC
Original Assignee
Bell Communications Research Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bell Communications Research IncfiledCriticalBell Communications Research Inc
Priority to US07/317,919priorityCriticalpatent/US5155837A/en
Assigned to BELL COMMUNICATIONS RESEARCH, INC.reassignmentBELL COMMUNICATIONS RESEARCH, INC.ASSIGNMENT OF ASSIGNORS INTEREST.Assignors: LO, DANIEL SHIH-CHIA, WU, FU-LIN, LIU, CHENG-CHUNG, NAZIF, ZAHER A., ZOBRE, DONALD W.
Priority to CA000609070Aprioritypatent/CA1326302C/en
Application grantedgrantedCritical
Publication of US5155837ApublicationCriticalpatent/US5155837A/en
Assigned to TELCORDIA TECHNOLOGIES, INC.reassignmentTELCORDIA TECHNOLOGIES, INC.CHANGE OF NAME (SEE DOCUMENT FOR DETAILS).Assignors: BELL COMMUNICATIONS RESEARCH, INC.
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENTreassignmentJPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENTSECURITY AGREEMENTAssignors: TELCORDIA TECHNOLOGIES, INC.
Assigned to TELCORDIA TECHNOLOGIES, INC.reassignmentTELCORDIA TECHNOLOGIES, INC.TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTSAssignors: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Assigned to WILMINGTON TRUST COMPANY, AS COLLATERAL AGENTreassignmentWILMINGTON TRUST COMPANY, AS COLLATERAL AGENTSECURITY AGREEMENTAssignors: TELCORDIA TECHNOLOGIES, INC.
Assigned to TELCORDIA TECHNOLOGIES, INC.reassignmentTELCORDIA TECHNOLOGIES, INC.RELEASE OF SECURITY INTERESTAssignors: WILMINGTON TRUST COMPANY
Assigned to TELCORDIA LICENSING COMPANY LLCreassignmentTELCORDIA LICENSING COMPANY LLCASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: TELCORDIA TECHNOLOGIES, INC.
Anticipated expirationlegal-statusCritical
Assigned to TELCORDIA TECHNOLOGIES, INC.reassignmentTELCORDIA TECHNOLOGIES, INC.RELEASEAssignors: WILMINGTON TRUST COMPANY, AS COLLATERAL AGENT
Assigned to TTI INVENTIONS B LLCreassignmentTTI INVENTIONS B LLCASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: TELCORDIA LICENSING COMPANY, LLC
Expired - Lifetimelegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

A time-shared computer system is disclosed in which computer software programs, either application programs or operating system programs, can be retrofitted with new programs which are totally incompatible with the old versions, all without interrupting service provided by the software programs. In a real time software system such as one providing telephone service, the processor (or processors in a multiprocessor system) is divided into two logical partitions. The old version of the software runs in one partition while the new version is loaded into and started up in the other partition. When the new version is verified to be properly operating, the data traffic is transferred from the old version parition to the new version partition in two steps. First the input data is switched to the new verison. When the transactions in progress in the old version are all completed, the output data is switched from the old version to the new version.
This software retrofitting on the fly is disclosed in connection with a telephone transaction processing system used to support special telephone services such as dial 800 calls and credit card calls.

Description

TECHNICAL FIELD
This invention relates to computer software and, more particularly, to the replacement of defective or outdated software without removing the computer from active service.
BACKGROUND OF THE INVENTION
Currently, many computer-controlled systems must be available on substantially a full-time basis. Transaction processing systems, for example, sometimes must be accessible at any time of the day or night in order to permit ongoing activities. Telephone switching, and the supporting data processing transaction services, for example, must be available at all times. The supporting transaction processing system that permits "800 Calling" service and credit card calling is one such service. In the process of dialing 800 calls, for example, the telephone system must access a data base containing the appropriate translation of the 800 number into a standard telephone number for controlling the switching path. This is accomplished by routing the call to a special switching office called a Service Switching Point (SSP). The SSP switch launches a message requesting the necessary translation to an appropriate Switching Control Point (SCP) processor over a Common Channel Signaling (CCS) network made up of a plurality of redundant Signalling Transfer Points (STPs). The STPs, using addressing information in the header of the packet, ensure that the launched message packet is routed to the SCP having the required translation. The SCP, in turn, looks up the required information, encapsules it in a message packet and launches the message on the CCS back to the requesting SSP. The SSP then uses this information to select an appropriate inter-exchange carrier, if necessary, to deliver the telephone number to the carrier for completion of the call, or to complete the call in the local area.
In systems such as that described above, the software in the SCP must be of extremely high reliability and must be available essentially continuously. A serious problem therefore arises when it is necessary to update or change the software in an SCP. Removing the SCP from service for this purpose is not always possible, particularly if no suitable substitute is available. The present invention is directed at systems and methods for replacing or updating system software without removing the corresponding computer from service.
Every software application package is made up of a plurality of programmed processes designed to work together to produce the desired results. The operating system itself is likewise made up of a plurality of different processes working together. In order to ensure that the various programmed processes in a computer installation work together harmoniously, the interfaces between such processes are carefully crafted so that data passing between the processes is properly formated by the sending process so as to be properly received by the receiving process. If the inter-process protocols are not changed by the updating of one or more processes, then each process can be changed in situ, without regard for the other processes. One such a process replacement technique is disclosed in the copending application of B. A. Redman, Ser. No. 238,485, filed Aug. 31, 1988, now Pat. No. 4,954,941 and assigned to applicants' assignee.
On the other hand, when the software updating involves a plurality of processes and involves changes in the inter-process protocols, it is then necessary to ensure that all of the processes are changed simultaneously, or at least as a group, since none of the old processes will operate properly with any of the new processes. This problem is particularly difficult in real time data processing systems such as the telephone transaction processing system described above, where the software cannot be taken out of service for any significant length of time. It is toward software systems of this type that the present invention is directed.
In some systems of this type, it has become necessary to provide an entire second spare system to back up the main system. The new software is then installed on the back-up system, tested, and put on line by switching between systems. One such system is described in "Life Cycle Support and Update of No. 4 ESS Software," by E. A. Davis and R. J Healey, 1982 IEEE Document No. 0536-1486/82/0000-0216, page 5G5.1, 1982. It is extremely expensive, however, to provide and entire duplicate system, particularly simply to permit software retrofitting. More often, a single system, whether using one processor or many, must be updated without the luxury of a physical duplicate being available. It is toward this kind of environment that the present invention is directed.
SUMMARY OF THE INVENTION
In accordance with the illustrative embodiment of the present invention, entire application programs, or entire operating system programs, can be replaced with updated versions without substantially interrupting the service provided by the central processor or processors using the application programs or the operating system programs. More particularly, a central processing unit or units is split into two logical partitions, where a logical partition is a time-shared operating environment completely separate from and unconnected to the other logical partition. This can be accomplished simply by limiting access to only one or the other logical partition by incoming data signals. The old software is allowed to continue to execute in the first logical partition as if it were the entire processor. The software will, of course, run more slowly on the logical partition than on the entire processor, and hence service will be degraded somewhat. Meanwhile, the new software is loaded into the second logical partition and booted, all in the time-sharing mode so that operation of the first logical partition continues. Once the new software is started in the second logical partition, it is tested to see if it is operating correctly. If not, the process is rolled back, removing the second logical partition and allowing the first logical partition to assume control over the entire processor. If the new software is operating properly, the data input is switched from the first logical partition to the second logical partition, allowing the first logical partition to continue processing of the data in progress. The second logical partition begins processing new input data with the new programs while the first logical partition completes processing of the data in process using the old programs. When in process processing is completed on the first logical partition, the outgoing traffic is no longer taken from the first logical partition, but is now taken from the second partition. At this point, the first logical partition can be removed, allowing the second logical partition to assume control over the entire processor.
It can be seen that the system of the present invention, which may be called a software retrofitting system, allows entire software systems, whether application programs or operating system programs, to be replaced with updated versions without interrupting the operation of the data processing tasks. Moreover, the new and the old software systems need not be compatible in any sense other than that they run on the same hardware. That is, interprocess communications, either by direct transferral of messages or by leaving messages in common storage areas, need not be compatible in organization, timing or protocol, since the two versions run simultaneously and independently in the two logical partitions. Finally, the only penalty paid for such software updating on the fly is a slight deterioration in the speed of processing during the retrofitting period. Since the retrofitting can be entirely automated, such a period can be made extremely short.
BRIEF DESCRIPTION OF THE DRAWINGS
A complete understanding of the present invention may be gained by considering the following detailed description in conjunction with the accompanying drawing, in which:
FIG. 1 is a general block diagram of a telephone transaction system such as is necessary to support special services such as "800" calls, and in which the present invention might find use;
FIG. 2 is a general block diagram of the hardware architecture of the Service Control Point computer system of FIG. 1 in which the software retrofitting system of the present invention might find use;
FIG. 3 is a general block diagram of the software architecture of the Service Control Point computer system show in FIG. 1; and
FIG. 4 is graphical flowchart of the retrofit method of the present invention.
To facilitate reader understanding, identical reference numerals are used to designate elements common to the figures.
DETAILED DESCRIPTION
Before proceeding to a detailed description of the present invention, a brief general description of a transaction processing system will be provided as an indication of a particular system in which the teachings of the present invention will find use. This specific system is chosen to more clearly illustrate the manner of using the present invention and should not be taken as limiting in any way. Those skilled in the art will readily appreciate how the teachings of the present invention can be applied to other high reliability, real-time computer processing systems to provide on-line software updating.
Referring then to FIG. 1, there is shown a block diagram of the architecture of the telephone signaling network which uses transaction processing to support special kinds of telephone service such as 800 number calls and calling card services. In these systems, it is necessary for a local telephone switching office to respond to dialed digits by providing the appropriate special service. The actual service provided, however, is determined by the contents of one or more large remote data bases in which the particulars of the special service are described. In 800 calling service, for example, a remote data base would include the translation from the 800 number to an appropriate long distance direct dialed telephone number. As is known, such translations are usually not one-for-one, but involve such variables as the geographic location of the caller, the time of day, and so forth. Furthermore, the particular remote data base to be accessed is determined by the called party's location, since the 800 service is subscribed to by the called party.
Returning to FIG. 1, a caller attelephone 10 or 12 is connected to a telephone Local Switching Office (LSO) such asoffice 11 oroffice 13. As a result of the sequence of digits dialed fromtelephone 11 or 13, it is determined that a special service, e.g., 800 calling, is being requested. In that case, the call (the dialed digits) are forwarded to a Service Switching Point (SSP) office such asoffice 14.Office 14 has access to various long distance carriers (carrier A and carrier B) as well as to a packetmessage transmission network 21. Switchingoffice 14 may simultaneously supply local telephone switching service to telephones connected to office 14 (not shown), similar totelephones 11 and 13 connected tooffices 11 and 13 in FIG. 1.Network 21, called a Common Channel Signaling (CCS) network, is made up of a large plurality ofpacket switching nodes 15 through 18, called Signaling Transfer Points (STPs), through which data packets are routed by means of addresses in the headers of the packets. As suggested in FIG. 1, STPs 15-18 are multiply interconnected to provide multiple-path interconnections between any two points on the network. This multiple path access is provided to increase the reliability of connections through theCCS network 21. For the same reason, each access point to network 21 takes place with at least two STPs. Thus,SSP 14 has access to bothSTP 15 andSTP 16 while Service Control Point (SCP) 19 has access to bothSTP 17 andSTP 18. This high level of redundancy in theCCS network 21 ensures that a connection will be possible between any two access points regardless of failures in the data links or in the STP switching nodes. Such high reliability is an essential attribute of systems providing telephone service such as described here. TheCCS network 21 is shown as including only four switching nodes and two access points for simplicity of the disclosure. In a real system, a very large number of such switching nodes, arranged hierarchically, connect a very large number of access points in a network of national or international scope.
The data to be accessed in order to support the special telephone services is stored in a plurality of large data bases such asdata base 20 in FIG. 1. In order to support such services, e.g., 800 calling service, a Call Management Services (CMS)data base 20 is provided, connected to theCCS network 21 through a Service Control Point (SCP)computer system 19. The function ofSCP 19 is to receive database query packets fromnetwork 21, formulate them into requests for data fromdatabase 20, forward such requests todatabase 20, receive the responses, and formulate the responses into messages to be launched onnetwork 21, addressed to the same Service Switching Office (SSO) from which the query originated. Moreover, it is to be understood that hundreds of thousands or millions of such data base access transactions must be handled every day, day in and day out, for twenty-four hours every day. As noted above, the entire system must be highly reliable in order to ensure availability of such special services whenever called for. The fault tolerant archetecture of such systems is disclosed and claimed in the copending application of J. O. Boese et al., Ser. No. 125,463, filed Nov. 25, 1987, and assigned to applicants' assignee.
Referring to FIG. 2, there is shown a general block diagram of the SwitchingControl Point 19 of FIG. 1. The Signaling Transfer Points 17 and 18 are also shown in FIG. 2.STPs 17 and 18 are connected to each other by a plurality ofdata links 46 to allowSCPs 17 and 18 to exchange data should a failure occur in either one of them. Similarly, each ofSTPs 17 and 18 has a plurality of incoming data links connecting to the other STPs shown in FIG. 1. The ServiceControl Point computer 19 is actually composed of a plurality offront end computers 32, 33, . . . , 34 and a plurality of correspondingback end computers 35, 36, . . . , 37.STP 17 is connected, viadata links 47, to each of front end computers 32-34 whileSTP 18 is also connected, viadata links 48, to each of front end computers 32-34. These multiple cross-connections provide the redundant connectivity necessary to maintain service in the face of data link failures.
As is well-known in the art, theService Control Point 19 is a multiprocessor computer in which the processors are divided into front end, communications, processors and back end, application processors. Indeed, each of front end processors 32-34 is connected to a respective one of back end processors 35-37 to form processing pairs. All of the back end processors 35-37 are connected to astar coupler 38 by means of which they communicate with adisk storage subsystem 42.Disk storage subsystem 42 comprises a pair ofdisk controllers 39 and 40 and a plurality of dual port disk storage drives similar to disk store 41. The twodisk controllers 39 and 40 allow each of back end processors 35-37 to communicate with any of the disk storage units. Moreover, should any disk controller fail, access can be had to all of the disk stores by way of the other disk controller and the dual port on the disk drive. Thus the multiple redundancy is carried out in the disk storage system as well as the processors. Thedisk storage subsystem 42, of course, contains the data base which must be accessed in response to a received message in order to acquire the data necessary to respond to the received message.
All of the front end processors 32-34 and all of the back end processors 35-37 are connected to a systemsupport interface processor 43, a maintenance anddiagnostic subsystem 44 and amonitoring terminal 45. Usingterminal 45, theSCP 19 can be reconfigured to leave out any processor or any disk storage unit in order to perform routine maintenance, to isolate a failed unit, or to expand the number of units in the SCP because of increases in traffic. The maintenance anddiagnostic subsystem 44 monitors all of the other units to detect failures and hence includes all of the testing software as well as the reconfiguration software. Using the terminal 45, service personnel are able to access thesupport system processor 43 to supervise the configuration and operation ofSCP 19. All of the elements of FIG. 2 are described in further detail in the aforementioned patent application of J. O. Boese et al. and will not be further described here.
In FIG. 3 there is shown a block diagram of the software systems residing in each pair of front end and back end processors in FIG. 2. The dashed line near the center of FIG. 3 separates the software processes in the front end processor (above the dashed line) from the software processes in the back end processor (below the dashed line). As previously noted, the front end processor is used for communications handling processes while the back end processor is used for application and system operation processes. The front end processor and the back end processor communicate with each other across the dashed line by means of messages passes back and forth over the connecting data link.
As shown in FIG. 3, the front end processor includes software processes includingcommunications handlers 50 and 51, connected as shown in FIG. 2 to the Signaling Transfer Points 17 and 18.Communications handlers 50 and 51 are each able to receive data packet messages from the connected STP, strip off the header information and check the message for errors using well known cyclic redundance checks. For messages traveling in the outbound direction,communications handlers 50 and 50 create the message packets by assembling a data message, a header and redundant error checking information, and launch the packets onto the CCS network 21 (FIG. 1). In response to information received fromCCS network 21,handlers 50 and 51 also effectively disconnect failed data links and failed STPs by routing all traffic by alternate routes.Handlers 50 and 51 are connected to commontransfer function process 52 which sequences the messages to and from the message handlers 50-51 to allow the balance of the system to handle messages one-at-a-time. Messagedistribution protocol process 54 interfaces between the messages formats received fromhandlers 50 and 51 and the message formats necessary to communicate with the back end processor. An operationsmanagement protocol process 55 exchanges messages with the back end processor for the purpose of coordinating the operation of the two processors. System parameters, operational links, in-service subsystems and so forth are identified in the local processor and transmitted to the other processor via operationsmanagement protocol process 55.
The states of all of the hardware components and all of the software components of the front end processor are monitored by frontend state manager 56. Messages supplying this information are formulated instate manager 56 and exchanged with the back end processor, where the actual state management takes place.
In the back end processor, the transaction handling application processes 58 accept the data query messages from theCCS network 21, access the local data base (database 20 in FIG. 1) to obtain the desired information, and pass the retrieved information back to the front end processor for launching on theCCS network 21. This is the major activity going on in the SCP and takes up the great majority of the resources. The other activities depicted in FIG. 3 are support activities which assist in ensuring the availability and the proper operation of the application processes 58.
Theoperations message handler 57 exchanges operations management messages withprocess 55 to integrate the operation of the front endback end pair, as well as interact with the other front end and back end processors in the SCP. Thestate message handler 59 exchanges status messages withprocess 56 to maintain a continuous second-by-second indication of the status of all of the hardware and software units of the front end-back end pair. Theexecution manager process 63 uses this status information to maintain a current up-to-date record of the system availability information inresource table store 64. The messages received byhandlers 57 and 59 are logged in byevent logger process 60.System integrity module 61 uses the information available in these messages to test for proper system integrity. If component failures occur,failure handler 62 provides the appropriate algorithms to deal with the failure.Execution manager 63, using the information inresource table store 64, determines the proper reconfiguration necessary to continue processing, and uses theoperations message handler 57 to carry out the reconfiguration in the front end processor.
The highly reliable distributed data processing system described in connection with FIGS. 1-3 is merely illustrative of the type of system in which the software retrofitting scheme of the present invention will find use. Since further details of the telephone service data query system of FIGS. 1-3 will not add to the understanding of the present invention, and since such details are readily available in the aforementioned copending application of J. W. Boese et al., further discussion of the system will not be undertaken. It is sufficient to note that certain data processing systems must be available essentially continuously, and hence cannot be taken out of service for software upgrading. Telephone service providing software is just one example of this type of system. Others might include airline reservation systems, medical facility life support monitoring systems and spacecraft navigation systems. Other such systems will be readily apparent to those of ordinary skill in this art.
In FIG. 4 there is disclosed a flowchart of a software retrofitting system in accordance with the present invention. Starting atstart terminal 70,box 71 is entered where the current environment is saved. By this is meant that the contents and status of all registers, processes and storage units are "saved" in a special memory location. The object of such an environment save is to allow the restoration of the exact status quo at a later time in case some failure occurs in the software retrofitting procedure. Thus the "environment" encompasses all of the information about the state of the system which will be necessary to restore the system to exactly the same state it was in when the environment was saved.
Inbox 72, the processors, such as front end processors 32-34 and back end processors 35-37 in FIG. 2, are partitioned into two logical partitions. That is, the storage space available to each processor, and the processor execution time of each processor, are divided into exactly two portions called "logical partitions." Each logical partition includes processes which are allowed to execute alternatively and each logical partition is allowed to access only the storage space assigned to that partition. A logical partition can include all of the software used in the processor, or only a portion of the software in the processor. In a time-shared processor using memory paging techniques, such logical partitioning is straightforward. The penalty paid for such logical partitioning is, of course, the slow-down in the execution of tasks by the processes in the different partitions. In highly redundant systems such as that illustrated in FIGS. 1-3, such slow-downs can be accommodated by other parallel processors. Otherwise, the penalty is a degradation in the service provided for the duration of the partition. The old software is allowed to reside in the first partition.
Inbox 73, all input data, queries in the system of FIGS. 1-3, are routed to the partion containing the old software. Inbox 74, the new software is installed into the second partition. This software was, of course, previously made available in memory, such asdisk system 42 of FIG. 2, which is accessible by the new software partition. Inbox 75, the new software is booted into operation in the new software partition. Indecision box 76, the new software is tested to see if it is operating properly. This test may be as extensive as desired, always recalling that the testing period adds to whatever service degradation period is engendered by the partitioning. If the new software fails the tests ofdecision box 76,box 77 is entered and the processors are restored to the old environment saved inbox 71. It will be noted that the environment which is restored precedes the partitioning of the processors and hence removes all evidence of the attempt to upgrade the software. After the restoration inbox 77,termination box 82 is entered to terminate the procedure of FIG. 4.
If the tests indecision box 76 indicate that the new software is working properly in its partition, thenbox 78 is entered in which the input is switched to the new software partition. The new software therefore begins operating on the new input data in accordance with the new programs, presumably incorporating improved and enchanced operations, and eliminating inefficiencies, deficiencies and "bugs" in the old software. Inbox 79, the retrofitting system of FIG. 4 waits until all of the data in the old software partition is fully processed. In the system of FIGS. 1-3, all of the queries sent to the old software partition will have been processed, the appropriate data retrieved fromstore 20 and the response launched onnetwork 21. In addition, all local housekeeping tasks such as status updates (block 56, FIG. 3) connected with the retrieval, event logs (block 60, FIG. 3), and so forth, will likewise have been completed. Once the old software partition has completed all of the processing that can be done on the input data supplied to it before the switch inbox 78,box 80 is entered to switch the output receiving systems from the old software partition to the new software partion. In the system of FIGS. 1-3, the input to thestar coupler 38 is taken from from the new software partition, as are the inputs to theancillary systems 43, 44 and 45. At this point, all of the input is being routed to the new software partition, processed with the upgraded software, and delivered from the new software partition to the appropriate output systems. The old software partition is now idle since all of the in-progress work has been flushed out of the old software partition. Therefore, inbox 81, the old software partition is taken down and removed. The new software partition therefore takes over the control of the entire processor time and the entire available memory, thus returning the system to non-degraded service status. The retrofitting procedure of FIG. 4 can then be terminated inbox 82.
It is readily apparent that the procedure of FIG. 4 can be most easily be implemented in a software process resident in the operating systems of all of the processors on which such partitioning must be done. Prior to the initiation of the retrofit, the new versions of the programs are loaded into local memory (such asdisk store 42 in FIG. 2). The retrofitting procedure can then be initiated to partition the local processor or processors, load the new version, test the new version, switch input to the new version, monitor the completion of processing in the old version, and switch output to the new version. The software programs necessary to carry out these steps are readily apparent to any person of ordinary skill in the art from a perusal of FIG. 4 and of the descriptions herein contained. The procedure of FIG. 4, however, may also be implemented in fixed wiring of control circuitry attached to and made part of the data processing system. The choice of whether to use a software implementation or a hardware implementation is an economic decision rather than a technical decision. In either event, the procedure of FIG. 4 is preferably made entirely automatic, hence making the duration of the degraded service, if there is any such degradation, minimal.
It will be noted that, although the retrofitting procedure of FIG. 4 has been described in connection with a telephone transaction processing system and, more particularly, in connection with as data base accessing system called a Service Control Point, the procedure of FIG. 4 is perfectly general in its application. That is, the procedure of FIG. 4 can be used with any data processing system which must be available substantially continuously and the software of which must nevertheless be upgraded from time to time. Indeed, the procedure of FIG. 4 can be used just as effectively to upgrade the operation of the Signaling Transfer Points 15-18 of FIG. 1, assuming that these subsystems are also data processor controlled. Moreover, the extent of the partitioning can be fashioned to exactly match the extent of the retrofitting. That is, if the contents of theCMS data base 20 of FIG. 1 must also be reworked, as well as the processes ofSCP 19, the partitioning can be extended to include thedata base 20. The input and output points will, of course, then be adjusted to exactly bracket the enlarged subsystem partitions. On the other hand, if smaller subsystems of theSCP 19, such as thecommunications handlers 50 and 51, are the only software components to be upgraded, the partitions can be limited to only those subsystems and the input and output points adjusted accordingly.
It therefore appears that the system and procedure of the present invention are perfectly general in their application to data processing systems of varying degrees of complexity and of distributed processing. The present invention ensures continuity of processing despite extensive software changes and the ability to gracefully roll back to the status quo ante if the new software operates improperly.
It should also be clear to those skilled in the art that further embodiments of the present invention may be made by those skilled in the art without departing from the teachings of the present invention.

Claims (10)

What is claimed is:
1. A software retrofitting facility for replacing software in a data processing system without taking said data processing system from service, said facility comprising
means for dividing at least one portion of at least one central processor into two logical partitions, each partition being capable of carrying out data processing operations independent of the other partition,
means for executing an old version of said software in one of said partitions and for concurrently executing a new version of said software in the other of said partitions,
means for testing said new software,
means, responsive to said testing means, for switching the data input from said old software to said new software,
means for detecting the completion of execution by said old software, and
means responsive to said completion detecting means for switching the output receiving means from said old software to said new software and for removing said old software partition.
2. The software retrofitting facility according to claim 1 wherein said software comprises
a system of application programs.
3. The software retrofitting facility according to claim 1 wherein said software comprises
the operating system for said processor.
4. The software retrofitting facility according to claim 1 wherein said at least one central processor comprises
a plurality of interdependent processing units.
5. The software retrofitting facility according to claim 4 wherein said interdependent processing units comprise
at least two classes of processors including communications processors and application processors.
6. The software retrofitting facility according to claim 4 wherein
said plurality of interdependent processing units exchange messages among said plurality of processing units.
7. A method for replacing old software with new software in a data processing system having data input means and output receiving means without taking said data processing system from service, said method comprising the steps of
dividing at least one portion of at least one central processor into two logical partitions, each partition being capable of carrying out data processing operations independent of and concurrent with the other partition,
executing said old software in one of said partitions and executing said new software in the other of said partitions,
testing said new software for proper operation,
in response to said testing step, switching said data input means from said old software to said new software,
detecting the completion of execution of said old software, and
in response to said completion detecting step, switching said output receiving means from said old software to said new software and removing said old software.
8. The software replacing method according to claim 7 wherein said step of dividing at least one central processor comprises the step of
dividing the operations of a plurality of interdependent processing units.
9. The software replacing method according to claim 8 wherein said step of dividing operations comprises the step of
dividing operations in at least two classes of processors including communications processors and application processors.
10. The software replacing method according to claim 8 further including the step of
interchanging messages between said interdependent processing units in each of said respective partitions.
US07/317,9191989-03-021989-03-02Methods and apparatus for software retrofittingExpired - LifetimeUS5155837A (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
US07/317,919US5155837A (en)1989-03-021989-03-02Methods and apparatus for software retrofitting
CA000609070ACA1326302C (en)1989-03-021989-08-23Methods and apparatus for software retrofitting

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US07/317,919US5155837A (en)1989-03-021989-03-02Methods and apparatus for software retrofitting

Publications (1)

Publication NumberPublication Date
US5155837Atrue US5155837A (en)1992-10-13

Family

ID=23235824

Family Applications (1)

Application NumberTitlePriority DateFiling Date
US07/317,919Expired - LifetimeUS5155837A (en)1989-03-021989-03-02Methods and apparatus for software retrofitting

Country Status (2)

CountryLink
US (1)US5155837A (en)
CA (1)CA1326302C (en)

Cited By (173)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5253344A (en)*1991-09-051993-10-12International Business Machines Corp.Method and apparatus for dynamically changing the configuration of a logically partitioned data processing system
US5257377A (en)*1991-04-011993-10-26Xerox CorporationProcess for automatically migrating a subset of updated files from the boot disk to the replicated disks
WO1994001819A1 (en)*1992-07-011994-01-20Telefonaktiebolaget Lm EricssonSystem for changing software during computer operation
US5421017A (en)*1993-01-181995-05-30Siemens AktiengesellschaftReal time control system and method for replacing software in a controlled system
US5457795A (en)*1994-06-011995-10-10Willman; Todd J.Method and apparatus for sharing and transferring data between software programs
US5475753A (en)*1993-11-121995-12-12Matsushita Electric Corporation Of AmericaApparatus and method for certifying the delivery of information
US5511194A (en)*1992-08-281996-04-23Fujitsu LimitedProcessing system and processing method capable of dynamically replacing job environment
WO1996018146A1 (en)*1994-12-091996-06-13Telefonaktiebolaget Lm Ericsson (Publ)Method of synchronization allowing state transfer
US5530943A (en)*1991-09-301996-06-25Siemens AktiengesellschaftMethod for producing an executable configuration of a system program loadable into a system memory area of a processor system
US5537598A (en)*1992-12-151996-07-16International Business Machnes CorporationSystem for installing processor control code
US5579220A (en)*1993-07-281996-11-26Siemens AktiengesellschaftMethod of updating a supplementary automation system
US5586304A (en)*1994-09-081996-12-17Compaq Computer CorporationAutomatic computer upgrading
US5590347A (en)*1992-12-071996-12-31Microsoft CorporationMethod and system for specifying alternate behavior of a software system using alternate behavior indicia
US5608894A (en)*1994-03-181997-03-04Fujitsu LimitedExecution control system
US5623604A (en)*1992-11-181997-04-22Canon Information Systems, Inc.Method and apparatus for remotely altering programmable firmware stored in an interactive network board coupled to a network peripheral
US5623643A (en)*1992-11-161997-04-22Lucent Technologies Inc.Telecommunication system with improved reconfiguration flexibility having first and second communication modules where new operating system is tested with isolated second communication modules
US5625804A (en)*1995-04-171997-04-29International Business Machines CorporationData conversion in a multiprocessing system usable while maintaining system operations
US5649112A (en)*1994-05-111997-07-15International Business Machines CorporationMethod and apparatus for modifying microcode in a distributed nodal network while the network continues operation
US5659756A (en)*1995-03-311997-08-19International Business Machines CorporationMethod and system for providing access to logical partition information on a per resource basis
US5682533A (en)*1994-09-271997-10-28Telefonaktiebolaget Lm Ericsson (Publ)Updating software within a telecommunications switch without interrupting existing communication and neither moving nor converting data
EP0809181A1 (en)*1996-05-221997-11-26Siemens AktiengesellschaftMethod for exchanging software in operating control systems
US5696765A (en)*1995-02-281997-12-09General Instrument CorporationConfigurable hybrid medium access control for cable metropolitan area networks
GB2315637A (en)*1996-07-191998-02-04Ericsson Telefon Ab L MTesting of telecommunications services
GB2315887A (en)*1996-07-271998-02-11Motorola GmbhRe-programming a memory device whilst preserving a real time clock
US5721905A (en)*1994-02-051998-02-24U.S. Philips CorporationCommunication system comprising a distributed database system
US5729761A (en)*1994-05-131998-03-17Hitachi, Ltd.System for selecting one cluster of processors and upgrading the version of the program to be executed by the processors belonging to the selected cluster
US5751574A (en)*1995-09-131998-05-12Siemens AktiengesellschaftMethod for loading software in communication systems with non-redundant, decentralized equipment
US5754785A (en)*1995-04-271998-05-19General DatacommCommunications network equipment
US5793982A (en)*1995-12-071998-08-11International Business Machine CorporationValidating an installation plan containing multiple transports and redirectors by adding data structure of the modules to the plan if the indicated transport and redirector modules are unavailable
US5805898A (en)*1995-02-241998-09-08International Business Machines CorporationMethod and apparatus for estimating installation time in a data processing system
US5822511A (en)*1996-09-031998-10-13Motorola, Inc.Smart compare tool and method
US5828897A (en)*1996-12-191998-10-27Raytheon CompanyHybrid processor and method for executing incrementally upgraded software
US5841991A (en)*1992-11-181998-11-24Canon Information Systems, Inc.In an Interactive network board, a method and apparatus for storing a media access control address in a remotely alterable memory
EP0880092A1 (en)*1997-05-201998-11-25AlcatelProgram controlled device whose operating system is capable of being upgraded and the new version switched over to, without having to restart the device
US5845090A (en)*1994-02-141998-12-01Platinium Technology, Inc.System for software distribution in a digital computer network
US5852735A (en)*1994-08-241998-12-22Alcatel Sel AktiengesellschaftMethod and apparatus for exchanging a program over a network computer system that permits reactivation of the original program if an error occurs
GB2327518A (en)*1997-06-091999-01-27Honeywell OyComputer system
US5867106A (en)*1994-09-021999-02-02Packard Bell NecPassword switch to override remote control
US5867713A (en)*1995-04-051999-02-02International Business Machines CorporationCommitting an install plan object for the network installation of application programs
US5870611A (en)*1995-04-051999-02-09International Business Machines CorporationInstall plan object for network installation of application programs
US5892910A (en)*1995-02-281999-04-06General Instrument CorporationCATV communication system for changing first protocol syntax processor which processes data of first format to second protocol syntax processor processes data of second format
US5923850A (en)*1996-06-281999-07-13Sun Microsystems, Inc.Historical asset information data storage schema
DE19810814A1 (en)*1998-03-121999-09-16Ericsson Telefon Ab L MSoftware processing device with software actualization function
US5956506A (en)*1994-12-161999-09-21International Business Machines CorporationSystem and method for functionally enhancing procedural software using objects
US5964874A (en)*1997-04-231999-10-12Advanced Micro Devices, Inc.Swap size decrease on a UNIX based computer system
US5968170A (en)*1997-04-231999-10-19Advanced Micro Devices, Inc.Primary swap size increase on a UNIX based computer system
US5974558A (en)*1994-09-021999-10-26Packard Bell NecResume on pen contact
WO1999046673A3 (en)*1998-03-121999-11-04Ericsson Telefon Ab L MDisturbance free update of data
US5987511A (en)*1995-05-181999-11-16U.S. Philips CorporationCommunication system capable of exchanging software and restarting with all information preserved
US5987464A (en)*1996-07-261999-11-16Schneider; EricMethod and system for periodically updating data records having an expiry time
US5990875A (en)*1995-10-161999-11-23Packard Bell NecDouble pen up event
US5991860A (en)*1997-04-231999-11-23Advanced Micro Devices, Inc.Root file system size increase on a unix based computer system
WO1999046678A3 (en)*1998-03-121999-11-25Ericsson Telefon Ab L MApparatus and method for conversion of messages
US5996082A (en)*1995-10-161999-11-30Packard Bell NecSystem and method for delaying a wake-up signal
US6005533A (en)*1995-10-161999-12-21Packard Bell NecRemote occlusion region
US6018806A (en)*1995-10-162000-01-25Packard Bell NecMethod and system for rebooting a computer having corrupted memory using an external jumper
US6029258A (en)*1997-10-092000-02-22Microsoft CorporationMethod and system for trouble shooting and correcting computer software problems
DE19843048A1 (en)*1998-09-192000-03-23Nokia Telecommunications Oy EspooSoftware updating method for telecommunications network node switches, between software versions held in respective memories with hardware configuration values entered in temporary memory
US6092117A (en)*1994-09-022000-07-18Packard Bell NecSystem and method for automatically reconnecting a wireless interface device to a host computer
US6092190A (en)*1995-01-312000-07-18Neopost LimitedElectronic apparatus including a memory device and method of reprogramming the memory device
US6108727A (en)*1995-10-162000-08-22Packard Bell NecSystem having wireless interface device for storing compressed predetermined program files received from a remote host and communicating with the remote host via wireless link
US6110223A (en)*1996-10-282000-08-29Altera CorporationGraphic editor for block diagram level design of circuits
US6119212A (en)*1997-04-232000-09-12Advanced Micro Devices, Inc.Root size decrease on a UNIX based computer system
US6126327A (en)*1995-10-162000-10-03Packard Bell NecRadio flash update
US6137473A (en)*1994-09-022000-10-24Nec CorporationSystem and method for switching control between a host computer and a remote interface device
US6141683A (en)*1998-01-302000-10-31Lucent Technologies, Inc.Method for remotely and reliably updating of the software on a computer with provision for roll back
US6148344A (en)*1995-10-162000-11-14Nec CorporationSystem and method for enabling an IPX driver to accommodate multiple LAN adapters
US6157932A (en)*1998-06-042000-12-05Aspect TelecommunicationsMethod of updating a redundant service system while preserving transaction data in a database featuring on-line resynchronization
WO2000074412A1 (en)*1999-05-262000-12-07Telefonaktiebolaget Lm Ericsson (Publ)Method and apparatus of downloading into a radio terminal
US6182110B1 (en)1996-06-282001-01-30Sun Microsystems, Inc.Network tasks scheduling
WO2001014968A1 (en)*1999-05-272001-03-01Invensys PlcFieldbus upgradable apparatus and method
US6209034B1 (en)1994-09-022001-03-27Nec CorporationRemote keyboard macros activated by hot icons
US6237091B1 (en)1998-10-292001-05-22Hewlett-Packard CompanyMethod of updating firmware without affecting initialization information
US6262719B1 (en)1994-09-022001-07-17Packard Bell Nec, Inc.Mouse emulation with a passive pen
US6279153B1 (en)1995-10-162001-08-21Nec CorporationMulti-user flash ROM update
WO2001084792A1 (en)*2000-05-042001-11-08Marconi Communications LimitedMethod and gateway for performing on line switching of software in a communication system
US6374352B1 (en)1998-08-262002-04-16Intel CorporationTemporary configuration with fall-back
US6415279B1 (en)1998-03-122002-07-02Telefonaktiebolaget Lm Ericsson (Publ)Method and access means for determining the storage address of a data value in a memory device
US6442549B1 (en)1997-07-252002-08-27Eric SchneiderMethod, product, and apparatus for processing reusable information
US20020120854A1 (en)*2000-09-222002-08-29Levine Richard B.Systems and methods for preventing unauthorized use of digital content
US20020124245A1 (en)*2000-08-142002-09-05Alvin MadduxMethod and apparatus for advanced software deployment
US20020138594A1 (en)*2001-02-022002-09-26International Game TechnologyWide area program distribution and game information communication system
US20020144153A1 (en)*2000-09-222002-10-03Levine Richard B.Systems and methods for preventing unauthorized use of digital content
US20030041131A1 (en)*2001-08-242003-02-27Microsoft CorporationSystem and method to automate the management of computer services and programmable devices
US6535924B1 (en)*2001-09-052003-03-18Pluris, Inc.Method and apparatus for performing a software upgrade of a router while the router is online
US20030182390A1 (en)*2002-03-222003-09-25Bilal AlamSelective caching of servable files
US20030182400A1 (en)*2001-06-112003-09-25Vasilios KaragounisWeb garden application pools having a plurality of user-mode web applications
US20030188306A1 (en)*1999-06-032003-10-02Anchor GamingMethod and device for implementing a downloadable software delivery system
US6634025B1 (en)1996-05-062003-10-14Koninklijke Philips Electronics N. V.System for exchanging software processes during execution using threads
US6664982B1 (en)1995-10-162003-12-16Nec CorporationMulti-user on-screen keyboard
US6683605B1 (en)1994-09-022004-01-27Nec CorporationScreen saver disabler
US20040034855A1 (en)*2001-06-112004-02-19Deily Eric D.Ensuring the health and availability of web applications
US20040048671A1 (en)*2000-10-192004-03-11IgtGaming terminal data repository and information distribution system
US20040048667A1 (en)*2002-09-102004-03-11Rick RoweMethod and apparatus for managing gaming machine code downloads
US20040048668A1 (en)*2002-09-102004-03-11Bill BrosnanApparatus and method for copying gaming machine configuration settings
US6711572B2 (en)2000-06-142004-03-23Xosoft Inc.File system for distributing content in a data network and related methods
US20040060047A1 (en)*2002-09-242004-03-25Inrange Technologies CorporationMethod and apparatus for downloading executable code in a non-disruptive manner
US6754848B1 (en)*1999-09-302004-06-22International Business Machines CorporationMethod, system and program products for operationally migrating a cluster through emulation
US20040163233A1 (en)*2003-02-262004-08-26Stefan GernhardtMethods of forming electrical connections within ferroelectric devices
US20040180721A1 (en)*2000-12-212004-09-16IgtGaming terminal data repository and information distribution system
US6829706B2 (en)2000-03-172004-12-07Heidelberger Druckmaschinen AgDevice containing a functional unit that stores function data representative of its properties and a data processing program for operating with required function data
US20040253956A1 (en)*2003-06-122004-12-16Samsung Electronics Co., Ltd.System and method for providing an online software upgrade in load sharing servers
US20050003812A1 (en)*1995-10-162005-01-06Nec CorporationMultiple wireless remote interfaces to a single server
US20050010575A1 (en)*2003-07-092005-01-13Arthur PenningtonTransactional processing system
US6845363B1 (en)1998-09-042005-01-18Seiko Epson CorporationPOS terminal, method of controlling the POS terminal, POS system using the POS terminal, and information storage medium
US20050036443A1 (en)*2003-08-132005-02-17Samsung Electronics Co., Ltd.Apparatus and method for performing an online software upgrade of resource servers
US20050076333A1 (en)*2003-10-072005-04-07Nortel Networks LimitedMethod of installing a software release
US20050153778A1 (en)*2004-01-142005-07-14Dwayne NelsonMethods and apparatus for gaming data downloading
EP1265135A3 (en)*2000-01-062005-08-17NEC Electronics CorporationRewriting boot areas
US20050192099A1 (en)*2000-12-072005-09-01IgtSecured virtual network in a gaming environment
US20050223372A1 (en)*2004-04-012005-10-06Borchers Gregory EMethods and systems for firmware download configuration
US6957366B1 (en)*2001-09-282005-10-18Bellsouth Intellectual Property CorporationSystem and method for an interactive web-based data catalog for tracking software bugs
US6963783B1 (en)1995-10-162005-11-08Packard Bell NecAudio compression in a wireless remote interface tablet
US20050283441A1 (en)*2004-06-212005-12-22Ipolicy Networks, Inc., A Delaware CorporationEfficient policy change management in virtual private networks
US20050282638A1 (en)*2000-11-042005-12-22IgtDynamic player notices for operational changes in gaming machines
US20050288832A1 (en)*2004-06-292005-12-29Smith Brian SMethod and apparatus for run-time incorporation of domain data configuration changes
US20060026590A1 (en)*2004-07-302006-02-02Anna BerenbergMethod and apparatus for modifying software
US20060035713A1 (en)*1999-06-032006-02-16IgtGaming machine update and mass storage management
US20060047818A1 (en)*2004-08-312006-03-02Microsoft CorporationMethod and system to support multiple-protocol processing within worker processes
US20060047532A1 (en)*2004-08-312006-03-02Microsoft CorporationMethod and system to support a unified process model for handling messages sent in different protocols
US20060075076A1 (en)*2004-09-302006-04-06Microsoft CorporationUpdating software while it is running
US20060080443A1 (en)*2004-08-312006-04-13Microsoft CorporationURL namespace to support multiple-protocol processing within worker processes
AU2004240214B2 (en)*1999-06-032006-09-07IgtMethod and device for implementing a downloadable software delivery system
US7107329B1 (en)*1999-05-212006-09-12Lucent Technologies Inc.In networks of interconnected router nodes for routing data traffic, a method of and system for imperceptibly upgrading router node software and the like without traffic interruption
US7168089B2 (en)2000-12-072007-01-23IgtSecured virtual network in a gaming environment
US7225296B2 (en)2002-03-222007-05-29Microsoft CorporationMultiple-level persisted template caching
US20070136817A1 (en)*2000-12-072007-06-14IgtWager game license management in a peer gaming network
US20070180206A1 (en)*2006-01-182007-08-02Craft Julie LMethod of updating a duplicate copy of an operating system on the same disk
US20070270212A1 (en)*2000-10-192007-11-22IgtExecuting multiple applications and their variations in computing environments
US20080005342A1 (en)*1999-07-152008-01-03Eric SchneiderMethod, product, and apparatus for enhancing resolution services, registration services, and search services
US20080016233A1 (en)*1999-03-222008-01-17Eric SchneiderMethods, systems, products, and devices for processing dns friendly identifiers
US7328453B2 (en)2001-05-092008-02-05Ecd Systems, Inc.Systems and methods for the prevention of unauthorized use and manipulation of digital content
US20080045346A1 (en)*2000-10-192008-02-21IgtRemote configuration of gaming terminals
US20080059607A1 (en)*1999-09-012008-03-06Eric SchneiderMethod, product, and apparatus for processing a data request
US20080076547A1 (en)*2006-09-132008-03-27IgtMethod of randomly and dynamically checking configuration integrity of a gaming system
US7430738B1 (en)2001-06-112008-09-30Microsoft CorporationMethods and arrangements for routing server requests to worker processes based on URL
US20080256528A1 (en)*2006-08-152008-10-16Alcatel LucentSoftware replacement in a stream processing system
US7490137B2 (en)2002-03-222009-02-10Microsoft CorporationVector-based sending of web content
DE102007041653A1 (en)*2007-09-032009-03-05Abb Research Ltd. Apparatus and method for performing server software updates in a distributed computer system having at least two servers
US20090150522A1 (en)*2007-12-112009-06-11Schneider James PTransparent configuration of a network appliance
US7555751B1 (en)*2004-08-112009-06-303Com CorporationMethod and system for performing a live system upgrade
US7565402B2 (en)2002-01-052009-07-21Eric SchneiderSitemap access method, product, and apparatus
US7594230B2 (en)2001-06-112009-09-22Microsoft CorporationWeb server architecture
US20090247254A1 (en)*2008-03-252009-10-01IgtPhysics modeling for gaming machine displays
US7668938B1 (en)*2000-01-142010-02-23Microsoft CorporationMethod and system for dynamically purposing a computing device
US20100099491A1 (en)*2008-10-172010-04-22IgtPost certification metering for diverse game machines
US7837556B2 (en)2001-09-282010-11-23IgtDecoupling of the graphical presentation of a game from the presentation logic
US7918730B2 (en)2002-06-272011-04-05IgtTrajectory-based 3-D games of chance for video gaming machines
US7931533B2 (en)2001-09-282011-04-26IgtGame development architecture that decouples the game logic from the graphics logics
US7951002B1 (en)2000-06-162011-05-31IgtUsing a gaming machine as a server
US7972214B2 (en)2000-12-072011-07-05IgtMethods and devices for downloading games of chance
US8057298B2 (en)2002-03-122011-11-15IgtVirtual player tracking and related services
US20120011494A1 (en)*2010-07-072012-01-12Canon Kabushiki KaishaInformation processing apparatus, method for controlling the same, and storage medium
US8224994B1 (en)1999-03-222012-07-17Esdr Network Solutions LlcFictitious domain name method, system, product, and apparatus
USRE43690E1 (en)1999-03-222012-09-25Esdr Network Solutions LlcSearch engine request method, product, and apparatus
WO2012134475A1 (en)*2011-03-312012-10-04Alcatel-Lucent Usa Inc.Petrofitting a processor cluster
US8287379B2 (en)2005-09-122012-10-16IgtDistributed game services
CN102799452A (en)*2012-06-292012-11-28深圳市安普尔科技有限公司Method and device for upgrading system software
US20130086347A1 (en)*2005-06-242013-04-04Syncsort IncorporatedSystem and method for virtualizing backup images
USRE44207E1 (en)1999-09-012013-05-07Esdr Network Solutions LlcNetwork resource access method, product, and apparatus
US8628413B2 (en)2002-03-122014-01-14IgtVirtual gaming peripherals for a gaming machine
US8635340B1 (en)1999-03-222014-01-21Esdr Network Solutions LlcMethod, product, and apparatus for requesting a network resource
US8651956B2 (en)2005-09-122014-02-18IgtMethod and system for instant-on game download
US8708828B2 (en)2001-09-282014-04-29IgtPluggable modular gaming modifiers and configuration templates for gaming environments
US8739151B1 (en)2013-03-152014-05-27Genetec Inc.Computer system using in-service software upgrade
US8949824B2 (en)2012-09-282015-02-03Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9128792B2 (en)2012-09-282015-09-08Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9235491B2 (en)2012-09-282016-01-12Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9317269B2 (en)2012-09-282016-04-19Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9378099B2 (en)2005-06-242016-06-28Catalogic Software, Inc.Instant data center recovery
US9680965B2 (en)*2015-04-012017-06-13Alcatel-Lucent Usa Inc.Software upgrades for offline charging systems within a network
US10671377B2 (en)*2017-07-132020-06-02Vmware, Inc.Method to deploy new version of executable in node based environments
US11113045B2 (en)2008-05-292021-09-07Red Hat, Inc.Image install of a network appliance

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4558413A (en)*1983-11-211985-12-10Xerox CorporationSoftware version management system
US4788637A (en)*1985-09-301988-11-29Kabushiki Kaisha ToshibaCommunication control apparatus
US4809170A (en)*1987-04-221989-02-28Apollo Computer, Inc.Computer device for aiding in the development of software system
US5008814A (en)*1988-08-151991-04-16Network Equipment Technologies, Inc.Method and apparatus for updating system software for a plurality of data processing units in a communication network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4558413A (en)*1983-11-211985-12-10Xerox CorporationSoftware version management system
US4788637A (en)*1985-09-301988-11-29Kabushiki Kaisha ToshibaCommunication control apparatus
US4809170A (en)*1987-04-221989-02-28Apollo Computer, Inc.Computer device for aiding in the development of software system
US5008814A (en)*1988-08-151991-04-16Network Equipment Technologies, Inc.Method and apparatus for updating system software for a plurality of data processing units in a communication network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Life Cycle Support and Update of No. 4 ESS Software", E. A. Davis et al., IEEEE Document No. 0536-1486/82/0000-0216, p. 5G5.1, 1982.
Life Cycle Support and Update of No. 4 ESS Software , E. A. Davis et al., IEEEE Document No. 0536 1486/82/0000 0216, p. 5G5.1, 1982.*

Cited By (283)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5257377A (en)*1991-04-011993-10-26Xerox CorporationProcess for automatically migrating a subset of updated files from the boot disk to the replicated disks
US5253344A (en)*1991-09-051993-10-12International Business Machines Corp.Method and apparatus for dynamically changing the configuration of a logically partitioned data processing system
US5530943A (en)*1991-09-301996-06-25Siemens AktiengesellschaftMethod for producing an executable configuration of a system program loadable into a system memory area of a processor system
US5410703A (en)*1992-07-011995-04-25Telefonaktiebolaget L M EricssonSystem for changing software during computer operation
KR100323881B1 (en)*1992-07-012002-07-08에를링 블로메, 타게 뢰브그렌 Method and system for changing software during computer operation
WO1994001819A1 (en)*1992-07-011994-01-20Telefonaktiebolaget Lm EricssonSystem for changing software during computer operation
US5555418A (en)*1992-07-011996-09-10Nilsson; RickardSystem for changing software during computer operation
US5511194A (en)*1992-08-281996-04-23Fujitsu LimitedProcessing system and processing method capable of dynamically replacing job environment
US5623643A (en)*1992-11-161997-04-22Lucent Technologies Inc.Telecommunication system with improved reconfiguration flexibility having first and second communication modules where new operating system is tested with isolated second communication modules
US5841991A (en)*1992-11-181998-11-24Canon Information Systems, Inc.In an Interactive network board, a method and apparatus for storing a media access control address in a remotely alterable memory
US5623604A (en)*1992-11-181997-04-22Canon Information Systems, Inc.Method and apparatus for remotely altering programmable firmware stored in an interactive network board coupled to a network peripheral
US5590347A (en)*1992-12-071996-12-31Microsoft CorporationMethod and system for specifying alternate behavior of a software system using alternate behavior indicia
US5537598A (en)*1992-12-151996-07-16International Business Machnes CorporationSystem for installing processor control code
US5421017A (en)*1993-01-181995-05-30Siemens AktiengesellschaftReal time control system and method for replacing software in a controlled system
US5579220A (en)*1993-07-281996-11-26Siemens AktiengesellschaftMethod of updating a supplementary automation system
US5475753A (en)*1993-11-121995-12-12Matsushita Electric Corporation Of AmericaApparatus and method for certifying the delivery of information
US5721905A (en)*1994-02-051998-02-24U.S. Philips CorporationCommunication system comprising a distributed database system
EP0666697A3 (en)*1994-02-051999-12-29Philips Patentverwaltung GmbHCommunications system with a distributed database system
US6138153A (en)*1994-02-142000-10-24Computer Associates Think, Inc.System for software distribution in a digital computer network
US6286041B1 (en)1994-02-142001-09-04Computer Associates Think, Inc.System for software distribution in a digital computer network
US5845090A (en)*1994-02-141998-12-01Platinium Technology, Inc.System for software distribution in a digital computer network
US5608894A (en)*1994-03-181997-03-04Fujitsu LimitedExecution control system
US5649112A (en)*1994-05-111997-07-15International Business Machines CorporationMethod and apparatus for modifying microcode in a distributed nodal network while the network continues operation
US5729761A (en)*1994-05-131998-03-17Hitachi, Ltd.System for selecting one cluster of processors and upgrading the version of the program to be executed by the processors belonging to the selected cluster
US6216179B1 (en)*1994-05-132001-04-10Hitachi, Ltd.System for processing an I/O request using an old program while loading a new program which upon completion used to process the I/O request
US6505257B2 (en)*1994-05-132003-01-07Hitachi, Ltd.Multi-processor system, disk controller using the same and nondisruptive maintenance method thereof
US5457795A (en)*1994-06-011995-10-10Willman; Todd J.Method and apparatus for sharing and transferring data between software programs
US5852735A (en)*1994-08-241998-12-22Alcatel Sel AktiengesellschaftMethod and apparatus for exchanging a program over a network computer system that permits reactivation of the original program if an error occurs
US6683605B1 (en)1994-09-022004-01-27Nec CorporationScreen saver disabler
US6137473A (en)*1994-09-022000-10-24Nec CorporationSystem and method for switching control between a host computer and a remote interface device
US5974558A (en)*1994-09-021999-10-26Packard Bell NecResume on pen contact
US6092117A (en)*1994-09-022000-07-18Packard Bell NecSystem and method for automatically reconnecting a wireless interface device to a host computer
US6262719B1 (en)1994-09-022001-07-17Packard Bell Nec, Inc.Mouse emulation with a passive pen
US6760017B1 (en)*1994-09-022004-07-06Nec CorporationWireless interface device for communicating with a remote host computer
US6209034B1 (en)1994-09-022001-03-27Nec CorporationRemote keyboard macros activated by hot icons
US5867106A (en)*1994-09-021999-02-02Packard Bell NecPassword switch to override remote control
US5960189A (en)*1994-09-081999-09-28Compaq Computer CorporationAutomatic computer upgrading
US5588143A (en)*1994-09-081996-12-24Compaq Computer CorporationAutomatic computer upgrading
US5586304A (en)*1994-09-081996-12-17Compaq Computer CorporationAutomatic computer upgrading
US5809287A (en)*1994-09-081998-09-15Compaq Computer CorporationAutomatic computer upgrading
US5682533A (en)*1994-09-271997-10-28Telefonaktiebolaget Lm Ericsson (Publ)Updating software within a telecommunications switch without interrupting existing communication and neither moving nor converting data
CN1090778C (en)*1994-12-092002-09-11艾利森电话股份有限公司Method of synchronization allowing state transfer
WO1996018146A1 (en)*1994-12-091996-06-13Telefonaktiebolaget Lm Ericsson (Publ)Method of synchronization allowing state transfer
AU717645B2 (en)*1994-12-092000-03-30Telefonaktiebolaget Lm Ericsson (Publ)Method of synchronization allowing state transfer
US6101327A (en)*1994-12-092000-08-08Telefonaktiebolaget Lm EricssonMethod of synchronization allowing state transfer
US5956506A (en)*1994-12-161999-09-21International Business Machines CorporationSystem and method for functionally enhancing procedural software using objects
US6092190A (en)*1995-01-312000-07-18Neopost LimitedElectronic apparatus including a memory device and method of reprogramming the memory device
US5805898A (en)*1995-02-241998-09-08International Business Machines CorporationMethod and apparatus for estimating installation time in a data processing system
US5960206A (en)*1995-02-241999-09-28International Business Machines CorporationMethod and apparatus for estimating installation time in a data processing system
US5892910A (en)*1995-02-281999-04-06General Instrument CorporationCATV communication system for changing first protocol syntax processor which processes data of first format to second protocol syntax processor processes data of second format
US5696765A (en)*1995-02-281997-12-09General Instrument CorporationConfigurable hybrid medium access control for cable metropolitan area networks
US5659756A (en)*1995-03-311997-08-19International Business Machines CorporationMethod and system for providing access to logical partition information on a per resource basis
US5870611A (en)*1995-04-051999-02-09International Business Machines CorporationInstall plan object for network installation of application programs
US5867713A (en)*1995-04-051999-02-02International Business Machines CorporationCommitting an install plan object for the network installation of application programs
US5625804A (en)*1995-04-171997-04-29International Business Machines CorporationData conversion in a multiprocessing system usable while maintaining system operations
US6113652A (en)*1995-04-272000-09-05General Data Comm, Inc.Communications network equipment capable of non-disruptive software upgrade
US5754785A (en)*1995-04-271998-05-19General DatacommCommunications network equipment
US5987511A (en)*1995-05-181999-11-16U.S. Philips CorporationCommunication system capable of exchanging software and restarting with all information preserved
US5751574A (en)*1995-09-131998-05-12Siemens AktiengesellschaftMethod for loading software in communication systems with non-redundant, decentralized equipment
US6963783B1 (en)1995-10-162005-11-08Packard Bell NecAudio compression in a wireless remote interface tablet
US6279153B1 (en)1995-10-162001-08-21Nec CorporationMulti-user flash ROM update
US5996082A (en)*1995-10-161999-11-30Packard Bell NecSystem and method for delaying a wake-up signal
US6018806A (en)*1995-10-162000-01-25Packard Bell NecMethod and system for rebooting a computer having corrupted memory using an external jumper
US6126327A (en)*1995-10-162000-10-03Packard Bell NecRadio flash update
US6664982B1 (en)1995-10-162003-12-16Nec CorporationMulti-user on-screen keyboard
US7120433B2 (en)1995-10-162006-10-10Nec CorporationMultiple wireless remote interfaces to a single server
US6148344A (en)*1995-10-162000-11-14Nec CorporationSystem and method for enabling an IPX driver to accommodate multiple LAN adapters
US20050003812A1 (en)*1995-10-162005-01-06Nec CorporationMultiple wireless remote interfaces to a single server
US6005533A (en)*1995-10-161999-12-21Packard Bell NecRemote occlusion region
US5990875A (en)*1995-10-161999-11-23Packard Bell NecDouble pen up event
US6108727A (en)*1995-10-162000-08-22Packard Bell NecSystem having wireless interface device for storing compressed predetermined program files received from a remote host and communicating with the remote host via wireless link
US5793982A (en)*1995-12-071998-08-11International Business Machine CorporationValidating an installation plan containing multiple transports and redirectors by adding data structure of the modules to the plan if the indicated transport and redirector modules are unavailable
US6634025B1 (en)1996-05-062003-10-14Koninklijke Philips Electronics N. V.System for exchanging software processes during execution using threads
EP0809181A1 (en)*1996-05-221997-11-26Siemens AktiengesellschaftMethod for exchanging software in operating control systems
US6182110B1 (en)1996-06-282001-01-30Sun Microsystems, Inc.Network tasks scheduling
US5923850A (en)*1996-06-281999-07-13Sun Microsystems, Inc.Historical asset information data storage schema
GB2315637A (en)*1996-07-191998-02-04Ericsson Telefon Ab L MTesting of telecommunications services
GB2315637B (en)*1996-07-192000-09-13Ericsson Telefon Ab L MTesting mechanism
US5987464A (en)*1996-07-261999-11-16Schneider; EricMethod and system for periodically updating data records having an expiry time
GB2315887A (en)*1996-07-271998-02-11Motorola GmbhRe-programming a memory device whilst preserving a real time clock
US6167482A (en)*1996-07-272000-12-26Motorola, Inc.Method and apparatus utilizing a flash memory device to maintain accurate unit timing
GB2315887B (en)*1996-07-272000-07-05Motorola GmbhMethod and apparatus for re-programming memory device
US5822511A (en)*1996-09-031998-10-13Motorola, Inc.Smart compare tool and method
US6205579B1 (en)*1996-10-282001-03-20Altera CorporationMethod for providing remote software technical support
US6120550A (en)*1996-10-282000-09-19Altera CorporationDesign file templates for implementation of logic designs
US6161211A (en)*1996-10-282000-12-12Altera CorporationMethod and apparatus for automated circuit design
US6588004B1 (en)1996-10-282003-07-01Altera CorporationGraphic editor for block diagram level design of circuits
US6311309B1 (en)1996-10-282001-10-30Altera CorporationMethods and apparatus for simulating a portion of a circuit design
US6110223A (en)*1996-10-282000-08-29Altera CorporationGraphic editor for block diagram level design of circuits
US5828897A (en)*1996-12-191998-10-27Raytheon CompanyHybrid processor and method for executing incrementally upgraded software
US5964874A (en)*1997-04-231999-10-12Advanced Micro Devices, Inc.Swap size decrease on a UNIX based computer system
US6119212A (en)*1997-04-232000-09-12Advanced Micro Devices, Inc.Root size decrease on a UNIX based computer system
US5991860A (en)*1997-04-231999-11-23Advanced Micro Devices, Inc.Root file system size increase on a unix based computer system
US5968170A (en)*1997-04-231999-10-19Advanced Micro Devices, Inc.Primary swap size increase on a UNIX based computer system
EP0880092A1 (en)*1997-05-201998-11-25AlcatelProgram controlled device whose operating system is capable of being upgraded and the new version switched over to, without having to restart the device
GB2327518A (en)*1997-06-091999-01-27Honeywell OyComputer system
US6442549B1 (en)1997-07-252002-08-27Eric SchneiderMethod, product, and apparatus for processing reusable information
US6029258A (en)*1997-10-092000-02-22Microsoft CorporationMethod and system for trouble shooting and correcting computer software problems
US6141683A (en)*1998-01-302000-10-31Lucent Technologies, Inc.Method for remotely and reliably updating of the software on a computer with provision for roll back
WO1999046673A3 (en)*1998-03-121999-11-04Ericsson Telefon Ab L MDisturbance free update of data
DE19810814A1 (en)*1998-03-121999-09-16Ericsson Telefon Ab L MSoftware processing device with software actualization function
US6415279B1 (en)1998-03-122002-07-02Telefonaktiebolaget Lm Ericsson (Publ)Method and access means for determining the storage address of a data value in a memory device
WO1999046678A3 (en)*1998-03-121999-11-25Ericsson Telefon Ab L MApparatus and method for conversion of messages
US6438748B1 (en)1998-03-122002-08-20Telefonaktiebolaget L M Ericsson (Publ)Apparatus and method for conversion of messages
US6347396B1 (en)1998-03-122002-02-12Telefonaktiebolaget Lm Ericsson (Publ)Disturbance free update of data
DE19810814B4 (en)*1998-03-122004-10-28Telefonaktiebolaget Lm Ericsson (Publ) Computer system and status copying process for scalable software updates
US6463584B1 (en)1998-03-122002-10-08Telefonaktiebolaget Lm EricssonState copying method for software update
US6157932A (en)*1998-06-042000-12-05Aspect TelecommunicationsMethod of updating a redundant service system while preserving transaction data in a database featuring on-line resynchronization
US6374352B1 (en)1998-08-262002-04-16Intel CorporationTemporary configuration with fall-back
US6845363B1 (en)1998-09-042005-01-18Seiko Epson CorporationPOS terminal, method of controlling the POS terminal, POS system using the POS terminal, and information storage medium
WO2000018145A1 (en)*1998-09-192000-03-30Nokia Networks OyHitless software activation/switchover through usage of class interface towards target hardware
DE19843048C2 (en)*1998-09-192000-08-17Nokia Networks Oy Method for a software access change in a network node of a telecommunications network and a network node suitable for performing such a method
DE19843048A1 (en)*1998-09-192000-03-23Nokia Telecommunications Oy EspooSoftware updating method for telecommunications network node switches, between software versions held in respective memories with hardware configuration values entered in temporary memory
US6237091B1 (en)1998-10-292001-05-22Hewlett-Packard CompanyMethod of updating firmware without affecting initialization information
US9659070B2 (en)1999-03-222017-05-23S. Aqua Semiconductor, LlcMethods, systems, products, and devices for processing DNS friendly identifiers
US8612565B2 (en)1999-03-222013-12-17Esdr Network Solutions LlcFictitious domain name method, system, product, and apparatus
US8224994B1 (en)1999-03-222012-07-17Esdr Network Solutions LlcFictitious domain name method, system, product, and apparatus
USRE43690E1 (en)1999-03-222012-09-25Esdr Network Solutions LlcSearch engine request method, product, and apparatus
US9141717B2 (en)1999-03-222015-09-22Esdr Network Solutions LlcMethods, systems, products, and devices for processing DNS friendly identifiers
US8458161B2 (en)1999-03-222013-06-04Esdr Network Solutions LlcMethod, product, and apparatus for enhancing resolution services, registration services, and search services
US8635340B1 (en)1999-03-222014-01-21Esdr Network Solutions LlcMethod, product, and apparatus for requesting a network resource
US20080016233A1 (en)*1999-03-222008-01-17Eric SchneiderMethods, systems, products, and devices for processing dns friendly identifiers
USRE44898E1 (en)1999-03-222014-05-13ESDR Networks Solutions LLCSearch engine request method, product, and apparatus
US7107329B1 (en)*1999-05-212006-09-12Lucent Technologies Inc.In networks of interconnected router nodes for routing data traffic, a method of and system for imperceptibly upgrading router node software and the like without traffic interruption
WO2000074412A1 (en)*1999-05-262000-12-07Telefonaktiebolaget Lm Ericsson (Publ)Method and apparatus of downloading into a radio terminal
GB2363879A (en)*1999-05-272002-01-09Invensys PlcFieldbus upgradable apparatus and method
WO2001014968A1 (en)*1999-05-272001-03-01Invensys PlcFieldbus upgradable apparatus and method
GB2363879B (en)*1999-05-272004-03-10Invensys PlcFieldbus upgradable apparatus and method
US20060035713A1 (en)*1999-06-032006-02-16IgtGaming machine update and mass storage management
AU2004240214B2 (en)*1999-06-032006-09-07IgtMethod and device for implementing a downloadable software delivery system
US8185890B2 (en)1999-06-032012-05-22IgtMethod and device for implementing a downloadable software delivery system
US20060031829A1 (en)*1999-06-032006-02-09IgtMethod and device for implementing a downloadable software delivery system
US20030188306A1 (en)*1999-06-032003-10-02Anchor GamingMethod and device for implementing a downloadable software delivery system
US6988267B2 (en)*1999-06-032006-01-17IgtMethod and device for implementing a downloadable software delivery system
US8033913B2 (en)1999-06-032011-10-11IgtGaming machine update and mass storage management
US20080005342A1 (en)*1999-07-152008-01-03Eric SchneiderMethod, product, and apparatus for enhancing resolution services, registration services, and search services
US8037168B2 (en)1999-07-152011-10-11Esdr Network Solutions LlcMethod, product, and apparatus for enhancing resolution services, registration services, and search services
US20080059607A1 (en)*1999-09-012008-03-06Eric SchneiderMethod, product, and apparatus for processing a data request
USRE44207E1 (en)1999-09-012013-05-07Esdr Network Solutions LlcNetwork resource access method, product, and apparatus
US8990347B2 (en)1999-09-012015-03-24Esdr Network Solutions LlcMethod, product, and apparatus for processing a data request
US6915452B2 (en)1999-09-302005-07-05International Business Machines CorporationMethod, system and program products for operationally migrating a cluster through emulation
US20040205401A1 (en)*1999-09-302004-10-14International Business Machines CorporationMethod, system and program products for operationally migrating a cluster through emulation
US6754848B1 (en)*1999-09-302004-06-22International Business Machines CorporationMethod, system and program products for operationally migrating a cluster through emulation
EP1265135A3 (en)*2000-01-062005-08-17NEC Electronics CorporationRewriting boot areas
US7668938B1 (en)*2000-01-142010-02-23Microsoft CorporationMethod and system for dynamically purposing a computing device
US6829706B2 (en)2000-03-172004-12-07Heidelberger Druckmaschinen AgDevice containing a functional unit that stores function data representative of its properties and a data processing program for operating with required function data
US20030154264A1 (en)*2000-05-042003-08-14Martin Peter NMethod and gateway for performing on line switching of software in a communication system
WO2001084792A1 (en)*2000-05-042001-11-08Marconi Communications LimitedMethod and gateway for performing on line switching of software in a communication system
US6711572B2 (en)2000-06-142004-03-23Xosoft Inc.File system for distributing content in a data network and related methods
US7951002B1 (en)2000-06-162011-05-31IgtUsing a gaming machine as a server
US20020124245A1 (en)*2000-08-142002-09-05Alvin MadduxMethod and apparatus for advanced software deployment
US20020144153A1 (en)*2000-09-222002-10-03Levine Richard B.Systems and methods for preventing unauthorized use of digital content
US7237123B2 (en)2000-09-222007-06-26Ecd Systems, Inc.Systems and methods for preventing unauthorized use of digital content
US20020120854A1 (en)*2000-09-222002-08-29Levine Richard B.Systems and methods for preventing unauthorized use of digital content
US7565697B2 (en)2000-09-222009-07-21Ecd Systems, Inc.Systems and methods for preventing unauthorized use of digital content
US8261359B2 (en)2000-09-222012-09-04Sca Ipla Holdings Inc.Systems and methods for preventing unauthorized use of digital content
US20070270212A1 (en)*2000-10-192007-11-22IgtExecuting multiple applications and their variations in computing environments
US20080045346A1 (en)*2000-10-192008-02-21IgtRemote configuration of gaming terminals
US8556698B2 (en)2000-10-192013-10-15IgtExecuting multiple applications and their variations in computing environments
US8814650B2 (en)2000-10-192014-08-26IgtExecuting multiple applications and their variations in computing environments
US9836918B2 (en)2000-10-192017-12-05IgtRemote configuration of gaming terminals
US9754447B2 (en)2000-10-192017-09-05IgtDynamic player notices for operational changes in gaming machines
US20040048671A1 (en)*2000-10-192004-03-11IgtGaming terminal data repository and information distribution system
US9251647B2 (en)2000-10-192016-02-02IgtRemote configuration of gaming terminals
US8636596B2 (en)2000-11-042014-01-28IgtDynamic player notices for operational changes in gaming machines
US20050282638A1 (en)*2000-11-042005-12-22IgtDynamic player notices for operational changes in gaming machines
US7972214B2 (en)2000-12-072011-07-05IgtMethods and devices for downloading games of chance
US7515718B2 (en)2000-12-072009-04-07IgtSecured virtual network in a gaming environment
US20070136817A1 (en)*2000-12-072007-06-14IgtWager game license management in a peer gaming network
US7168089B2 (en)2000-12-072007-01-23IgtSecured virtual network in a gaming environment
US20050192099A1 (en)*2000-12-072005-09-01IgtSecured virtual network in a gaming environment
US20040180721A1 (en)*2000-12-212004-09-16IgtGaming terminal data repository and information distribution system
US8540576B2 (en)2001-02-022013-09-24IgtWide area program distribution and game information communication system
US7186181B2 (en)2001-02-022007-03-06IgtWide area program distribution and game information communication system
US20020138594A1 (en)*2001-02-022002-09-26International Game TechnologyWide area program distribution and game information communication system
US20070197298A1 (en)*2001-02-022007-08-23IgtWide area program distribution and game information communication system
US7328453B2 (en)2001-05-092008-02-05Ecd Systems, Inc.Systems and methods for the prevention of unauthorized use and manipulation of digital content
US8117667B2 (en)2001-05-092012-02-14Sca Ipla Holdings Inc.Systems and methods for the prevention of unauthorized use and manipulation of digital content
US8844048B2 (en)2001-05-092014-09-23Sca Ipla Holdings Inc.Systems and methods for the prevention of unauthorized use and manipulation of digital content
US7594230B2 (en)2001-06-112009-09-22Microsoft CorporationWeb server architecture
US20030182400A1 (en)*2001-06-112003-09-25Vasilios KaragounisWeb garden application pools having a plurality of user-mode web applications
US7228551B2 (en)2001-06-112007-06-05Microsoft CorporationWeb garden application pools having a plurality of user-mode web applications
US7430738B1 (en)2001-06-112008-09-30Microsoft CorporationMethods and arrangements for routing server requests to worker processes based on URL
US7225362B2 (en)*2001-06-112007-05-29Microsoft CorporationEnsuring the health and availability of web applications
US20040034855A1 (en)*2001-06-112004-02-19Deily Eric D.Ensuring the health and availability of web applications
US20030041131A1 (en)*2001-08-242003-02-27Microsoft CorporationSystem and method to automate the management of computer services and programmable devices
US7065740B2 (en)*2001-08-242006-06-20Microsoft CorporationSystem and method to automate the management of computer services and programmable devices
US6950878B2 (en)*2001-09-052005-09-27Pluris, Inc.Method and apparatus for performing a software upgrade of a router while the router is online
US20030177209A1 (en)*2001-09-052003-09-18Kwok Raymond Wai-ManMethod and apparatus for performing a software upgrade of a router while the router is online
EP1444593A4 (en)*2001-09-052007-10-24Pluris Inc METHOD AND APPARATUS FOR UPGRADING THE SOFTWARE OF A ROUTER IN OPERATION
US6535924B1 (en)*2001-09-052003-03-18Pluris, Inc.Method and apparatus for performing a software upgrade of a router while the router is online
US6957366B1 (en)*2001-09-282005-10-18Bellsouth Intellectual Property CorporationSystem and method for an interactive web-based data catalog for tracking software bugs
US7837556B2 (en)2001-09-282010-11-23IgtDecoupling of the graphical presentation of a game from the presentation logic
US8251807B2 (en)2001-09-282012-08-28IgtGame development architecture that decouples the game logic from the graphics logic
US7931533B2 (en)2001-09-282011-04-26IgtGame development architecture that decouples the game logic from the graphics logics
US7988554B2 (en)2001-09-282011-08-02IgtGame development architecture that decouples the game logic from the graphics logic
US8708828B2 (en)2001-09-282014-04-29IgtPluggable modular gaming modifiers and configuration templates for gaming environments
US7565402B2 (en)2002-01-052009-07-21Eric SchneiderSitemap access method, product, and apparatus
US8057298B2 (en)2002-03-122011-11-15IgtVirtual player tracking and related services
US8597116B2 (en)2002-03-122013-12-03IgtVirtual player tracking and related services
US8556709B2 (en)2002-03-122013-10-15IgtVirtual player tracking and related services
US8628413B2 (en)2002-03-122014-01-14IgtVirtual gaming peripherals for a gaming machine
US7225296B2 (en)2002-03-222007-05-29Microsoft CorporationMultiple-level persisted template caching
US7490137B2 (en)2002-03-222009-02-10Microsoft CorporationVector-based sending of web content
US7159025B2 (en)2002-03-222007-01-02Microsoft CorporationSystem for selectively caching content data in a server based on gathered information and type of memory in the server
US20030182390A1 (en)*2002-03-222003-09-25Bilal AlamSelective caching of servable files
US7313652B2 (en)2002-03-222007-12-25Microsoft CorporationMulti-level persisted template caching
US20070106702A1 (en)*2002-03-222007-05-10Microsoft CorporationSelective Caching of Servable Files Based at Least in Part on a Type of Memory
US7918730B2 (en)2002-06-272011-04-05IgtTrajectory-based 3-D games of chance for video gaming machines
US20040048667A1 (en)*2002-09-102004-03-11Rick RoweMethod and apparatus for managing gaming machine code downloads
US20070026938A1 (en)*2002-09-102007-02-01IgtMethod and apparatus for managing gaming machine code downloads
US7399229B2 (en)2002-09-102008-07-15IgtMethod and apparatus for managing gaming machine code downloads
US8083585B2 (en)2002-09-102011-12-27IgtApparatus and method for copying gaming machine configuration settings
US8079909B2 (en)2002-09-102011-12-20IgtMethod and apparatus for managing gaming machine code downloads
US20040048668A1 (en)*2002-09-102004-03-11Bill BrosnanApparatus and method for copying gaming machine configuration settings
US8460096B2 (en)2002-09-102013-06-11IgtApparatus and method for copying gaming machine configuration settings
US20080248880A1 (en)*2002-09-102008-10-09IgtMethod and apparatus for managing gaming machine code downloads
US7131909B2 (en)2002-09-102006-11-07IgtMethod and apparatus for managing gaming machine code downloads
US20040060047A1 (en)*2002-09-242004-03-25Inrange Technologies CorporationMethod and apparatus for downloading executable code in a non-disruptive manner
US7234056B2 (en)2002-09-242007-06-19Inrange Technologies Corp.Method and apparatus for downloading executable code in a non-disruptive manner
WO2005041030A1 (en)*2002-09-242005-05-06Inrange Technologies CorporationMethod and apparatus for downloading executable code in a non-disruptive manner
US20090133009A1 (en)*2002-09-242009-05-21Naresh TalatiMethod and apparatus for downloading executable code in a non-disruptive manner
US20040163233A1 (en)*2003-02-262004-08-26Stefan GernhardtMethods of forming electrical connections within ferroelectric devices
US20040253956A1 (en)*2003-06-122004-12-16Samsung Electronics Co., Ltd.System and method for providing an online software upgrade in load sharing servers
US7356577B2 (en)*2003-06-122008-04-08Samsung Electronics Co., Ltd.System and method for providing an online software upgrade in load sharing servers
US20050010575A1 (en)*2003-07-092005-01-13Arthur PenningtonTransactional processing system
US20050036443A1 (en)*2003-08-132005-02-17Samsung Electronics Co., Ltd.Apparatus and method for performing an online software upgrade of resource servers
US7379419B2 (en)*2003-08-132008-05-27Samsung Electronics Co., Ltd.Apparatus and method for performing an online software upgrade of resource servers
US20050076333A1 (en)*2003-10-072005-04-07Nortel Networks LimitedMethod of installing a software release
US20050153778A1 (en)*2004-01-142005-07-14Dwayne NelsonMethods and apparatus for gaming data downloading
US20050223372A1 (en)*2004-04-012005-10-06Borchers Gregory EMethods and systems for firmware download configuration
US20050283441A1 (en)*2004-06-212005-12-22Ipolicy Networks, Inc., A Delaware CorporationEfficient policy change management in virtual private networks
US7908047B2 (en)*2004-06-292011-03-15General Electric CompanyMethod and apparatus for run-time incorporation of domain data configuration changes
US20050288832A1 (en)*2004-06-292005-12-29Smith Brian SMethod and apparatus for run-time incorporation of domain data configuration changes
US7389505B2 (en)2004-07-302008-06-17Extreme Networks, Inc.Method and apparatus for modifying software
US20060026590A1 (en)*2004-07-302006-02-02Anna BerenbergMethod and apparatus for modifying software
WO2006014887A3 (en)*2004-07-302006-05-04Extreme Networks IncMethod and apparatus for modifying software
US7555751B1 (en)*2004-08-112009-06-303Com CorporationMethod and system for performing a live system upgrade
US20060047532A1 (en)*2004-08-312006-03-02Microsoft CorporationMethod and system to support a unified process model for handling messages sent in different protocols
US20060047818A1 (en)*2004-08-312006-03-02Microsoft CorporationMethod and system to support multiple-protocol processing within worker processes
US20080320503A1 (en)*2004-08-312008-12-25Microsoft CorporationURL Namespace to Support Multiple-Protocol Processing within Worker Processes
US7418719B2 (en)2004-08-312008-08-26Microsoft CorporationMethod and system to support a unified process model for handling messages sent in different protocols
US7418709B2 (en)2004-08-312008-08-26Microsoft CorporationURL namespace to support multiple-protocol processing within worker processes
US7418712B2 (en)2004-08-312008-08-26Microsoft CorporationMethod and system to support multiple-protocol processing within worker processes
US20060080443A1 (en)*2004-08-312006-04-13Microsoft CorporationURL namespace to support multiple-protocol processing within worker processes
US20060075076A1 (en)*2004-09-302006-04-06Microsoft CorporationUpdating software while it is running
US8146073B2 (en)*2004-09-302012-03-27Microsoft CorporationUpdating software while it is running
US10877852B2 (en)2005-06-242020-12-29Catalogic Software, Inc.Instant data center recovery
US9983951B2 (en)2005-06-242018-05-29Catalogic Software, Inc.Instant data center recovery
US20130086347A1 (en)*2005-06-242013-04-04Syncsort IncorporatedSystem and method for virtualizing backup images
US9378099B2 (en)2005-06-242016-06-28Catalogic Software, Inc.Instant data center recovery
US9329941B2 (en)*2005-06-242016-05-03Catalogic Software, Inc.System and method for virtualizing backup images
US8388448B2 (en)2005-07-012013-03-05IgtMethods and devices for downloading games of chance
US9314698B2 (en)2005-09-122016-04-19IgtDistributed game services
US10546459B2 (en)2005-09-122020-01-28IgtMethod and system for instant-on game download
US10434410B2 (en)2005-09-122019-10-08IgtDistributed game services
US8651956B2 (en)2005-09-122014-02-18IgtMethod and system for instant-on game download
US8287379B2 (en)2005-09-122012-10-16IgtDistributed game services
US20070180206A1 (en)*2006-01-182007-08-02Craft Julie LMethod of updating a duplicate copy of an operating system on the same disk
US20080256528A1 (en)*2006-08-152008-10-16Alcatel LucentSoftware replacement in a stream processing system
US8543837B2 (en)2006-09-132013-09-24IgtMethod of randomly and dynamically checking configuration integrity of a gaming system
US8117461B2 (en)2006-09-132012-02-14IgtMethod of randomly and dynamically checking configuration integrity of a gaming system
US20080076547A1 (en)*2006-09-132008-03-27IgtMethod of randomly and dynamically checking configuration integrity of a gaming system
US9373219B2 (en)2006-09-132016-06-21IgtSystem for randomly and dynamically checking configuration integrity of a gaming system
DE102007041653A1 (en)*2007-09-032009-03-05Abb Research Ltd. Apparatus and method for performing server software updates in a distributed computer system having at least two servers
US8276136B2 (en)*2007-12-112012-09-25Red Hat, Inc.Transparent configuration of a network appliance
US20090150522A1 (en)*2007-12-112009-06-11Schneider James PTransparent configuration of a network appliance
US20090247254A1 (en)*2008-03-252009-10-01IgtPhysics modeling for gaming machine displays
US11113045B2 (en)2008-05-292021-09-07Red Hat, Inc.Image install of a network appliance
US20100099491A1 (en)*2008-10-172010-04-22IgtPost certification metering for diverse game machines
US10235832B2 (en)2008-10-172019-03-19IgtPost certification metering for diverse game machines
US20120011494A1 (en)*2010-07-072012-01-12Canon Kabushiki KaishaInformation processing apparatus, method for controlling the same, and storage medium
US8799887B2 (en)*2010-07-072014-08-05Canon Kabushiki KaishaInformation processing apparatus, method for controlling the same, and storage medium
WO2012134475A1 (en)*2011-03-312012-10-04Alcatel-Lucent Usa Inc.Petrofitting a processor cluster
CN102799452A (en)*2012-06-292012-11-28深圳市安普尔科技有限公司Method and device for upgrading system software
CN102799452B (en)*2012-06-292015-10-07深圳市安普尔科技有限公司system software upgrading method and device
US9317269B2 (en)2012-09-282016-04-19Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US8949824B2 (en)2012-09-282015-02-03Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9235491B2 (en)2012-09-282016-01-12Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US9128792B2 (en)2012-09-282015-09-08Wal-Mart Stores, Inc.Systems and methods for installing, managing, and provisioning applications
US8739151B1 (en)2013-03-152014-05-27Genetec Inc.Computer system using in-service software upgrade
US9680965B2 (en)*2015-04-012017-06-13Alcatel-Lucent Usa Inc.Software upgrades for offline charging systems within a network
US10671377B2 (en)*2017-07-132020-06-02Vmware, Inc.Method to deploy new version of executable in node based environments

Also Published As

Publication numberPublication date
CA1326302C (en)1994-01-18

Similar Documents

PublicationPublication DateTitle
US5155837A (en)Methods and apparatus for software retrofitting
CA2280147C (en)Redundancy arrangement for telecommunications system
US5027269A (en)Method and apparatus for providing continuous availability of applications in a computer network
US4628508A (en)Computer of processor control systems
US5473771A (en)Fault-tolerant processing system architecture
EP0704141B1 (en)Fault tolerant service-providing apparatus for use in a telecommunications network
EP1705566A1 (en)Server system and online software update method
US3810121A (en)Timing generator circuit for central data processor of digital communication system
US5420917A (en)Automated recovery of telecommunication network elements
WO1985002923A1 (en)Control for a multiprocessing system program process
EP0598526B1 (en)Telecommunication system with improved reconfiguration capability
US6522732B1 (en)System and method of preserving stable calls during a split mode operation of telecommunications equipment
US6618819B1 (en)Sparing system and method to accommodate equipment failures in critical systems
US4493076A (en)Security system for a distributed control exchange
FI88219B (en) FOERFARANDE FOER DRIFT AV EN MULTIPROCESSOR-STYRRAEKNARE, SAERSKILT FOER CENTRALSTYRENHETEN VID ETT TELEFONFOERMEDLINGSSYSTEM
US6370654B1 (en)Method and apparatus to extend the fault-tolerant abilities of a node into a network
US20030163804A1 (en)Method for assuring compatibility and method for securing data within a distributed computer system
CN113176969A (en)Service providing method, device, equipment and computer readable storage medium
EP1107510A2 (en)Method and system of collecting and reporting statistical and status data in telecommunications equipment
US20040037298A1 (en)Device for optimizing peripheral devices in a telecommunication network
KR100241335B1 (en)Method for prohibiting the disc data backup for standby loading of exchange database backup system
KR100204566B1 (en) Transaction-based De-channel Data Processing System in Electronic Switching System and Its Processing Method
RodriguezTransaction network, telephones, and terminals: Transaction network operational programs
US7159006B2 (en)Method and apparatus for proprietary data interface in a distributed telecommunications system
JPS63272142A (en)Network hierarchization down load system

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:BELL COMMUNICATIONS RESEARCH, INC., NEW JERSEY

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNORS:LIU, CHENG-CHUNG;LO, DANIEL SHIH-CHIA;NAZIF, ZAHER A.;AND OTHERS;REEL/FRAME:005051/0558;SIGNING DATES FROM 19890223 TO 19890228

STCFInformation on status: patent grant

Free format text:PATENTED CASE

FEPPFee payment procedure

Free format text:PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAYFee payment

Year of fee payment:4

ASAssignment

Owner name:TELCORDIA TECHNOLOGIES, INC., NEW JERSEY

Free format text:CHANGE OF NAME;ASSIGNOR:BELL COMMUNICATIONS RESEARCH, INC.;REEL/FRAME:010263/0311

Effective date:19990316

FPAYFee payment

Year of fee payment:8

FPAYFee payment

Year of fee payment:12

ASAssignment

Owner name:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT

Free format text:SECURITY AGREEMENT;ASSIGNOR:TELCORDIA TECHNOLOGIES, INC.;REEL/FRAME:015886/0001

Effective date:20050315

ASAssignment

Owner name:TELCORDIA TECHNOLOGIES, INC., NEW JERSEY

Free format text:TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:019520/0174

Effective date:20070629

Owner name:TELCORDIA TECHNOLOGIES, INC.,NEW JERSEY

Free format text:TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:019520/0174

Effective date:20070629

ASAssignment

Owner name:WILMINGTON TRUST COMPANY, AS COLLATERAL AGENT, DEL

Free format text:SECURITY AGREEMENT;ASSIGNOR:TELCORDIA TECHNOLOGIES, INC.;REEL/FRAME:019562/0309

Effective date:20070629

Owner name:WILMINGTON TRUST COMPANY, AS COLLATERAL AGENT,DELA

Free format text:SECURITY AGREEMENT;ASSIGNOR:TELCORDIA TECHNOLOGIES, INC.;REEL/FRAME:019562/0309

Effective date:20070629

FEPPFee payment procedure

Free format text:PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text:PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

ASAssignment

Owner name:TELCORDIA TECHNOLOGIES, INC., NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST;ASSIGNOR:WILMINGTON TRUST COMPANY;REEL/FRAME:022408/0410

Effective date:20090220

Owner name:TELCORDIA TECHNOLOGIES, INC.,NEW JERSEY

Free format text:RELEASE OF SECURITY INTEREST;ASSIGNOR:WILMINGTON TRUST COMPANY;REEL/FRAME:022408/0410

Effective date:20090220

ASAssignment

Owner name:TELCORDIA LICENSING COMPANY LLC, NEW JERSEY

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TELCORDIA TECHNOLOGIES, INC.;REEL/FRAME:022878/0821

Effective date:20090616

ASAssignment

Owner name:TELCORDIA TECHNOLOGIES, INC.,NEW JERSEY

Free format text:RELEASE;ASSIGNOR:WILMINGTON TRUST COMPANY, AS COLLATERAL AGENT;REEL/FRAME:024515/0622

Effective date:20100430

Owner name:TELCORDIA TECHNOLOGIES, INC., NEW JERSEY

Free format text:RELEASE;ASSIGNOR:WILMINGTON TRUST COMPANY, AS COLLATERAL AGENT;REEL/FRAME:024515/0622

Effective date:20100430

ASAssignment

Owner name:TTI INVENTIONS B LLC, DELAWARE

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TELCORDIA LICENSING COMPANY, LLC;REEL/FRAME:027532/0110

Effective date:20111102


[8]ページ先頭

©2009-2025 Movatter.jp