Multiprogrammering vs tidsdelningssystem
Multiprogrammering är allokeringen av mer än ett samtidigt program på ett datorsystem och dess resurser. Multiprogrammering gör det möjligt att använda processorn effektivt genom att tillåta olika användare att använda processorn och I/O-enheterna effektivt. Multiprogrammering ser till att CPU:n alltid har något att utföra, vilket ökar CPU-utnyttjandet. Å andra sidan är tidsdelning delning av datorresurser mellan flera användare samtidigt. Eftersom detta kommer att tillåta ett stort antal användare att arbeta i ett enda datorsystem samtidigt, skulle det sänka kostnaderna för att tillhandahålla datorkapacitet.
Vad är multiprogrammeringssystem?
Multiprogrammering är snabb växling av CPU mellan flera program. Ett program består i allmänhet av flera uppgifter. En uppgift slutar vanligtvis med en begäran om att flytta data som skulle kräva att vissa I/O-operationer utförs. Multitasking gjordes vanligtvis för att hålla CPU:n upptagen, medan det program som körs för närvarande utför I/O-operationer. Jämfört med andra exekverande instruktioner är I/O-operationer extremt långsamma. Även om ett program innehåller ett mycket litet antal I/O-operationer, ägnas det mesta av tiden det tar för programmet åt dessa I/O-operationer. Att använda denna vilotid och tillåta ett annat program att använda CPU vid den tiden kommer därför att öka CPU-användningen. Multiprogrammering utvecklades ursprungligen i slutet av 1950-talet som en funktion i operativsystem och användes först i stordatordatorer. Med introduktionen av virtuellt minne och virtuell maskinteknik förbättrades användningen av multiprogrammering.
Vad är tidsdelningssystem?
Tidsdelning, som introducerades på 1960-talet, är delning av datorresurser mellan flera användare samtidigt. I tidsdelningssystem är flera terminaler anslutna till en enda dedikerad server som har sin egen CPU. Åtgärder/kommandon som exekveras av operativsystemet i ett tidsdelningssystem har en mycket kort tidsperiod. Därför tilldelas CPU till användare vid terminalerna under en kort tidsperiod, sålunda får en användare i en terminal känslan av att hon har en CPU dedikerad till henne bakom sin terminal. Den korta tidsperiod som ett kommando exekveras på ett tidsdelningssystem kallas en tidsdel eller ett tidskvantum. Med utvecklingen av internet har tidsdelningssystem blivit mer populära eftersom dyra serverfarmar kan vara värd för ett mycket stort antal kunder som delar samma resurser. Eftersom webbplatserna huvudsakligen fungerar i skurar av aktivitet följt av perioder av vilotid, kunde tomgångstiden för en kund användas effektivt av den andra, utan att någon av dem märkte förseningen.
Vad är skillnaden mellan multiprogrammeringssystem och tidsdelningssystem?
Huvudskillnaden mellan multiprogrammering och tidsdelning är att multiprogrammering är det effektiva utnyttjandet av CPU-tid, genom att tillåta flera program att använda CPU:n samtidigt, men tidsdelning är att dela en datorfunktion av flera användare som vill att använda samma anläggning samtidigt. Varje användare på ett tidsdelningssystem får sin egen terminal och får en känsla av att hon använder processorn ensam. I själva verket använder tidsdelningssystem konceptet multiprogrammering för att dela CPU-tiden mellan flera användare samtidigt.