Aikajako on tapa jakaa laskentaresurssit monien käyttäjien kesken käyttämällä moniohjelmointia ja moniajoa [1] . Tämän konseptin ilmaantuminen 1960 - luvun alussa ja aktiivinen kehitys 1970 - luvulla johtivat merkittävään teknologiseen läpimurtoon tietojenkäsittelyn historiassa .
Koska useat käyttäjät voivat olla vuorovaikutuksessa yhden tietokoneen kanssa samanaikaisesti, ajan jakaminen on vähentänyt huomattavasti laskentatehon tarjoamisen kustannuksia, mikä mahdollistaa organisaatioiden ja yksityishenkilöiden käyttää tietokonetta ilman sen ostamista. Myös ajanjako vaikutti uusien interaktiivisten ohjelmien kehittämiseen.
Ensimmäiset tietokoneet olivat erittäin kalliita ja hitaita laitteita. Yleensä ne suunniteltiin suorittamaan tiettyjä tehtäviä ja niitä ohjattiin käyttöpaneelista, joka syötti manuaalisesti lyhyitä ohjelmia muuttamalla paneelin kytkimien asentoa. Nämä ohjelmat voivat kestää tunteja tai jopa viikkoja. Mutta kun tietokoneiden nopeus alkoi kasvaa, koneen joutoaika seuraavan ohjelman käyttöönoton yhteydessä tuli mahdottomaksi. Eräkäsittelymenetelmä syntyi tavoitteena vähentää koneen seisokkeja ohjelman tullessa. Eräkäsittelyssä heti kun yksi ohjelma oli suoritettu loppuun, tietokone latasi seuraavan.
Eräkäsittelyprosessin tukemiseksi ohjelmoijat käyttivät rei'itettyjen korttien rei'imiä tai rei'iteippiä . Nämä olivat edullisia laitteita, jotka mahdollistivat ohjelmien luomisen offline-tilassa. Ohjelman kirjoittamisen jälkeen se siirrettiin koneen käyttäjille, jotka suunnittelivat sen käynnistysajankohtaa. Tärkeät ohjelmat käynnistettiin ensin, vähemmän tärkeät ohjelmat kaikkien muiden jälkeen. Kun ohjelma lopulta suoritettiin, sen työn tulos palautettiin yleensä ohjelmoijalle painettuna. Koko prosessi saattoi kestää kauan, jonka aikana ohjelmoija ei nähnyt tietokonetta ollenkaan.
Vaihtoehto antaa käyttäjän hallita tietokonetta suoraan oli yleensä liian kallis edes harkittavaksi. Tämä tilanne rajoitti vuorovaikutteisen kehityksen vain niihin organisaatioihin, joilla oli varaa hukata laskentasykliä: nämä olivat enimmäkseen suuria yliopistoja.
"Ajanjaon" käsite syntyi sen oivalluksen seurauksena, että vaikka jokainen yksittäinen käyttäjä käyttää tietokonetta tehottomasti, käyttäjäryhmä yhdessä on paljon tehokkaampi. Tämä johtuu vuorovaikutuksen muodosta: käyttäjä syöttää tietoa merkki merkiltä, näppäinpainallusten välissä on tauko, jonka aikana tietokone voi suorittaa tuhansia toimintoja, mutta jos ryhmä käyttäjiä työskentelee samanaikaisesti, yksi käyttäjä voi täyttyä muiden toiminnasta. Jos valitset optimaalisen ryhmäkoon, tietokoneen käytön tehokkuus paranee merkittävästi. Vastaavasti käyttäjille voidaan antaa aikavälejä, jotka tietokone käyttää odottaessaan levyn, nauhan tai verkon siirtoa luettavaksi.
Eräkäsittelyyn verrattuna aikajakoa hyödyntävän järjestelmän toteuttaminen on vaikeaa. Eräkäsittely oli yksinkertaisesti eräänlainen työskentely varhaisten tietokonejärjestelmien kanssa. Tietokoneet jatkoivat yhden ohjelman suorittamista yhdelle käyttäjälle kerrallaan, ja eräkäsittely muutti vain ohjelman käynnistysten välisen ajan lyhenemistä. Monien käyttäjien samanaikaista työtä tukevan järjestelmän suunnittelu erosi tästä olennaisesti. Jokaisen käyttäjän ja hänen ohjelmiensa kontekstit ("tilat") piti tallentaa koneeseen, ja ne on voitava nopeasti korvata muilla. Kontekstin vaihtaminen vaati huomattavan määrän prosessorijaksoja , ja se oli suuri ongelma tuon aikakauden hitaille koneille. Kuitenkin, kun tietokoneiden nopeus lisääntyi nopeasti ja mikä vielä tärkeämpää, muistin määrä, johon käyttäjän tilat mahtuivat, aikajakokulut pienenivät vastaavasti.
Käsitteen uskotaan kuvailevan ensin John Backusin kesäistunnossa 1954 Massachusetts Institute of Technologyssa [2] myöhemmin Bob Boehmerin alkuvuodesta 1957 artikkelissa "Kuinka harkita tietokonetta" Automatic Control Magazinessa. . John McCarthy aloitti ensimmäisen projektin aikajakojärjestelmän toteuttamiseksi vuoden 1957 lopulla modifioidulla IBM 704 :llä ja myöhemmin muokatulla IBM 7090: llä . Vaikka hän lopetti työnsä MAC-projektin ja muiden takia, yksi hänen tuloksistaan, joka tunnetaan nimellä Compatible Time-Sharing System tai CTSS, osoitettiin marraskuussa 1961. CTSS:n väitetään olevan ensimmäinen aikajakojärjestelmä. Se oli käytössä vuoteen 1973 asti. Toinen haastaja aikajakojärjestelmän ensimmäiseen esittelyyn oli Donald Blitzerin PLATO II -järjestelmä , joka esiteltiin julkisesti Robert Allerton Parkissa Illinoisin yliopistossa vuoden 1961 alussa. Blitzer sanoi, että PLATO-projekti olisi saanut aikajakopatentin, jos Illinoisin yliopisto olisi osannut käsitellä patenttihakemukset nopeammin. Ensimmäinen kaupallisesti menestynyt ajanjakojärjestelmä oli Dartmouth Time Sharing System .
1960-luvun lopulta 1970-luvun lopulle tietokonepäätteet olivat yhteydessä organisaatioiden suuriin keskuskoneisiin (Centralized Computing Systems), jotka monissa toteutuksissa kyselyt päätelaitteilta peräkkäin nähdäkseen, oliko tietokoneen käyttäjän pyytämiä lisätietoja tai toimenpiteitä. . Tulevaisuudessa päätelaitteiden kyselyn sijaan alettiin käyttää keskeytyksiä ja viestintään rinnakkaisia tiedonsiirtotekniikoita, kuten IEEE 488 -standardia . Pääsääntöisesti tietokonepäätteet sijaitsivat korkeakouluissa ja niitä käytettiin samalla tavalla kuin pöytätietokoneita (henkilökohtaisia) tietokoneita nykyään. Henkilökohtaisten tietokoneiden aikakauden alussa monia niistä käytettiin itse asiassa aikajakojärjestelmien päätteinä.
Mikrotietokoneiden kehityksen myötä 1980-luvun alussa aikajako jäi taka-alalle, koska yksittäiset mikroprosessorit olivat tarpeeksi halpoja, jotta yksi henkilö pystyi yksin hallitsemaan koko prosessorin aikaa, jopa käyttämättömänä. Internet on kuitenkin tuonut takaisin aikaosuuden käsitteen. Kalliit monen miljoonan dollarin yrityspalvelinfarmit antavat tuhansille käyttäjille pääsyn samoihin jaettuihin resursseihin. Kuten varhaiset sarjapäätteet, sivustot käsittelevät enimmäkseen toiminnan purkauksia, joita seuraa seisokkeja. Tämän "purskeen" luonteen ansiosta monet sivuston kävijät voivat käyttää palvelua yhtä aikaa, jolloin kukaan heistä ei huomaa tiedonsiirtoviiveitä ennen kuin palvelimen kuormitus nousee liian korkeaksi.
Käyttöjärjestelmien näkökohdat | |||||
---|---|---|---|---|---|
| |||||
Tyypit |
| ||||
Nucleus |
| ||||
Prosessien hallinta |
| ||||
Muistinhallinta ja osoitus |
| ||||
Lataus- ja alustustyökalut | |||||
Kuori | |||||
Muut | |||||
Luokka Wikimedia Commons Wikikirjat Wikisanakirja |
![]() | |
---|---|
Bibliografisissa luetteloissa |