SE514840C2 - Metod och apparat för uppgradering av fasta program i ett inbyggt system - Google Patents

Metod och apparat för uppgradering av fasta program i ett inbyggt system

Info

Publication number
SE514840C2
SE514840C2 SE9902644A SE9902644A SE514840C2 SE 514840 C2 SE514840 C2 SE 514840C2 SE 9902644 A SE9902644 A SE 9902644A SE 9902644 A SE9902644 A SE 9902644A SE 514840 C2 SE514840 C2 SE 514840C2
Authority
SE
Sweden
Prior art keywords
file
firmware upgrade
upgrade file
client computer
firmware
Prior art date
Application number
SE9902644A
Other languages
English (en)
Other versions
SE9902644D0 (sv
SE9902644L (sv
Inventor
Per Steen
Mikael Starvik
Original Assignee
Axis Ab
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 Axis Ab filed Critical Axis Ab
Priority to SE9902644A priority Critical patent/SE514840C2/sv
Publication of SE9902644D0 publication Critical patent/SE9902644D0/sv
Priority to US09/608,358 priority patent/US6668374B1/en
Priority to PCT/SE2000/001450 priority patent/WO2001004749A1/en
Priority to EP00946726.7A priority patent/EP1257915B1/en
Priority to AU60440/00A priority patent/AU6044000A/en
Priority to JP2001510087A priority patent/JP4777561B2/ja
Publication of SE9902644L publication Critical patent/SE9902644L/sv
Publication of SE514840C2 publication Critical patent/SE514840C2/sv
Priority to JP2008176501A priority patent/JP4829932B2/ja
Priority to JP2011087489A priority patent/JP5395108B2/ja

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)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

20 25 30 35 rusf1iii4 3-4 o _ 4.. ._ 2 således att det fasta programmets uppgradering på serv- rarna kan utföras pà ett sätt som är lätt och säkert, med avseende pà en làg felsannolikhet.
Uppgraderingen av fasta program sköts idag vanligt- vis genom koppling av en dator direkt till det inbyggda systemet. Vidare är det känt att utföra uppgradering av fasta program över det nätverk som servern är kopplad till.
Ett betydande problem med uppgradering av det fasta programmet hos kända inbyggda system är att den individ som utför uppgraderingen måste ha detaljerad kunskap om datornätverket och det inbyggda systemet samt måste ut- föra ett antal tämligen komplicerade steg. De flesta individer känner inte sig säkra pà utförandet av nämnda steg och känner inte sig säkra pà användandet av alla siffror och karakteristika som mäste matas in vid ut- förandet av det fasta programmets uppgradering. Vidare kräver uppgraderingen ett speciellt utformat program inuti klienten för nerladdning av det fasta programmets uppgradering till det inbyggda systemet. Dessa aspekter gör förfarandet att uppgradera fasta program hos ett inbyggt system svårt och tidskrävande för en individ, särskilt om individen inte är speciellt kunnig inom datortekniken och datorkommunikationstekniken. I den kända tekniken laddas en uppgraderingsfil ner till det inbyggda systemet medelst ett filöverföringsprotokoll.
Nerladdningen utförs med ett specialanpassat program och det krävs att individen som utför nerladdningen speci- ficerar t ex vart, i form av en nätverksadress, nämnda data skall sändas.
Ett annat vanligt problem vid uppgradering av fasta program i inbyggda system är risken för kommunikations- avbrott under det fasta programmets nerladdning. Sådana avbrott kan sätta det inbyggda systemet ur funktion och således kräva betydande reparationsinsatser.
US S 812 857 visar en metod för uppgradering av en nerladdningskoduppsàttning, vid vilken ett inbyggt system l " (E: 'ïíæïílÄIIDRÅIÅIíETgII991(396 $E__ (UB 20231,) 7.515.753 10 15 20 25 30 35 _8~4o. 3 använder samma nätverksdrivrutiner som vid normal funk- tion. Vidare beskriver den en nerladdning där olika delar av koduppsättningen laddas ner under olika steg av ner- laddningsförfarandet. Några delar av koduppsättningen laddas ner till ett Üflash"-minne via ett flyktigt minne, medan några delar laddas ner direkt till "flash"-minnet.
Det beskrivs också att en tillfällig nerladdare, som laddats ner under ett inledande steg och som ersatts av ytterligare en annan nerladdare under ett senare steg, används under nerladdningsförfarandet. Det beskrivna systemet och metoden är utformade för minimering av tiden för exekvering av kod i flyktigt minne till det bestån- diga minnet och är tämligen komplicerade.
Sammanfattning av uppfinningen Ändamålet med föreliggande uppfinning är att till- handahålla en ny och förbättrad metod för uppgradering av fasta program i ett inbyggt system och ett nytt och för- bättrat inbyggt system med avseende på uppgradering av fasta program.
Ett annat ändamål med uppfinningen är att tillhanda- hålla en uppgraderingsmetod för fasta program som är lätt att använda och som sparar tid.
Ett ytterligare annat ändamål med uppfinningen är att tillhandahålla en uppgraderingsmetod för fasta prog- ram i vilken sannolikheten för en felaktig uppgradering är minimerad.
Dessa ändamål, såväl som andra ändamål vilka kommer att bli uppenbara genom beskrivningen nedan, uppnås av en metod enligt krav 1 och 8 och av ett inbyggt system enligt krav 19. Föredragna utföringsformer av uppfin- ningen framgår av de beroende kraven.
Inom ramen för uppfinningen betecknar termen inbyggt system en dator för särskilda ändamål som är inbyggd i och integrerad med en serverenhet. Serverenheten kan exempelvis vara en CD-server, en skrivarserver, en fil- etc. server, en kommunikationsserver, ~ å:ÄPêäïåEDRÄßIISflglÉ99lü96 S3E__[Tf}2f.!íJG-fl7-l2 ÜBEJJÄGC 10 15 20 25 30 35 . -_ _, '-_ « E' _; . . _ _' z- , v _ « . fp ef C u. _ _. _ _ . k . . . , . < f f m. f. < y _ < <. . . t 1 . < «- u « _ - _ «<< . . .. . . ,. g ,, . , K v _ .. ._ < ._ ._ i . .. <- 4 Enligt uppfinningen används ett virtuellt filsystem i det inbyggda systemet. Detta leder till fördelen att den individ som startar uppgraderingen kan arbeta i en välkänd miljö och kan ha möjligheten att använda samma kommandon som vid hantering av filer inuti klientdatorn.
Sådan hantering av filer inuti klientsystemet utförs dagligen av datoranvändare och säledes är individen förmodligen bekant med utförandet av sådan hantering och därigenom kan systemet enligt uppfinningen vara tids- sparande.
Genom användning av ett virtuellt filsystem inuti ett inbyggt system kan dessutom ett enkelt sätt för över- föring av en fil från klientdatorn till det inbyggda systemet användas, t ex genom att dela det virtuella filsystemet med klientdatorn. Delning av ett filsystem skall tolkas som att filsystemet är anordnat på ett sådant sätt att det kan användas inuti en klientdator och hanteras som om det var en del av denna klientdators filsystem.
Ytterligare en annan fördel hos uppfinningen är att protokollstacken hos det inbyggda systemet kan vara den- samma för både normal funktion av servern och för upp- graderingsförfarandet. Således är det möjligt att spara utrymme i det inbyggda systemets beständiga minne. Det skall förstås att det virtuella filsystemet arbetar obe- roende av den protokollstack som för tillfället används.
Genom lagring av nämnda data ur det fasta program- mets uppgraderingsfil i det flyktiga minnet innan det skrivs till det beständiga minnet kan kritiska data kontrolleras innan de skrivs till det beständiga minnet.
Således är det möjligt att kontrollera om nämnda data representerar en korrekt uppgraderingsfil för fast program och om nämnda data är avsedda för den produkt som hänför sig till det inbyggda systemet.
I en föredragen utföringsform av uppfinningen är det inbyggda systemets virtuella filsystem mappat inuti klientdatorn. Därigenom behöver inga speciellt utformade IIIÅ3f.I'.I-~-'L=}-~l“.-^i& Išzïlš (E:'flšëit'gšßšïfïfiíššïzll99lÛ$36 íšE_{IJ}2(}'.JÛ>-07---l2 ÜBJT/Hflßí: f < L « 1 f 10 15 20 25 30 35 » _, - v - - . v f- <1 c cc <\. nu _» - ~ ~ ~ « _- . « z a <1- f. f 1, \ \ > .1 2 « - - _ _ . 1 _ , . .. < . . , ,_ - _ ^-- ~ -f -. 1. _ 4 l z 1 . n -. ; _ ~ - ~- . . . = l . K t . . __ y rf cv HM c < < c .. 5 program användas i klientdatorn. Således sparas både tid och minnesutrymme hos klientdatorn.
Enligt en specifik utföringsform av metoden enligt uppfinningen lagras hela uppgraderingsfilen för fast program i det inbyggda systemets flyktiga minne innan den skrivs till det beständiga minnet. Därigenom kan ett fel i uppgraderingsfilen för fast program identifieras, t ex genom att làta styrorgan kontrollera filen innan filen ersätter det fasta program som för tillfället är lagrat i det beständiga minnet. Sàdana fel är vanligtvis ett resultat av avbrott i nätverkstrafik eller andra nät- verksrelaterade fel.
Kort beskrivning av ritningarna Andra särdrag och fördelar hos föreliggande upp- finning kommer att bli uppenbara utifrån följande detal- jerade beskrivning av en för tillfället föredragen utföringsform med hänvisning till bifogade ritningar.
Fig 1 är en schematisk bild av en omgivning för det inbyggda systemet enligt uppfinningen.
Fig 2 är ett blockschema över ett inbyggt system och en klientdator under en uppgradering av fasta program hos det inbyggda systemet.
Fig 3 är en detaljerad vy av en del av det inbyggda systemet som visats i fig 2.
Fig 4 är ett flödesschema som visar händelser i enlighet med metoden enligt uppfinningen.
Detaljerad beskrivning av en för tillfället föredragen utföringsform I fig 1 visas en omgivning för uppfinningen, där en klientdator 10 och servrar 100 är kopplade till ett nät- verk 30. Varje server 100 förser en anordning 50 med organ för kommunikation med klientdatorn 10 över nåt- verket 30. Klientdatorn 10, som beskrivs häri, kan vara vilken klientdator som helst av ett flertal klient- datorer, som är kopplade till nätverket 30. Varje server lïílílü~lfl~íl=i 13:33 (å:'1Pat2JÉJRïJllf3šgIš991096 S§E__{Uš2(]í3()--»|J7~^l2 (líšlfïmlcc 10 15 20 25 30 35 ¿§14,á4o 6 100 innefattar ett inbyggt system 110, som utför serverns 100 databehandling. En uppgradering av ett fast program startas vid klientdatorn 10 och styrs till ett inbyggt system 110.
En server 100, som innefattar det inbyggda systemet 110, gör det möjligt att nå eller dela anordningar 50 via nätverket. Servern 100 kan vara inbyggd i en anordning 50, arrangemang b, eller kan vara extern till en anord- ning 50, En anordning 50 kan vara vilken anordning som helst som skulle kunna vara intressant att koppla till ett nätverk. Exempelvis skulle det kunna vara en industri- robot, en styrenhet eller en mätare för en process eller arrangemang a. en perifer anordning, såsom en skrivare, ett modem, en scanner, en faxmaskin, en kopieringsapparat eller en flerfunktionell periferiutrustning.
I fig 2 framgår att det inbyggda systemet 110 hos den föredragna utföringsformen innefattar ett filsystem 120, ett flyktigt minne 150, ett bestàndigt minne 160, en central processorenhet 170 (CPU), åtminstone en proto- kollstack 180 och en programmerare 190.
Inuti filsystemet 120 är ett virtuellt filsystem 122 (VFS) realiserat och i det virtuella filsystemet till- handahàlls en katalog för uppgradering 126, hàrefter kallad "FLASH". I den föredragna utföringsformen hos upp- finningen är FLASH-katalogen 126 en underkatalog till en katalog 124 kallad "SYSTEM", vilken också innefattar andra resurser.
Det flyktiga minnet 150 är ett minne som förlorar den information som lagrats däri när strömmen till det slàs av och det används för lagring av tillfällig data.
Det beständiga minnet 160 är ett omprogrammerbart minne där lagrad data bevaras även när strömmen till det slås av. I den föredragna utföringsformen är det beständiga minnet 160 ett flashminne, men det skulle kunna vara vilket omprogrammerbart minne som helst som bevarar data efter det att strömmen slagits av. Nämnda CPU 170 behand- 20Üí)---l.=.3~~2á Sfišzíš G:XPéKIÄJDSïÉÄÉiEYgTÉI9J.Ü96___SE_[U}2GÜ!J-~{l7--l2 0817410/3 10 15 20 25 30 35 -- - Å. I -_ . v u x- r a - V v « .« \ . f «< . “_ , K _ - ~ w ' \ \ « rv n . < -~ - , _ . .f- . . .- . .. < <. 4 š t, ~ -. - z- < 1 c ._ ' 1:: :r z 4,, 7 lar det inbyggda systemets funktioner, protokoll, etc.
Protokollstacken 180 innehåller protokollen för kommuni- kation över nätverket. Programmeraren 190, hàrefter kallad flashprogrammeraren 190, är ett organ för skriv- ning av kod till det bestàndiga minnet 160.
I Klientdatorn 10 innefattar ett operativsystem, vilket har ett filsystem 18 som tillåter mappning av resurser 20, vilka delas över nätverket 30.
Servern 100 som hänför sig till anordningen 50 är mappad inuti klientdatorns filsystem.
Servern 100 är vanligen mappad i filsystemet 18 för andra syften än uppgradering av fasta program. Om exem- pelvis anordningen 50, som betjänas av servern är en fil- lagringsanordning är lagringsområdet vanligtvis åtkomligt från klientdatorn genom användning av vanliga filhante- ringskommandon hos klientdatorns 10 operativsystem.
Således har det skapats en pekare fràn filsystemet 18 hos klientdatorn 10 till en rotkatalog hos filsystemet 120 i serverns 100 inbyggda system 110. Därigenom är också underkatalogerna i det inbyggda systemets 110 filsystem 120 åtkomliga inuti klientdatorns 10 filsystem 18. Om servern 110 inte redan är mappad i klientdatorns 10 filsystem 18 för normal drift av anordningen 50, måste servern 100 mappas i klientdatorn 10 innan uppgraderings- förfarandet enligt uppfinningen utförs.
Detta arrangemang resulterar i att det inbyggda systemets 110 kataloger år möjliga att hantera inuti filstrukturen hos klientdatorns 10 operativsystem. Vidare kan det inbyggda systemets 110 kataloger kommas åt som om de var kataloger hos klientdatorn 10, genom användning av vanliga filhanteringskommandon.
I fig 3 visas FLASH-katalogen 126 inuti det inbyggda systemets 110 virtuella filsystem 122. Det finns ett styrorgan, som är realiserat medelst en datakanal 128, vilken är knuten till FLASH-katalogen 126. Nedan hänvisas denna datakanal 128 till som flashdatakanal 128. Flash- datakanalen 128 återställs varje gång FLASH-katalogen 126 'š :SIS (ä: ":ÅPE5ITL'“=._rTDRfï_'-2Iå322¥?91.U96__E3E__iUi 2IL}(1fJ---l)7~l2 Û B17 . :íOC I) i? i! i) l Û ~~ 2,. 10 15 20 25 30 35 . . \ ” ~ '- .- f< Y fc f. r w «<- nu c j» , x .- i _ f 1. i f. < . . 1 . .- * H . - - --< . 1. . . i r . _- *- '_ -« -.- f «« 1. 1 < fc < . . . .v . t. 1 . g _ . ' - v' «- n< z- n 8 anropas. Flashkanalen är tilldelad en del av det flyktiga minnet 150 för lagring av data. Flashdatakanalen 128 hanterar all den data som skickats till FLASH-katalogen 126 och är speciellt utformad för att hantera uppgrade- ringsfiler för fasta program och för att utföra flera styrförfaranden pà mottagen data.
För utförande av nämnda styrförfaranden innefattar flashdatakanalen 128 organ för kontroll av filens karak- teristika, nämligen första kontrollorgan 131, andra kontrollorgan 132 och tredje kontrollorgan 133 och organ 130 för lagring av en fils data i det flyktiga minnet 150. programkod, Det första kontrollorganet 131 kontrollerar om filen är Nämnda kontroll- och lagringsorgan är realiserade av som är relaterad till flashdatakanalen 128. en uppgraderingsfil för fast program genom att undersöka om det finns ett "magiskt tal", som beskrivs nedan. Det andra kontrollorganet 132 kontrollerar om den fil som lagrats i det flyktiga minnet 150 är avsedd för den produkt som är relaterad till det inbyggda systemet 110.
Det tredje kontrollorganet 133 kontrollerar filens kontrollsumma för att avgöra om det finns nägra fel i filen.
Vidare förser flashdatakanalen 128 en flashprogram- merare 190 med de godkända uppgraderingsfilerna för fasta program för att få uppgraderingsfilen för fast program skriven till det beständiga minnet 160. En mer detaljerad beskrivning av funktionerna hos flashdatakanalen hittas nedan, i beskrivningen av metoden.
För beskrivning av den föredragna metoden för upp- gradering av fasta program hänvisas nu till fig 2 och 4.
Vi antar att servern 100 har blivit mappad i klient- datorns 10 filsystem 18.
Làt oss anta att en användare år intresserad av att uppgradera en servers fasta program med en uppgraderings- fil 24 för fast program, vilken han har emottagit från tillverkaren av servern 100 och har lagrat pà klient- datorns 10 hårddisk 22. Det skall förstås att uppgrade- 2 0G å) li) lI-'i i. ._ ° '3 : SIS (-3: flPatl-.ATDRÅ-.3íIíšï.29^}3l,=.196____5E_ (U) 2005--111 77x12 (1817 _ :íøc 10 15 20 25 30 35 0.511.141" 84Û . 9 ringsfilen för fast program naturligtvis kan vara lagrad pà vilken lagringsenhet som helst som âr àtkomlig fràn klientdatorn 10.
Användaren använder sedan de vanliga filhanterings- kommandona för det aktuella operativsystemet för att kopiera eller flytta uppgraderingsfilen 24 för fast program till FLASH-katalogen. I den föredragna utförings- formen “drar och släpper" 28 individen uppgraderingsfilen 24 för fast program till representationen av FLASH- katalogen 26 inuti klientdatorn.
Klientdatorn 10 skickar därefter en instruktion till det inbyggda systemet, som talar om för det att öppna en flashfil, steg 402, inuti det virtuella filsystemet 122 hos det inbyggda systemet.
Därefter àterställs flashdatakanalen, steg 404, och data ur uppgraderingsfilen 24 för fast program emottas och lagras, steg 406, i det flyktiga minnet 150. Flash- datakanalen kontrollerar nämnda data under mottagning, steg 408, för sökning efter en identifierare i form av "ett magiskt tal", vilket motsvarar en identifierare som bekräftar att nämnda data som mottagits tillhör en upp- graderingsfil för fast program.
Sökningen, i steg 408, efter ett magiskt tal som identifierar nämnda data som en uppgraderingsfil för fast program, kontrollerar en fördefinierad position i data- filen för det "magiska talet". Det magiska talet är före- trädesvis placerat i början av uppgraderingsfilen för fast program.
Om det magiska talet, som motsvarar en uppgrade- ringsfil för fast program, inte finns på den fördefi- nierade positionen i steg 408, då tillhör inte filens data en uppgraderingsfil för fast program. Som ett resul- tat därav skickas ett felmeddelande, steg 422, till klienten och filöverföringen avslutas.
Om ett magiskt tal, som motsvarar en uppgraderings- fil 24 för fast program emottas, steg 408, mottagningen av data, steg 412, 414, tills all data ur fortsätter IEÜÜÛ-ZÅJ-Ålßl 13:53 (å: "=._P<3ÉZ'“=_JDR.ÄÅ'EIS“=__IS99l096__SE__ (UÉI 'àüllil- (17-.12 *B81 7 . dfx: < < f . c- 10 l5 20 10 uppgraderingsfilen för fast program är lagrad i det flyktiga minnet 150.
När all data ur en uppgraderingsfil för fast program har tagits emot kontrollerar flashdatakanalen den mot- tagna filens kontrollsumma, steg 418. Om kontrollsumman inte är korrekt är den mottagna filen förvanskad. Som ett resultat därav skickas ett felmeddelande, steg 422, till klientdatorn och det inbyggda systemets uppgraderings- förfarande avbryts.
Om kontrollsumman är korrekt, undersöker flashdata- kanalen, steg 420, om det finns en produktidentifierare inuti filen, som talar om vilken produkt uppgraderings- filen för fast program är avsedd för. Om identifieraren inte motsvarar serverprodukten skickas ett felmeddelande, steg 422, till klientdatorn och det inbyggda systemets uppgraderingsförfarande avbryts.
Om produktidentifieraren är korrekt beordras flash- programmeraren 190 att radera åtminstone en del av minnet och sedan skriva, steg 424, uppgraderingsfilen för fast program i det flyktiga minnet 150 till flashminnet 160.
När uppgraderingsfilen för fast program har skrivits till flashminnet 160 stängs flashfilen, vilket indikeras i klientdatorn på ett liknande sätt som när en vanlig filöverföring har fullbordats. p O ß f I“"'“-._1I':°~9l!.J9šš SE__ÉI.T32üílü~ü7~l2 65.17.' ' r < . . « -

Claims (25)

10 15 20 25 30 35 ll PATENTKRÄV
1. Metod för uppgradering av fasta program i ett inbyggt system (110) från en klientdator (10) via en nätverksanslutning, innefattande stegen att: dela ett virtuellt filsystem (122) hos det inbyggda systemet (110) med klientdatorn (10) pà ett sådant sätt att det virtuella filsystemet (122) kan utnyttjas inuti klientdatorns (10) operativsystem, skicka data ur en uppgraderingsfil för fast program över nätverket (30) från klientdatorn (10) till det inbyggda systemet (110) som ett resultat av att upp- graderingsfilen har kopierats eller flyttats (28) till en katalog (26) inuti klientdatorns (10) filsystem (18), vilken katalog (26) representerar en länk till det inbyggda systemets (110) virtuella filsystem (122), ta emot (406, 412) data ur en uppgraderingsfil för fast program, från klientdatorn (10), systemets (110) virtuella filsystem (122) via länken, lagra (406, 412) nämnda data ur uppgraderingsfilen i det inbyggda för fast program i ett flyktigt minne (150) hos det inbyggda systemet (110), som är kopplat till det virtuella filsystemet (122) och skriva (424) uppgraderingsfilen för fast program från det inbyggda systemets (110) flyktiga minne (150) till ett beständigt minne (160) hos det inbyggda systemet (110).
2. ~ 2. Metod enligt krav 1, vidare innefattandet steget att kontrollera (408) om data som mottagits i det vir- tuella filsystemet (122) motsvarar en uppgraderingsfil för fast program.
3. Metod enligt krav 2, vidare innefattande, när nämnda mottagna data motsvarar en uppgraderingsfil för fast program, steget att kontrollera (420) om upp- graderingsfilen för fast program som är lagrad i det flyktiga minnet (150) är avsedd för det inbyggda sys- temets (110) produkttyp. 2 íllf! Ü ---l(! f/Lê 113 :53 \"\_$ »Jíß-SJBIJCT ~- 0 l “gGROUPSfi ïßa t 'ïßRïaí-:t X2 9 91 ü 96_.2\_: 10 15 20 25 30 35 , _? _/¿. .,.. __(- _ ' _, fu i \ i, . U «(_ frn :_ .. ¿ ' s f< fl <4 f « ' - < - 4 1; u n I fl , . r. ,. < . : 1 r t _.. _ « ~ (to mc n. .f 1 _ .r v . » , , , , , . .. g . 1 \ 1 , , , .. ff u: .. -.-«c f I2
4. Metod enligt krav 2 eller 3, vidare innefattande, när nämnda mottagna data motsvarar en uppgraderingsfil för fast program, steget att kontrollera (418) den mottagna filens kontrollsumma.
5. Metod enligt något av krav 2-4, steget att skicka ett felmeddelande (422) fràn det inbyggda systemet (110) till klientdatorn (10) när den data som mottagits inte motsvarar en giltig uppgrade- innefattande ringsfil för fast program.
6. Metod enligt något av krav 1-5, vid vilken de protokoll (180) som används under mottagningen av upp- graderingsfilen för fast program är de protokoll (180) som tidigare använts av det inbyggda systemet (110) under den normala driften.
7. Metod enligt något av krav 1-6, vid vilken nämnda mottagna data ur en uppgraderingsfil för fast program kontrolleras inuti det inbyggda systemet av en datakanal (128) hos det virtuella filsystemet (122).
8. Metod för uppgradering av fasta program hos ett inbyggt system (110) över en nàtverksanslutning, inne- fattande_stegen att: dela ett virtuellt filsystem (122) med en extern dator (10)via nätverksanslutningen på ett sådant sätt att det virtuella filsystemet (122) kan utnyttjas i den externa datorns operativsystem som om det var en del av den externa datorns filsystem, ta emot (406) data ur en uppgraderingsfil för fast program vid det virtuella filsystemet (122) hos det in- byggda systemet (110) via en anslutning för delat fil- system, lagra (406) nämnda data ur uppgraderingsfilen för fast program i ett flyktigt minne (150), som är kopplat till det virtuella filsystemet (122) och skriva (424) uppgraderingsfilen för fast program frán det flyktiga minnet (150) till ett bestàndigt minne (160). 1 i- 6__.\.: 10 15 20 25 30 35 < ( . . . < . . . “V1"5~i1 1li84i8 i4ïÛ( Vñïï: ~ i I3
9. Metod enligt krav 8, vidare innefattande steget att kontrollera (408) om data som mottagits vid det vir- tuella filsystemet (122) motsvarar en uppgraderingsfil för fast program.
10. Metod enligt krav 9, vidare innefattande, när nämnda mottagna data motsvarar en uppgraderingsfil för fast program, steget att kontrollera (420) om den lagrade uppgraderingsfilen för fast program är avsedd för anordningens (50) produkttyp.
11. Metod enligt krav 9 eller 10, vidare inne- fattande, när nämnda mottagna data motsvarar en upp- graderingsfil för fast program, steget att kontrollera (418) den mottagna filens kontrollsumma.
12. Metod enligt krav 9, innefattande steget att skicka ett felmeddelande (422) när nämnda mottagna data inte motsvarar en uppgraderingsfil för fast program.
13. Metod enligt krav 10, innefattande steget att skicka ett felmeddelande (422) när den lagrade uppgra- deringsfilen för fast program inte är avsedd för anord- ningens (50) produkttyp.
14. Metod enligt nàgot av krav 8-13, innefattande steget att radera åtminstone en del av det beständiga minnet (160) efter mottagning av en korrekt uppgrade- ringsfil för fast program och innan skrivning (424) av nämnda fil till det beständiga minnet (160).
15. Metod enligt något av krav 8-14, vid vilken de protokoll (180) som används under mottagningen av upp- graderingsfilen för fast program är de protokoll (180) som tidigare använts av anordningen (50) under den normala driften.
16. Metod enligt något av krav 8-15, vid vilken nämnda mottagna data ur en uppgraderingsfil för fast program kontrolleras av en datakanal (128) hos det virtuella filsystemet (122).
17. Metod enligt något av krav 8-16, vid vilken steget att skriva (424) uppgraderingsfilen för fast program från det flyktiga minnet (150) till det bestän- 2(.1Oü-~fií:~--24 1.3. : 53 “-._X$->IIBG~~BDC--- 211 *äiëšfâüšüš $ E-ezli ïšñlv-(akt 2 8 9109 6_.\_: 10 15 20 25 30 35 a;s'lia4l_ ras»f4n v. ¿ . 1¿r.ï( r)*.fí I4 diga minnet (160) föregås av att all data ur uppgra- deringsfilen för fast program varit placerat i det flyktiga minnet (150).
18. Metod enligt något av krav 8-17, vid vilken det virtuella filsystemet (122) är mappat inuti en klient- dator (10) på ett sådant sätt att det virtuella filsys- temet (122) kan utnyttjas inuti klientdatorns (10) opera- tivsystem.
19. Inbyggt system (110) försett med organ för upp- gradering av fasta program som mottagits över ett nätverk (30), innefattande: ett flyktigt minne (150), (160), en protokollstack (180) för kommunikation över ett nätverk (30) och ett virtuellt filsystem (122), dela med ett operativsystem hos en klientdator (10) via ett beständigt minne som är möjligt att nätverket (30), för uppgradering av nämnda fasta program.
20. System (110) ett kontrollorgan (128) för kontroll av en fil som är enligt krav 19, vidare innefattande avsedd för det virtuella filsystemet (122), (128) innefattar 133) för kontroll av filens varvid kontrollorganet 132, och organ (131, karakteristika, organ (130) för lagring av en fil i det (150).
21. System (110) enligt krav 20, varvid det vir- tuella filsystemet (122) innefattar en uppgraderinge- katalog (126) och varvid kontrollorganet (128) är anordnat att kontrollera en fil som är avsedd för upp- flyktiga minnet graderingskatalogen (126).
22. System (110) enligt krav 20 eller 21, varvid ett första organ (131) för kontroll av filens karakteristika är anordnat att kontrollera att filen är en uppgrade- ringsfil för fast program.
23. System (110) enligt något av krav 20-22, varvid ett andra organ (132) för kontroll av filens karakte- '¿ Üi: i! -~-1 U -2-'5 l å) l "-._ CERÜTÉFT-'Eš S ÄP ä\s~EßG~BDc~ . DRä a: kt _ 9- 9 l f! 9 (>'_.\.:'__SE__ i Krefräradrsfnnl . rloc 10 51.4 _ si4 3.u . = |5 ristika är anordnat att kontrollera att en mottagen uppgraderingsfil för fast program är en uppgraderingsfil för fast program som är avsedd för den produkt det in- byggda systemet (110) representerar.
24. System (110) enligt något av krav 20-23, varvid ett tredje organ (133) för kontroll av filens karakte- ristika är anordnat att kontrollera kontrollsumman hos en mottagen uppgraderingsfil för fast program.
25. System (110) enligt nàgot av krav 19-24, vid vilket en gemensam protokollstack (180) för kommunikation över nätverket (30) används under normal drift och under nerladdning. ' 53 'xXS -I1'BG~-BDC~ ul '=._ .- _, .1 ^-' JDRïakt i) 9$__.'=1.x:ï..=s_Firm*.flax'e*-.,2 991 0 96_SE3__ (UÉI Kreffäncírsfnnl . doc:
SE9902644A 1999-07-08 1999-07-08 Metod och apparat för uppgradering av fasta program i ett inbyggt system SE514840C2 (sv)

Priority Applications (8)

Application Number Priority Date Filing Date Title
SE9902644A SE514840C2 (sv) 1999-07-08 1999-07-08 Metod och apparat för uppgradering av fasta program i ett inbyggt system
US09/608,358 US6668374B1 (en) 1999-07-08 2000-06-29 Method and apparatus for upgrading firmware in an embedded system
PCT/SE2000/001450 WO2001004749A1 (en) 1999-07-08 2000-07-06 Method and apparatus for upgrading firmware in an embedded system
EP00946726.7A EP1257915B1 (en) 1999-07-08 2000-07-06 Method and apparatus for upgrading firmware in an embedded system
AU60440/00A AU6044000A (en) 1999-07-08 2000-07-06 Method and apparatus for upgrading firmware in an embedded system
JP2001510087A JP4777561B2 (ja) 1999-07-08 2000-07-06 組み込みシステム内のファームウエアをアップグレードする装置と方法
JP2008176501A JP4829932B2 (ja) 1999-07-08 2008-07-07 組み込みシステム内のファームウエアをアップグレードする装置と方法
JP2011087489A JP5395108B2 (ja) 1999-07-08 2011-04-11 組み込みシステム内のファームウエアをアップグレードする装置と方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9902644A SE514840C2 (sv) 1999-07-08 1999-07-08 Metod och apparat för uppgradering av fasta program i ett inbyggt system

Publications (3)

Publication Number Publication Date
SE9902644D0 SE9902644D0 (sv) 1999-07-08
SE9902644L SE9902644L (sv) 2001-01-09
SE514840C2 true SE514840C2 (sv) 2001-04-30

Family

ID=20416452

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9902644A SE514840C2 (sv) 1999-07-08 1999-07-08 Metod och apparat för uppgradering av fasta program i ett inbyggt system

Country Status (5)

Country Link
EP (1) EP1257915B1 (sv)
JP (3) JP4777561B2 (sv)
AU (1) AU6044000A (sv)
SE (1) SE514840C2 (sv)
WO (1) WO2001004749A1 (sv)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7315389B2 (en) 2001-03-23 2008-01-01 Toshiba Tec Kabushiki Kaisha Electronic document assembly, proofing and printing system
AU2003273157A1 (en) * 2002-05-28 2003-12-12 Sheng Lee System update protocol and bootable cd controller
CN100399281C (zh) * 2002-12-09 2008-07-02 联想(北京)有限公司 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法
US6834347B2 (en) 2003-04-29 2004-12-21 International Business Machines Corporation Target self-security for upgrades for an embedded device
EP1756711A1 (en) 2004-05-31 2007-02-28 STMicroelectronics Pvl. Ltd. A method for remotely upgrading the firmware of a target device using wireless technology
JP7169340B2 (ja) 2017-07-25 2022-11-10 オーロラ ラブズ リミテッド 車両ecuソフトウェアのためのソフトウェアデルタ更新の構築およびツールチェーンに基づく異常検出
CN107707467A (zh) * 2017-10-23 2018-02-16 华东交通大学 基于sd卡升级的智能网关设备及其固件升级方法
CN114006901B (zh) * 2021-12-31 2022-04-08 广州鲁邦通物联网科技股份有限公司 一种嵌入式网络设备免拆机盖固件升级方法和系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4982430A (en) * 1985-04-24 1991-01-01 General Instrument Corporation Bootstrap channel security arrangement for communication network
US5452454A (en) * 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US5623604A (en) * 1992-11-18 1997-04-22 Canon Information Systems, Inc. Method and apparatus for remotely altering programmable firmware stored in an interactive network board coupled to a network peripheral
JP3205642B2 (ja) * 1993-05-18 2001-09-04 富士通株式会社 端末のファイル転送装置
JPH08249016A (ja) * 1995-03-09 1996-09-27 Koyo Electron Ind Co Ltd プログラマブルコントローラ
US5699275A (en) * 1995-04-12 1997-12-16 Highwaymaster Communications, Inc. System and method for remote patching of operating code located in a mobile unit
JPH09179796A (ja) * 1995-12-22 1997-07-11 Dainippon Screen Mfg Co Ltd データ転送処理装置
JPH09274561A (ja) * 1996-04-04 1997-10-21 Hitachi Ltd ジョブ及びスプールの操作方法
US5881236A (en) * 1996-04-26 1999-03-09 Hewlett-Packard Company System for installation of software on a remote computer system over a network using checksums and password protection
US5812857A (en) * 1996-08-28 1998-09-22 Extended Systems, Inc. Field configurable embedded computer system
JPH10269075A (ja) * 1997-03-24 1998-10-09 Sony Corp 動作制御情報の更新方法およびそれを用いたデータ処理装置
US5887164A (en) * 1997-06-06 1999-03-23 National Instruments Corporation System and method for enabling a target computer to use storage resources of a host computer

Also Published As

Publication number Publication date
JP4829932B2 (ja) 2011-12-07
WO2001004749A1 (en) 2001-01-18
SE9902644D0 (sv) 1999-07-08
JP2009020882A (ja) 2009-01-29
EP1257915A1 (en) 2002-11-20
JP2011146071A (ja) 2011-07-28
JP4777561B2 (ja) 2011-09-21
SE9902644L (sv) 2001-01-09
JP5395108B2 (ja) 2014-01-22
EP1257915B1 (en) 2015-01-28
AU6044000A (en) 2001-01-30
JP2003504755A (ja) 2003-02-04

Similar Documents

Publication Publication Date Title
US6668374B1 (en) Method and apparatus for upgrading firmware in an embedded system
US20050283606A1 (en) Selecting a boot image
US20050223210A1 (en) Machine and method for deployment of OS image
JP5395108B2 (ja) 組み込みシステム内のファームウエアをアップグレードする装置と方法
CN106789363A (zh) 一种向虚拟机配置网卡的方法及装置
US7610295B2 (en) Method and apparatus for generating persistent path identifiers
JPH10511783A (ja) ワークステーションのブート前にネットワーク及びワークステーションのアクセスを制御する方法及び装置
EP1492028B1 (en) Access to shared disk device on storage area network
Cisco Loading System Software Images and Configuration Files
JP3642594B2 (ja) 開発支援装置
CN114895933A (zh) 系统升级方法、网络设备、介质和电子设备
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Loading System Images and Configuration Files
Cisco Working with System Software Images
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco System Image, Microcode Image, and Configuration File Load Comma
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Working With System Images and Configuration Files
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Working with System Software Images
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Performing General Startup Tasks