JavaScript is currently disabled.Please enable it for a better experience of Jumi. Java och Linux vill köra bil på Mars
Dubbla operativsystem ger dubbla konfigurationsmöjligheter

"Java på Linux" är en ny plattform för inbyggda system. Motorolas mobiltelefon A760 använder den. Och Nasa funderar över att låta den styra ett fordon på Mars.
Linuxleverantörerna Montavista och Timesys är två av de företag som erbjuder "Java på Linux" som lösning för inbyggda system.

Plattformen används i bilnavigeringsutrustning, för nätverksadministration, i röstpostsystem, i medicinska styrsystem och som fjärrkontroll till oljeborrutrustning.

Det ser ut som tårta på tårta att köra Javaprogram i Linux. Om man bara vill köra Javaprogram, varför då göra det på ett så stort operativsystem som Linux?

- Därför att det inte bara är det man vill göra, svarar Bill Weinberg på Linuxleverantören Montavista.

Idén med kombinationen kan illustreras av hur Motorola använder den i mobiltelefonen A760. Kort uttryckt är Linux ett konfigurerbart skikt mot hårdvaran. Medan Java utnyttjas av Motorolas kunder, operatörerna, som ett konfigurerbart skikt mot slutanvändaren.

Linux är ensamt operativsystem i Motorola A760. Linux körs i en Intel Xscale PXA 250 och sköter allt utom basbandsberäkningar och annan signalbehandling, som sker i en separat signalprocessor.

I Linux snurrar ett program, en javamaskin, som utgör en egen isolerad programkörningsmiljö. Program som körs i javamaskinen kan varken skada telefonen eller mobilnätet. Operatören, och även slutanvändaren, kan därför tryggt ladda ner program till javamaskinen.

A760 kan på detta sätt uppgraderas och programmeras efter leveransen.

Säker sandlåda

Det finns dessutom säkra metoder att distribuera javaprogram över nätverk, metoder som operatörerna idag litar på. Linux saknar en motsvarande etablerad standard.

Beskrivningen ovan är förenklad. I verklighetens A760 sköter Linux en del av Javas "naturliga" uppgifter, som grafik och användargränssnitt. Liksom kontorsprogram som kalender och adressbok. Liksom webbläsaren. Javatekniken anses inte mogen. När det gäller webbläsaren finns inget alternativ.

Det finns två vägar för plattformen att utvecklas vidare. En är att låta Java ta mer av sin naturliga roll allteftersom det mognar. En annan är att ersätta Java med en isolerad säkrad körmiljö för Linuxprogram som kan ta hand om konfigureringen mot användaren.

Men varför inte välja ett enklare RTOS under Javamaskinen? Det har gjorts i andra telefoner.

- Motorola vill ha Linux för att det är ytterligare en väg att öppna plattformen, är Bill Weinbergs förklaring.

Plattformen är inte bara avsedd för A760, som är en påkostad handdatormobil. Om Motorola är nöjt kan vi få se Linux i många sorters mobiltefoner, även billiga.

- Motorola vill på sikt ha en enhetlig plattform för både hårdvara och operativsystem, säger Bill Weinberg.

- Alla tänker så nu, både tillverkare, leverantörer och halvledarföretag. De är trötta på att ha flerdubbla uppsättningar utvecklingsgrupper som gör ungefär samma jobb för plattformar som bara skiljer sig lite grand i prestanda.

En enda plattform

Motorola har släppt en handdatormobil med Windows CE. Så jakten på en enhetligt plattform går uppenbarligen längs flera spår. Linux är bara ett av de operativsystem som bedömts uppfylla kraven.

Motorolanallen använder klassisk Java. Men nu finns också system som kör realtidsjava på Linux.

Linuxleverantören Timesys erbjuder Jtime, en implementationen av standarden RTSJ (Real time Systems Java). Jtime utvärderas av Nasa för att eventuellt få följa med till Mars.

Nasas lilla fordonsserie Rover rullar sakta runt på Marsytan och samlar information. De två första Rovers är på väg till Mars just nu. De styrs i programspråket C och operativsystemet VX Works, som levereras av Wind River, inbyggnadsmarknadens dominant.

Inför framtida rymdprojekt letar Nasa efter alternativ. Projektet Goldengate utvärderar Jtime dels mot den nuvarande VX Works-lösningen och dels mot en ren Linuxlösning, utan Java.

- Det förvånar mig att de överväger Linux, säger Alex Wilson, marknadsutvecklingschef på Wind River för bland annat rymdsystem.

Kräver mer minne

Enligt Alex Wilson passar Linux bättre där det inte finns realtidskrav. Java på Linux kräver dessutom mycket mer minne, än C i VX Works, enligt Alex Wilson.

- Det är ju forskning, så det är inte konstigt om de provar många olika saker. Men det skulle förvåna mig om det går bra. Då behöver de i så fall en snabbare processor, mera minne och mer skydd mot strålning, än vad som används i dagens lösning, säger Alex Wilson.

Strålningen och värmen på Mars gör att man vill minimera hårdvaran för att minimera risken för fel. Dagens Rover använder en strålningshärdad Rad6000-processor. Nästa generation använder troligen en PowerPC.

Alex Wilsons kollega Mathias Stumpf ser utvärderingen som mindre intressant för dagens inbyggnadsutvecklare.

- Detta handlar om ett projekt som ligger flera år fram i tiden. Det är intressantare att prata om den teknik som används nu, säger Mathias Stumpf.

Också VX Works kan köra Java, även realtidsjava. Och kanske till och med i rymden. Eurospace utvärderar kombinationen för användning i europeiska satelliter.

Jan Tångring
MER LÄSNING:
 
KOMMENTARER
Kommentarer via Disqus

Anne-Charlotte Lantz

Anne-Charlotte
Lantz

+46(0)734-171099 ac@etn.se
(sälj och marknads­föring)
Per Henricsson

Per
Henricsson
+46(0)734-171303 per@etn.se
(redaktion)

Jan Tångring

Jan
Tångring
+46(0)734-171309 jan@etn.se
(redaktion)