한국   대만   중국   일본 
Multikorning ? Wikipedia Hoppa till innehallet

Multikorning

Fran Wikipedia

Multikorning (engelska multitasking ) gor det mojligt for ett operativsystem att genom tidsdelning kora flera processer samtidigt. [ fortydliga ]

Traditionella processorer saknar mojlighet till verklig parallellkorning , det vill saga de kan inte utfora flera instruktioner samtidigt, utan maste utfora dem efter varandra. Darmed kan de bara kora en programprocess eller en trad vid varje ogonblick. Emellertid kan datorn vaxla mellan flera programprocesser genom tidsdelad multikorning , sa att operativsystemet vaxlar mellan olika processer, ofta tiotals ganger i sekunden eller oftare. Detta ger, sa lange datorn inte ar overlastad, att en mansklig anvandare upplever att tradarna kors samtidigt.

Syftet med multikorning kan dels vara att betjana flera anvandare samtidigt (i sa kallade fleranvandarsystem ), dels att mojliggora for en anvandare att starta och vaxla mellan flera olika program eller instanser av programmet (till exempel flera ordbehandlingsdokument i olika fonster), dels att effektivt utnyttja processorn genom att satta den i andra arbetsuppgifter i vantan pa svar fran bland annat harddisk och anvandare. Dessutom kan ett och samma program delas upp pa flera samtidiga programprocesser, och en programprocess kan i sin tur kan delas pa flera samtidiga tradar . Ett exempel kan vara en webbserver som betjanar flera webblasare samtidigt, ett annat ett ordbehandlingsprogram som vantar med att gora lagprioriterad rattstavningskontroll och sidbrytningsberakning tills mer hogprioriterade uppgifter (att behandla de tecken anvandaren skriver in) ar fardiga. Det ar komplicerat att astadkomma denna funktionalitet utan att utnyttja operativsystemets stod for multikorning. Det hade kravt att programmet hade delats upp i flera starkt tidsbegransade arbetsuppgifter som utfors i tur och ordning utan avbrott enligt ett komplicerat kosystem.

Datorer med flera (central)processorer eller processorkarnor, eller hardvarustod for flera parallella tradar, kan kora flera processer eller tradar sant parallellt, utan att vaxla mellan dem, men anvander i allmanhet dartill den ovan beskrivna tidsdelade multikorningen.

Tidsdelad och samverkande multikorning [ redigera | redigera wikitext ]

Det finns tva tillvagagangssatt for att uppna multikorning. Tidsdelad (en: preemptive ) och samverkande (en: cooperative ) multikorning. I samverkande multikorning lamnar varje process frivilligt over processorn till en annan process med jamna mellanrum, exempelvis nar processen anda skall vanta pa nagot.

Om datorsystemet har tillgang till ett tidsavbrott , det vill saga att en speciell rutin kan anropas periodiskt, kan tidsdelad multikorning anvandas. En sarskild rutin, en schemalaggare , laggs pa tidsavbrottet. Schemalaggaren valjer efter olika kriterier ut den process som far en liten stunds processortid och startar denna. Schemalaggaren avbryter sedan processen, for att ge en annan process processortid. Ocksa i tidsdelad multikorning kan en process frivilligt ge upp centralprocessorn, till exempel for att vanta pa mer data att behandla.

Fordelen med tidsdelad multikorning ar att, aven om en process laser sig, avstannar inte hela systemet utan bara den process som laste sig. Vid samverkande multikorning laser en process som inte vill lamna ifran sig kontrollen hela systemet. Anda lampar det sig mycket val for sma inbyggda system dar resurserna ar begransade, eller specialiserade tillampningar dar alla processer i hela systemet ar kanda i forvag. Aven i realtidssystem , dar det fordras determinitisk schemalaggning med garanterade svarstider, kan samverkande multikorning vara lampligt.

Exempel [ redigera | redigera wikitext ]

Samverkande multikorning [ redigera | redigera wikitext ]

Exempel pa operativsystem som anvander sig av samverkande multikorning;

Tidsdelad multikorning [ redigera | redigera wikitext ]

Exempel pa operativsystem som anvander sig av tidsdelad multikorning;