En virtuell värld
Virtualisering har i ett par år varit ett hett ämne på servermarknaden. På embeddedmarknaden har däremot intresset varit ganska minimalt.
Men de senaste månaderna har plötsligt intresset ökat snabbt. Alla mjukvarutillverkare slåss om att visa nya virtualiseringslösningar och ibland presenteras de som ”best thing since slice bread”.
Jag hade tillfälle att fundera på det här i början av veckan (i går alltså), när jag besökte en konferens anordnad av Kontron, Wind River och Intel. Wind River satsar nu hårt på Hypervisor-baserade system. Och den som läst Elektronik i Norden efter sommaren har knappast kunnat undgå att läsa om virtualisering och Hypervisor-lager. Vad är det egentligen som händer?
I ärlighetens namn är grundtanken inte särskilt ny. Redan på åttiotalet testade en del operativsystemstillverkare, bland annat Intel, att köra operativsystem ovanpå operativsystem. Då handlade det i första hand om att köra Windows ovanpå ett realtidsoperativsystem. På det sättet kunde man låta samma processor köra både Windows och realtidsprogram. Och om Windows bröt samman (hemska tanke) fungerade fortfarande resten av systemet.
Det här föll väl delvis i glömska, men i bland annat avionikvärlden har vi då och då sett varianter på samma tema. Ett litet och extremt väl utprovat operativsystem kör både säkra tillämpningar och ett konventionellt operativsystem. Återigen – om det ”osäkra” operativsystemet får problem fortsätter allt annat att fungera.
Men det var först med de allt större serverinstallationerna som det hela tog fart på allvar. Här fanns plötsligt en möjlighet att bortse från de fysiska begränsningarna. Med ett virtualiseringslager mellan processor(er) och operativsystem blev det möjligt att förenkla serveradministrationen dramatiskt. Virtuella datorer kunde flyttas runt lite hur som helst. Och för att effektivisera det hela började Intel och andra att lägga in hårdvarufunktioner i processorerna för att snabba upp arbetet.
Och som vanligt (numera) hänger embededdvärlden på vad som händer i datorvärlden. Visserligen har embeddedvärlden helt andra orsaker att använda virtualisering, men det mesta av vad som redan gjorts kan återanvändas. Det gör att man inte behöver börja från grunden, utan bara modifiera sådant som inte passar. Det gäller framför allt sådant som har med realtidsprestanda att göra. Och plötsligt finns en bas för att kombinera ”legacy”-kod med ny kod och gamla operativsystem med nya.
Att kunna köra gammal kod och gamla operativsystem utan förändringar är oerhört viktigt. Om man dessutom kan gå över till nya arbetssätt och nya operativsystem utan att skriva om allt gammalt är det ännu bättre. Virtualisering ger dessutom en rad andra löften, bland annat om säkerhet.
Det intressanta är att steget till virtualisering kan gå så snabbt. Visst kan det visa sig att priset i form av extra komplexitet och prestandaförlust blir för högt, men det vi hittills sett pekar inte åt det hållet.
Så välkommen in i den virtuella världen.
Filed under: Göte Fagerfjäll