SE516806C2 - Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal - Google Patents

Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal

Info

Publication number
SE516806C2
SE516806C2 SE9901904A SE9901904A SE516806C2 SE 516806 C2 SE516806 C2 SE 516806C2 SE 9901904 A SE9901904 A SE 9901904A SE 9901904 A SE9901904 A SE 9901904A SE 516806 C2 SE516806 C2 SE 516806C2
Authority
SE
Sweden
Prior art keywords
version
software
current
radio terminal
indicator
Prior art date
Application number
SE9901904A
Other languages
Swedish (sv)
Other versions
SE9901904L (en
SE9901904D0 (en
Inventor
Hans Hall
Michael Eriksson
Gunnar Forsgren
Original Assignee
Ericsson Telefon Ab L M
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 Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Priority to SE9901904A priority Critical patent/SE516806C2/en
Publication of SE9901904D0 publication Critical patent/SE9901904D0/en
Priority to AU49688/00A priority patent/AU4968800A/en
Priority to CNB008107912A priority patent/CN1147190C/en
Priority to DE10084626T priority patent/DE10084626T1/en
Priority to JP2001500583A priority patent/JP2003501907A/en
Priority to PCT/SE2000/001015 priority patent/WO2000074412A1/en
Publication of SE9901904L publication Critical patent/SE9901904L/en
Publication of SE516806C2 publication Critical patent/SE516806C2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention is concerned with a method of downloading software into a radio terminal having at least two pieces of the software, one of which works as the current version. The capability of functioning of the current version of the software in the radio terminal is determined when the terminal is turned on. Another version of the software is downloaded if it is notified that there is a new version or if the current version does not work. If the current version is working, it is stored before a new version is downloaded. The capability of functioning of a current version of the software is tested before use. The result of the test is indicated in such a form that the capability of functioning of said tested version of the software can be determined. The invention is also concerned with a radio terminal comprising means to carry out the method of the invention.

Description

W 15 20 25 30 35 516 806 2 I vissa situationer år det ytterst viktigt att radioterminalen, särskilt om det rör sig om en mobiltelefon, fungerar, t.ex. i situationer med nödanrop för användarens säkerhet. Programvaran måste därför vara mycket robust. Om programvaran inladdas över ett trådlöst eller annat nät och uppdateras i radioterminalen är det möjligt att en ny version innehåller fel och kanske inte startar rätt eller till och med inte startar alls. Detta skulle kunna inträffa om programvaran skrivs av en tredje part. Dessutom skulle programvaran kunna vara ganska avancerad så att det kunde vara svårt att, från en programmerares synpunkt, säga när applikationen verkligen har börjat, även om en kontrollsum-process för själva inladdningen har ägt rum. Även om en version antas fungera kan själva programmet ha blivit förvanskat på något sätt. W 15 20 25 30 35 516 806 2 In certain situations it is extremely important that the radio terminal, especially in the case of a mobile telephone, works, e.g. in emergency call situations for user safety. The software must therefore be very robust. If the software is loaded over a wireless or other network and updated in the radio terminal, a new version may contain errors and may not start correctly or may not start at all. This could happen if the software is written by a third party. In addition, the software could be quite advanced so that it could be difficult, from a programmer's point of view, to say when the application has really started, even if a checksum process for the actual download has taken place. Even if a version is assumed to work, the program itself may have been distorted in some way.

Kontrollsumman kontrollerar endast om det från nätstyrenheten utsända programmet fortfarande befinner sig i samma form när det mottages av radioterminalen. Om programmet har fel vid nätstyrenheten överförs samma fel till radioterminalen.The checksum only checks if the program transmitted from the network controller is still in the same form when it is received by the radio terminal. If the program has an error at the network controller, the same error is transmitted to the radio terminal.

Om en version av programvaran som installerats förefaller att inte fungera bör det finnas någon metod för att uppnå en fungerande version. Det är även ett problem att veta när applikationsprogramvaran har startats framgångsrikt.If a version of the installed software does not appear to work, there should be a method to achieve a working version. It is also a problem to know when the application software has started successfully.

SAMANFATTNING AV UPPFINNINGEN Ett syfte med uppfinningen är att åstadkomma ett sätt och en apparat varmed användaren alltid vet om den aktuella programvaran i radioterminalen fungerar.SUMMARY OF THE INVENTION An object of the invention is to provide a method and apparatus with which the user always knows whether the current software in the radio terminal is working.

Ett annat syfte med uppfinningen är att åstadkomma ett sätt och en apparat för laddning och installering av programvara i radioterminalen på sådant sätt att ovanstående syfte uppfylls.Another object of the invention is to provide a method and an apparatus for loading and installing software in the radio terminal in such a manner that the above object is fulfilled.

Sättet enligt uppfinningen inladdar programvara i en radioterminal med åtminstone två bitar programvara, av vilka en fungerar som den aktuella versionen. Den aktuella programvaruversionens funktionsförmåga i radioterminalen bestäms med hjälp av frånvaro eller närvaro av en indikator som visar programvarusituationen i terminalen. Om den aktuella versionen ej fungerar väljs en annan W U 20 25 30 35 516 3806 version av programvaran för inladdning. Därefter inladdas den valda andra programvaruversionen i radioterminalen för att bilda den aktuella versionen. Den aktuella programvaruversionens funktionsförmåga provas och resultatet av provet indikeras genom närvaro eller frånvaro av en särskild indikator, genom vilken indikator funktionsförmägan hos den aktuella programvaruversionen i terminalen kan noteras.The method according to the invention loads software into a radio terminal with at least two pieces of software, one of which functions as the current version. The functionality of the current software version in the radio terminal is determined by the absence or presence of an indicator that shows the software situation in the terminal. If the current version does not work, another W U 20 25 30 35 516 3806 version of the download software is selected. The selected second software version is then loaded into the radio terminal to form the current version. The functionality of the current software version is tested and the result of the test is indicated by the presence or absence of a special indicator, through which indicator the performance of the current software version in the terminal can be noted.

Såsom angivits ovan kan den aktuella versionen vara den som fanns i terminalen till att börja med, när terminalen sattes på, eller kan vara en annan version eller en ny version. Resultatet av provet anges i sådan form att funktionsförmägan hos den provade programvaruversionen kan bestämmas.As stated above, the current version may be the one that was in the terminal to begin with, when the terminal was turned on, or may be a different version or a new version. The result of the test is stated in such a form that the performance of the tested software version can be determined.

Uppfinningen kan således även innefatta metoder där åtgärden att notera existensen av en ny version utesluts, liksom metoder där denna åtgärd är en nödvändig åtgärd.The invention may thus also include methods in which the measure of noting the existence of a new version is excluded, as well as methods in which this measure is a necessary measure.

En version kan alternativt även provas mer än en gång innan en annan version installeras.Alternatively, a version can also be tested more than once before another version is installed.

Apparaten enligt uppfinningen utgörs huvudsakligen av en radioterminal uppvisande åtminstone två programvarubitar, av vilka en fungerar som aktuell version. Radioterminalen innefattar organ för att kontrollera den aktuella programvaruversionens i radioterminalen funktionsförmåga, notera en eventuell existens av en ny programvaruversion, välja en annan programvaruversion för inladdning för att ersätta den aktuella versionen, lagra den aktuella programvaruversionen, ladda in en annan programvaruversion i radioterminalen för att bilda den aktuella versionen, prova den aktuella programvaruversionens funktionsförmåga, samt indikera resultatet av nämnda provning i sådan form att den provade programvaruversionens funktionsförmåga kan kontrolleras.The apparatus according to the invention mainly consists of a radio terminal having at least two pieces of software, one of which functions as the current version. The radio terminal includes means for checking the functionality of the current software version in the radio terminal, noting the possible existence of a new software version, selecting a different software version for download to replace the current version, storing the current software version, loading another software version for the radio terminal the current version, test the performance of the current software version, and indicate the result of the said test in such a way that the performance of the tested software version can be checked.

Här avser begreppet "inladdning" både inladdning på avstånd och installering och ominstallering och omladdning från annat minne.Here, the term "charging" refers to both remote charging and installation and reinstallation and recharging from other memory.

Begreppet "aktuell version" innebär den aktiva programvaruversionen i terminalen. De andra lagrade versionerna är 10 15 20 25 30 35 516 806 inaktiva. Det bör påpekas att när en ny version finns tillgänglig är det inte nödvändigt att ladda in den omedelbart. Om den laddas in är det ej nödvändigt att starta den omedelbart och detta kan ske senare, t.ex. nästa gäng terminalen sätts på. Den nya programvaruversionen kan vidare vara en senare programvaruversion, en bättre version eller en förbättrad version. Idén är att den möjliga existensen av en "ny" version noteras sä att det skulle kunna vara möjligt att ladda in någon önskad version som ej redan finns lagrad i terminalen.The term "current version" means the active software version in the terminal. The other stored versions are 10 15 20 25 30 35 516 806 inactive. It should be noted that when a new version is available, it is not necessary to download it immediately. If it is loaded, it is not necessary to start it immediately and this can happen later, e.g. the next bunch of terminals are turned on. The new software version can also be a later software version, a better version or an improved version. The idea is that the possible existence of a "new" version is noted so that it could be possible to load any desired version that is not already stored in the terminal.

I det följande presenteras ytterligare, föredragna kännetecken hos sättet och apparaten enligt uppfinningen.In the following, further, preferred features of the method and apparatus according to the invention are presented.

När radioterminalen sätts pä är det första som företrädesvis görs att bestämma om den aktuella programvarufunktionen fungerar.When the radio terminal is switched on, the first thing that is preferably done is to determine if the current software function works.

Bestâmningen kan ske genom identifiering av närvaron eller frånvaron av en indikator som visar programvarusituationen och har införts i terminalen. Indikatorn kan utgöra resultatet av nämnda prov, som indikeras av närvaron eller frånvaron av en särskild indikator som kan hanteras av ett objekt i programmet.The determination can be made by identifying the presence or absence of an indicator that shows the software situation and has been entered in the terminal. The indicator may be the result of said test, which is indicated by the presence or absence of a particular indicator which can be handled by an object in the program.

Tecknet kan vara ett beständigt objekt. Om objektet existerar är det känt att föregående bootning för att ladda in en ny version av programvaran eller installera en annan version misslyckades. En sådan utföringsform är även möjlig, där frànvararon av tecken innebär att den aktuella versionen ej fungerar. En version som antas fungera installeras då och metoden kan upprepas omedelbart eller senare tills resultatet av provet visar att den aktuella versionen hos terminalen fungerar. Metoden kan även upprepas nästa gång radioterminalen sätts pà, företrädesvis varje gäng terminalen sätts pà.The character can be a permanent object. If the item exists, it is known that the previous boot to load a new version of the software or install another version failed. Such an embodiment is also possible, where the absence of characters means that the current version does not work. A version that is assumed to work is then installed and the method can be repeated immediately or later until the result of the test shows that the current version of the terminal works. The method can also be repeated the next time the radio terminal is switched on, preferably each time the terminal is switched on.

Nämnda andra version av programvaran kan vara en tidigare lagrad äldre version, företrädesvis den föregående versionen som användes. Antalet för lagring avsedda versioner väljs genom att ta bort en eller flera äldre versioner, företrädesvis allteftersom nya versioner installeras. 10 15 20 25 30 35 516 806 5 Nämnda andra version som väljs för inladdning kan vara en ny programvaruversion om en sådan ny version finns enligt nämnda notering. Den andra mjukvaruversionen som väljs för inladdning är en tidigare lagrad äldre version, om den aktuella aktiva versionen ej fungerar enligt nämnda bestämning och om det inte finns någon ny version eller om man inte vill installera den nya versionen.Said second version of the software may be a previously stored older version, preferably the previous version used. The number of versions intended for storage is selected by deleting one or more older versions, preferably as new versions are installed. 10 15 20 25 30 35 516 806 5 Said second version selected for download may be a new software version if such a new version is available according to said note. The other software version selected for download is a previously stored older version, if the current active version does not work according to the said provision and if there is no new version or if you do not want to install the new version.

Om det varaktiga objektet existerar när systemet bootas (eller ej existerar enligt det alternativa utförandet), utgör det ett tecken på att något blev fel sista gången. Såsom förklarats ovan installeras då en fungerande version för att bilda den aktuella versionen eller versionen provas åtminstone en gång till.If the durable object exists when the system is booted (or does not exist according to the alternative design), it is a sign that something went wrong the last time. As explained above, a working version is then installed to form the current version or the version is tested at least once more.

Vid en utföringsform kan nämnda andra programvaruversion som skall installeras som aktuell version vara en grundversion lagrad i ROM eller kan laddas in från tillverkarens server om ingen av de lagrade äldre versionerna eller den aktuella versionen fungerar.In one embodiment, said second software version to be installed as the current version may be a base version stored in ROM or may be loaded from the manufacturer's server if none of the stored older versions or the current version are working.

Vid vissa utföringsformer kan det, om så önskas, vara valfritt att grundversionen alltid kan installeras.In some embodiments, if desired, the basic version may always be installed.

Såsom antytts ovan indikeras resultatet av provet av närvaron eller frånvaron av en viss indikator som visar programvarusituationen i mobiltelefonen, genom vilken indikation den aktuella programvaruversionens funktionsförmåga i mobiltelefonen noteras.As indicated above, the result of the test of the presence or absence of a particular indicator indicating the software situation in the mobile telephone is indicated, by which indication the functionality of the current software version in the mobile telephone is noted.

Om funktionsförmàgan hos den installerade/inladdade programvarufunktionen anges genom frånvaro av nämnda särskilda indikator och den motsatta situationen med närvaro av denna indikator, avlägsnas indikatorn vid en utföringsform av uppfinningen när enligt provet en fungerande version av programvaran har startat. Vid en annan utföringsform uppdateras indikatorn varje gång funktionsprovet utförs för att visa antalet utförda prov eller för att identifiera den aktuella versionen av programvaran.If the performance of the installed / loaded software function is indicated by the absence of said particular indicator and the opposite situation in the presence of this indicator, the indicator is removed in an embodiment of the invention when according to the test a working version of the software has started. In another embodiment, the indicator is updated each time the function test is performed to show the number of tests performed or to identify the current version of the software.

Den andra programvaruversionen som valts för inladdning kan väljas på grundval av den uppdaterade indikatorn. Om indikatorn W U 20 25 30 35 516 806 6 exempelvis visar att provet utförts många gånger kan det vara tillrådligt att återladda en grundversion av programvaran.The second software version selected for download can be selected based on the updated indicator. For example, if the indicator W U 20 25 30 35 516 806 6 shows that the test has been performed many times, it may be advisable to reload a basic version of the software.

I stället för att ta bort objektet när ett prov har genomförts och därpå skapa ett nytt vid nästa prov uppdateras sålunda enligt en utföringsform av uppfinningen det existerande objektet för att ge information om antalet utförda prov, den aktuella programvaruversionen etc. Det kan bestämmas i förväg hur många gånger ett program skall provas innan en annan eller en grundversion skall installeras. Om indikatorn visar sig mer än en gång indikerar vanligen detta att något annat är fel och i detta fall kan det vara att föredra att installera den ovannämnda grundläggande första versionen redan i detta steg. Något skulle exempelvis ha kunnat gå fel när programmet lagrades i minnet. När det gäller en gruppsamtalskod skulle ett annat program kunnat förstöra den aktuella versionen. Kopieringen av filer i radioterminalen utgör en ytterligare möjlig orsak. Det kan därför även vara tillrådligt att prova samma program mer än en gång före installering av en tidigare version eller grundversionen.Thus, instead of removing the object when a test has been performed and then creating a new one at the next test, according to an embodiment of the invention, the existing object is updated to provide information about the number of tests performed, the current software version, etc. It can be determined in advance how many times a program must be tested before another or a base version is installed. If the indicator appears more than once, this usually indicates that something else is wrong and in this case it may be preferable to install the above basic first version already in this step. For example, something could have gone wrong when the program was stored in memory. In the case of a group call code, another program could destroy the current version. The copying of files in the radio terminal is another possible reason. It may therefore also be advisable to try the same program more than once before installing an earlier version or the base version.

Nämnda särskilda indikator kan vara i sådan form att den aktuella versionen av programvaran kan identifieras och den kan vara i form av en vanlig fil.Said special indicator may be in such a form that the current version of the software can be identified and it may be in the form of a regular file.

Funktionsförmågan hos nämnda programvaruversion provas genom upprättande av ett antal kontrollpunkter som programvaran skall klara för att starta korrekt som en fungerande version. Varje kontrollpunkt kan exempelvis vara en kritisk punkt per tråd i programvaran eller per terminalresurs i programvaran som måste passeras. En resurs kan vara ett nät, ett filsystem, ljud, etc.The functionality of said software version is tested by establishing a number of checkpoints that the software must be able to start correctly as a working version. Each checkpoint can be, for example, one critical point per thread in the software or per terminal resource in the software that must be passed. A resource can be a network, a file system, audio, etc.

Andra alternativ är även möjliga och de väljs beroende på programmet. En kontrollpunkträknare kan användas för att räkna de klarade kontrollpunkterna, antalet klarade kontrollpunkter kan kontrolleras, och det särskilda tecknet kan tas bort eller uppdateras om antalet kontrollpunkter i räknaren är lika med antalet kontrollpunkter som skall klaras.Other options are also possible and they are selected depending on the program. A checkpoint counter can be used to count the cleared checkpoints, the number of cleared checkpoints can be checked, and the special character can be removed or updated if the number of checkpoints in the counter is equal to the number of checkpoints to be cleared.

W U 20 25 30 35 516 806 7 Den aktuella versionen kan lagras genom att packa den med ett komprimeringsprogram för att reducera den erfordrade utrymmesmängden på telefonen, t.ex. zip-programmet.W U 20 25 30 35 516 806 7 The current version can be stored by packing it with a compression program to reduce the required amount of space on the phone, e.g. the zip program.

Problemet med att veta om en ny programvaruversion har startats med framgång löses sålunda vid uppfinningen genom att ha en indikator, som antingen finns eller inte finns, beroende på programvarans funktionsförmàga. Indikatorn avlägsnas om den nya versionen startat eller, vid en alternativ utföringsform, får stå kvar om den nya versionen har startat.The problem of knowing whether a new software version has been started successfully is thus solved in the invention by having an indicator, which either exists or does not exist, depending on the functionality of the software. The indicator is removed if the new version has started or, in an alternative embodiment, may remain if the new version has started.

Med sättet och apparaten enligt uppfinningen kan man alltid vara säker på att ha en fungerande version och systemet är mycket robust.With the method and apparatus according to the invention, one can always be sure of having a working version and the system is very robust.

Radioterminalen enligt uppfinningen kan vara en dator eller mobiltelefon eller dylikt.The radio terminal according to the invention may be a computer or mobile telephone or the like.

I det följande beskrivs uppfinningen mera i detalj med hjälp av fyra flödesscheman och en schematisk vy. Det bör påpekas att dessa beskrivningar endast utgör exempel på utföringsformer av uppfinningen och att uppfinningsdetaljer kan variera inom ramen för patentkraven.In the following, the invention is described in more detail by means of four flow charts and a schematic view. It should be noted that these descriptions are merely examples of embodiments of the invention and that inventive details may vary within the scope of the claims.

KORT BESKRIVNING AV RITNINGARNA Fig. 1 visar en schematisk vy av en apparat för inladdning av programvara i en radioterminal.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 shows a schematic view of an apparatus for loading software into a radio terminal.

Fig. 2 är ett allmänt flödesschema över uppfinningen.Fig. 2 is a general flow chart of the invention.

Fig. 3 är ett flödesschema vid två exempel av en procedur enligt uppfinningen.Fig. 3 is a flow chart in two examples of a procedure according to the invention.

Fig. 4 âr ett mer detaljerat exempel av en utföringsform av uppfinningen.Fig. 4 is a more detailed example of an embodiment of the invention.

Fig. 5 är ett detaljerat exempel av steg 5, 8 och 9 i fig. 2.Fig. 5 is a detailed example of steps 5, 8 and 9 in Fig. 2.

DETALJERAD BESKRIVNING AV RITNINGARNÄ I fig. 1 visas ett exempel på en apparat för att på avstånd ladda in programvara i en radioterminal 10. En processor 11 vid en 10 15 20 25 30 35 516 806 8 uppdateringsserver kommunicerar med ett nät 12, som har en trådlös kommunikationslânk 13 till radioterminalen 10. Nya programvaruversioner sänds från uppdateringsserverns processor 11 via nätet 12 och den trådlösa kommunikationslänken 13 till radioterminalen 10 via en antenn 14. Förutom de normala funktionerna hos radioterminalen innehåller terminalen 10 i fig. 1 en transceiver 15, en styrenhet 16, ett första minne 17 och ett andra minne 18. Inladdningen av programvara från uppdateringsservern 11 till radioterminalen 10 utförs genom antennen 14 via styrenheten 16 till ett av minnena.DETAILED DESCRIPTION OF THE DRAWINGS FIG. 1 shows an example of an apparatus for remotely loading software into a radio terminal 10. A processor 11 at an update server communicates with a network 12 having a network 12. wireless communication link 13 to the radio terminal 10. New software versions are transmitted from the update server processor 11 via the network 12 and the wireless communication link 13 to the radio terminal 10 via an antenna 14. In addition to the normal functions of the radio terminal, the terminal 10 in Fig. 1 includes a transceiver 15. , a first memory 17 and a second memory 18. The loading of software from the update server 11 to the radio terminal 10 is performed through the antenna 14 via the control unit 16 to one of the memories.

När en ny programvaruversion är tillgänglig kan uppdateringsserverns processor 11 sända ett meddelande till radioterminalen 10 styrt av styrenheten 16, som kan välja att antingen ladda in den nya versionen eller inte göra det enligt uppfinningen. Tillgängligheten av nya programvaruversioner kan även vara känd för radioterminalen 10 så att radioterminalen 10 frågar uppdateringsservern 11 om det finns en ny version. Själva inladdningen sker vanligen medelst meddelanden mellan processorn 11 och radioterminalen 10. Uppdateringsprocessorn 11 kan även sända äldre programvaruversioner till radioterminalen 10 enligt uppfinningen.When a new software version is available, the update server's processor 11 may send a message to the radio terminal 10 controlled by the controller 16, which may choose to either load the new version or not do so according to the invention. The availability of new software versions may also be known to the radio terminal 10 so that the radio terminal 10 asks the update server 11 if there is a new version. The actual loading usually takes place by means of messages between the processor 11 and the radio terminal 10. The update processor 11 can also send older software versions to the radio terminal 10 according to the invention.

När en ny version har laddats in i terminalen betraktas den som aktuell version, vars funktionsförmága provas i samband med start av programmet. Startprocessen för programvaran följs upp genom ett antal kontrollpunkter som programvaran skall klara vid en korrekt start. En kontrollpunkträknare kan användas för att räkna de klarade kontrollpunkterna, antalet klarade kontrollpunkter kan kontrolleras, och en speciell indikator kan skapas, tas bort eller uppdateras i beroende av antalet kontrollpunkter i räknaren som är lika med antalet kontrollpunkter som skall klaras.When a new version has been loaded into the terminal, it is considered the current version, the functionality of which is tested in connection with the start of the program. The start-up process for the software is followed up by a number of checkpoints that the software must complete at a correct start-up. A checkpoint counter can be used to count the cleared checkpoints, the number of cleared checkpoints can be checked, and a special indicator can be created, deleted or updated depending on the number of checkpoints in the counter equal to the number of checkpoints to be cleared.

I fig. 2 visas en detaljerad utföringsform av uppfinningen medelst ett flödesschema. Ett sätt att förfara enligt uppfinningen är att följa de heldragna pilarna. Alternativa sätt att förfara anges med streckade pilar. Vid vissa utföringsformer kan alternativen väljas enligt i förväg definierade kriterier. 10 15 20 25 30 35 516 806 9 Företrädesvis utförs metoden varje gång terminalen sätts på enligt hänvisningsbeteckningen 1. I fig. 2 är det första som skall göras att kontrollera om den aktuella programvaruversionen är en fungerande version såsom indikeras med steg 2 i figuren. Denna bestämning, baserad på kontroll, utförs enligt fig. 1 genom indikering av ett provresultat, där provet utförts enligt steg 8 och indikeringen enligt steg 9 såsom beskrivs nedan. Ändringen av information mellan indikeringen av provresultatet enligt steg 9 och kontrollen enligt steg 2 indikeras med en tvåvâgspil 3.Fig. 2 shows a detailed embodiment of the invention by means of a flow chart. One way of proceeding according to the invention is to follow the solid arrows. Alternative ways of proceeding are indicated by dashed arrows. In some embodiments, the alternatives can be selected according to predefined criteria. Preferably, the method is performed each time the terminal is turned on according to the reference numeral 1. In Fig. 2, the first thing to be done is to check if the current software version is a working version as indicated by step 2 in the figure. This determination, based on control, is performed according to Fig. 1 by indicating a test result, where the test was performed according to step 8 and the indication according to step 9 as described below. The change of information between the indication of the test result according to step 9 and the control according to step 2 is indicated with a two-way arrow 3.

Indikeringen av provresultatet kan utföras på många sätt. Det kan röra sig om ett tecken i form av ett bestândigt objekt som är en ordinär fil.The indication of the test result can be performed in many ways. It can be a character in the form of a permanent object that is an ordinary file.

Om den aktuella versionen, enligt provresultatindikeringen i steg 9, förefaller att ej fungera betyder detta att något gick fel vid den föregående bootningen av programvaran. Steg 4a kan nu utföras enligt vilket en annan version installeras som antas fungera.If the current version, according to the test result indication in step 9, appears to not work, this means that something went wrong with the previous boot of the software. Step 4a can now be performed according to which another version is installed which is assumed to work.

Denna version skulle kunna vara en tidigare lagrad fungerande version av programvaran eller till och med en grundversion lagrad i ROM, eller till och med laddas in från tillverkarens server. Om den aktuella versionen ej synes fungera kan den även provas än en gång i stegen 8 och 9. Detta alternativ presenteras med en streckad pil i figuren.This version could be a previously stored working version of the software or even a base version stored in ROM, or even downloaded from the manufacturer's server. If the current version does not seem to work, it can also be tried again in steps 8 and 9. This option is presented with a dashed arrow in the figure.

Om den aktuella versionen enligt presentationen av provningsresultatet enligt steg 9 är en fungerande version enligt steg 2 kontrolleras det i steg 4b i fig. 2 om det finns en ny version. Alternativet till att ej kontrollera om det finns en ny version indikeras med en streckad pil och i detta fall startas den aktuella versionen såsom indikeras av steg 5. Den aktuella versionens funktionsförmåga provas såsom indikeras i steg 8 när programvaran startas enligt de i programmet ingående kontrollpunkterna.If the current version according to the presentation of the test result according to step 9 is a working version according to step 2, it is checked in step 4b in Fig. 2 if there is a new version. The alternative of not checking if there is a new version is indicated by a dashed arrow and in this case the current version is started as indicated by step 5. The functionality of the current version is tested as indicated in step 8 when the software is started according to the control points.

Det är möjligt att ladda in en ny version av programvaran till och med om det inte finns någon tidigare version i radioterminalen, men denna utföringsform visas ej. I detta fall är uppfinningens första steg att ladda in den nya versionen, som därpå startas och provas och provningsresultatet indikeras såsom beskrivits.It is possible to load a new version of the software even if there is no previous version in the radio terminal, but this embodiment is not shown. In this case, the first step of the invention is to load the new version, which is then started and tested and the test result is indicated as described.

N U 20 25 30 35 516 806 10 Om det inte finns någon ny version (eller den inte inladdats), startas den aktuella versionen såsom anges i steg 5 och provas såsom anges i steg 8.N U 20 25 30 35 516 806 10 If there is no new version (or it has not been loaded), start the current version as indicated in step 5 and test as indicated in step 8.

Alternativet till att ej ladda in den nya programvaruversionen indikeras med en streckad pil.The alternative of not downloading the new software version is indicated by a dashed arrow.

Om det finns en ny version lagras den aktuella versionen i fig. 2 i steg 6 och den nya versionen laddas in i steg 7.If there is a new version, the current version in Fig. 2 is stored in step 6 and the new version is loaded in step 7.

För den nya i steg 7 inladdade versionen sker ett funktionsprov i samband med start såsom indikeras i stegen 5 och 8.For the new version loaded in step 7, a function test takes place in connection with start-up as indicated in steps 5 and 8.

Funktionsförmågan hos den inladdade eller installerade programvaruversionen provas såsom indikeras i steg 8 genom upprättande av ett antal kontrollpunkter som programvaran bör klara för att kunna starta korrekt som en fungerande version. En kontrollpunkträknare kan användas för att räkna de klarade kontrollpunkterna, de klarade kontrollpunkternas antal kan kontrolleras, och det särskilda tecknet kan tas bort eller uppdateras om antalet kontrollpunkter i ràknaren är lika med antalet kontrollpunkter som skall klaras.The functionality of the downloaded or installed software version is tested as indicated in step 8 by establishing a number of checkpoints that the software should be able to launch correctly as a working version. A checkpoint counter can be used to count the cleared checkpoints, the number of cleared checkpoints can be checked, and the special character can be removed or updated if the number of checkpoints in the counter is equal to the number of checkpoints to be cleared.

Resultatet av provet indikeras i steg 9 i sådan form att den aktuella programvaruversionens funktionsförmàga alltid kan bestämmas. Därför indikeras provresultatet genom närvaro eller frånvaro av en särskild indikator eller tecken för att visa programvarusituationen i terminalen genom vilken indikering av den aktuella programvarufunktionens funktionsförmàga i terminalen noteras.The result of the test is indicated in step 9 in such a way that the performance of the current software version can always be determined. Therefore, the test result is indicated by the presence or absence of a special indicator or sign to show the software situation in the terminal by which indication of the performance of the current software function in the terminal is noted.

En ny inladdad version eller installerad version provas i steg 8 i samband med start av programmet. Kontrollpunkter ingår emellertid och om dessa kontrollpunkter ej klaras skall detta framgå i presentationen av provresultatet.A new downloaded version or installed version is tested in step 8 in connection with the start of the program. Checkpoints are included, however, and if these checkpoints are not passed, this must be stated in the presentation of the test result.

Fig. 3 är ett detaljerat flödesschema av två exempel på hur metoden enligt uppfinningen kan fortskrida. Det har påpekats att inladdningsproceduren beror på hur programvaran i terminalen W U 20 25 30 35 516 806 H fungerar och på tillgängligheten av nya versioner, varför exemplet ej är avsett att begränsa uppfinningen på något sätt utan endast visas som àskådningsexempel.Fig. 3 is a detailed flow chart of two examples of how the method according to the invention can proceed. It has been pointed out that the loading procedure depends on how the software in the terminal W U 20 25 30 35 516 806 H works and on the availability of new versions, so the example is not intended to limit the invention in any way but is only shown as an example.

Terminalen sätts på enligt hänvisningsbeteckningen 100. Vid denna utföringsform sker indikeringen av provningsresultatet i form av ett beständigt objekt, vars existens visar att den aktuella programvaruversionen i terminalen ej fungerar.The terminal is switched on according to the reference numeral 100. In this embodiment, the test result is indicated in the form of a permanent object, the existence of which shows that the current software version in the terminal does not work.

I fig. 3 visar steg 200 i det första exemplet i fig. 3 att objektet existerar, vilket innebär att något gick fel vid den tidigare bootningen av programvaran. Steg 400 al kan nu utföras enligt vilket en annan version som antas fungera installeras.In Fig. 3, step 200 of the first example in Fig. 3 shows that the object exists, which means that something went wrong with the previous boot of the software. Step 400 al can now be performed according to which another version that is assumed to work is installed.

Denna version kan vara en tidigare lagrad fungerande programvaruversion eller en grundversion lagrad i PROM eller kan till och med laddas in från tillverkarens server. Den inladdade versionen startas i steg 500 varigenom ett nytt beständigt objekt skapas. I steg 800:2 provas den inladdade versionen och eftersom provet klarats tas det beständiga objektet bort i steg 900:2. Återkommande till steg 200, förorsakar frånvaron av ett beständigt objekt i det andra exemplet programmet att exekvera steg 400 b, varigenom kontroll nu sker av om det finns en ny existerande version. Eftersom det finns en ny version lagras den aktuella versionen i steg 600 och den nya versionen lagras i steg 700 till att vara den aktuella versionen. Den nya versionen startas i steg 800:1 varigenom ett beständigt objekt skapas och upprättande sker av ett antal kontrollpunkter som skall klaras. I steg 900:l provas den nya versionen. Eftesom denna version ej startade korrekt företas åtgärder i steg 400:a2 för att avlägsna felet genom att exempelvis gå till steg 400al och fortsätta såsom förklarades i det första exemplet.This version can be a previously stored working software version or a basic version stored in PROM or can even be downloaded from the manufacturer's server. The loaded version is started in step 500, creating a new persistent object. In step 800: 2, the loaded version is tested and when the test is passed, the permanent object is removed in step 900: 2. Returning to step 200, the absence of a persistent object in the second example causes the program to execute step 400 b, thereby checking whether there is a new existing version. Since there is a new version, the current version is stored in step 600 and the new version is stored in step 700 to be the current version. The new version is started in step 800: 1, whereby a permanent object is created and a number of control points are to be established. In step 900: l, the new version is tested. Since this version did not start correctly, steps are taken in step 400: a2 to remove the error by, for example, going to step 400al and continuing as explained in the first example.

Andra alternativ diskuteras i det följande. Användaren av terminalen kan exempelvis sluta sig till, från ett felaktigt uppförande av programmet, att något är fel och starta om terminalen genom att först stänga av den och omedelbart därpå sätta på den igen, vilket innebär ett återvändande till steg 100.Other options are discussed below. For example, the user of the terminal may conclude, from an incorrect behavior of the program, that something is wrong and restart the terminal by first turning it off and immediately then turning it back on, which means a return to step 100.

Det är även möjligt att programmets exikvering avslutas och N U 20 25 30 35 516 806 U styrningen överlåts till kärnan varigenom antalet klarade kontrollpunkter kan kontrolleras. Antomatiska åtgärder kan därpå exekveras som svar på dålig överensstämmelse mellan det förinställda räknarvärdet och antalet klarade kontrollpunkter. Det är även möjligt att implementera ett avbrott på låg nivå i steg 800, varigenom kärnan kan detektera att programmets exekvering har stoppat eller gått in i en loop. Kärnan kan dá, i steg 400:a2, exekvera automatiska åtgärder för att avhjälpa felet, t.ex. återstarta programexekveringen från steg 200. Om kärnan kan ta över styrningen, kan de automatiska åtgärderna i händelse av ett felaktigt program varieras. Kärnan kan t.ex. indikera för användaren att ett programfel har detekterats men att några funktioner kommer att tillåtas. Användaren kan t.ex. tillåtas hantera en lokal kalender medan däremot nätanslutning ej kan tillåtas. Kärnan kan bestämma vilka funktioner av programmet som fungerar från en analys av data kompilerat från de kontrollpunkter som klarats.It is also possible that the execution of the program is terminated and the control is transferred to the core whereby the number of passed control points can be checked. Automatic measures can then be executed in response to a poor match between the preset counter value and the number of passed control points. It is also possible to implement a low level interrupt in step 800, whereby the kernel can detect that the execution of the program has stopped or entered a loop. The kernel can then, in step 400: a2, execute automatic measures to remedy the error, e.g. restart program execution from step 200. If the kernel can take control, the automatic actions in the event of a faulty program may be varied. The core can e.g. indicate to the user that a bug has been detected but that some features will be allowed. The user can e.g. is allowed to handle a local calendar, while network connection can not be allowed. The kernel can determine which functions of the program work from an analysis of data compiled from the control points passed.

I fig. 4 visas ett detaljerat exempel av en utföringsform av uppfinningen. I figuren har olika steg svarande mot stegen i fig. 2 indikerats med motsvarande referensnummer som i fig. 2, med undantag av att i detta utförande de upphöjda indexen ' och " och "' används för att indikera denna speciella utföringsform.Fig. 4 shows a detailed example of an embodiment of the invention. In the figure, various steps corresponding to the steps in Fig. 2 have been indicated by the corresponding reference numbers as in Fig. 2, except that in this embodiment the raised indices 'and "and"' are used to indicate this particular embodiment.

Nedsânkta index a,b,c har använts för att indikera alternativa vägar. De olika stegen i sig har förklarats tidigare i texten och avsikten med denna figur är att visa ett exempel på en implementering av uppfinningen.Submerged indices a, b, c have been used to indicate alternative paths. The various steps themselves have been explained earlier in the text and the purpose of this figure is to show an example of an implementation of the invention.

Terminalen sätts på i steg 1'. Existensen av en ny version noteras i steg 4b'. Om det finns en ny version förflyttas den aktuella versionen i steg 6'. (Om den aktuella versionen är en fungerande version lagras den, annars tas den bort). Den nya versionen laddas i steg 7' och startas i steg 5a'. I samband med starten skapas ett objekt i steg 9b' för att indikera utförande av det i steg 8' utförda provet. Utförandet av provet noteras i steg 2b'. En omstart enligt steg lb' utförs om provet ej klaras. I detta fall noteras den aktuella versionens funktionsförmåga i steg 2'. Om ett objekt existerar noteras det vid denna utföringsform i steg 2" om detta är det andra försöket att boota programvaran. (Detta kan W U 20 25 30 35 51136 806 noteras genom uppdatering av objektet på sådant sätt i varje prov som ej klaras). I fig. 4 omladdas en grundversion i steg 4a' om det i steg 2" noterades att detta var andra bootningsförsöket.The terminal is switched on in step 1 '. The existence of a new version is noted in step 4b '. If there is a new version, the current version is moved in step 6 '. (If the current version is a working version, it will be stored, otherwise it will be deleted). The new version is loaded in step 7 'and started in step 5a'. In connection with the start, an object is created in step 9b 'to indicate execution of the test performed in step 8'. The performance of the test is noted in step 2b '. A restart according to step lb 'is performed if the test is not passed. In this case, the functionality of the current version is noted in step 2 '. If an object exists, it is noted in this embodiment in step 2 "if this is the second attempt to boot the software. (This can be noted by updating the object in such a way in each test that is not passed). Fig. 4 reloads a basic version in step 4a 'if it was noted in step 2 "that this was the second boot attempt.

Om steg 2" visade att detta ej var det andra försöket noteras i steg 2'" om en äldre aktuell version existerar t.ex. indikerat av att det andra minnet 18 i fig. 1 är laddat. Detta kan noteras exempelvis med skapande av ett eget objekt för detta ändamål. Om detta är fallet omladdas den gamla versionen i steg 4" och startas och provas i steg 5c' varvid även ett nytt objekt skapas.If step 2 "showed that this was not the second attempt is noted in step 2 '" if an older current version exists e.g. indicated that the second memory 18 in Fig. 1 is loaded. This can be noted, for example, by creating your own object for this purpose. If this is the case, the old version is reloaded in step 4 "and started and tested in step 5c ', whereby a new object is also created.

Genomgång av provet noteras i steg 2c'. Om provet klaras tas objektet bort i steg 9d' och den aktuella programvaruversionen kan användas.Review of the sample is noted in step 2c '. If the test is passed, the object is removed in step 9d 'and the current software version can be used.

Om det noterades i steg 2c' att provet inte klarades uppdateras det aktuella objektet i steg 9e' för att indikera en påföljande exekvering av steg 2", ett andra försök. Omstart, manuell eller automatisk, sker därpå i steg lb'.If it was noted in step 2c 'that the test failed, the current object is updated in step 9e' to indicate a subsequent execution of step 2 ", a second attempt. Restart, manual or automatic, then takes place in step lb '.

Om det enligt steg 2'" inte finns en äldre fungerande version omladdas grundversionen i steg 4a'. Programexekvering fortsätter därpå från stegen 5b',9b' genom provning av den omladdade grundversionen.If there is no older working version according to step 2 '", the basic version is reloaded in step 4a'. Program execution then proceeds from steps 5b ', 9b' by testing the reloaded basic version.

Om det enligt steg 2' inte finns något objekt innebär detta att den aktuella versionen fungerar och den startas i steg 5b'. Ett objekt skapas i steg 9a', vilket tas bort i steg 9c' om provet enligt steg 8a' klaras, varpå programmet är färdigt för bruk.If there is no object according to step 2 ', this means that the current version works and it is started in step 5b'. An object is created in step 9a ', which is removed in step 9c' if the test according to step 8a 'is passed, after which the program is ready for use.

Om provet ej klaras i steg 2a' sker en omstart i steg lb'.If the test is not passed in step 2a ', a restart takes place in step lb'.

Om det inte finns någon ny programvaruversion tillgänglig enligt steg 4b' är nästa steg 2' såsom förklaras ovan.If no new software version is available according to step 4b ', the next step is 2' as explained above.

Fig. 5 är ett detaljerat exempel på ett funktionsprov utfört för den aktuella programvaran i terminalen i samband med starten i steg 5. Ett objekt 52 skapas i steg 51A. Programvaruversionens funktionsförmåga provas genom att upprätta ett antal kontrollpunkter C1,C2,C3 benämnda kontrollpunkt 1, kontrollpunkt 2 10 15 20 516 806 14 och kontrollpunkt 3 i fig. 5, som programvaran bör klara för att starta korrekt som fungerande version. Antalet kontrollpunkter som skall klaras definieras i steg 51B och lagras i steg 53 i objektet 52. Antalet kontrollpunkter kan variera men för illustrativa ändamål indikeras tre i fig. 5. Antalet kontrollpunkter ingår i programmet och kopieras till objektet 52 vid en tidig fas av programexekvering.Fig. 5 is a detailed example of a function test performed for the current software in the terminal in connection with the start in step 5. An object 52 is created in step 51A. The functionality of the software version is tested by establishing a number of control points C1, C2, C3 called control point 1, control point 2 and control point 3 in Fig. 5, which the software should be able to start correctly as a functioning version. The number of checkpoints to be cleared is defined in step 51B and stored in step 53 in object 52. The number of checkpoints may vary but for illustrative purposes three are indicated in Fig. 5. The number of checkpoints is included in the program and copied to object 52 at an early stage of program execution.

Varje kontrollpunkt kan exempelvis vara en kritisk punkt per träd i programvaran som måste klaras. I fig. 5 beskrivs endast en träd.Each checkpoint can, for example, be one critical point per tree in the software that must be cleared. In Fig. 5 only one tree is described.

Andra alternativ är även möjliga och de väljs beroende på programmet. En kontrollpunkträknare 54 kan användas i objektet för att räkna antalet klarade kontrollpunkter och varje gång en kontrollpunkt klaras ökas räkneställningen med 1. I fig. 5 visas ett fall där alla tre kontrollpunkterna har klarats.Other options are also possible and they are selected depending on the program. A checkpoint counter 54 can be used in the object to count the number of cleared checkpoints, and each time a checkpoint is cleared, the count is incremented by 1. Fig. 5 shows a case where all three checkpoints have been cleared.

Antalet klarade kontrollpunkter jämförs med det definierade antalet i steg 55 och om antalet i objektet definierade kontrollpunkter är lika med antalet klarade kontrollpunkter enligt räknaren har provet klarats såsom indikerats av steg 56 och programvaran är färdig för användning. Om det i objektet definierade antalet ej är lika med antalet klarade kontrollpunkter uppdateras vid denna utföringsform det gamla objektet i steg 57 eller skapas ett nytt objekt.The number of passed checkpoints is compared with the defined number in step 55 and if the number of checkpoints defined in the object is equal to the number of passed checkpoints according to the calculator, the test has been passed as indicated by step 56 and the software is ready for use. If the number defined in the object is not equal to the number of passed control points, in this embodiment the old object is updated in step 57 or a new object is created.

Claims (36)

N U 20 25 30 35 516 806 15 PATENTKRAVN U 20 25 30 35 516 806 15 PATENT REQUIREMENTS 1. Sätt att inladda programvara i en radioterminal med åtminstone två bitar programvara, av vilka en fungerar som den aktuella versionen, k ä n n e t e c k n a t av stegen att a) bestämma den aktuella programvaruversionens funktionsförmåga i radioterminalen med hjälp av frånvaro eller närvaro av en indikator, som visar programvarusituationen i terminalen, b) välja en annan version av programvaran för inladdning om den aktuella versionen ej fungerar, c) inladda den andra programvaruversionen som valdes i steg b) i radioterminalen för att bilda den aktuella versionen, d) prova den aktuella programvaruversionens funktionsförmàga, samt e) indikera resultatet av provet genom närvaro eller frånvaro av en särskild indikator, genom vilken indikator funktionsförmågan hos den aktuella programvaruversionen i terminalen noteras i steg a).A method of loading software into a radio terminal with at least two pieces of software, one of which functions as the current version, characterized by the steps of a) determining the performance of the current software version in the radio terminal by means of the absence or presence of an indicator, which shows the software situation in the terminal, b) select another version of the software for download if the current version does not work, c) load the other software version selected in step b) in the radio terminal to form the current version, d) test the functionality of the current software version , and e) indicate the result of the test by the presence or absence of a particular indicator, by which indicator the performance of the current software version in the terminal is noted in step a). 2. Sätt att inladda programvara i en radioterminal med åtminstone två bitar programvara, av vilka en verkar som den aktuella versionen, k ä n n e t e c k n a t av stegen att a) bestämma den aktuella programvaruversionens funktionsförmåga i radioterminalen med hjälp av frånvaro eller närvaro av en indikator, som visar programvarusituationen i termianlen, b) notera en möjlig existens av en ny programvaruversion, c) välja en annan programvaruversion för inladdning om den aktuella versionen ej fungerar eller om det finns en ny programvaruversion tillgänglig, d) lagra den aktuella programvaruversionen innan en ny version inladdas om den aktuella versionen är en fungerande version, e) inladda den andra programvaruversionen som valdes i steg c) i radioterminalen för att bilda den aktuella versionen, f) prova den aktuella programvaruversionens funktionsförmàga, samt g) indikera resultatet av provet genom vilken indikator funktionsförmågan hos den aktuella programvaruversionen i terminalen noteras i steg a). N U 20 25 30 35 516 806 162. A method of loading software into a radio terminal with at least two pieces of software, one of which acts as the current version, characterized by the steps of a) determining the performance of the current software version in the radio terminal by the absence or presence of an indicator, which shows the software situation in the semester, b) note a possible existence of a new software version, c) select another software version for download if the current version does not work or if a new software version is available, d) store the current software version before downloading a new version if the current version is a working version, e) load the second software version selected in step c) in the radio terminal to form the current version, f) test the performance of the current software version, and g) indicate the result of the test by which indicator the performance of the current software version in the note terminal race in step a). N U 20 25 30 35 516 806 16 3. Sätt att inladda programvara i en radioterminal som har åtminstone två programvarubitar, av vilka en fungerar som en aktuell version, k ä n n e t e c k n a t av stegen att a) bestämma den aktuella programvaruversionens funktionsförmåga i radioterminalen med hjälp av frånvaro eller närvaro av en indikator, som visar programvarusituationen i terminalen, c) välja en annan version av programvaran som skall laddas in om den aktuella versionen ej fungerar, d) lagra den aktuella programvaruversionen innan en ny version inladdas om den aktuella versionen är en fungerande version, e) ladda in den andra versionen av programvara vald i steg b) i radioterminalen för att bilda den aktuella versionen, f) prova funktionsförmágan hos den aktuella programvaruversionen och g) indikera resultatet av provet genom vilken indikator funktionsförmágan hos den aktuella programvaruversionen i radioterminalen noteras i steg a).A method of loading software into a radio terminal having at least two pieces of software, one of which functions as a current version, characterized by the steps of a) determining the performance of the current software version in the radio terminal by the absence or presence of an indicator, which shows the software situation in the terminal, c) select another version of the software to be loaded if the current version does not work, d) store the current software version before loading a new version if the current version is a working version, e) load the other the version of software selected in step b) in the radio terminal to form the current version, f) test the performance of the current software version and g) indicate the result of the test by which indicator the performance of the current software version in the radio terminal is noted in step a). 4. Sätt att inladda programvara i en radioterminal som har åtminstone två programvarubitar, av vilka en fungerar som en aktuell version, k ä n n e t e c k n a t av stegen att a) bestämma den aktuella programvaruversionens funktionsförmåga i radioterminalen med hjälp av frånvaro eller närvaro av en indikator, som visar programvarusituationen i terminalen, b) notera en eventuell existens av en ny programvaruversion före eller efter steg a), c) välja en annan programvaruversion att laddas in som möjligt resultat av steg a) eller b), d) lagra den aktuella programvaruversionen innan en ny version laddas in, om den aktuella versionen enligt steg a) är en fungerande version, e) ladda in den andra programvaruversionen vald i steg c) i radioterminalen för att bilda den aktuella versionen, f) prova, efter steg a) eller steg e), funktionsförmágan hos den aktuella programvaruversionen och g) indikera resultatet av detta prov genom vilken indikator funktionsförmágan hos den aktuella programvaruversionen i radioterminalen noteras i steg a). 10 15 20 25 30 35 516 806 17A method of loading software into a radio terminal having at least two pieces of software, one of which functions as a current version, characterized by the steps of a) determining the performance of the current software version in the radio terminal by the absence or presence of an indicator, which shows the software situation in the terminal, b) note the possible existence of a new software version before or after step a), c) choose another software version to download as a result of step a) or b), d) store the current software version before a new version is loaded, if the current version according to step a) is a working version, e) load the second software version selected in step c) in the radio terminal to form the current version, f) try, after step a) or step e ), the performance of the current software version and g) indicate the result of this test by which indicator the performance of the current software version the ion in the radio terminal is noted in step a). 10 15 20 25 30 35 516 806 17 5. Sätt enligt något av krav 1-4, k ä n n e t e c k n a t av att sättet upprepas tills det finns en fungerande programvarufunktion i radioterminalen.5. A method according to any one of claims 1-4, characterized in that the method is repeated until there is a functioning software function in the radio terminal. 6. Sätt enligt av något av krav 1 - 4, k ä n n e t e c k n a t av att den aktuella versionens funktionsförmåga provas och bestäms åtminstone en gång.6. A method according to any one of claims 1 - 4, characterized in that the functional capacity of the current version is tested and determined at least once. 7. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att förfarandet utförs varje gång radioterminalen sätts på.7. A method according to any one of claims 1 - 4, characterized in that the procedure is performed each time the radio terminal is switched on. 8. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att antalet versioner som lagras i radioterminalen väljs genom att ta bort en eller flera av de äldre versionerna.8. A method according to any one of claims 1 - 4, characterized in that the number of versions stored in the radio terminal is selected by deleting one or more of the older versions. 9. Sätt enligt något av kraven 1 - 4, k ä n n e t e c k n a t av att antalet versioner som lagras i radioterminalen väljs genom att ta bort en eller flera äldre versioner allteftersom nya versioner installeras.9. A method according to any one of claims 1 - 4, characterized in that the number of versions stored in the radio terminal is selected by deleting one or more older versions as new versions are installed. 10. Sätt enligt något av krav 1 - 4, k ä n n e t e c k - n a t av att den andra versionen som väljs för inladdning är en ny programvaruversion om en sådan ny version finns.10. A method according to any one of claims 1 - 4, characterized in that the second version selected for download is a new software version if such a new version exists. 11. Sätt enligt krav 1 - 4, k ä n n e t e c k n a t av att den andra programvaruversionen som väljs för att laddas in är en tidigare lagrad äldre version, om den aktuella versionen ej fungerar.11. A method according to claims 1 - 4, characterized in that the second software version selected for download is a previously stored older version, if the current version does not work. 12. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den andra programvaruversionen som väljs för att laddas in är en tidigare lagrad äldre version, företrädesvis den föregående lagrade fungerande versionen, om enligt steg a) den aktuella versionen ej fungerar och det inte finns någon ny version tillgänglig.Method according to any one of claims 1 - 4, characterized in that the second software version selected for download is a previously stored older version, preferably the previously stored working version, if according to step a) the current version does not work and there is no new version available. 13. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den andra programvaruversionen som väljs för inladdning är en grundversion lagrad i ROM om denna är den föregående lagrade 10 15 20 25 30 35 516 806 18 fungerande versionen eller om sättet upprepas tills den är den enda arbetande programvaruversionen i radioterminalen.Method according to any one of claims 1 to 4, characterized in that the second software version selected for download is a basic version stored in ROM if this is the previous stored version or if the method is repeated. until it is the only working software version in the radio terminal. 14. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den andra programvaruversionen som väljs för inladdning laddas från tillverkarens server.14. A method according to any one of claims 1 to 4, characterized in that the second software version selected for download is loaded from the manufacturer's server. 15. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att nämnda aktuella programvaruversions funktionsförmåga indikeras genom frånvaro av nämnda särskilda indikator och den motsatta situationen genom närvaro av nämnda indikator, vilken avlägsnas när enligt provet en fungerande programvaruversion har startat.15. A method according to any one of claims 1 - 4, characterized in that the performance of said current software version is indicated by the absence of said particular indicator and the opposite situation by the presence of said indicator, which is removed when according to the test a working software version has started. 16. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den aktuella programvaruversionens funktionsförmåga indikeras genom frånvaro av nämnda speciella indikator och den motsatta situationen genom närvaro av indikatorn, som uppdateras varje gång resultatet indikeras för att visa antalet utförda prov.16. A method according to any one of claims 1 - 4, characterized in that the performance of the current software version is indicated by the absence of said special indicator and the opposite situation by the presence of the indicator, which is updated each time the result is indicated to show the number of tests performed. 17. Sätt enligt krav 16, k ä n n e t e c k n a t av att den andra programvaruversionen som väljs för inladdning väljs på grundval av den uppdaterade indikatorn.17. A method according to claim 16, characterized in that the second software version selected for download is selected on the basis of the updated indicator. 18. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den aktuella programvaruversionens funktionsförmåga indikeras genom frånvaro av nämnda särskilda indikator och den motsatta situationen genom närvaro av indikatorn, som uppdateras varje gång resultatet indikeras så att den aktuella programvaruversionen kan identifieras.18. A method according to any one of claims 1 - 4, characterized in that the performance of the current software version is indicated by the absence of said particular indicator and the opposite situation by the presence of the indicator, which is updated each time the result is indicated so that the current software version can be identified. 19. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att nämnda särskilda indikator görs i sådan form att den aktuella programvaruversionen kan identifieras.19. A method according to any one of claims 1 - 4, characterized in that said special indicator is made in such a form that the current software version can be identified. 20. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att nämnda indikator är i form av en vanlig fil.20. A method according to any one of claims 1 - 4, characterized in that said indicator is in the form of an ordinary file. 21. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att nämnda aktuella programvaruversions funktionsförmåga provas W U 20 25 30 35 516 806 19 genom upprättande av ett antal kontrollpunkter som programvaran skall klara för att starta korrekt som en fungerande version.21. A method according to any one of claims 1 - 4, characterized in that the functional ability of said current software version is tested by establishing a number of control points which the software must be able to start correctly as a functioning version. 22. Sätt enligt krav 21, k ä n n e t e c k n a t av att varje kontrollpunkt görs i form av en kritisk punkt per tråd i programvaran eller per terminalresurs i programvaran som måste klaras.22. A method according to claim 21, characterized in that each checkpoint is made in the form of a critical point per thread in the software or per terminal resource in the software that must be passed. 23. Sätt enligt krav 21, k ä n n e t e c k n a t av att i provningen enligt ingår följande steg: notering av varje kontrollpunkt som klaras med en kontrollpunkträknare, kontroll av antalet kontrollpunkter, samt indikering av den kontrollerade programvaruversionen som en fungerande version om antalet kontrollpunkter i kontrollpunkträknaren motsvarar antalet kontrollpunkter som skall klaras.23. A method according to claim 21, characterized in that the test according to includes the following steps: noting each checkpoint passed with a checkpoint counter, checking the number of checkpoints, and indicating the controlled software version as a working version if the number of checkpoints in the checkpoint counter corresponds the number of checkpoints to be cleared. 24. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att den aktuella versionen lagras genom att packa den med ett kompressionsprogram för att reducera mängden utrymme som krävs hos telefonen.24. A method according to any one of claims 1 - 4, characterized in that the current version is stored by packing it with a compression program to reduce the amount of space required in the telephone. 25. Sätt enligt något av krav 1 - 4, k ä n n e t e c k n a t av att radioterminalen är en mobiltelefon.25. A method according to any one of claims 1 - 4, characterized in that the radio terminal is a mobile telephone. 26. Radioterminal uppvisande åtminstone två programvarubitar, av vilka en fungerar som aktuell version, k ä n n e t e c k n a d av organ för att a) kontrollera den aktuella programvaruversionens i radioterminalen funktionsförmåga, b) notera en eventuell existens av en ny programvaruversion, c) välja en annan programvaruversion för inladdning för att ersätta den aktuella versionen, d) lagra den aktuella programvaruversionen, e) ladda in en annan programvaruversion i radioterminalen för att bilda den aktuella versionen, f) prova den aktuella programvaruversionens funktionsförmåga, och 10 15 20 25 30 35 516 806 20 g) indikera resultatet av nämnda provning i sådan form att den provade programvaruversionens funktionsförmåga kan kontrolleras.26. Radio terminal having at least two pieces of software, one of which functions as the current version, characterized by means for a) checking the functionality of the current software version in the radio terminal, b) noting the possible existence of a new software version, c) selecting another software version for downloading to replace the current version, d) store the current software version, e) load another software version in the radio terminal to form the current version, f) test the functionality of the current software version, and 10 15 20 25 30 35 516 806 20 g) indicate the result of said test in such a way that the performance of the tested software version can be checked. 27. Radioterminal enligt krav 26, k ä n n e t e c k n a d av att det finns en eller flera fungerande versioner lagrade.27. A radio terminal according to claim 26, characterized in that there is one or more working versions stored. 28. Radioterminal enligt krav 27, k ä n n e t e c k n a d av att en av de lagrade programvaruversionerna är en grundversion lagrad i ROM.28. A radio terminal according to claim 27, characterized in that one of the stored software versions is a basic version stored in ROM. 29. Radioterminal enligt krav 27, k ä n n e t e c k - n a d av organ för indikering av resultatet av nämnda provning genom närvaro eller frånvaro av en särskild indikator för att visa programvarusituationen i radioterminalen.A radio terminal according to claim 27, characterized by means for indicating the result of said test by the presence or absence of a particular indicator for displaying the software situation in the radio terminal. 30. Radioterminal enligt krav 29, k ä n n e t e c k n a d av organ för uppdatering av indikatorn varje gäng nämnda prov upprepas för att visa antalet utförda prov.Radio terminal according to claim 29, characterized by means for updating the indicator each time said test is repeated to show the number of tests performed. 31. Radioterminal enligt krav 29, k à n n e t e c k n a d av organ för att skapa nämnda särskilda indikator i sådan form att den aktuella programvaruversionen kan identifieras.A radio terminal according to claim 29, characterized by means for creating said particular indicator in such a form that the current software version can be identified. 32. Radioterminal enligt krav 27, k ä n n e t e c k - n a d av organ för att skapa nämnda indikator i form av en vanlig fil.A radio terminal according to claim 27, characterized by means for creating said indicator in the form of an ordinary file. 33. Radioterminal enligt krav 27, k ä n n e t e c k - n a d av organ för att prova den aktuella programvaruversionen genom att upprätta ett antal kontrollpunkter som programvaran bör klara för att starta korrekt som en fungerande version.A radio terminal according to claim 27, characterized by means for testing the current software version by establishing a number of control points which the software should be able to operate correctly to start as a functioning version. 34. Radioterminal enligt krav 33, k ä n n e t e c k n a d av en kontrollpunktrâknare som noterar varje klarad kontrollpunkt, organ för att förkontrollera antalet kontrollpunkter, och organ för att indikera provningsresultatet enligt antalet klarade kontrollpunkter.A radio terminal according to claim 33, characterized by a checkpoint counter noting each cleared checkpoint, means for pre-checking the number of checkpoints, and means for indicating the test result according to the number of passed checkpoints. 35. Radioterminal enligt krav 27, k ä n n e t e c k - 516 806 21 n a d av organ för att lagra den aktuella versionen genom att packa den med ett komprimeringsprogram för att reducera mängden utrymme som krävs i telefonen.35. A radio terminal according to claim 27, characterized by means for storing the current version by packing it with a compression program to reduce the amount of space required in the telephone. 36. Radioterminal enligt krav 27, k ä n n e t e c k - n a d av att den är en mobiltelefon.A radio terminal according to claim 27, characterized in that it is a mobile telephone.
SE9901904A 1999-05-26 1999-05-26 Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal SE516806C2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
SE9901904A SE516806C2 (en) 1999-05-26 1999-05-26 Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal
AU49688/00A AU4968800A (en) 1999-05-26 2000-05-19 Method and apparatus of downloading into a radio terminal
CNB008107912A CN1147190C (en) 1999-05-26 2000-05-19 Method and apparatus for downloading into radio terminal
DE10084626T DE10084626T1 (en) 1999-05-26 2000-05-19 Method and arrangement for downloading into a radio terminal
JP2001500583A JP2003501907A (en) 1999-05-26 2000-05-19 Method and apparatus for downloading to wireless terminal
PCT/SE2000/001015 WO2000074412A1 (en) 1999-05-26 2000-05-19 Method and apparatus of downloading into a radio terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9901904A SE516806C2 (en) 1999-05-26 1999-05-26 Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal

Publications (3)

Publication Number Publication Date
SE9901904D0 SE9901904D0 (en) 1999-05-26
SE9901904L SE9901904L (en) 2000-11-27
SE516806C2 true SE516806C2 (en) 2002-03-05

Family

ID=20415736

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9901904A SE516806C2 (en) 1999-05-26 1999-05-26 Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal

Country Status (6)

Country Link
JP (1) JP2003501907A (en)
CN (1) CN1147190C (en)
AU (1) AU4968800A (en)
DE (1) DE10084626T1 (en)
SE (1) SE516806C2 (en)
WO (1) WO2000074412A1 (en)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2359908B (en) * 2000-03-04 2004-09-15 Motorola Inc Communication system architecture and method of controlling data download to subscriber equipment
IT1321121B1 (en) * 2000-12-20 2003-12-30 Cselt Centro Studi Lab Telecom PROCEDURE AND RANDOM SELECTION DEVICE OF A MOBILE SPEAKER OPERATOR FOR MOBILE PHONES.
US20020083160A1 (en) * 2000-12-21 2002-06-27 Don Middleton Method and apparatus for managing applications and data in a mobile device
JP3607208B2 (en) * 2001-02-26 2005-01-05 株式会社東芝 Wireless terminal certification test system
US7734285B2 (en) * 2001-04-03 2010-06-08 Qualcomm Incorporated Method and apparatus for network initiated uninstallation of application program over wireless network
ITMI20010882A1 (en) * 2001-04-27 2002-10-27 Siemens Inf & Comm Networks TRANSCEIVER STATION OF A MOBILE COMMUNICATION SYSTEM WITH A CONFIGURABLE INTERFACE FOR A PERIPHERAL UNIT AND PROCEDURE
US7027806B2 (en) 2001-07-26 2006-04-11 Kyocera Wireless, Corp. System and method for field downloading a wireless communications device software code section
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
US7386846B2 (en) 2001-07-26 2008-06-10 Kyocera Wireless Corp. System and method for the management of wireless communications device system software downloads in the field
KR100940178B1 (en) * 2001-07-26 2010-02-03 키오세라 와이어리스 코포레이션 System and method for organizing field upgradable wireless communication device software
US7159214B2 (en) 2001-07-26 2007-01-02 Kyocera Wireless Corp. System and method for compacting field upgradeable wireless communication device software code sections
US9554268B2 (en) 2001-07-26 2017-01-24 Kyocera Corporation System and method for updating persistent data in a wireless communications device
US7184759B2 (en) 2001-07-26 2007-02-27 Kyocera Wireless Corp. Modular software components for wireless communication devices
US6961537B2 (en) 2001-08-10 2005-11-01 Kyocera Wireless Corp. System and method for peer-to-peer handset communication
US7743115B2 (en) * 2002-02-27 2010-06-22 Motorola, Inc. Software content downloading methods in radio communication networks
JP2004005006A (en) * 2002-03-27 2004-01-08 Nec Corp Dictionary adding method of mobile communication terminal device
EP1395074A1 (en) * 2002-08-30 2004-03-03 Siemens Aktiengesellschaft Method for operation of a terminal in a radio communication system, radio communication system, terminal and confirmation unit for a radio communication system
US7359698B2 (en) 2003-09-08 2008-04-15 Kyocera Wireless Corp. Systems and methods for enhanced over-the-air programming
ATE429133T1 (en) * 2003-12-22 2009-05-15 Ericsson Telefon Ab L M DOWNLOAD AND UPGRADE TERMINAL SOFTWARE OF A WIRELESS DEVICE VIA RADIO
EP1560447B1 (en) * 2004-01-27 2008-11-19 Research In Motion Limited Method and device for updating non-volatile memory items on a wireless device by checking and comparing a unique identifier item stored in said memory with a software identifier
US8418162B2 (en) 2004-01-27 2013-04-09 Research In Motion Limited Network delivered dynamic persistent data
ATE393549T1 (en) * 2004-01-27 2008-05-15 Research In Motion Ltd METHOD AND APPARATUS FOR UPDATE NON-VOLATILE MEMORY CONTENTS ON A CORDLESS DEVICE BY CHECKING AND COMPARISONING A SPECIFIC IDENTIFICATION ELEMENT STORED IN SAID MEMORY WITH A SOFTWARE IDENTIFICATION
US7222340B2 (en) 2004-01-27 2007-05-22 Research In Motion Limited Software-delivered dynamic persistent data
WO2006000122A1 (en) * 2004-06-23 2006-01-05 Zte Corporation A method of ensuring version matching in mobile communication system
GB2425193B (en) * 2005-04-14 2007-10-17 Nec Technologies Method of software updating and related device
JP2008299709A (en) * 2007-06-01 2008-12-11 Nec Corp Firmware updating system, network connection apparatus, firmware updating method, and program
CN102014419A (en) * 2009-09-09 2011-04-13 苏州工业园区科升通讯有限公司 Method for 2G and 3G network testing by adopting terminal mobile phone

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155837A (en) * 1989-03-02 1992-10-13 Bell Communications Research, Inc. Methods and apparatus for software retrofitting
EP0767426B1 (en) * 1995-10-05 2014-01-01 Gigaset Communications GmbH Method for programming an apparatus
FI955188A (en) * 1995-10-30 1997-06-24 Nokia Telecommunications Oy Mobile software maintenance
US5956481A (en) * 1997-02-06 1999-09-21 Microsoft Corporation Method and apparatus for protecting data files on a computer from virus infection
DE19741703C2 (en) * 1997-09-22 2000-02-24 Siemens Ag Process for loading operating software and mobile phone therefor

Also Published As

Publication number Publication date
AU4968800A (en) 2000-12-18
DE10084626T1 (en) 2002-05-16
CN1364390A (en) 2002-08-14
JP2003501907A (en) 2003-01-14
WO2000074412A1 (en) 2000-12-07
CN1147190C (en) 2004-04-21
SE9901904L (en) 2000-11-27
SE9901904D0 (en) 1999-05-26

Similar Documents

Publication Publication Date Title
SE516806C2 (en) Methods for loading software into a radio terminal, such as a mobile phone, and associated radio terminal
KR100611537B1 (en) Server processing for updating dataset versions resident on a wireless device
US10628290B2 (en) Generating an inner cloud environment within an outer cloud environment for testing a microservice application
EP0718761A1 (en) A platform independent object and object viewer loader and method
CN110673924B (en) Multi-architecture container cloud mirror image selection method, device, equipment and storage medium
WO2001016730A2 (en) FIXING INCOMPATIBLE APPLICATIONS BY PROVIDING STUBS FOR APIs
US6604237B1 (en) Apparatus for journaling during software deployment and method therefor
KR101201276B1 (en) Method, software and apparatus for performing actions on a wireless device using action lists and versioning
JP2008502968A (en) Method for loading software comprising an intermediate object-oriented language onto a portable device
CN113467980B (en) Log output method, device and system and embedded equipment
CN111708566A (en) Software increment updating method, device, system and computer readable storage medium
CN113608692B (en) Storage system data consistency verification method, system, equipment and medium
US6588011B1 (en) Apparatus for automatically generating restore process during software depolyment and method therefor
CN104965736A (en) Continuous upgrade method and apparatus
CN112732587A (en) Method and device for acquiring automatic test log, electronic equipment and storage medium
CN103677937A (en) Method and device for upgrading and running software
CN107463485B (en) Method stack-based log acquisition method and device and terminal
CN112882746A (en) Application program updating method and device, storage medium and computer equipment
CN102708044B (en) Integrality and compatibility verification apparatus and method
CN109471799B (en) Method, device, storage medium and terminal for deploying demand environment
CN101506772A (en) Environment state changes to alter functionality
US5590347A (en) Method and system for specifying alternate behavior of a software system using alternate behavior indicia
CN104991796B (en) A kind of method and device continuously upgraded
CN111176671B (en) Method for automatically and continuously updating system, mobile terminal and storage medium
CN110471828B (en) Operating system testing method, device and equipment thereof

Legal Events

Date Code Title Description
NUG Patent has lapsed