Websites

Barrelfish-besturingssysteem versnelt toekomstige multicore-systemen

6. Multicore Programming

6. Multicore Programming
Anonim

Zonder een radicale verandering in de manier waarop veel ervan wordt geschreven, kan software helaas niet veel sneller gaan. Snelheidsverbeteringen die meestal afkomstig waren van snellere processors met meer transistors zijn in de buurt gekomen hun limiet, waar de chips sneller oververhitten als ze sneller zijn.

Daarom ontwerpen onderzoekers van Microsoft's onderzoeksfaciliteit in Cambridge, Engeland, en bij ETH Zürich in Zwitserland een nieuw besturingssysteem waarmee programma's veel kunnen draaien sneller op multicore-computers.

Het besturingssysteem, genaamd Barrelfish, bevindt zich nog steeds in een onderzoeksfase, maar de makers hebben de code eerder deze maand vrijgegeven onder een open-sourcelicentie. Desalniettemin leidde het praten over een nieuw OS - vooral met de steun van Microsoft - tot voldoende interesse die veel mensen sindsdien hebben gedownload, zei Timothy Roscoe, professor in de afdeling computerwetenschappen aan de ETH Zürich

Echter, "we zijn niet gericht op echte gebruikers in welke vorm dan ook, "zei Roscoe. Zijn team zal ook een paper presenteren op het Symposium over besturingssystemen-principes, dat op 11 oktober begint in Big Sky, Montana. Het project, dat nu ongeveer twee jaar aan de gang is, bouwt voort op ideeën die onderzoekers al jaren hebben over hoe besturingssystemen zal moeten evolueren om bij te blijven met hardware-ontwikkelingen. Hoewel Microsoft-onderzoekers betrokken zijn, zei het bedrijf dat het geen commentaar had. In Barrelfish heeft elke kern zijn eigen kernel en deelt hij niet hetzelfde geheugen als in Windows of Linux. In plaats daarvan communiceren de kernen door berichten door te geven, wat onderzoekers een "multikernel" -model noemen.

Het doorgeven van berichten tussen kernen - zoals beveiligingsinformatie en andere informatie om te zorgen dat het besturingssysteem consistent functioneert - is efficiënter dan het delen van geheugen, Roscoe zei.

Maar zelfs als de besturingssystemen weten hoe ze gebruik moeten maken van meerdere kernen op een chip, zijn de meeste toepassingen van vandaag niet geschreven om er voordeel uit te halen. Dus bedrijven zoals Microsoft, Intel en Sun hebben gewerkt aan het achterhalen van parallelle code, waardoor applicaties een aantal kernen tegelijk konden gebruiken tijdens de verwerking, zei Roscoe.

Apple gebruikt parallelle programmeertechnieken in Grand Central Dispatch (GCD), een applicatiebibliotheek met de nieuwste update voor Mac OS X, Snow Leopard. Hoewel GCD kan worden gebruikt om applicaties te ontwikkelen die gebruikmaken van meerdere kernen, bevindt deze zich echter alleen op het Mac OS en is het zelf geen OS, zei Barranco. Het hele OS als een meer van een gedistribueerd systeem. "In plaats van een inherent gedeeld geheugenmodel van OS-structuur te ontwikkelen om complexe afwegingen en beperkt delen aan te pakken, nemen we de tegenovergestelde benadering: ontwerp en reden over het besturingssysteem als een gedistribueerd, niet-gedeeld systeem," aldus de onderzoeksrapport.

De multikernelbenadering betekent dat Barrelfish op meer diverse hardware kan werken, omdat het besturingssysteem zoveel mogelijk wordt gescheiden van de hardware, aldus de krant. Slechts twee aspecten van het besturingssysteem moeten zijn gericht op specifieke hardware-architecturen: het transportmechanisme voor berichten en interfaces naar de hardware.

in de afgelopen jaren om op meer geavanceerde hardware te draaien.

"Voor ons onderzoekers van besturingssystemen zal de binnenkant van de computer er heel anders uitzien dan hoe het er vijf jaar geleden uitzag," zei Roscoe.

Barrelfish's code is vrijgegeven onder een BSD-achtige licentie en is gratis te downloaden. Het werkt op 64-bit x86-platforms. Onderzoekers hebben zowel een webserver als een aantal grafische en visualisatietoepassingen geschreven, maar deze zullen niet worden uitgevoerd, bijvoorbeeld uw normale Microsoft Office-programma.

Roscoe beschreef Barrelfish als massaal onderontwikkeld voor gebruikers, maar te veel ontwikkeld als een onderzoek project. De code is niet "verschrikkelijk robuust", maar Roscoe zei dat hij verwacht dat een meer complete versie later wordt vrijgegeven.

De code van Barrelfish is gezamenlijk eigendom van Microsoft en ETH Zürich. Er zijn nog geen octrooien ingediend.

"Het doel van het project is niet om eigen intellectuele eigendom te genereren voor Microsoft of ETH Zürich," zei Roscoe. "Het doel is om onderzoek op lange termijn te doen."