Hoofdcategorieën

Gartner: virtualisatie volgende stap Microsoft Windows

Door Yoeri Lauwers, maandag 28 augustus 2006 10:16
Bron: TechWorld, views: 25.576

De analisten van Gartner zijn ervan overtuigd dat Windows Vista de laatste telg zal zijn van de huidige monolithische familie. Volgens het onderzoeksbureau zal Microsoft gedwongen worden om Windows om te bouwen tot een modulair systeem waarbij hardwarevirtualisatie een belangrijke rol zal spelen. De toenemende mate van complexiteit maakt het volgens de analisten Brian Gammage, Michael Silver en David Mitchell Smith steeds moeilijker om migraties uit te voeren. Bovendien zorgt de huidige structuur ervoor dat het voor Microsoft zelf uiterst lastig geworden is updates te produceren.

AnalistDe oplossing voor dit alles is volgens de drie analisten te vinden in het virtualisatieprincipe. Deze technologie is vooral bekend van de mogelijkheid om verschillende besturingssystemen naast elkaar te draaien op dezelfde hardware, maar kan ook gebruikt worden om verschillende functies en applicaties van één besturingssysteem naast elkaar te draaien. Door de verschillende componenten van elkaar te isoleren, wordt het voor de ontwikkelaars gemakkelijker updates te produceren, te testen en te verspreiden. Gartner stelt dat Microsoft zich dan ook vermoedelijk zal gaan richten op een 'service'-partitie voor de systeemfuncties en een of meerdere applicatiespartities voor het draaien van de software.

Volgende 10:40
Vorige 18:41

Reacties

«  1  2  »

Zijn ze daarmee al niet bezig met "Singularity"?

Neen, dat was een basis OS geschreven in de managed taal C#. Het voordeel daarvan was dat het nooit crasht (eenvoudiger programmeren == minder bugs).
Het was slechts een proefproject, géén ontwikkeling voor toekomstige os.

Singularity is ook echt te zien... bekijk maar eens dit filmpje op channel9: http://channel9.msdn.com/Showpost.aspx?postid=227260

Interessant filmpje... op het eerste gezicht lijkt het erg veel op een Unix / Linux command line interface.. ook de aanwezig van bijvoorbeeld /dev en bijvoorbeeld bg en fg commando's.
* d3vlin gaat ff googlen op Singularity :)

Het voordeel daarvan was dat het nooit crasht (eenvoudiger programmeren == minder bugs).
Eh, jij bent iets te optimistisch ben ik bang. Bepaalde fouten zijn inderdaad volledig te vermijden, maar andere fouten (in de logica) die ook een systeemcrash kunnen veroorzaken zijn dat niet.

zou er geen manier zijn die dmv eerst een crashcontrolealgoritme de uit te voeren code te controleren en daarna pas te laten uitvoeren (of live controle oid)

of dit enkel toepassen bij programma's die geen crash-proof certifikaat meekrijgen?

De vraag of een programma termineert of niet is onberekenbaar. Jammergenoeg kan je dus hooguit een benaderingsprogramma proberen te schrijven. Het bewijs is iets als volgt:

stel ik heb een programma P, dat bij het uitvoeren van P(x), true returnt als programma x termineert/eindigt en false returnt als dat niet het geval is (P is dus onze crashchecker).
Laten we nu een programma Q schrijven:
while (P(Q)) {}

Dit programma Q termineert dus dan en slechts dan als het programma Q niet termineert. Dat is een contradictie of tegenspraak, kortom, onze aanname dat het programma P bestaat, kan niet waar zijn. Oftewel: P bestaat niet.

Zie ook wikipedia:
http://en.wikipedia.org/wiki/Halting_problem

zou er geen manier zijn die dmv eerst een crashcontrolealgoritme de uit te voeren code te controleren en daarna pas te laten uitvoeren (of live controle oid)
In theorie zou dat (misschien) kunnen, maar:

* indien in software geïmplementeerd, zullen die controles behoorlijk wat performance kosten

* indien in hardware geïmplementeerd, zullen die controles niet uitgebreid kunnen worden naarmate meer potentiële problemen worden ontdekt

* wat gebeurt er indien er een fout/bug in het controle-algoritme zelf aanwezig is?

@sirdupre

En als P nou zoiets bevat als: pidof `Q` != -1 dan is Q in staat om zijn eigen toestand te controleren. Echter, Q zal nooit weten dat het zelf crasht, want daarvoor moet Q blijven draaien, terwijl het juist gecrasht is.

Stel nou dat P true returnt als programma x juist draait. Dan zou programma Q dat while (P(Q)) {} bevat, juist blijven draaien, totdat het van buiten af gestopt wordt.

Dan wordt softwaredistributie een stuk eenvoudiger


*Deze SysAdmin legt zijn voeten op tafel, neemt nog een biertje en droomt van de volgende release van Windows*

die admin kan zich laten omscholen om ander werk te gaan doen :)

Om 10 uur 's ochtends al aan de alcohol, sorry maar ik denk dat je de release van de volgende Windows geeneens haalt... :>

Maar hier hoef je natuurlijk niet op te wachten, want het bestaat al van de firma Altiris.
http://www.altiris.com/Pr...rtualizationSolution.aspx

In theorie is dit natuurlijk allemaal wel dik in orde.
Maar de vraag gaat weer zijn: welke impact gaat dit hebben op de hardware-vereisten?

Meerdere simultane processen (om een simpel woord te gebruiken) met hun eigen werkgeheugen en eigen HW-resources.
Dit alles wordt heel goed opgelost door bv VMWare.
Maar ik vrees als zoiets uit de MS-stal gaat komen de performantie wel eens te wensen gaat kunnen overlaten.
Gelukkig voor ons zijn er nu reeds de dual-core cpu's en staan de quad-cores op het programma.
Mijns inziens gaan we die wel nodig hebben.

Virtualisatie word spoedig een standaard harware-onderdeel in processors, wat het virtualiseren een stuk sneller moet laten gaan.

In theorie is dit natuurlijk allemaal wel dik in orde.
Ben ik de enige die vindt dat dit niets nieuws is? We programmeren tegenwoordig toch ook in termen van "interfaces" (API's) en volgens gelaagde modellen? Die technieken laten toch ook toe om de software modulairder te maken?

Ik heb het gevoel dat de hier besproken virtualisatie eigenlijk hetzelfde doet.

Dat Windows niet zo modulair verkocht wordt klopt niet helemaal:

* iedereen weet ondertussen wel dat alle Windows-versies (Home, Pro, Enterprise, ...) op dezelfde basis steunen (bepaalde componenten zijn in de ene versie wat anders dan in een andere of bepaalde onderdelen worden in bepaalde versies aan- of afgezet.

* Er bestaan kernels voor verschillende hardware-platformen (IA32, IA64, AMD64, ...) waarbij de wijzigingen (ruwgenomen) beperkt blijven tot de kernel.

Tsja, Microsoft kon beter Windows wat meer modulair maken vanaf het begin, zodat het niet echt een groot programma was, maar meer een verzameling van losse, op zichzelf staande programma's. Ik denk hier aan Linux, wat dat (in mijn ervaring) veel meer heeft. Qua samenwerking tussen programma's misschien wat moeilijker, maar veel beter qua onderhoud.

Punt is alleen dat "in den beginne" Windows bedoeld was als consumenten-OS. Daar is samenwerking tussen programma's vele malen belangrijker als het onderhoud, vooral als je bedenkt dat destijds het internet eigenlijk ook nog niet bestond, waardoor de eindeloze rits patches en lapmiddelen die we nu hebben, ook niet bestond.

Dat is een heel andere Windows. Het huidige Windows is gebaseerd op Windows NT wat ooit begonnen is als een puur zakelijk OS.

Windows is ook niet echt een groot programma maar een verzameling van onderdelen.

Ook NT was oorspronkelijk bedoeld als consumenten én als zakelijk OS. Echter de hardware eisen waren zo hoog (minimaal 4 MB nodig!) en Windows 3.1 was al zo populair, dat ze het vervolgens er snel LAN Manager (netwerksoftware uit OS/2) hebben ingebouwd en het vervolgens als zakelijk OS en als server OS in de markt hebben gezet.

Volgens mij was Windows destijds net als OS/2 op bedrijven gericht, en daarnaast ook op thuisgebruikers. Windows NT en Windows 95 zijn eigenlijk ook al gewoon vervolgen op de tweespalt die je in Windows 3.x al had.

Kortom, netwerkbeheer was ook toen al een van de dingen die belangrijk waren. Maar het werd pas een beetje leuk met dingen als Novell destijds....

De 'nieuwe manier' van virtualisatie als het hardwarematig word afgehandeld is toch dat de verschillende besturingssystemen echt naast elkaar kunnen draaien en niet nootzakelijk 'op' elkaar zoals het nu nog softwarematig gebeurt... right??

Als je meerdere cores hebt draai je nu ook al je applicaties naast elkaar in plaats van op elkaar. Het naast of op elkaar draaien van applicaties hangt meer af van het aantal cores/processors je in je bak hebt steken dan van de software.

Ik heb het niet over applicaties ;-) Ik bedoel, als ik nu in vmware een extra besturingsysteem opstart moet er een host draaien, maar ik dacht dat dat in de 'nieuwe' oplossing niet meer nodig is, zodat er 2 of meer echt naast elkaar kunnen draaien zonder afhankelijk van elkaar te zijn... dat bedoel ik eingelijk maar weet echter niet als ik het bij het juiste eind heb ;-)

Je hebt altijd een host OS, de superviser. Dit is een zo klein mogelijk OS (Bijvoorbeeld XEN) dat het mogelijk maakt om verschillende systemen naast elkaar te draaien.

Klinkt wel cool, ik denk dat microsoft met de overname van softricity deze stap inderdaad concreter heeft gemaakt. Wij maken gebruik van dit produkt en het biedt een hele hoop mooie mogelijkheden.


OpenMinded, je naam is niet in overeenkomst met je reaktie hier. nu geeft dat ook niet want ik heb ook geen bierbuik. :+

chroot anyone?

Doet u mij maar een Jailtje ;)

kernel panic everyone ;)

Gelukkig voor ons zijn er nu reeds de dual-core cpu's en staan de quad-cores op het programma.
Mijns inziens gaan we die wel nodig hebben.
Zo gaat dat toch ook? Hardware fabrikanten maken snellere betere hardware en daar wordt door de schrijvers van de software dan weer gebruik van gemaakt. Hoe sneller en meer berekeningen het worden hoe complexer de zaak in elkaar steekt. Dat daar dan meerdere CPU`s voor gebruikt worden is mijn inziens alleen maar beter.

Gebruik? Misbruik eerder, een snellere pc moet meer taken aankunnen dan een oude pc, dat is grotendeels wel zo, maar ik heb niet de indruk dat een nieuwe pc sneller is dan een oude pc gewoon omdat de OS-en meer van de pc vragen, het is en blijft nog altijd een OS.

Microsoft gaat niet modulair. de nt kernel is een micokernel waar allemaal extra zooi zijn toe gevoegt om windows sneller te maken. Wat je erook heel makkelijk weer buiten kan halen. Microsoft doet dit niet om het OS sneller temaken.

en waarom modulair. Singularity is een microkernel mach (wat OSX gebruikt) is een microkernel. Daarbij als elke OS gewoon bv. mach gaat gerbuiken als microkernel heb je geen virtulisatie nodig.
Virtulisatie vind ik een zwakte bod. men kan een OS maken dat niet crasht. waarom dan gaan virtuliseren. rebooten is ook totaal overbodig btw

als elke OS gewoon bv. mach gaat gerbuiken als microkernel heb je geen virtulisatie nodig.
Volgens mij vergeet je het lastigste deel van virtualisatie: de hardware support. Om meerdere OS'en dezelfde harddisk, netwerk- en videokaart te laten gebruiken moet er toch een soort interface zijn wat de geemuleerde hardware aanbiedt aan de gevirtualiseerde OS'en.
«  1  2  »

Op dit item kan niet meer gereageerd worden.

Volgende 10:40
Vorige 18:41
VNU Media logo Powered by True

© 1998 - 2009 Tweakers.net - Alle rechten voorbehouden - Uw Privacy - Algemene Voorwaarden

Uitgever van: