Is virtualisatie echt zo nieuw? Nee, zeker niet! IBM claimt dat men in de mainframes van decennia geleden al mogelijkheden had ingebouwd voor virtualisatie. En wat is virtualisatie? Iets virtueel? Ook niet, het besturingssysteem is wel degelijk aanwezig. En de hardware ook, alleen is er geen directe verbinding tussen hard- en software. Kennen we dat al niet ergens van?
Wie kent er nog de tekstverwerker van Wang? Een fantastische 'typemachine' (oei, een understatement) met dedicated hardware. Een compleet geïntegreerde tekstverwerkertypemachine.
Alleen jammer dat je alleen maar kon tekstverwerken op die machine. En zo waren er nog wel wat meer systemen die een functie vervulden op dedicated hardware. Wel jammer dat je voor al die functies een dedicated stuk hardware nodig had. Waarom niet verschillende functies op één hardware platform?
Legio oplossingen zagen het daglicht, om er toch vooral maar voor te zorgen dat we niet gebonden waren aan de hardware. CP/M, VMS, Unix, Dos, Windows, Gem, Apple OS, et cetera verschenen achtereenvolgens, met als enige doel de toepassingen los te koppelen van de hardware. Zoiets heette een besturingssysteem. Een laag tussen de applicatie en de hardware met als doel toch vooral maar een loskoppeling te bewerkstelligen tussen de dedicated hardware en een applicatie.
Liefst nog zodanig dat die applicatie op iedere besturingssysteem en hardware combinatie werkte.
En dat lukte voor een groot deel wonderwel. Voor het gebruiken van een bepaalde toepassing kon, en kun je nog steeds, vrijwel iedere hardware kiezen, evenals een geschikt besturingssysteem, met daar bovenop de toepassing die je wilt gebruiken.
Maar helaas, de tendens om ons los te wrikken van de hardware zet door. We willen opnieuw weer een splitsing maken om los te komen van de hardware. Enerzijds doen we dit door een volledig nieuwe OS bovenop een bestaand OS. Denk bijvoorbeeld aan Java, XML-achtige oplossingen et cetera. Anderzijds doe we dit net als zo’n 35 jaar geleden met het loskoppelen van de hardware door er een virtualisatielaag op te zetten. Deze laag, de hypervisor, moet dit keer de hardware scheiden van het besturingssysteem.
In de afgelopen jaren zijn er namelijk nog al wat ontwikkelingen geweest waarbij we het liefst een besturingssysteem kiezen wat bij ons past, net als bij de applicaties die we het liefst gebruiken.
Dus hup, loskoppelen die hardware maar weer, en een nieuwe isolatielaag aanbrengen tussen hardware en OS (wat zelf al een soort isolatielaag is) en de applicatie. Dan kijken we nog even niet naar Java-achtige oplossingen voor applicatie virtualisatie. Dat is misschien wel een stap te ver: een applicatie rechtstreeks op de hypervisor, dus zonder OS ? Oei, en de volgende stap? De applicatie weer rechtstreeks op de hardware?
Als we de ontwikkelingen in de cloud moeten geloven is het efficiënt om niet meer zelf te beschikken over de hardware, het besturingsysteem en de applicatie. Functionaliteit is wat we willen. Geen dure en lastig te beheren hardware, besturingssysteem en het liefst alleen maar 'vruchtgebruik' van een applicatie. Weer terug naar af?
[quote]
Dan kijken we nog even niet naar Java-achtige oplossingen voor applicatie virtualisatie. Dat is misschien wel een stap te ver: een applicatie rechtstreeks op de hypervisor, dus zonder OS ?
[/quote]
Welke java oplossing draait zonder O.S. ?
Een beetje een vaag verhaal waar m.i. veel dingen door elkaar gehaald worden.
Inderdaad had IBM eind 60’er jaren al een systeem dat Virtual Machine heette waarop je meer (verschillende) OS’en naast elkaar kon draaien. Ideaal voor testen van een operating system. Dus nieuw? Nee absoluut niet, nee.
Overigens is de simpelste vorm van virtual machines het aanloggen van verschillende users op hetzelfde operating system. Vaak is dat al meer dan voldoende en virtualisatie domweg overbodig.
Daarnaast is de virtualisatie van een Java-machine een vorm van onafhankelijk worden van de instructieset van de onderliggende hardware. Dit is virtualisatie zoals prof. Tanenbaum die uitlegt in zijn boek “Structured Computer Organisation”. Dit heeft niets met virtual machines te maken die beogen meer OS’en naast elkaar op de zelfde hardware te draaien.
Wat wil de schrijver mij hier nu uitleggen?
@ de Boer: Ik denk dat hij wil zeggen dat we cyclisch bezig zijn c.q. het wiel opnieuw heruitvinden.
Lees Tanenbaum er nog een keer op na zou ik zeggen.
JVMmen zijn er voor om los van het OS te komen. Een Java app die met dezelfde code draait op meerdere OSsen.
Het OS zelf is er voor om los van de fysieke hardware te komen. De instructieset zoals je dat noemt. Niet helemaal want een OS is ook vaak gebouwd in bijv. C, de compilers voor de diverse hardware zorgt dan voor de vertaling naar de diverse instructiesets.
Virtualisatie heeft vaak het doel veel beter gebruik te maken van de hardware. De meeste machines staan 99% van de tijd niks te doen.
Dit soort artikelen zijn bijna dagelijkse kost. Een gezegde die ik ook al talloze keren voorbij heb zien komen is “Oude wijn in nieuwe zakken”.
Virtualisatie is een generieke term.
Op welke vraag is Virtualisatie het antwoord?
Hoe kan IT makkelijker?
Hoe kan IT betrouwbaarder?
Hoe kan IT goedkoper?
Hoe kan IT schaalbaarder?
Een huidige Golf kun je wel vergelijken met een T-Ford. Hij heeft een motor, stuur en wielen. Betekent dit dat we onze auto’s maar niet verbeteren en innoveren?
Virtualisatie en alle evolutie die hierop plaats vind brengt ons steeds dichter naar de mogelijkheden om IT betrouwbaarder, goedkoper, schaalbaarder et cetera te maken. Dat het niet altijd lukt is een essentieel onderdeel in deze evolutie.
Denk in mogelijkheden. Vind je dat we al die jaren stil zijn blijven staan? Ik zeker niet!
Voor mensen die al wat langer meelopen in de IT is virtualisatie van van alles en nog wat niets nieuws.
Wat te denken van virtueel geheugen? Op een IBM 360/30 (eind jaren zestig) moest de programmeur de memory swaps zelf programmeren met overlays. Tot daar het virtuele geheugen kwam.
En inderdaad, onder VM Kon je bijv. 2 virtuele IBM 4300 systemen op een IBM 3033 draaien. De DPS6 mini en het DPS7 mainframe van Bull draaiden later virtueel op AIX hardware, En zo kan ik nog wel een tijdje doorgaan.
Virtualisatie is dus echt al een halve eeuw oud.