Időosztás

A Wikipédiából, a szabad enciklopédiából

Az időosztás (angolul time-sharing) a multitasking egy lehetséges módszerével lehetővé teszi, hogy a számítógép erőforrásait több felhasználó, és/vagy folyamat között megossza.

Az időosztás során a központi gép (szerver)– többnyire nagyszámítógép (mainframe) – úgy osztja meg erőforrásait a felhasználók/folyamatok között, hogy egy adott „időszeletet” rendel minden felhasználóhoz/folyamathoz. Ha az időszeletet kiválasztotta, az ahhoz rendelt felhasználó programját futtatja a gép, de csak ha az éppen nem végez input/output tevékenységet. Az operációs rendszer ütemező (scheduler) modulja vezérli az időszeletek kiosztását a felhasználók között. Ha a vezérlés egy adott felhasználóra jut, akkor az ütemező beállítja az új vagy elmentett program-jellemzőket, és futtatni kezdi az adott programot. A felhasználóhoz rendelt időtartam lejártakor a futó programra vonatkozó metaadatokat (a program kontextusát) eltárolja, majd ennek felhasználásával tudja visszaállítani a programot. Az időszelet hossza a felhasználók számától és a rendszer egyéb jellemzőitől függ, általában néhány milliszekundum és néhány száz mikroszekundum közötti érték.

Az időosztás megvalósítását a megnövekedett számítási sebesség, illetve annak a felismerése tette lehetővé, hogy amíg az éppen futó program a perifériákra, illetve a felhasználóra várakozik, a gép valójában semmit sem tesz, így ezek az idők improduktívak, viszont más célra kihasználhatók. Biztosítani kellett még a nagyszámítógép távoli elérésének (számítógép-hálózatok) lehetőségét is.

Története[szerkesztés | forrásszöveg szerkesztése]

Mivel az első nagyszámítógépek és kisgépek különösen drágák voltak, ha egyszerre csak egy felhasználó tudta volna használni, az nagyon gazdaságtalan megoldás lett volna, célszerűbbnek látszott ezért több felhasználó interaktív hozzáférésével megosztani a erőforrásokat.

A megoldás elvét 1957 elején Bob Bemer az Automatic Control Magazine-ban megjelent cikkében írta le. Még ennek az évnek a végén elindult a megvalósítási projekt, amelyet John McCarthy vezetett egy módosított IBM 704 gépen, amit később egy szintén módosított IBM 7090 gépre cseréltek. A projekt eredményét 1961 novemberében mutatták be, ami a Compatible Time Sharing System vagy CTSS néven vált ismertté, és kisebb módosításokkal 1973-ig használatban is maradt. Az első kereskedelmileg sikeres idő-osztásos rendszert a Dartmouth Time-Sharing Systemet (DTSS) 1964-ben helyezték üzembe a Dartmouth College-ben. A DTSS nagy hatással volt a korai időosztásos rendszerek tervezőire és rendszereire, amelyeket a Hewlett Packard (HP), Control Data Corporation, UNIVAC és mások készítettek. A DTSS-ben jelent meg először a BASIC programozási nyelv.

Az időosztásos rendszerek legfontosabb finomhangolási tétele az időablak (time slice) alapértelemezett hosszának a variálása.

Néhány időosztásos rendszer, némelyik ma is használatban van[szerkesztés | forrásszöveg szerkesztése]

Források[szerkesztés | forrásszöveg szerkesztése]

Külső hivatkozások[szerkesztés | forrásszöveg szerkesztése]