IE81040B1 - Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method - Google Patents

Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method

Info

Publication number
IE81040B1
IE81040B1 IE196891A IE196891A IE81040B1 IE 81040 B1 IE81040 B1 IE 81040B1 IE 196891 A IE196891 A IE 196891A IE 196891 A IE196891 A IE 196891A IE 81040 B1 IE81040 B1 IE 81040B1
Authority
IE
Ireland
Prior art keywords
computer
arrangement
write
changed
program
Prior art date
Application number
IE196891A
Other versions
IE911968A1 (en
Inventor
Joseph Rueff
Original Assignee
Landis & Gyr Betriebs Ag
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 Landis & Gyr Betriebs Ag filed Critical Landis & Gyr Betriebs Ag
Publication of IE911968A1 publication Critical patent/IE911968A1/en
Publication of IE81040B1 publication Critical patent/IE81040B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Document Processing Apparatus (AREA)
  • Electrotherapy Devices (AREA)
  • Oscillators With Electromechanical Resonators (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The two computer programs are used for operating the computer arrangement (8). An associated source version of the two computer programs is in each case generated at different times in a central processing unit and converted by means of a computer arrangement of the latter into the associated computer program of the device. All bytes of the computer program not yet changed are stored in a random-access memory (17). Of the content of the changed computer program, only all changed bytes are transferred from the central processing unit to the device, supplemented by information items with regard to the addresses of the changed bytes. The changed bytes are stored at their respective addresses, also transmitted, in the random-access memory (17) where, together with the bytes of the computer program which have remained unchanged and already exist in the random-access memory (17), they form the changed computer program. The computer arrangement (8) also contains a modem (9), a series/parallel converter (10), a central processor (11), two more random-access memories (12, 13), a change-over switch (14), a non-volatile memory (16) and various bus connections (15, 18, 19). The method avoids inadmissibly long transmission times and prevents the overview of the various program variants in operation and the current status of the program documentation from being lost. <IMAGE>

Description

Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method The invention relates to a method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program as set forth in the classifying portion of claim 1, and an arrangement for carrying out the method.
Methods and arrangements of that kind are used for the central management of the modification service of computer programs which are used in technical apparatuses and which generally have to be changed from time to time, in the course of time, in order to adapt them to new apparatus requirements. The apparatuses are for example telephone coin collection stations in a public telephone network, at which for example charging processes used hitherto have to be altered from time to time, or new services have to be offered.
While changes generally do not cause the manufacturer of the apparatus major difficulties in terms of installation of new items of equipment, they generally represent a major problem in regard to apparatuses which are already in use, as, because of their large number and because of the great distances between the apparatuses, they should not be re-programmed on site but ideally centrally and by a remote procedure from a central unit, for example by way of a telephone network. In that case however complete transmission of the new program which is drawn up in a machine language from the central unit to the apparatus requires an unacceptably long transmission time which absolutely has to be avoided as during that period of time it is not possible for the apparatus to be involved in normal useful operation, for example handling telephone conversations.
The invention is based on the problem of providing a method and an arrangement of the kind set forth in the opening part of this specification, in which a central change can be effected from a central unit in a high level language in the computer programs stored in the apparatuses, without in that respect unacceptably long transmission times between the central unit and the apparatuses being required and without losing an overview over the various program variants in operation, as well as the present state of the program documentation.
In accordance with the invention the specified problem is solved by the features recited in the characterising portion of claim 1.
Advantageous configurations of the invention are set forth in the subsidiary claims.
An embodiment of the invention is described in greater detail hereinafter and illustrated in the drawing in which: Figure 1 is a block circuit diagram of a transmission system, and Figure 2 is a block circuit diagram of a computer arrangement.
The transmission system shown in Figure 1 includes a plurality of, for example, five apparatuses 1, 2, 3, 4 and 5 and a cannon central unit 6, which are all arranged distributed in near or far relationship in spatial terms. The central unit 6 is connected to the apparatuses 1 to 5 by way of a transmission network 7, for example a telephone network. Transmission signals are transmitted between the central unit 6 and the apparatuses 1 to 5 in both transmission directions. If the transmission signals have to be transmitted over greater distances, they are preferably nodulated signals and they are then transmitted in the form of amplitude-, frequency- or phase-modulated signals. It is assumed hereinafter that the transmission signals are modulated signals. If the apparatuses 1 to 5 are modem telephone coin collection stations, then the central unit 6 is a common telephone exchange and the transmission network 7 is the telephone network.
The apparatuses 1 to 5 each contain a respective computer arrangement 8 which preferably has a microcomputer and the basic structure of which is shown in simplified form in Figure 2, in the situation where the transmission signals are modulated signals. The central unit 6 also includes a computer arrangement of a simi lar structure. Each computer arrangement 8 has a modem 9 (Modulator / Demodulator) and also includes· a series/parallel converter 10, a central processor 11 (CPU: Central Processor Unit), a first write/read memory 12, a second write/read memory 13 and a change-over switching device 14, which are connected together by way of bus connections 15. Finally the computer arrangement 8 also has a non-volatile memory 16 and a third write/read memory 17 which are each connected by way of respective bus connections 18 and 19 to first and second bus connections of the change-over switching device 14. The write/read memories 12, 13 and 17 are for example each an RAM (Random Access Memory) or an EEPROM (Electrically Erasable Programmable Read Only Memory) and the non15 volatile memory 16 is for example an EPROM (Electrically Programrable Read Only Memory). The three write/read memories 12, 13 and 17 are shown in Figure 2 as separate memories, but they may also all be three different parts of a single ccmnon write/read memory. All bus connections 15 and the bus connection 19 are operated in both transmission directions while the bus connection 18 is operated only in a transmission direction which is away from the non-volatile memory 16. A serial input/output of the series/parallel converter IO is connected to a first terminal of the modem 9 while a parallel input/output of the series/parallel converter 10 is connected to the bus connections 15. A second terminal of the modem 9 forms an input/output of the ccnputer arrangement 8 and is connected to the transmission network 7, in a manner which is not shown herein.
The computer programs all serve for operation of the computer arrangements 8 of the various apparatuses 1 to 5 and at a given time in spite of the identity of the apparatuses 1 to 5 may all be different for same. In addition the computer programs can be altered in different ways in the course of time. The service for altering the computer program of each of the apparatuses 1 to 5 is preferably centrally managed by the central unit 6, in particular when there are many apparatuses and/or the apparatuses are arranged at very great distances from each other in spatial terms, such as for exanple in a network of telephone coin collection stations. The ccmputer arrangement 8 of each of the apparatuses 1 to 5 is hereinafter always operated with that computer program which is drawn up in a machine language and which is just stored at the time in the write/read memory 17 of the computer arrangement 8 of the respective apparatus.
At the beginning, in installation of the central unit 6 and a certain number of the apparatuses 1 to 5, a first original computer program Χθ which is drawn up in the machine language and which is also referred to as the base program is stored unlosably and also unchangeably in the non-volatile memory 16 of the ccmputer arrangement of the apparatuses in question. The base program Χθ is a kind of first father program for the apparatuses in question. Then, for each of the apparatuses in question, when they are first brought into operation, under instructions from the central processor 11 of the computer arrangement 8 of the respective apparatus, the first original ccmputer program Χθ is automatically fed from the memory 16 by way of the changeover switching device 14 to the write/read memory 12 functioning as an intermediate memory, and is stored therein, in order then to be passed from the latter by way of the change-over switching device 14 which has now been switched over, to the write/read memory 17 of the computer arrangement 8 of the respective apparatus, for the purposes of storage therein. The first original computer program then remains stored in the write/read memory 17 and the associated computer arrangement 8 is correspondingly operated with that computer program, until the first original computer program Χθ is changed into a ccmputer program X1 at a first subsequent change in ccmputer program in respect of the apparatus in question.
After each of the apparatuses when already installed has first been brought into operation therefore the first original computer program Χθ which is drawn up in the machine language is stored on the one hand unchangeably in the memory 16 and on the other hand changeably in the write/read memory 17 of the computer arrangement 8 of the apparatuses in question.
In that connection the content of the write/read memory 13 serves in the apparatus in question to switch over the change-over switching device 14 at the correct time and at the same time to indicate to the computer arrangement 8 the position which the change-over switching device 14 is just occupying so that the computer arrangement 8 knows with which of the two memories 16 or 17 it then has to co-operate. In one position of the change-over switching device 14 the non-volatile memory 16 is connected to the write/read memories 12 and 13 by way of the bus connection 18, the change-over switching device 14 and the bus connections 15, while in the other position of the change-over switching device 14 the write/read memory 17 is connected to the write/read memories 12 and 13 by way of the bus connection 19, the change-over switching device 14 and the bus connections 15. After the arrangement is first set in operation, the change-over switching device 14 in the apparatus in question respectively occupies the last position and generally remains in that position for further operation of the apparatus in question so that, as already mentioned, the computer arrangement 8 thereof is always operated with the computer program which is stored in the write/read memory 17. It is only if, in the course of time, for any reason, for example a failure in feed voltage, the memory content of the write/read memory 17 is lost, that the change-over switching device 14 has to be switched back to the non-volatile memory 16 again and a kind of fresh start-up has to be simulated in order to transfer the memory content of the non-volatile memory 16 again into the write/read memory 17 which is now empty. The associated computer arrangement 8 is then temporarily operated with the first original computer program Χθ up to the moment at which the central program change service can bring the computer program stored in the write/read memory 17 up to the most recent state again.
In the course of time new additional apparatuses may be installed, which have the same or a different base program which however is always derived by means of at least one change from the base program Χθ which was first installed, and therefore represents a kind of son program thereof, while it itself is in the apparatus in question a father program for a first subsequently produced altered ccmputer program.
In addition, in the course of time, the base programs of all apparatuses 1 to 5 may be altered in different ways at different times from the central unit 6 so that at a certain moment in time the write/read memory 17 of the ccmputer arrangement 8 of the apparatuses 1 to 5 store the same or different computer programs which may all be changed ccmputer programs derived from the first original ccmputer program Χθ by alteration thereto. Each of those programs nay represent in the apparatus in question a father program for a first son program of the apparatus, which was subsequently derived by changing the father program.
The write/read memory 17 of the apparatus l stores for example at a given time a ccmputer program X^ which is drawn up in the machine language, for the apparatus 1, as the father program thereof, which has as a son program a changed ccmputer program which is also drawn up in the machine language. After the next ccmputer program change initiated from the central unit 6, that son program is stored instead of the ccmputer program in the write/read memory 17 of the apparatus 1. In that situation the tw computer programs X^ and X? each always serve for operation of the ccmputer arrangement 8 of the apparatus 1. The changed program X^ which is drawn up in the machine language is a result of a respective ccmputer program change which was carried out in a high level language in the central unit 6 and a subsequent transmission of items of information in respect of the changes which took place, between the central unit 6 and the apparatus 1.
The two computer programs and X^ in the machine language respectively correspond in the computer arrangement 8 of the central unit 6 to an associated source version and respectively produced in the central unit 6. The two source versions and are drawn up in the same high level language and are each produced at different times by means of the computer arrangement of the central unit 6 and converted into the respectively associated computer program and X^ respectively which is drawn up in the machine language and which is then stored in a write/read memory of the computer arrangement of the central unit 6.
The central unit 6 supplies the apparatus 1 with the newest state of the computer program applying in relation to the apparatus 1, either periodically or preferably upon enquiry from the apparatus 1. For that purpose for example the central unit 6 waits for a call from the apparatus 1, which then ascertains identification data such as for example the name and the last date of change of the computer program which is stored in it at that time, calls up the central unit 6 and transmits the ascertained identification data to the latter. On the basis of the identification data obtained, the central unit can recognise whether the newest valid version of the computer program is already in the apparatus 1 or not. If not, the central unit 6 supplies the apparatus 1 with information from which the apparatus 1 can then reconstruct its fresh computer program X^ which is drawn up in the machine language.
The modem computer programs of telephone coin collection stations contain from 40 to 60 kilobytes, the complete transmission of which over a telephone network at a rate of for exanple 1200 baud per second would require an unacceptably long transmission time during which the respective telephone coin collection station wrould not be available for telephone conversations. Therefore, to save on transmission time, only the difference between the computer programs X£ and X^ in the machine language and the addresses of changed bytes in the computer program are transmitted between the central unit 6 and the apparatus 1 in which the computer program is to be changed. Therefore, of the content of the changed computer program X^, only all changed bytes are transmitted from the central unit 1 to the apparatus 1, supplemented by information in respect of the addresses of the altered bytes. That greatly reduces the quantity of the information to be transmitted as the above-mentioned difference is significantly smaller than the entire computer program X? · The bytes to be transmitted are transmitted bit-wise in a serial mode, for example as modulated pulse signals, and are first demodulated by means of the modem 9 after they are received in the apparatus 1, and are then converted by means of the series/parallel converter 10 back into parallel bits which are then preferably passed by way of the bus connections 15 to the write/read memory 12, which serves as a buffer memory, of the computer arrangement 8 of the apparatus 1 in which therefore the transmitted changed bytes of the computer program X? and the co-transmitted addresses thereof are put into intermediate storage.
Then, in the apparatus 1 where, up to that moment, all bytes of the computer program which has not yet been changed were stored in the write/read memory 17 of the computer arrangement 8 of the apparatus, the fresh changed computer program X^ which is drawn up in the machine language is reconstructed from the received difference and the received addresses of the changed bytes, insofar as in succession in time all changed bytes, under their respective co-transmitted addresses, are put into intermediate storage in the write/read memory 17 of the computer arrangement 8 of the apparatus 1 in order there to form the changed computer program X_ in the machine language, together with the bytes of the computer program which have remain unchanged and which are already present in the write/read memory 17 and which remain stored at their respective previous addresses.
The changed computer program which is finally stored in the 5 write/read memory 17 therefore comprises on the one hand the bytes, which have not been changed and not transmitted, of the machine-language computer program stored previously in the write/read memory 17, and on the other hand the changed bytes which were produced in the central unit 6 and transmitted to the apparatus 1, of the changed computer program X2 which is drawn up in the machine language, with the changed bytes each being stored at their respectively associated co-transmitted addresses in the write/read memory 17 of the apparatus 1.

Claims (5)

1. A method of changing a computer program (X^) which is stored in a computer arrangement (8) of an apparatus (1) into a changed computer program ^), wherein both computer programs (X^, x 2 , are drawn up in a s - machine language and serve for operation of the computer arrangement (8) and wherein at respective different times a respectively associated source version (Q^ and Q^) of the two computer programs (X^, X 2 ) is produced in a central unit (6) and converted by means of a computer arrangement of the latter into the associated machine-language ccmputer zo program (X^ and respectively) of the apparatus (1), characterised in that all bytes of the ccmputer program () which has not yet been changed are stored in a write/read memory (17) of the ccmputer arrangement (8) of the apparatus (1), that of the content of the changed ccmputer program (X?) only all changed bytes are transmitted by the >7 central unit (6) to the apparatus (1), supplemented by information in respect of the addresses of the changed bytes, and that the changed bytes are stored in the write/read memory (17) of the computer arrangement (8) of the apparatus (1) at their respective co-transmitted addresses in order there to form the machine-language changed ccmputer program (X 2 ), ίυ together with the bytes of the ccmputer program (X^) which are already present in the write/read memory (17) and which have remain unchanged.
2. A method according to claim 1 characterised in that the transmitted changed bytes and the co-transmitted addresses thereof are put into intermediate storage in a further write/read memory (12) of the ί sf computer arrangement (8) of the apparatus (1) before the changed bytes are stored at their respective addresses in the write/read memory (17, of the computer arrangement (8) of the apparatus (1).
3. A method according to claim 1 or claim 2 characterised in that the computer program (X^) which is stored in the write/read memory (17) of the ccmputer arrangement (8) of the apparatus (1) is already a changed computer program of a first original computer program (Χθ) which is drawn up in the machine language.
4. A method according to claim 3 characterised in that the first 5 machine-language computer program (Χθ) is stored upon installation of the apparatus (1) in a non-volatile memory (16) of the ccmputer arrangement (8) of the apparatus (1) and then when the apparatus (1) is first brought into operation is transferred into the write/read memory (17) of the ccmputer arrangement (8) of the apparatus (1). 10 5. A method according to claim 4 characterised in that when the apparatus (L). is first brought into operation, under instructions from a central processor (11) of the computer arrangement (8) of the apparatus (1) the first original ccmputer program (Χθ) which is stored in the nonvolatile memory (16) is passed by way of a change-over switching device 15 (14) to a further write/read memory (12) and is stored therein in order then to be passed by the further write/read memory (12) by way of the change-over switching device (14) which has now been switched over, to the write/read memory (17) of the computer arrangement (8) of the apparatus (1) for the purposes of storage therein. 20 6. An arrangement for carrying out the method according to one of claims 1 to 5 comprising a central unit (6), a transmission network (7) and a plurality of apparatuses (1; 2; 3; 4; 5) which are bidirectionally connected to the central unit (6) by way of the transmission network (7), each having a computer arrangement (8) which linked by means of 25 connections (15; 18; 19) includes a central processor (11) and three write/read memories (12; 13; 17), characterised in that the third write/read memory (17) contains a ccnputer program (xp which is used for operation of the computer arrangement (8) and which is drawn up in machine language, the computer arrangement (8) is adapted at least to receive data communicated by means of the transmission network (7) from the central unit (6) and to return identification data of the computer program (X^) stored in the third write/read memory (17) to the central unit (6), wherein the first write/read memory (12) serves at least as an intermediate memory for the received data, the central unit (6) has means for interrogation of the identification data of the computer program (X^) used in the third write/read memory (17) of the apparatuses (1; 2; 3; 4; 5) and means for sending the data, wherein the data include only changed bytes between the computer program (X^) established on the basis of the identification data and the fresh computer program (X^} and addresses of the changed bytes, and the computer arrangement (8), after reception of the data and after setting of the changed bytes from the intermediate memory (12), at the addresses thereof in the third write/read memory (17), has the changed fresh computer program (X^) produced from the computer program (X^) in the third write/read memory (17). 7. An arrangement according to claim 6 characterised in that the computer arrangement (8) has a non-volatile memory (16) with a written-in base program (Χθ) and that the computer arrangement (8) is adapted after a loss of the memory content of the third write/read memory (17) to copy the base program (Χθ) into the third write/read memory (17) as the computer program (X^). 8. An arrangement according to claim 6 characterised in that the three write/read memories (12; 13; 17) are parts of a single common write/read memory. 9. An arrangement according to one of claims 6 to 8 characterised in that the apparatuses (1; 2; 3; 4; 5) are telephone coin collection stations, the central unit (6) is a comnon telephone exchange and the transmission network (7) is a telephone network.
5. 10. A method according to claim 1, substantially as herein described with reference to the accompanying drawings.
IE196891A 1990-08-28 1991-06-10 Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method IE81040B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CH279490 1990-08-28

Publications (2)

Publication Number Publication Date
IE911968A1 IE911968A1 (en) 1992-03-11
IE81040B1 true IE81040B1 (en) 1999-11-03

Family

ID=4241738

Family Applications (1)

Application Number Title Priority Date Filing Date
IE196891A IE81040B1 (en) 1990-08-28 1991-06-10 Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method

Country Status (7)

Country Link
EP (1) EP0472813B1 (en)
AT (1) ATE174701T1 (en)
DE (1) DE59109077D1 (en)
ES (1) ES2126556T3 (en)
IE (1) IE81040B1 (en)
PT (1) PT98343B (en)
TR (1) TR25400A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2282990T3 (en) 1993-06-15 2007-10-16 British Technology Group Inter-Corporate Licensing Limited TELECOMMUNICATIONS SYSTEM.

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2923427A1 (en) * 1979-06-09 1980-12-18 Telefonbau & Normalzeit Gmbh Program modification in computer controlled telephone exchange - uses service program to execute modifications in two phases with computer inhibited during operation on previous instructions
US4425618A (en) * 1981-11-23 1984-01-10 Bell Telephone Laboratories, Incorporated Method and apparatus for introducing program changes in program-controlled systems
CA1259138A (en) * 1985-03-11 1989-09-05 Sadanobu Maruyama Method of compiling high level language statements into low level language instruction sets
US4864569A (en) * 1987-11-25 1989-09-05 Westinghouse Electric Corp. Software verification and validation configuration management system

Also Published As

Publication number Publication date
EP0472813B1 (en) 1998-12-16
ATE174701T1 (en) 1999-01-15
DE59109077D1 (en) 1999-01-28
IE911968A1 (en) 1992-03-11
PT98343B (en) 1999-01-29
ES2126556T3 (en) 1999-04-01
PT98343A (en) 1993-07-30
TR25400A (en) 1993-03-01
EP0472813A1 (en) 1992-03-04

Similar Documents

Publication Publication Date Title
EP0396589B1 (en) Method and apparatus for automatic loading of a data set in a node of a communication network
US5341498A (en) Database management system having first and second databases for automatically modifying storage structure of second database when storage structure of first database is modified
EP0235199A1 (en) Communication protocol selection for data processing system.
EP1605383A2 (en) Information offering system
WO1986001018A1 (en) Database backup method
US6539220B1 (en) Radio base station program update method and apparatus not requiring update host computer
CN100538634C (en) The method and apparatus of the firmware on the network element that is installed in communication network of upgrading
US5459719A (en) Data transmission control method and station used for the same
NL8803102A (en) METHOD FOR ESTABLISHING A DATA CONNECTION BETWEEN TWO TERMINALS AND A TERMINAL SUITABLE FOR THIS METHOD
US6836793B1 (en) Method of distributing data packets of system software where the receiving units acknowledge only proper reception
EP0436932A2 (en) A loop data link system and a station number setting method
US6415144B1 (en) Security system and method
CA2051817A1 (en) An arrangement and method of downloading data to a plurality of destinations in a digital telephone system
JPH0318398B2 (en)
JP2001516543A (en) Method for preventing data inconsistency between master exchange data and backup exchange data
US5299316A (en) Method of automatically editing data for managing processor that carries out distributed control and a system using the same
IE81040B1 (en) Method of changing a computer program stored in a computer arrangement of an apparatus into a changed computer program and arrangement for carrying out the method
US5907674A (en) Method for removing program-related errors in program-controlled communications systems
US6822941B1 (en) Method and network element for relaying event messages
GB1595449A (en) Method and apparatus for the transmission of information in digital form
Karhinen et al. Structuring design decisions for evolution
US7529268B1 (en) Multi-point electronic control system protocol
KR100208269B1 (en) Method for sharing operation codes between gsm and is-41 personal communication service exchange system
JPS60160295A (en) Program setting system of distributed control system
CN1006838B (en) Line condition data collection system in telephone exchange

Legal Events

Date Code Title Description
MM4A Patent lapsed