Microsoft-arkitekt: Tiden er løbet fra styresystemet

Hvorfor skal man nogensinde vente på sin computer? Fundamentet under styresystemerne bør tænkes helt om. Se her, hvordan et styresystem ville se ud, hvis det blev designet helt fra bunden i dag.

Artikel top billede

Computerworld News Service: Chipproducenterne bliver ved med at øge antallet af kerner i hver ny generation af processorer.

Og måske er det ved at være tid at omtænke den grundlæggende arkitektur i de nutidige styresystemer, foreslår Dave Probert, der er kerne-arkitekt i Windows Core Operating System Division hos Microsoft.

Den aktuelle tilgang til at udnytte styrken ved processorer med flere processorkerner er kompliceret og ikke helt vellykket, mener han.

Frem for at bruge mere energi på at raffinere teknikker såsom parallelprogrammering kan nøglen til at løse problemet vise sig at være en omtænkning af de grundlæggende koncepter, der udgør modellen for et styresystem.

Får ikke nok ud af de mange kerner

Computere i dag får ikke nok ydelse ud af deres flerkernede chip, siger Dave Probert.

"Hvorfor skal man nogensinde - med al denne parallelhardware - nogensinde overhovedet være nødt til at vente på sin computer?" spøger han retorisk.

Probert er med i det team, der arbejder på den næste generation af Windows.

Han påpeger dog, at idéerne ikke repræsenterer konkret arbejde, som hans team foretager for Microsoft.

Faktisk bemærker han, at mange af de andre softwarearkitekter på Windows-kernel-udviklingsteamet slet ikke er enige i hans syn på sagen.

Designet helt fra bunden

Han forsøger imidlertid at definere, hvordan et nyt styresystem ville tage sig ud, hvis det i dag blev designet helt fra bunden af.

Han konkluderer, at det ville være ret forskelligt fra Windows eller Unix.

En typisk computer kører i dag adskillige programmer samtidigt og afspiller eksempelvis musik, mens brugeren skriver en e-mail og surfer på nettet.

"Hurtige svartider står øverst på listen. Det er det, folk vil have," siger han.

Problemet med svartider er, at styresystemet har svært ved at finde ud af, hvad der er vigtigst.

"Man gider ikke sidde og vente på, at Microsoft Word starter op, bare fordi antivirusprogrammet valgte lige præcist dette øjeblik at begynde at skanne alle ens filer," siger Dave Probert.

Her er problemet med de flerkernede chips

De fleste styresystemer benytter et slags prioriteringssystem i et forsøg på at undgå sådanne flaskehalse, men de er stadig primitive.

Probert foreslår ligefrem en "Dette stinker!"-knap, som brugeren kan klikke på, hver gang computerens sløvhed bliver frustrerende.

De opsamlede data kan derefter bruges til at give udviklerne et bedre billede af, hvad der skal prioriteres.

Da de begyndte at tilføje flere processorkerner, anlagde chipproducenterne en ekstremt optimistisk tilgang de flerkernede chip, hvor de bare byggede dem og krydsede fingre for, at applikationsprogrammørerne ville skrive programmer til dem.

Problemet er, at de nuværende desktopprogrammer ikke udnytter de adskillige kerner effektivt nok, forklarer han.

For at drage fuld nytte af flere processorkerner er udviklerne nødt til at bruge teknikker til parallelprogrammering.

Det bliver ved at være en svært disciplin at mestre og er ikke blevet udnyttet i noget stort omfang uden for specialiserede videnskabelige programmer såsom til klimasimulation.

Måske vil det være bedre at omtænke, hvordan styresystemet håndterer disse flerkernede processorer, mener Probert.

"Spørgsmålet er faktisk ikke, hvordan vi skal parallelprogrammere - - men hvad vi skal gøre med alle disse transistorer."

Fremtidens styresystem vil ligne en hypervisor

Den nuværende arkitektur af styresystemer er baseret på et antal abstraktioner, forklarer Dave Probert.

I computernes tidlige dage kørte et enkelt program på en enkelt CPU.

Da vi ville have flere programmer til at køre på den samme processor, blev CPU-tiden hakket op i processer, hvilket gav hvert program illusionen af at køre på sin egen dedikerede CPU.

Ideen om processerne var en abstraktion eller spaltning, og det ville ikke blive den sidste.

Da styresystemerne begyndte at jonglere med adskillige programmer, opstod der et behov for et beskyttet rum, der var afskærmet fra både brugeren og programmerne.

Deraf opstod "kernel mode," der er adskilt fra der, hvor programmerne køres, det vil sige "user mode".

Kernel mode og user mode spaltede praktisk set CPU'en ud i to CPU'er, fortæller Dave Probert.

Hvilke opgaver skal have opmærksomheden?

Med alle disse virtuelle CPU'er opstår dog kampen om hvilke opgaver, der får opmærksomheden fra den virkelige CPU.

Og omkostningerne i systemydelse ved at skifte mellem alle disse CPU'er begynder at stige til det punkt, hvor det går ud over svartiden, særligt med introduktionen af flere processorkerner.

Men når nu både Intel og AMD vurderer, at antallet af kerner i deres produkter vil fortsætte med at stige, kan styresystemsudviklerne lige så godt skille sig af med abstraktioner såsom skellet mellem user mode og kernel mode, argumenterer Probert.

"Når der kommer mange kerner, bliver CPU'en til CPU igen," siger han. "Hvis vi får nok af dem, kan vi måske begynde at dele ud af dem" til individuelle programmer.

Vil ligne en hypervisor

Med denne tilgang ville styresystemerne ikke længere ligne de nuværende styresystemer, men nærmere fungere ligesom en hypervisor.

En hypervisor er et koncept fra virtualisering og fungerer som et lag mellem den virtuelle maskine og den fysiske hardware.

Programmerne - eller runtimes, som Probert kalder dem - ville selv bære mange af arbejdsbyrderne i forhold til ressourcestyring.

Styresystemet kunne tildele en applikation en processorkerne og noget hukommelse, og applikationen ville derefter ved hjælp af metadata genereret af compileren bedst selv vide, hvordan ressourcerne skulle udnyttes.

Probert erkender, at denne tilgang ville være meget svær at teste, da den ville kræve en stor mængde eksisterende applikationer. Men det kunne vise sig at være umagen værd.

"Der er langt mere fleksibilitet i denne model," påpeger han.

Oversat af Thomas Bøndergaard

Læses lige nu
    Computerworld Events

    Vi samler hvert år mere end 6.000 deltagere på mere end 70 events for it-professionelle.

    Ekspertindsigt – Lyt til førende specialister og virksomheder, der deler viden om den nyeste teknologi og de bedste løsninger.
    Netværk – Mød beslutningstagere, kolleger og samarbejdspartnere på tværs af brancher.
    Praktisk viden – Få konkrete cases, værktøjer og inspiration, som du kan tage direkte med hjem i organisationen.
    Aktuelle tendenser – Bliv opdateret på de vigtigste dagsordener inden for cloud, sikkerhed, data, AI og digital forretning.

    Sikkerhed | Højbjerg, Aarhus

    Cyber Security Summit 2026 - Aarhus

    Lær om organisationers evne til at modstå, håndtere og komme videre efter alvorlige digitale hændelser, herunder ledelsesansvar, forretningskritiske afhængigheder og de valg, der afgør, om plan B holder, når systemer eller leverandører svigter.

    Digital transformation | Aarhus

    AI i det offentlige - Aarhus

    Hør hvordan offentlige AI-løsninger skaleres til stabil drift med reel effekt. Få erfaringer, arkitekturvalg og styringsgreb fra frontløbere. Lær at bygge fælles AI-infrastruktur med ansvarlighed, sikkerhed og compliance.

    Digital transformation | Køge

    Derfor skal du videre fra Dynamics AX – og sådan gør du

    Computerworld giver klar viden om vejen videre fra Dynamics AX. Du ser forskellen mellem AX og moderne cloud-ERP og får et konkret beslutningsgrundlag for næste skridt. Tilmeld dig og få styr på skiftet til Dynamics 365 FO eller BC.

    Se alle vores events inden for it

    Capgemini Danmark A/S

    AI/Data Engineer

    Københavnsområdet

    Netcompany A/S

    Microsoft Operations Engineer

    Københavnsområdet

    Everllence

    Senior Software Engineer - R&D

    Københavnsområdet

    Navnenyt fra it-Danmark

    netIP har pr. 1. juni 2026 ansat Heidi Winther som Supportkonsulent ved netIP's kontor i Herning. Hun kommer fra en stilling som IT-Supporter hos Holstebro Kommune. Nyt job
    Tinne Schjoldan Gyllich, Director, CX & Services (Customer Adoption) hos TDC Erhverv, er pr. 1. juni 2026 forfremmet til Senior Director, Head of Partnerships. Tinne skal fremover især beskæftige sig med at drive strategiske partnerskaber, styrke økosystemet og skabe vækst gennem partnerbaseret omsætning. Forfremmelse
    Pinksky ApS har pr. 1. maj 2026 ansat Dan Toft, 29 år,  som Rådgivende konsulent, Partner. Han skal især beskæftige sig med digitalisering med Microsoftplatformen. Han kommer fra en stilling som Microsoft 365 & SharePoint Specialist hos Evobis ApS. Han er uddannet datamatiker. Han har tidligere beskæftiget sig med Microsoft 365 og SharePoint udvikling. Nyt job

    Dan Toft

    Pinksky ApS

    Netip A/S har pr. 1. maj 2026 ansat Ida Hyllested Friis som Key Account Manager ved netIP's kontor i Thisted. Hun kommer fra en stilling som Key Account Manager hos Københavns erhvervshus. Nyt job