In Computing , An käyttöjärjestelmä (kutsutaan usein OS - Englanti Käyttöjärjestelmä ) on joukko ohjelmia , joka ohjaa käyttöön resursseja on tietokone , jossa on sovellusohjelmisto .
Se vastaanottaa pyyntöjä käyttämällä tietokone- resurssien - muisti varastointi resurssit (esimerkiksi pääsyä RAM , kiintolevyt ), keskeinen prosessori lasketaan resurssit, viestintä resurssit ja oheislaitteiden (ja joskus pyytää laskemiseksi resursseja GPU esimerkiksi tai muu laajennuskortti ) tai verkon kautta - sovellusohjelmistosta. Käyttöjärjestelmä hallitsee pyyntöjä ja tarvittavia resursseja välttääkseen ohjelmiston välisiä häiriöitä.
Käyttöjärjestelmä on tietokoneen ensisijainen ohjelmisto , koska se sallii ohjelmien suorittamisen sen jälkeen, kun käynnistyslataaja on määrittänyt kaikki oheislaitteet tietokoneen käynnistyessä.
Se tarjoaa joukon yleisiä palveluja, jotka helpottavat sovellusohjelmistojen luomista, ja toimii välittäjänä tämän ohjelmiston ja tietokonelaitteiston välillä . Käyttöjärjestelmä tuo mukavuutta, tehokkuutta ja skaalautuvuutta, mikä mahdollistaa uusien toimintojen ja uuden laitteiston käyttöönoton vaarantamatta ohjelmistoja.
Markkinoilla on kymmeniä erilaisia käyttöjärjestelmiä, joista monet sisältyvät tietokonelaitteeseen. Tämä koskee Windowsia , Mac OS: ää , Irixiä , Symbian OS: ää , Unixia ( Berkeley , System V ...), GNU / Linuxia (jota varten on paljon jakeluja ) tai Androidia . Tarjotut toiminnot vaihtelevat järjestelmittäin ja liittyvät tyypillisesti ohjelmien ajamiseen, päämuistin tai oheislaitteiden käyttöön , tiedostojärjestelmien manipulointiin , viestintään tai havaitsemiseen ja seurantaan. CIM- skeeman mallinnus antaa tälle käsitteelle kuitenkin perusluokan CIM_OperatingSystem , joka on mahdollisesti johdettu Windowsista, Linuxista tai z / OS: stä .
Vuodesta 2012 lähtien kaksi suosituinta käyttöjärjestelmäperhettä ovat Unix (mukaan lukien macOS , GNU / Linux , iOS ja Android ) ja Windows . Jälkimmäisellä on virtuaalinen henkilökohtaisten tietokoneiden monopoli, jolla on lähes 90 prosenttia markkinoista noin viidentoista vuoden ajan. Sitten, vuodesta 2015 alkaen, Windows menetti maaperän Applen käyttöjärjestelmälle , iOS: lle ja macOS: lle sekä Androidille ja Linuxille. Vuoden 2020 lopussa Windows 10: n vahvan käyttöönoton ansiosta sen osuus oli noin 70%.
Käyttöjärjestelmä tarjoaa joukon yleisiä palveluita, jotka helpottavat sovellusohjelmistojen luomista ja käyttöä . Tarjotut palvelut liittyvät käytön tietokoneen resursseja , joita ohjelmissa . Niitä käytetään erityisesti ohjelmien ajamiseen, tietojen lukemiseen ja kirjoittamiseen, tiedostojen käsittelyyn , tietokoneiden väliseen viestintään ja virheiden havaitsemiseen. Nämä palvelut sallivat useiden käyttäjien ja useiden ohjelmien jakaa tietokoneresursseja. Käyttöjärjestelmän päärooli on sitten poistaa erilaiset IT-arkkitehtuurit ja organisoida resurssien käyttö järkevällä tavalla:
Jokaisella laitteella on omat ohjeet , joiden avulla sitä voidaan käyttää. Käyttöjärjestelmä ottaa tämän huomioon. Sen avulla ohjelmoija voi manipuloida laitetta yksinkertaisilla luku- tai kirjoituspyynnöillä välttäen ajanhukkaa muuntamalla toiminnot laitekohtaisiksi ohjeiksi.
Laitekohtaisten ohjeiden ( levykeasema , kiintolevy , CD-ROM- asema , USB-asema , muistikortinlukija ...) lisäksi käyttöjärjestelmä ottaa huomioon kunkin tallennustiedostoissa käytetyn tallennusvälineen koon . Se tarjoaa myös suojamekanismeja hallitsemaan, kuka käyttäjä voi käsitellä mitä tiedostoa.
Yksi käyttöjärjestelmän tehtävistä on suojata resursseja luvattomilta henkilöiltä ja ratkaista ristiriidat, kun kaksi käyttäjää pyytää samanaikaisesti samaa resurssia.
Kun tapahtuu virhe, olipa kyseessä sitten laitteisto tai ohjelmisto, käyttöjärjestelmä käsittelee virhettä pehmentämällä sen vaikutusta tietokonejärjestelmään. Se voi yrittää toistaa toiminnon, lopettaa loukkaavan ohjelman suorittamisen tai ilmoittaa ongelmasta käyttäjälle.
Käyttöjärjestelmä voi pitää tilastoja resurssien käytöstä, seurata suorituskykyä ja vasteaikoja.
Tarjottujen palvelujen valikoima ja tapa käyttää niitä vaihtelee käyttöjärjestelmittäin. Alan standardi POSIX IEEE määrittelee sekvenssi järjestelmä vaatii standardin. Sovellusohjelmistoja, jotka soittavat järjestelmäkutsuja POSIX: n mukaisesti, voidaan käyttää kaikissa tämän standardin mukaisissa käyttöjärjestelmissä.
Käyttöjärjestelmä varmistaa eri resurssien varaamisen samanaikaisesti suoritettavien ohjelmien tarpeisiin. Varaukset voidaan lisätä toimintalokiin tilastollisiin tai vianmääritystarkoituksiin, ja käyttöjärjestelmä voi kieltää varauksen käyttäjälle, joka ei ole saanut ennakkolupaa.
Tietokonelaitteisto voi suorittaa ohjeita, jotka ovat harvoin enemmän kuin kopioita tai lisäyksiä. Monimutkaisten toimintojen kääntäminen ohjeiksi on käyttöjärjestelmän tylsä tehtävä. Käyttöjärjestelmä huolehtii kaikesta laitteiston käsittelystä, joten sovellusohjelmisto ei näe eroa yksinkertaisen, alkeellisen koneen ja rikkaan ja monimutkaisen koneen välillä: samoja palveluja tarjotaan molemmissa tapauksissa.
Käyttöjärjestelmä helpottaa ohjelmointityötä tarjoamalla palvelupaketin, jota sovellusohjelmistot voivat käyttää. Ohjelmoijan näkökulmasta hänen sovellusohjelmistonsa on suuntautunut käyttöjärjestelmään ja laitteistoon, ja ohjelmien katsotaan toimivan käyttöjärjestelmässä. Käyttöjärjestelmä voidaan siten nähdä virtuaalikoneena . Laitteistosta ja käyttöjärjestelmästä muodostuva joukko muodostaa "koneen", joka käyttää sovellusohjelmistoa, koneen osittain ohjelmistolla simuloitua.
Käyttöjärjestelmä koostuu monista ohjelmista. Tarkka koostumus riippuu kohde käytöstä ja tyyppi tietokone laite, johon järjestelmä on tarkoitettu ( henkilökohtainen tietokone , palvelin , supertietokone tai jopa online- hallintojärjestelmä ).
Käyttäjät ja ohjelmoijat voivat pyytää palveluita käyttöjärjestelmästä sen ohjelmointirajapinnan , komentojen tai graafisen käyttöliittymän kautta .
OhjelmointirajapintaJärjestelmäpuhelut mahdollistavat käynnissä olevan ohjelman ja käyttöjärjestelmän välisen vuorovaikutuksen. Järjestelmäpuheluiden käyttö on samanlainen kuin tavallisten toimintojen tai aliohjelmien käyttö C- tai Pascal-muodossa .
TilauksetKomennot sallivat käyttäjän tai ohjelman pyytää toimintoa käyttöjärjestelmästä. Komento on ohjelma, joka soittaa järjestelmäkutsun käyttäjän pyynnöstä.
Graafinen käyttöliittymäGraafinen käyttöliittymä mahdollistaa intuitiivisen käsittelyn kautta piktogrammeja . Tätä käyttöliittymää, joka ei ole olennainen osa käyttöjärjestelmää ja joka kätkee kaikki sen sisäiset yksityiskohdat, pidetään usein lisäosana.
POSIX (lyhenne sanoista Portable Operating System Interface ) on standardi, joka liittyy käyttöjärjestelmän ohjelmointirajapintaan. Monet käyttöjärjestelmät ovat tämän standardin mukaisia, mukaan lukien Unix- perheen jäsenet .
Kun suoritat moniajoa, käyttöjärjestelmä sallii useiden käyttäjien käyttää tietokonetta ja antaa jokaiselle käyttäjälle vaikutelman, että he ovat ainoat, jotka käyttävät tietokonetta. Tätä varten prosessorin käyttö suunnitellaan: kukin ohjelma suoritetaan määrätyn ajanjakson aikana, sitten käyttöjärjestelmä siirtyy toisen ohjelman suorittamiseen.
ProsessiProsessi on joukko ohjeita, joita suoritetaan. Ohjeet tulevat ohjelmasta, ja toteutus vaatii aikaa, muistia, tiedostoja ja oheislaitteita. Käyttöjärjestelmä huolehtii prosessien luomisesta, keskeyttämisestä ja poistamisesta. Useat prosessit ovat päämuistissa samanaikaisesti.
Vastuu käyttöjärjestelmästä ja muistin varaamisesta sekä suorituksen ajoituksesta, umpikujasta huolehtimisesta ja viestinnän varmistamisesta prosessien välillä. Skeduleri liittää prosessi, prosessori, sitten myöhemmin hajoaa sen prosessori liittää toisen prosessin. Tätä liitos- / linkityksen poistotoimintoa kutsutaan kontekstikytkimeksi . Suunnittelussa käyttöjärjestelmä ottaa huomioon, ovatko prosessin käyttämät resurssit käytettävissä. Jotkut käyttöjärjestelmät luovat prosesseja tiettyjen järjestelmäkohtaisten tehtävien suorittamiseksi.
Kun ohjelma on käynnissä, se voi pyytää varaamaan tietokoneresursseja. Tämän ohjelman suorittaminen voidaan keskeyttää ja käyttöjärjestelmä jatkaa toisen ohjelman suorittamista, mutta resurssit pysyvät varattuina. Kun toinen prosessi pyytää jo varattua resurssia, prosessi pysäytetään. Kovassa kilpailutilanteessa useat prosessit saattavat odottaa samaa resurssia. Kun resurssi vapautetaan, käyttöjärjestelmä päättää, mikä on seuraava prosessi, johon resurssi varataan. Strategian mukaan resurssien jakamiseen käyttöjärjestelmän mukaan pyritään vastaamaan oikeudenmukaisesti kaikkiin pyyntöihin ja välttämään konflikteja.
Joissakin sovellusohjelmistoissa useat ohjelmat suorittavat saman tehtävän samanaikaisesti ja vaihtavat tietoja. Muistinsuojausmekanismi (katso alla) estää ohjelmia käsittelemästä samoja tietoja, ja ohjelmien on käytettävä käyttöjärjestelmän palveluja.
Käyttöjärjestelmä ohjaa muistin käyttöä. Se säilyttää luettelon käytetyistä muistipaikoista ja kenestä, sekä luettelon vapaista sijainneista. Käyttöjärjestelmä varaa muistipaikan, kun prosessi sitä pyytää, ja vapauttaa sen, kun sitä ei enää käytetä, esimerkiksi kun prosessi on pysähtynyt.
Muistin käytön ohjaustoiminnot seuraavat erityisesti muistin käyttöä, mitä sijainteja on vapaita, kuka käyttää. Nämä toiminnot päättävät myös, mikä ohjelma vastaanottaa muistia, milloin ja kuinka paljon käytettävissä on, ja palauttaa muistin, jota ohjelma käytti suorituksen jälkeen, lopetettiinko ohjelma tarkoituksella vai vahingossa.
Koko tietokonejärjestelmän käyttämän muistin määrä riippuu ensisijaisesti siitä, miten käyttöjärjestelmä tekee varauksia.
Nykyaikaisissa käyttöjärjestelmissä useita ohjelmia suoritetaan samanaikaisesti ja ne käyttävät samanaikaisesti päämuistia. Jos prosessi muuttuu vahingossa tai tahallaan toisen prosessin käyttämään muistipaikkaan, se vaarantaa prosessin. Jos se muuttaa käyttöjärjestelmän käyttämää sijaintia, se vaarantaa koko tietokonejärjestelmän.
Tällaisen ongelman välttämiseksi käyttöjärjestelmä varaa kutakin ohjelmaa varten osoitetilan - muistin sijainnin, jota vain kyseinen ohjelma pystyy käsittelemään. Käyttöjärjestelmä havaitsee kaikki yritykset käyttää osoiteavaruuden ulkopuolella ja aiheuttaa tällaisen toiminnan suorittavan ohjelman välittömän sammutuksen yleisen suojausvirheen kautta.
VirtuaalimuistiNs virtuaalimuistin mekanismi on tarkoitettu jäljittelemään läsnä ollessa tai ilman päämuistin manipuloimalla muistinhallintayksikkö - elektroninen komponentti (Englanti Memory Management Unit lyhennettynä MMU ). Se on yhteinen mekanismi nykyaikaisissa käyttöjärjestelmissä.
Virtuaalimuistin avulla useampia ohjelmia voidaan suorittaa samanaikaisesti kuin päämuisti mahtuu. Koska kukin ohjelma ei tarvitse kaikkia käsittelemiään tietoja läsnä päämuistissa, osa tiedoista tallennetaan massamuistiin (yleensä tiedostoon tai kiintolevyosioon ), joka on yleensä suurempi, mutta hitaampi ja siirretään päämuistiin, kun ohjelma sitä tarvitsee.
Ohjelmissa on yksi (tai useampi) jatkuva virtuaalimuistitila. Datan osoitteiden sanotaan olevan virtuaalisia siltä osin kuin osoitetut tiedot eivät välttämättä sijaitse päämuistissa tai ilmoitetussa osoitteessa. Kun ohjelma yrittää lukea tai kirjoittaa tietoja virtuaalimuistiinsa, muistinhallintayksikkö etsii pyydettyä virtuaalista osoitetta vastaavaa fyysistä osoitetta vastaavuustaulukon avulla. Jos sijaintia ei ole päämuistissa (tätä kutsutaan sivuvirheeksi ), ei tietenkään ole vastaavaa fyysistä osoitetta. Käyttöjärjestelmän on sitten pyrittävä vapauttamaan tilaa keskusmuistista vaihtamalla (englanninkielinen vaihto ) tietyn keskusmuistipaikan sisältö pyydettyyn sisältöön, joka on massamuistissa. Tämä tapahtuu automaattisesti, ohjelmista tietämättä.
Assosiatiivinen muistoja , upotettu muistinhallintayksikkö, nopeuttaa laskentaa osoitteita. Käyttöjärjestelmät käyttävät tyypillisesti kahta assosiatiivista muistia: yhden ytintilaan ja toisen käyttäjätilaan . Ytimen tila muisti on järjestetty siten, että prosessori voi käyttää kaikkia käytettävissä olevia päämuistiin - ajettaessa ydin ohjelmien käyttöjärjestelmä . Käyttäjätilassa yksi on järjestetty suojaamaan ydintä (joka on siten näkymätön kyseiselle ohjelmalle) - suoritettaessa ytimen ulkopuolisia ohjelmia. Tätä kutsutaan suojaukseksi, ja nämä mekanismit ovat suojatun tilan pääpiirteitä .
Jokaisella ohjelmalla on oma vastaavuustaulukko, jonka avulla ne voidaan eristää toisistaan. Kontekstikytkennän aikana käyttöjärjestelmä sijoittaa nykyisen ohjelman taulukon assosiatiiviseen muistiin. Käyttöjärjestelmä luo myös uusia taulukoita käynnistyville ohjelmille ja päättää, mitkä virtuaalimuistipaikat ovat tai eivät ole päämuistissa.
Oheislaitteet ovat kaikki tietokonelaitteet, jotka mahdollistavat prosessorin kommunikoinnin ulkomaailman kanssa: näppäimistö, tulostin, verkkokortti, muisti, kiintolevy. Ne mahdollistavat erityisesti tietojen vastaanottamisen, lähettämisen ja tallentamisen - keräämisen tietojen palauttamiseksi myöhemmin.
Yksi käyttöjärjestelmän vastuista on seurata kaikkien tietokonejärjestelmän laitteistojen käyttöä - vapaata tai varattua -. Kun prosessi pyytää ilmaista materiaalia, se on varattu kyseiselle prosessille. Laitteen käyttöä varten käyttöjärjestelmä käyttää ohjainta ja laiteajuria.
OhjainOhjain on elektroninen komponentti, joka on puskurimuisti, ja käsittelee tietyn tyyppisen reuna (kiintolevy, tulostin, muisti, magneettinauha lukija, jne.). Ohjain on usein rakennettu laitteeseen. Markkinoilla olevia eri ohjaimia ei kaikkia käytetä samalla tavalla.
Kuljettaja (englanninkielinen kuljettaja )Tietyn ohjainvalikoiman käsittelyohjeet sisältyvät tietokoneohjaimeen : ohjelmisto, joka hyödyntää ohjaimien tarjoamia mahdollisuuksia. Tietokoneohjaimet ovat osa käyttöjärjestelmää ja tarjoavat yhtenäisiä palveluja, joita muut käyttöjärjestelmäohjelmat käyttävät.
Ohjaimien manipuloimiseksi on kaksi strategiaa:
Joitakin laitteita ei voida jakaa, ja niiden käyttö on siis omistettu yhdelle ohjelmalle kerrallaan. Jotkin laitteet voivat olla virtuaalisia tai niiden käyttö epäsuoria. Esimerkiksi tulostimen käyttö ei johda välittömään tulostukseen, koska tiedot asetetaan ensin pitoon. Tämä taustatekniikka sallii sellaisen laitteen yhteiskäytön, jota ei muuten voitu jakaa.
Tiedosto on kokoelma nimettyjä tietoja, jotka on tallennettu tietovälineille, kuten kiintolevylle, magneettinauhalle tai optiselle levylle. Jokaisella medialla on omat ominaisuutensa ja organisaationsa.
Käyttöjärjestelmä huolehtii tiedostojen ja hakemistojen luomisesta ja tuhoamisesta, mediatilan varaamisesta ja tiedostojen sisällön kopioimisesta päämuistiin ja päämuistista. Se auttaa myös sovellusohjelmistoja löytämään tiedostoja, jakamaan tiedostoja useiden käyttäjien kesken, muokkaamaan tiedostosisältöä ja luomaan hakemistoja (jolloin tiedostot voidaan luokitella ja järjestää). Tietokonejärjestelmän nopeus riippuu tiedostojen käsittelynopeudesta.
Käyttöjärjestelmä mahdollistaa erityisesti ominaisuuksien manipuloinnin: tiedoston ominaisuudet, kuten tiedoston nimen, luomispäivän, sisällön tyypin, koon ja sijainnin. Sen avulla voit myös manipuloida käyttöoikeuksia: käyttöoikeuksia, jotka osoittavat, pystyykö käyttäjä lukemaan, kirjoittamaan tai suorittamaan tiedoston.
Käyttöjärjestelmä ottaa huomioon tiedostojärjestelmän: tavan, jolla tiedostot on järjestetty ja jaettu tallennuslaitteelle.
Irrotettavilla muisteilla, kuten CD- tai DVD-levyillä, on vakiomuotoinen asettelu, jonka tekniset tiedot ovat julkisia, mikä takaa niiden tunnistamisen kaikissa käyttöjärjestelmissä (katso ISO 9660 ja UDF sekä ISO / UDF- hybridi ).
Kun tiedostojärjestelmä on jaettu , ja tiedostot tallennetaan siis eri tietokoneiden tietokoneverkossa , käyttöjärjestelmä lähettää pyynnön tietokoneeseen ladannut tiedoston kunkin operaation suorittamisen (ks NFS tai CIFS ).
Usean käyttäjän käyttöjärjestelmässä tiedostojärjestelmää manipuloivat ohjelmat tarkistavat, ettei luvaton henkilö käsittele tiedostoja. Tämäntyyppinen käyttöjärjestelmä hylkää kaiken luvattoman käsittelyn.
Tietokoneverkossa kaksi liitettyä tietokonetta kommunikoivat, kun viestintä tapahtuu molemmille puolille samojen verkkoprotokollien mukaisesti . Mukaan OSI-malli , nykyisiä eri protokollia on jaettu seitsemän tasoa, jossa protokolla, joka tietyn tason, voidaan yhdistää minkä tahansa protokollan tason yläpuolella ja alapuolella (katso kapselointi ).
Käyttöjärjestelmä sisältää tyypillisesti useita tiedonvaihtoon tarvittavia ohjelmia tasojen 1–4 eri protokollissa. Sovellusohjelmat ja väliohjelmistot tukevat tasoja 5–7 .
Vaihtoa varten tietojen mukaan tason 1 ja 2 protokollia, käyttöjärjestelmä vaatii toimintaa laitteiston tietokoneen kautta tietokone kuljettaja, kuljettaja, joka voi olla kiinteä osa järjestelmää. Käytön tai saada aikaan laite valmistaja.
Lähetettäessä tietoja verkon kautta sovellusohjelmisto luo tietoja, muotoilee ne tason 7–5 protokollien mukaisesti ja lähettää sen sitten käyttöjärjestelmään. Eri käyttöjärjestelmäohjelmat jakavat nämä tiedot kehyksiksi , muotoilevat kehykset ja lähettävät ne sitten tason 4-1 protokollien mukaisesti.
Vastaanottaessaan kehyksiä verkosta, erilaiset käyttöjärjestelmäohjelmat yrittävät dekoodata ne erilaisten protokollien mukaisesti tasoilta 1-4, muuntaa sitten kehyssarjat jatkuvaksi virraksi, joka lähetetään vastaanottajan sovellusohjelmistolle. Sitten ohjelmisto purkaa virran tason 5 - 7 mukaisesti. Sovellusohjelmisto muodostaa ensin yhteyden , toisin sanoen loogisen linkin, jonka kautta se liitetään tiettyyn virtaan.
Käytettyjen protokollien tarkka valinta riippuu kyseisestä tietokoneesta ja käytetyistä verkkolinkeistä. Eri kokoonpanoparametreja käytetään protokollien valintaan vaikuttamiseen. Niiden avulla voidaan esimerkiksi estää kiellettyjen protokollien käyttö kyseisessä verkossa.
Nykyaikaiset käyttöjärjestelmät sallivat useiden käyttäjien käyttää tietokonetta samanaikaisesti. Käyttöjärjestelmä sisältää mekanismeja käyttäjien, prosessien ja ohjelmien resurssien käytön hallitsemiseksi. Nämä mekanismit mahdollistavat ohjelman tai käyttäjän henkilöllisyyden varmentamisen ja valtuuttamisen käyttämään resurssia turvallisuusmääräysten mukaisesti.
Käyttöjärjestelmän suojausmekanismit suojaavat tietokonejärjestelmää sekä sisältä että ulkopuolelta: sisäiset turvamekanismit suojaavat prosesseja toisiltaan ja varmistavat tietokonejärjestelmän luotettavuuden. Ulkoiset suojausmekanismit suojaavat tietokoneeseen tallennettuja tietoja ja ohjelmia luvattomalta käytöltä ja käsittelyvirheiltä. Käyttöjärjestelmä estää luvattomien lukemisen, peukaloinnin, tietojen poistamisen sekä oheislaitteiden luvattoman käytön.
Useat ohjelmat suoritetaan samanaikaisesti ja käyttävät samanaikaisesti päämuistia. Jos prosessi muuttuu vahingossa tai tahallaan toisen prosessin käyttämään muistipaikkaan, se vaarantaa prosessin. Jos se muuttaa käyttöjärjestelmän käyttämää sijaintia, se vaarantaa koko tietokonejärjestelmän.
Tällaisen ongelman välttämiseksi käyttöjärjestelmä varaa kutakin ohjelmaa varten osoitetilan - muistin sijainnin, jota vain kyseinen ohjelma pystyy käsittelemään. Käyttöjärjestelmä havaitsee kaikki yritykset käyttää osoiteavaruuden ulkopuolella ja aiheuttaa ohjelman välittömän sammutuksen, joka yrittää suorittaa tällaisia toimintoja.
Käyttöjärjestelmä myös kieltäytyä käytöstä poistamisen tärkeimpiä ohjelmia, kuten palvelimen ohjelmisto tai käyttöjärjestelmän ohjelmia kuka tahansa käyttäjä, joka ei ole aikaisemmin saanut etuoikeus suoritusoikeuksia - määräysten mukaisesti käyttöön turvallisuudesta vastaava yksikkö.
Kun autonominen ohjelmisto ( tietokonerobotti ) pyytää toimintoja käyttöjärjestelmältä, ohjelmiston on ensin paljastettava identiteettinsä tuotteena ja sitten tämän identiteetin perusteella käyttöjärjestelmä suorittaa samat tarkastukset kuin fyysinen henkilö.
Kulunvalvontamekanismeilla on myös haittaohjelmien torjunta - haittaohjelmat suorittavat usein toimintoja, jotka voivat häiritä tietokoneen käyttöä.
Joukko käyttöjärjestelmäohjelmia vastaanottaa sovellusohjelmiston lähettämät tiedot ja sijoittaa ne digitaaliseen kuvaan, joka lähetetään laitteistolle ohjaimen kautta. Lisäksi toinen ohjelmaryhmä vastaanottaa käyttäjän suorittamat toiminnot pilottien kautta ja lähettää ne sitten kyseiselle ohjelmistolle. Nämä kaksi sarjaa luovat ihmisen ja koneen välisen käyttöliittymän, jonka avulla käyttäjä voi kommunikoida koneen kanssa.
Käyttöjärjestelmä voi kommunikoida käyttäjän kanssa toisen tietokoneen tai päätelaitteen kautta ( hajautettu käyttöliittymä ). Sovellusohjelmiston lähettämät tiedot lähetetään sitten toiselle tietokoneelle tätä tarkoitusta varten suunnitellun protokollan mukaisesti, kun taas toinen tietokone lähettää käyttäjän suorittamat toiminnot. Katso SSH , RFB tai X Window System .
Kun käyttöliittymä on tekstitilassa , digitaalinen kuva on ruudukko, johon tulostetut merkit sijoitetaan, ruudukossa on tyypillisesti 80 saraketta ja 35 riviä. Käyttöliittymää käytetään näppäimistöllä. Tämän tyyppinen käyttöliittymä, joka on ollut olemassa laskennan alusta lähtien, on nyt korvattu graafisilla rajapinnoilla.
Graafinen käyttöliittymäOn graafinen käyttöliittymä (Englanti graafinen käyttöliittymä lyhennetty GUI ), digitaalisen kuvan koostuu käyttöjärjestelmän ohjelman päällekkäisyys pisteitä, viivoja, kuvamerkeillä ja tulostaa. Käyttöliittymää käsitellään yleensä hiirellä WIMP- periaatteen mukaisesti (englanninkielinen Windows, kuvakkeet, valikot ja osoitinlaite ). Digitaalinen kuva luodaan tietokoneen grafiikkaprosessorilla .
Hiiritoimintojen aikana käyttöjärjestelmä siirtää osoitinta sisältävää kuvaelementtiä ja suorittaa tarvittavat laskelmat sen määrittämiseksi, mikä kuvan osa on juuri sen alapuolella. Jokainen kuvan osa voidaan liittää ohjelmaan. Widget on ohjelma, joka piirtää ja animoi kuvan, jonka sähköinen ulkonäkö voi olla, että on painikkeen , An indikaattori valo , hissi, tekstialueelle, valikosta jne Käyttöjärjestelmän mukana toimitetaan erilaisia widgetejä.
GUI-ohjelmat sisältyvät tänään (2011) kaikkiin nykyaikaisiin käyttöjärjestelmiin. X Window System on joukko graafisen käyttöliittymän ohjelmia mukana kaikissa käyttöjärjestelmissä ja Unix perheen . For Windows , vastaava on Explorer ohjelma , jota kutsutaan myös Windows Explorer (ei pidä sekoittaa Internet Explorer).
Sovellus , jota käytetään apuna käyttäjän toimintaa. Apuohjelma on sovellusohjelmisto, jonka avulla käyttäjä voi suorittaa perustoimintoja, kuten käynnistää ohjelmia, kopioida tiedostoja tai muuttaa kokoonpanoasetuksia . Käyttöjärjestelmien mukana toimitetaan erilaisia apuohjelmia.
Komentotulkin on ohjelma, jolla voit käyttää myös muita ohjelmia kirjoittamalla nimensä ja mahdollisesti sen jälkeen eri parametreja . Siihen liittyy useita ohjelmia, jotka sallivat tiedostojen käsittelyn (kopiointi, uudelleennimeäminen jne.). Tämän tyyppistä ohjelmaa käytetään manipulaatioiden suorittamiseen tai komentosarjojen suorittamiseen - sarja ennalta nauhoitettuja manipulaatioita (katso tietokoneen hallinta ). Tämän tyyppinen ohjelma toimitetaan usein käyttöjärjestelmän mukana, mutta mikään ei vaadi sitä, ja joidenkin tuonti on erittäin helppoa.
Toimistoympäristössä on ohjelma, jolla eri elementit tietokoneen (ohjelmat, tiedostot, kiintolevyt) esitetään muodossa kuvamerkit jossa on mahdollista suorittaa erilaisia toimia. Sen avulla voit suorittaa ohjelmia, suorittaa erilaisia toimintoja tiedostoille (kopioida, nimetä uudelleen, siirtää tai poistaa).
Joidenkin ohjelmien avulla käyttäjä voi muuttaa käyttöjärjestelmän kokoonpanoasetuksia . Nämä tarjoavat monivalintaluetteloita ja tarkistavat pätevyyden ennen parametrien muokkaamista.
Muut ohjelmiston asentamiseen käytetyt ohjelmat , eli kopioi tiedostot tätä tarkoitusta varten tarkoitettuihin paikkoihin ja tee tarvittavat kokoonpanomuutokset käyttöohjelmiston tekemiseksi. Näitä ohjelmia voidaan käyttää myös tietokoneeseen asennettujen ohjelmistojen luettelon tarkasteluun.
Monen käyttäjän käyttöjärjestelmä on yleensä mukana ohjelmien käytön valvomiseksi - muiden - tietokone - kuulemaan toiminnan lokit - tai muuttamaan luettelot käyttöoikeuksien kanssa pyritään '' sallia tai estää tiedoston tietyille käyttäjille .
Käyttöjärjestelmiä on viisi sukupolvea: eräajo , moniaikataulu, ajanjako, reaaliaikainen ja jaettu. Kukin yhden sukupolven periaatteista löytyy seuraavista sukupolvista.
Usean ohjelmoidun käyttöjärjestelmän luomisesta lähtien useita ohjelmia suoritetaan samanaikaisesti aikatauluttamalla . Näissä monikäyttöisissä käyttöjärjestelmissä useita ohjelmia on päämuistissa, ja käyttöjärjestelmä keskeyttää säännöllisesti yhden ohjelman suorittamisen jatkaakseen toisen suorittamista.
Jokainen käyttöjärjestelmä on suunniteltu toimimaan tietyn koneiden kanssa (prosessorityyppi, valmistaja, arkkitehtuuri). Jos käyttöjärjestelmä on käytettävissä useille eri konelinjoille, sama lähdekoodi kootaan ja mukautetaan jokaiselle konelinjalle. Valikoima kuljettajien sisältyvät käyttöjärjestelmä sovitetaan tietokonelaitteiston saatavilla markkinoilla tämän konevalikoima.
"Eräkäsittelyyn" perustuvat käyttöjärjestelmät (käskyjen ja tietojen sekvenssit reikäkorttisarjassa) ilmestyivät 1950-luvulla. Ohjelma (sen tiedoilla) ei ole muuta kuin "pino kortteja, joissa on alku- ja loppuindikaattorit. Ohjelman suorittaminen tarkoittaa operaattorin pyytämistä sijoittamaan korttipino lukijaan, sitten operaattori aloittaa korttien peräkkäisen lukemisen. Keskusprosessori on levossa käyttäjän manipulaatioiden aikana.
Erä on paketti tehtävää. Operaattori säveltää erän sijoittamalla käyttäjien pyytämät päällekkäin eri ohjelmien korttipaikat (ja niiden tiedot) päällekkäin. Se muodostaa suuren pino kortteja, jotka on erotettu kirjanmerkeillä, yleensä erityinen värikortti, jonka se sitten asettaa lukijaan. Useiden ohjelmien ryhmittely erään vähentää käyttäjän toimintaa.
Eräpohjaisessa järjestelmässä käyttöjärjestelmän sydän on näyttöohjelma, joka pysyy jatkuvasti päämuistissa ja jonka avulla käyttäjä voi pyytää erän aloittamista tai lopettamista. Kun jokainen erän työ on suoritettu loppuun, näyttö suorittaa siivoustöitä ja aloittaa sitten seuraavan työn suorittamisen. Tällöin käyttäjä puuttuu asiaan vain erän alussa ja lopussa.
Näissä käyttöjärjestelmissä kirjanmerkkiin lisätyt komennot, jotka on muotoiltu JCL: ssä ( Job Control Language ), ovat ainoa keino, että käyttäjän on oltava vuorovaikutuksessa käyttöjärjestelmän kanssa.
Erä käyttöjärjestelmissä soveltuvat sovelluksiin, jotka vaativat erittäin suuria laskelmia mutta vähän käyttäjän osallistumista: sää, tilastot, verot ... Käyttäjät eivät heti odottaa tuloksia. He lähettävät pyynnöt ja palaavat myöhemmin myöhemmin keräämään tulokset.
Suorittimen ja oheislaitteiden nopeuseroista johtuen eräkäyttöjärjestelmässä prosessoria ei käytetä 90% ajasta, koska ohjelmat odottavat yhden tai toisen laitteen suorittamista. Näissä käyttöjärjestelmissä ei ole kilpailua eri tehtävien välillä, prosessorin, muistin ja oheislaitteiden käytön toteutus on vähäistä, mutta kaukana optimaalisesta.
Moniohjelmoituja käyttöjärjestelmiä ilmestyi 1960-luvulla, ja niiden tarkoituksena on lisätä prosessorin ja oheislaitteiden käytön tehokkuutta hyödyntämällä mahdollisuutta saada ne toimimaan rinnakkain. Useat ohjelmat sijoitetaan päämuistiin, ja kun käynnissä oleva ohjelma odottaa tulosta laitteelta, käyttöjärjestelmä kehottaa prosessoria suorittamaan toisen ohjelman.
Moniohjelmoiduissa käyttöjärjestelmissä prosessorin käyttö jaetaan aikatauluttamalla : joka kerta, kun oheislaitetta käytetään, käyttöjärjestelmä valitsee suoritettavan ohjelman. Tämä valinta tehdään prioriteettien perusteella. Käyttöjärjestelmässä on suojamekanismi, mikä estää käynnissä olevaa ohjelmaa lukemasta tai kirjoittamasta toiselle ohjelmalle varattua muistia. Ohjelmat suoritetaan ei-etuoikeutetussa tilassa , jossa tiettyjen ohjeiden suorittaminen on kielletty.
Moniohjelmoidut järjestelmät edellyttävät tietokonetta ja oheislaitteita, jotka toteuttavat DMA- tekniikan ( suora muistipääsy ). Tämän mukaisesti prosessori käskee oheislaitteen suorittamaan toiminnon, jonka tulos oheislaite sijoittaa toiminnan tuloksen päämuistiin samalla kun prosessori suorittaa muita ohjeita. Moniohjelmoiduissa järjestelmissä, kuten eräajojärjestelmissä , käyttäjällä on vähän yhteyksiä ohjelmiin ja vain vähän mahdollisuuksia toimia.
Ajanjako-käyttöjärjestelmät ilmestyivät 1970-luvulla, ja niitä käytetään interaktiivisissa laitteissa, joissa useat käyttäjät ovat samanaikaisesti vuorovaikutuksessa tietokoneen kanssa. Osa- aikaisen käyttöjärjestelmän on tarkoitus vastata nopeasti käyttäjien pyyntöihin ja antaa jokaiselle käyttäjälle vaikutelma, että he käyttävät ainoaa tietokonetta.
Osa-aikainen järjestelmä toteuttaa kehittyneitä moniohjelmointitekniikoita , jotta useat käyttäjät ja useat ohjelmat voivat käyttää tietokonetta vuorovaikutteisesti samanaikaisesti. Tämän uuden sukupolven käyttöjärjestelmien saapuminen vuonna 1970 oli seurausta voimakkaasta kuluttajakysynnästä ja tietokonelaitteistojen hinnanlaskusta, joka mahdollisti sen tuottamisen.
Osa-aikaisessa käyttöjärjestelmässä erän käsitteellä ei ole juurikaan merkitystä. Nämä järjestelmät toteuttavat uudet prosessorin ja muistin käyttämismekanismit, joiden avulla ne voivat vastata nopeasti suuren määrän käyttäjien pyyntöihin samanaikaisesti.
Näissä järjestelmissä, kuten edellisessäkin sukupolvessa, CPU: n käyttö on suunniteltu. Toisin kuin edellisen sukupolven järjestelmissä, aikajakojärjestelmissä kukin ohjelma suoritetaan tietylle aikavälille, sitten käyttöjärjestelmä siirtyy toisen ohjelman suorittamiseen, mikä estää ohjelman monopoloimaan CPU: n käyttöä yhden käyttäjän palvelussa aiheuttaen viiveitä muille käyttäjille.
Timeshare-käyttöjärjestelmät toteuttavat vaihdon tekniikan : kun käynnissä oleva ohjelma tarvitsee enemmän muistia kuin on käytettävissä, toinen passiivinen ohjelma poistetaan tilan säästämiseksi. Passiivinen ohjelma tallennetaan sitten väliaikaisesti kiintolevylle. Levylle tallentaminen on kuitenkin huomattavaa ajanhukkaa.
Vuonna 2011 monet käyttöjärjestelmät perustuvat Unixiin , ajanjakojärjestelmään.
Reaaliaikaiset käyttöjärjestelmät ilmestyivät 1970-luvun puolivälissä, erityisesti Hewlett-Packardilla . Ne on tarkoitettu laitteille, joiden ei tarvitse vain antaa oikeita tuloksia, vaan antaa ne tietyssä ajassa. Näitä käyttöjärjestelmiä käyttävät usein ulkoiseen laitteeseen kytketyt tietokoneet (autopilotit, teollisuusrobotit, video- ja äänisovellukset), joiden viivästyminen tietokoneen vastauksessa aiheuttaisi laitteen vioittumisen.
Näissä käyttöjärjestelmissä painotetaan sitä, kuinka kauan kunkin operaation suorittaminen kestää, vastaamaan vaatimuksiin nopeasti vastaamaan sen järjestelmän aikarajoituksiin, jossa sitä käytetään.
Tietyt näiden käyttöjärjestelmien tarjoamat palvelut toteutetaan sovellusohjelmistoina, ja ne toteutetaan kilpailussa niiden kanssa. Reaaliaikainen käyttöjärjestelmä mahdollistaa suoran yhteyden sovellusohjelmistojen ja oheislaitteiden välillä. Joissakin reaaliaikaisissa järjestelmissä resurssit varataan, jotta vältetään lennon varausten aiheuttama hidastuminen ja varmistetaan, että resurssit ovat jatkuvasti käytettävissä.
Reaaliaikaiset käyttöjärjestelmät välttävät vaihtotekniikan käyttöä viivästymisriskin vuoksi.
RTX , Windows CE , Embedded Linux , Symbian OS , Palm OS ja VxWorks ovat reaaliaikaisia käyttöjärjestelmiä .
Tietokonelaitteiden hinnan lasku mahdollisti 1990-luvulla luoda tietokonejärjestelmiä, jotka koostuivat useista tietokoneista ja siten useista prosessoreista, useista muistista ja monista oheislaitteista. Hajautettu järjestelmä mahdollistaa resurssien jakamisen tietokoneiden välillä. Edullisen tietokoneen käyttäjä voi käyttää toisessa tietokoneessa olevia kalliita resursseja.
Mach , Amoeba , Andrew , Athena ja Locus ovat hajautettuja käyttöjärjestelmiä. Ne kaikki ovat yliopistojen kehittämiä.
Käyttöjärjestelmien historia on vahvasti sidoksissa tietokoneiden historiaan. Ensimmäisissä tietokoneiden sukupolvissa, vuosina 1945–1955, ei ollut käyttöjärjestelmää. Näissä tyhjiöputkilla varustetuissa tietokoneissa ohjelmat manipuloivat tietokoneen laitteistoresursseja käymättä välittäjän läpi. Tietokonetta käytti yksi henkilö kerrallaan: käyttäjän tehtävänä oli sijoittaa nippukorttien pinot lukijaan, jossa jokaisella kortilla oli ohjelmaohjeet tai tiedot. Tämän sukupolven tyhjiöputketietokoneilla oli vain vähän laskentatehoa, ne olivat isoja, hankalia ja epäluotettavia (tyhjöputket palivat usein loppuun).
1960-luvulla, kun kiinteän tilan elektroniset piirit tulivat voimaan, prosessorien laskentateho kasvoi merkittävästi. Tämä mahdollisti alkeellisten käyttöjärjestelmien toteutumisen: tietokoneissa oli taustatulostusjono, joka mahdollisti prosessorin laskentatehon käytön, kun operaattori esitteli kortit. Laitteiden resurssit käytettiin sitten ohjelmistokirjaston kautta . Sitten voitiin tallentaa useita ohjelmia samanaikaisesti ja suorittaa ne samanaikaisesti; niin kutsuttu pysyvä monitoriohjelma asui jatkuvasti päämuistissa ja ohjasi eri ohjelmien suoritusta.
Vuonna 1965 Massachusettsin teknillinen instituutti aloitti ensimmäisen moniajo- ja monikäyttöjärjestelmän käyttöjärjestelmän: Multics ( MULTiplexed Information and Computing Service ). Periaatteeseen multiprogramming , käyttöjärjestelmä sallittu lastaus useita ohjelmia muistiin ja hallita siirtyminen yhdestä toiseen, mutta tällä kertaa odottamatta esto ohjelman. Jokainen ohjelma olisi käynnissä muutaman millisekunnin, sitten järjestelmä siirtyisi seuraavaan. Tämä hyvin lyhyt aika antoi illuusion ohjelmien käynnistä samanaikaisesti - illuusion, joka on edelleen olemassa nykyaikaisissa käyttöjärjestelmissä.
Lisäksi nämä ohjelmat voisivat olla erillisten käyttäjien omistuksessa, joista jokaisen mielestä kone toimi vain heidän puolestaan. Tietokoneen kyky palvella useita ihmisiä samanaikaisesti lisäsi investointien tuottoa, kun yritykset ja laitokset ostivat erittäin kalliita laitteita. Multics oli kuitenkin kaupallinen epäonnistuminen kirjoitettuna PL / I- ohjelmointikielellä, joka oli liian monimutkainen päivän tietokoneille. Se on kuitenkin innoittanut suurelta osin Honeywellin ja Bullin yhdessä kehittämiä GCOS- järjestelmiä .
Vuonna 1969 insinöörit Ken Thompson ja Dennis Ritchie on Bell Labs haaveillut käyttäen Multics käyttöjärjestelmää, mutta laitteisto ajaa se oli vielä kallista. Thompson aikoo kirjoittaa Multicsin riisutun version käyttämättömälle PDP-7: lle . Järjestelmän toiminnallisuutta sai lempinimen Unics (varten UNiplexed tieto- ja Computing Service ), sitten lopulta nimeltään UNIX . Nopea uudelleenohjelmointi sopivammalla ohjelmointikielellä ( C , Ritchie on kehittänyt tilaisuuteen), UNIX on erityisen helppo siirtää uusille alustoille, mikä takaa sen menestyksen.
Jo vuonna 1980 elektroniset transistoripiirit korvattiin pienemmillä integroiduilla piireillä, mikä mahdollisti pienempien ja halvempien laitteiden tuotannon ja käynnisti henkilökohtaisten tietokoneiden markkinat. Monilla näille markkinoille tulleilla käyttöjärjestelmäsuunnittelijoilla ei ollut kokemusta, mikä johti uusiin tuotteisiin, jotka perustuivat uusiin ideoihin, ilman perintöä tai vaikutusta aiemmin tehtyihin. CP / M , joka julkaistiin vuonna 1974, oli ensimmäinen mikrotietokoneen käyttöjärjestelmä, jonka erittäin ystävällinen , helposti opittava ja käyttäjäystävällinen luonne teki siitä erittäin suositun ja vaikutti tietokonemarkkinoihin .
Vuonna 1980 IBM otti yhteyttä Microsoftin perustaja Bill Gatesiin BASIC- kielen mukauttamiseksi hänen uuteen mikrotietokoneeseensa: henkilökohtaiseen tietokoneeseen (lyhennettynä PC ). IBM etsii myös käyttöjärjestelmää, ja Bill Gates neuvoo heitä kääntymään CP / M. Mutta Gary Kildall kieltäytyy allekirjoittamasta sopimusta IBM: n kanssa. Bill Gates hyppäsi tilaisuuteen: hän osti QDOS: n - nopea ja likainen käyttöjärjestelmä Intel 8086 -prosessoreille - tarjotakseen IBM: lle DOS / BASIC-paketin. Muutaman IBM: n pyynnöstä tehdyn muutoksen jälkeen järjestelmä sai nimen MS-DOS .
Xerox , yksi tuolloin suurimmista yrityksistä, on kiinnostunut Steve Jobsin näkökulmasta. Se kokoaa kourallisen tutkijoita ja insinöörejä Palo Alton tutkimuskeskukseensa ja kehittää ensimmäisen graafisella käyttöliittymällä varustetun mikrotietokoneen aikaisempina vuosina tehtyjen ergonomian opinnäytteiden ja tutkimusten perusteella. Tämän tutkimuksen tuloksia, Xerox Staria , ei koskaan markkinoida. Kymmenen vuotta myöhemmin, Apple oli Macintoshissa, joka suositteli Xeroxin tekemää tutkimusta.
Vuonna 1983 Richard Stallman on Massachusetts Institute of Technology esitti ajatuksen vapaan lisenssin käyttöjärjestelmä: GNU . Hän kehittää ohjelmointityökaluja , apuohjelmistoja ja luo GNU General Public License -lisenssisopimuksen - lisenssisopimus, joka sallii rajoittamattoman käytön sekä lähdekoodin julkaisemisen , sen muokkaamisen ja uudelleenjaon. Menestys oli välitöntä, mutta vuonna 1990 järjestelmällä ei vielä ollut vapaata ydintä, ja yritykset kehittää sitä eivät olleet läheskään onnistuneet.
Vuonna 1987 Amsterdamin vapaan yliopiston professori Andrew Tanenbaum loi Minix- käyttöjärjestelmän , UNIX-kloonin, jonka lähdekoodi on tarkoitettu havainnollistamaan hänen kurssiaan käyttöjärjestelmien rakentamisesta. Mutta Minixillä, jonka kutsumus on koulutuksellinen, on sitten liian monet tekniset rajoitukset eikä se salli laajaa käyttöä.
Vuonna 1989 ilmestyi samanaikaisesti " ilmainen käyttöjärjestelmä ": 4.4BSD . Berkeley Software Distribution (BSD) on versio UNIX kehittämä opiskelijat ja tutkijat Berkeleyn vuodesta 1977. Utility ohjelma, perustettu vapaan lisenssin, myydään kanssa AT & T Unix kernel itse. Alla omistajan lupa . Tämä kaksois-BSD-lisenssi on ollut Berkeleyn yliopiston ja AT&T: n välisen useita vuosia kestäneen oikeudenkäynnin alku. Yliopiston opiskelijat pyrkivät korvaamaan AT&T: n kehittämät ohjelmat omilla ohjelmillaan avoimen lisenssin avulla riidan ratkaisemiseksi. Tämä tilanne kesti 4.4BSD : n julkaisemiseen vuonna 1994, joka tuskin sisälsi AT&T -koodia.
Vuonna 1991 Helsingin yliopiston opiskelija Linus Torvalds , Tanenbaumin työn innoittamana, julkaisi oman ytimensä ensimmäisen version (0.0.1) : Linuxin , joka oli alun perin Minixin uudelleenkirjoittama . Linux meni GNU-lisenssin alle vuonna 1992, ja vasta 1.0 näki vasta vuonna 1994, mikä synnytti täysin ilmaisen GNU / Linux- käyttöjärjestelmän jakelun .
GNU / Linuxista ja 4.4BSD: stä tuli ensimmäiset ilmaisen lisenssin järjestelmät Linus Torvaldsin ja Richard Stallmanin aloitteiden ja töiden, tuhansien vapaaehtoisten avustamana, ja Berkeleyn yliopiston opiskelijoiden työn jälkeen .
Käyttöjärjestelmä on lähinnä tapahtumavetoinen - se suoritetaan, kun jotain on tapahtunut, tyypillisesti järjestelmäkutsun, laitteistokatkoksen tai virheen aikana. Se on laaja ja monimutkainen ohjelmisto, joka tarjoaa monia toimintoja. Se on rakennettu sarjana moduuleja, joilla kullakin on oma tehtävä.
Ydin on keskeinen osa käyttöjärjestelmää. Se on toinen muistiin ladattu ohjelma (juuri käynnistyslataimen jälkeen ) ja se pysyy siellä pysyvästi - sen palveluja käytetään jatkuvasti.
Se sijaitsee yleensä RAM-muistin suojatussa paikassa, jota muut ohjelmat eivät voi muokata tai hyödyntää (toisin sanoen suojatun tilan käyttöjärjestelmän tapauksessa ).
Tämä on kriittinen komponentti: jos ydin epäonnistuu ja sammuu, tietokone lakkaa toimimasta, kun taas toinen ohjelma sammutettaisiin (esim. Käyttäjäohjelma), käyttöjärjestelmä pysyisi toiminnassa.
Se tarjoaa tyypillisesti toimintoja prosessien (ts. Ohjelmien) luomiseen tai tuhoamiseen, prosessorin, muistin ja oheislaitteiden käytön ohjaamiseen. Se tarjoaa myös toiminnot, joiden avulla ohjelmat voivat olla yhteydessä toisiinsa ja kohdistaa itsensä ajoissa (synkronointi).
Monoliittinen ydin Monoliittisessa rakenteessa käyttöjärjestelmä koostuu yhdestä ohjelmasta: ytimestä. Tämä on tyypillisesti järjestetty kerroksittain. Monoliittinen rakenne on yleisin, jota sovelletaan useimpiin Unixeihin; Ydin mikrotumasta Vuonna -mikroydintä rakentaa , ydin tarjoaa vähintään palvelut: monet toiminnot käyttöjärjestelmän on poistettu ydin ja tarjoavat ohjelmia manipuloida ytimen, joita kutsutaan palveluja (järjestelmälle suojatussa tilassa, iso ero monoliittinen järjestelmä on, että nämä palvelut suoritetaan käyttäjän muistitilassa eikä ytimessä).Ilmestymisvuosi | Sukunimi | Perhe | Toimittaja | Tuettu laitteisto | käyttää | Ydin | Graafinen | Moniajo | Monikäyttäjä | Moniprosessori | Reaaliaika |
---|---|---|---|---|---|---|---|---|---|---|---|
1973 | SYSMINEN | R2E | Micral | henkilökohtaiset tietokoneet, työasemat | |||||||
1977 | VMS | JOULU | VAX , DEC Alpha , Hewlett-Packard | palvelimet, keskusyksiköt | |||||||
1978-1985 | CP / M | Digitaalinen tutkimus | Amstrad CPC , Commodore 128 , TRS-80 | henkilökohtaiset tietokoneet | (MP / M-tapaus) | ||||||
1981-1990 | TAKAISIN | IBM ja Microsoft | PC-yhteensopiva | henkilökohtaiset tietokoneet | |||||||
1982 | QNX | Quantum-ohjelmistojärjestelmät | PC, MIPS , PowerPC , ARM yhteensopiva | sulautetut järjestelmät , teolliset ohjaimet | |||||||
1984 | Mac käyttöjärjestelmä | Omena | Apple Macintosh | henkilökohtaiset tietokoneet | |||||||
1985 | TOS | Atari | Atari ST , Kotka, Medusa, Hades, Milano, FireBee , ColdFire | henkilökohtaiset tietokoneet | |||||||
1985 | AmigaOS | Kommodori | Commodore Amiga , PowerPC | henkilökohtaiset tietokoneet ja pelikonsolit | |||||||
1986 | AIX | Unix | IBM | PS / 2 , RS / 6000 , PowerPC | henkilökohtaiset tietokoneet, palvelimet, työasemat, supertietokoneet | ||||||
1986 | Irix | Unix | SGI | SGI- koneet | työasemat ja palvelimet | ||||||
1986-1996 | Seuraava askel | Unix | Seuraava | PC-, SPARC- , Hewlett-Packard- yhteensopiva | työasemat | ||||||
1987-2006 | OS / 2 | IBM ja Microsoft | PS / 2 ja PC-yhteensopiva | henkilökohtaiset tietokoneet | |||||||
1987 | Minix | Andrew Tanenbaum | PC, m68k , SPARC- yhteensopiva | (pedagoginen) | |||||||
1989 | Symbian-käyttöjärjestelmä | Symbian Oy | Nokia , Siemens , Samsung , Panasonic | matkapuhelimet, älypuhelimet , henkilökohtaiset avustajat | |||||||
1990 | Windows 3.x | Windows | Microsoft | DOS-ohjelmiston päällekkäisyys | henkilökohtaiset tietokoneet | ||||||
1991 | Solaris | Unix | Aurinko | Sun ja x86 / 64- koneet | palvelimet, työasemat, supertietokoneet | ||||||
1991 | GNU / Linux | Unix | (Yhteisö) | lukuisia | kaikki | ||||||
1991 | Windows NT | Windows | Microsoft | PC-yhteensopiva | palvelimet, työasemat, henkilökohtaiset tietokoneet | ||||||
1994 | NetBSD | Unix | (Yhteisö) | lukuisia | kaikki | ||||||
1994 | FreeBSD | Unix | (Yhteisö) | lukuisia | kaikki | ||||||
1994 | OpenBSD | Unix | (Yhteisö) | lukuisia | kaikki | ||||||
1996 | Windows CE | Windows | Microsoft | x86 , MIPS , ARM | älypuhelin , henkilökohtaiset avustajat, teolliset ohjaimet | ||||||
1996 | RTX | Intervalzero | x86 , x64 | teollisuuden tietokoneet | |||||||
1999 | Mac-käyttöjärjestelmän kymmenes versio | Unix | Omena | x86 , PowerPC kanssa Apple | henkilökohtaiset tietokoneet, palvelimet, työasema | ||||||
1999 | BlackBerry-käyttöjärjestelmä | Tutkimus liikkeessä | BlackBerry- matkapuhelimet | älypuhelin | ?? | ?? | |||||
2007 | Android | Unix | Open Handset Alliance -konsortio | Open Handset Alliancen valmistajien tuotteita | älypuhelin , elektroninen tabletti | ?? | ?? | ||||
2007 | ios | Unix | Omena | Apple-laitteet ( iPhone , iPod , iPad ...) | älypuhelin , elektroninen tabletti , digitaalinen musiikkisoitin | ?? | |||||
2007 | Sailfish OS | Unix | Jolla | suomalaisen Jolla- laitteen laitteet | älypuhelin , elektroninen tabletti | ?? |
Vuonna 1985 syntynyt alueella järjestelmien Windows peräisin Microsoftin vuonna 2008 lähes 90% henkilökohtaiset tietokoneet, mikä asettaa sen tilanteeseen monopolin myös suurelle yleisölle. Vuonna 2008 sen markkinaosuus laski alle 90 prosentin ensimmäistä kertaa 15 vuoden aikana. Sitten älypuhelinten markkinoiden erittäin nopean kasvun ja Microsoftin viiveen näillä markkinoilla seurauksena sen henkilökohtaisten laitteiden markkinaosuus nousi 95 prosentista vuonna 2005 20 prosenttiin vuonna 2013.
Vuonna 1969 aloitetulla Unix-käyttöjärjestelmien perheellä on yli 25 jäsentä. GNU / Linux , BSD ja Mac OS X ovat suosituimpia käyttöjärjestelmiä Unix-perheessä tänään.
Windows- perhe varustaa nyt 38% palvelimista ja Unix- perhe 31%, joista noin puolet GNU / Linuxilla . Unix-perhe ylläpitää 60% maailman verkkosivustoista . GNU / Linux- perhe käyttää 100% maailman 500 supertietokoneesta . SisäänToukokuu 2019, Unix-perhe käyttää yli 98% älypuhelimista .
Vuonna 1990 syntynyt Symbian OS oli matkapuhelinten ja henkilökohtaisten avustajien suosituin käyttöjärjestelmä vuonna 2007 , ja sen markkinaosuus oli 67%.
Vuonna 2012 neljä käyttöjärjestelmissä Android alkaen Google , Symbian , iOS alkaen Apple ja Blackberry alkaen Research In Motion yhteenlaskettu osuus 95% älypuhelinten markkinoilla . Suosituin Android (75%) on nousussa, kun taas muut ovat laskussa. Symbianin markkinaosuus on vain 2,3%.
Kuten tabletteja, iOS mistä Apple oli ensimmäinen laajassa jakelussa käyttöjärjestelmän yli 80%: n markkinaosuus vuonna 2010. Kolme vuotta myöhemmin, sen markkinaosuus on 20% ja Android on yli 56%.
Suurin osa palvelimista ja supertietokoneista on varustettu UNIX- tuoteperheen käyttöjärjestelmillä .
Suurin osa markkinoilla olevista sovellusohjelmistoista on rakennettu toimimaan tietyn käyttöjärjestelmän tai tietyn perheen kanssa, ja käyttöjärjestelmä on rakennettu toimimaan tietyn koneiden kanssa. Ostajalle koneperheen valinta rajoittaa käyttöjärjestelmän valintaa, mikä itse rajoittaa sovellusohjelmistojen valintaa.
Jokainen käyttöjärjestelmä on rakennettu toimimaan tiettyjen tietokoneverkkojen mukaan sen sisältämästä ohjelmavalikoimasta riippuen. Ostajalle, jolla on tietokoneverkko (tyypillisesti yritykset ja laitokset), käyttöjärjestelmän valinta riippuu sen soveltuvuudesta ostajan olemassa olevaan verkkoon.
Käyttöjärjestelmän hyödyllisyys käyttäjälle on verrannollinen hänelle tarjotun sovellusohjelmiston määrään . Käyttöjärjestelmän suuri suosio houkuttelee sovellusohjelmistojen julkaisijoita, mikä lisää sen suosiota ( verkkovaikutus ). Tämä ilmiö asettaa markkinat monopolitilanteille .
Apple , Sun Microsystems ja Silicon Graphics ovat tuotemerkkejä, jotka valmistavat tietokonelaitteistoja ja kehittävät käyttöjärjestelmiä omille laitteilleen. Joitakin käyttöjärjestelmiä, kuten Microsoft Windows ja Android , myydään tietokonelaitteistojen kanssa valmistajien välisillä sopimuksilla.
Käyttöjärjestelmän yhteensopivuus on sen kyky käyttää toisen sijasta, erityisesti toisen sovellusohjelmiston ajamisessa. Käyttöjärjestelmän sanotaan olevan "yhteensopiva" toisen kanssa. Lähde-tason yhteensopivuus on kyky käyttöjärjestelmän A ajaa sovellus ohjelmisto luotu B jälkeen kootaan ohjelmiston lähdekoodi koneen A. Ja binary yhteensopivuus on kyky käyttöjärjestelmän A ajaa sovellus ohjelmisto luotu B on, tarvitsematta koota sitä uudelleen.
Yhteentoimivuus on kyky useita järjestelmiä voidaan käyttää yhdessä, esimerkiksi yhdessä laitteessa tai tietokoneen verkon .
Yhteensopivuuden takaamiseksi kahdella käyttöjärjestelmällä on oltava yhteiset kohdat, erityisesti ohjelmointirajapinnassa. Binaarinen yhteensopivuus on mahdollista vain kahden saman prosessoriperheen kanssa toimivan käyttöjärjestelmän välillä.
Kustantajat takaavat käyttöjärjestelmien yhteensopivuuden ja yhteentoimivuuden sovittamalla tuotteensa alan standardien ja yleisesti saatavilla olevien tekniikoiden kanssa.
Vuonna 1969 luotu Unix- käyttöjärjestelmä on toiminut innoittajana koko käyttöjärjestelmien perheelle . Kilpailupeli, joka oli erittäin innokas 1980-luvulla, sai Unix-perheen eri jäsenet muuttamaan pois ja menettämään yhteensopivuutensa keskenään. Standardiryhmät, kuten Open Group, ovat tutkineet ongelmaa ja julkaisseet standardit, jotka varmistavat yhteensopivuuden koko Unix-perheessä.
Vuosina 1995–2007 Microsoft , joka oli Windows- käyttöjärjestelmäsarjan julkaisija, joutui useiden oikeusjuttujen kohteeksi kilpailua ja yhteentoimivuutta vahingoittavista kilpailunvastaisista käytännöistä . Yhdysvaltojen oikeusministeriö on tuominnut yrityksen Shermanin kilpailulain rikkomisesta sekä Euroopan komissio kilpailusopimusten rikkomisesta Euroopan unionissa .
Popularisoinnin ja internetin 1990-luvulla auttoi parantamaan yhteentoimivuutta käyttöjärjestelmien välillä.
Unix-sota ja avoin ryhmäUnix- käyttöjärjestelmän on kehittänyt American Telephone & Telegraph (AT&T). Vuoteen 1975 asti Yhdysvaltojen liittovaltion kanssa tehty sopimus kielsi häntä markkinoimasta Unixia, koska sillä oli puhelintoiminnan monopoli Yhdysvalloissa, joten käyttöjärjestelmän lähdekoodi oli julkinen. Mutta vuonna 1975 tätä monopolia vastaan hyökättiin oikeudessa, ja vuonna 1982 yhtiö hajotettiin oikeuden määräyksellä. AT & T, syntynyt hajanaisuudesta AT & T Corporationin liiketoiminta, pääsi vihdoin kaupallistaa Unix insinöörien jätti seurassa lähdekoodin varten version 7 ( avoin ) johtavan UNIX System V . Samaan aikaan muut julkaisijat saivat inspiraation versiosta 7 luomaan Unix-järjestelmiä, erityisesti Berkeleyn yliopisto , Berkeley Software Distributionilla (BSD, 1979). Sitten nämä toimivat inspiraationa muille käyttöjärjestelmille ja niin edelleen. Vuonna 2009 Unix-perhe koostui yli 25 käyttöjärjestelmästä.
Kilpailupeli on saanut jokaisen julkaisijan lisäämään omia parannuksia ja ominaisuuksia käyttöjärjestelmäänsä, joka on optimoitu tietylle laitteistolle. Tämä sai Unix-perheen eri jäsenet muuttamaan pois ja menettämään yhteensopivuutensa keskenään.
Vuonna 1987 pyrkiessään yhdistämään Unix-perheen, AT&T teki sopimuksen Sun Microsystemsin (johtava BSD-pohjaisten käyttöjärjestelmien toimittaja) kanssa. Muut toimittajat, jotka eivät näe tätä sopimusta hyvällä silmällä, luovat säätiön Open Software Foundation (OSF). Samaan aikaan Open Group , standardikonsortio, julkaisee standardit Unix-perheen käyttöjärjestelmille. Nämä kaksi laitosta on nyt yhdistetty.
POSIX on IEEE 1003 -standardien nimi , joka Open Group -ryhmään kuuluva standardipaketti aloitettiin vuonna 1988 ja liittyy ohjelmointirajapintaan. Käyttöjärjestelmän yhteensopivuus tämän standardin kanssa varmistaa yhteensopivuuden lähdetasolla. Vuonna 2009 monet käyttöjärjestelmät noudattivat tätä standardia, myös Unix-perheen ulkopuolella.
POSIX kuuluu Single Unix Specification , standardi julkaistiin vuonna 1994 Open Group , joka kattaa tiedostojärjestelmä, apuohjelma, ja 1742 ohjelmointirajapinta toimintoja . Nimi "Unix" kuuluu avoimeen ryhmään, ja kaikkien käyttöjärjestelmien on oltava yhden Unix-määrityksen mukaisia, jotta ne voidaan tunnistaa osana Unix-perhettä.
Microsoft ja kilpailuVuonna 1995 Yhdysvaltojen oikeusministeriö kieltää Microsoftin Sherman Antitrust Act - Yhdysvaltojen laki määräävän aseman väärinkäytön estämiseksi - Microsoftilta tietyiltä kilpailun kannalta haitallisilta käytännöiltä. Kaksi vuotta myöhemmin aloitetaan oikeusjuttu vuoden 1995 kieltojen noudattamatta jättämisestä: Microsoft saa oikeudenkäynnin mitätöidyksi väitteellä, jonka mukaan "oikeudenmukaisuudella ei ole mahdollisuutta arvioida korkean tuotteen suunnittelun ansioita. Tekniikka (sic) ” .
Vuosien 1999 ja 2001 välillä käynnistettiin tutkimus Microsoftin kannasta. Tuomarit Thomas Jacksonin ja Richard Posnerin tekemässä tutkimuksessa todetaan, että Microsoft käyttää väärin monopoliasemaansa suosien suosimiseksi verkkoselaimien liittyvillä markkinoilla , käytännöillä, jotka vahingoittavat kilpailijoita, haittaavat niiden syntymistä ja haittaavat innovaatioita. Yhtiö pääsi kapeasti jakautumisesta ja joutui julkaisemaan teknologioidensa eritelmät, erityisesti ohjelmointirajapinnat ja verkkoprotokollat, yhteentoimivuuden ja kilpailun säilyttämiseksi.
Myöhemmin, vuonna 2007, Euroopan komissio tuomitsi Microsoftin lähes 500 miljoonan euron sakkoon EY: n perustamissopimuksen 82 artiklan ja ETA-sopimuksen 54 artiklan (kilpailuoikeuteen ja määräävän markkina-aseman väärinkäyttöön liittyvät tekstit ) rikkomisesta. kieltäytyessään julkaisemasta yhtä sen teknisistä eritelmistä kilpailijalle Sun Microsystems . Euroopan komission mukaan Microsoftin toimet heikentävät käyttöjärjestelmien yhteentoimivuutta ja vaikuttavat haitallisesti kilpailuun.
TietokoneverkotJokaisessa käyttöjärjestelmässä on joukko verkkoprotokolliin liittyviä ohjelmia . Paletin koostumus riippuu editorin valinnasta ja vaihtelee käyttöjärjestelmittäin. Kaksi tietokonetta voi kuitenkin olla yhteydessä toisiinsa vain, jos he käyttävät samoja protokollia.
Internetin suosio 1990-luvulla sai monet myyjät sisällyttämään TCP / IP- protokolliin (Internet-protokollat) liittyviä ohjelmia käyttöjärjestelmiinsä , mikä paransi käyttöjärjestelmien yhteentoimivuutta.