10. Siirräntäjärjestelmät

Slides:



Advertisements
Samankaltaiset esitykset
Käyttöjärjestelmien perustehtävät
Advertisements

11. Siirräntäjärjestelmä ja syöttö- ja tulostuslaitteet
Synkronointi Yksi tärkeimmistä rinnakkaisuuteen liittyvistä asioista. semaforit tapahtumalaskurit monitorit.
Tietokoneen rakenne Stallings, Luku 1
Windows NT Mika Purmonen
Siirräntäjärjestelmät. 2 w Siirräntäjärjestelmä Tiedostojärjestelmä ja siirräntä keskusmuistin ja oheislaitteiden välillä w Voidaan käsitellä hierarkkisina.
2 - 1 Rio syksy 2004 OSA I: Yhteisten muuttujien käyttö Prosessit samassa koneessa.
1 9. Muistinhallinta l Moniajojärjestelmässä keskusmuisti on jaettu usean prosessin kesken l => ohjelman paikka muistissa ei ole kiinteä, vaan koodi on.
Kuinka niitä käsitellään
Rinnakkaisuus Järjestelmässä, jossa voi olla useita prosesseja rinnakkain suorituksessa voi tulla tilanteita, joissa prosessien suoritusta täytyy kontrolloida.
KJ-I S2003 / Auvo Häkkinen, CT50A2601 / Heikki Kälviainen7 - 1 SIIRRÄNTÄ Stallings, Luku Käyttöjärjestelmät.
Kelan kuntoutusraha - toimeentuloturva kuntoutuksen aikana Anne Flak suunnittelija.
KOKEESEEN KERTAAMINEN. ENNEN LUKEMISTA  Herätä kiinnostuksesi:  Mieti, mikä sinua kiinnostaa luettavassa  Mihin tarvitset tietoa, jota olet ryhtymässä.
Ubuntu - peruskäyttö Seuraavassa läpikäydään Ubuntun peruskäyttöä: Perustoiminnot Sisäänkirjautuminen Työpöytä Uloskirjautuminen Lähteinä on käytettu Ubuntu.
Pilkku Kotilainen, Liedes, Luttinen, Meriläinen.  Pääsääntönä on, että virkkeen lauseet erotetaan toisistaan yleensä pilkulla.  Päälause erotetaan sivulauseesta.
EXAM-pilottikäytön kokemuksia TTY:llä Marjut Anderson.
Linux työpöydällä -kurssi. Kansiohierarkia ● Toisin kuin Windowsissa, Linuxissa (ja muissa POSIX-pohjaisissa järjestelmissä) ei ole C:, D: jne... asemia.
1 Työtapaturmista ilmoittaminen 2010 Riikka-Liisa Haapanen
© COACH 1.jakso: MINÄ JA JOHTAMISTYÖ Tampere Vuorovaikutus oppisopimustarkastajan työssä ”Millä työkaluilla?”
VIRTA-julkaisutietopalvelun pilotointi
Digitaalisen yo-kokeen ohjeistus
Yleistajuisemman artikkelin kirjoittaminen
Kuinka niitä käsitellään
Tavoitteena poistaa työelämän hukkia (työelämän hukkaa)
8. Näppäimistöltä lukeminen
Siirtohaut Opintopolussa keväällä 2016
Psykologian 2. kurssi ”Miten minusta tuli minä?”
Konferenssien käsittely
Tervetuloa Innokylään
TIETOTURVA.
Jatkumo TIES465 – TVT:n pedagogisen tuen kurssi ->
Viitanen Kimmo 2016.
Ylläpito Kaikki ohjelmistoon sen julkistamisen jälkeen kohdistuvat muutostoimenpiteet jopa 70-80% ohjelmiston elinkaarenaikaisista kehityskustannuksista.
Oppilaitoksen nimi Päivämäärä
8. Näppäimistöltä lukeminen
Tiedon hallinnan viitearkkitehtuurin osa-alueet
Kuinka niitä käsitellään
JavaScriptin perusteet
Istuntojen hallinta PHP-sovelluksessa
Kaivosteollisuus ry:n asiakirjat
Vastavalmistuneen puheenvuoro
ioctl #include <sys/ioctl.h> int ioctl(int d, int request, ...);
näkökulmia toimistotyön organisointiin ja kehittämiseen
9. Järjestelmän ulkoinen muisti
KVTES:n jaksotyöaikauudistus
6. Konekäskyjen suorittaminen
7. Hyvä ohjelmointitapa..
TEHTÄVÄT KIITETTÄVÄ = Keskityin tehtäviin koko ajan. Yritin parhaani. Sain tehtyä kaikki tehtävät. Suurin osa vastauksista oli oikein. Korjasin / täydensin.
PHP Tietokantaohjelmointi 1
Vanhusneuvostojen yhteistyöseminaari
Tietokoneen toiminta (2 ov)
Tietokoneen toiminta (2 ov)
GDPR:n hyvää syksyn alkua
8. Ohjelman toteutus järjestelmässä
10. Siirräntäjärjestelmät
Tietokoneen toiminta (2 ov = 4 op)
2. TTK-91 –tietokone ja sen simulaattori
2. TTK-91 –tietokone 2.0 Mikä TTK-91? Ja mitä hyötyä siitä on?
9. Järjestelmän ulkoinen muisti
Pedagoginen ajatuskoe
3. TTK-91-käskykanta Symbolisen konekielen tavalliset käskyt
Kurssin tavoitteet Miksi? Keskeiset asiat
10. Siirräntäjärjestelmät
TIETO JA TIETOKONEOHJELMA
3. TTK-91-käskykanta Symbolisen konekielen tavalliset käskyt
Tieto Edu Hoitoajat Tieto Education Finland.
10. Siirräntäjärjestelmät
Dynamic Reporting (DR) -raporttien teon parhaat käytännöt
IPPO työkalu uuden opetussuunnitelman mukaiseen toimintaan
Varhaiskasvatusjärjestelmän laajennus Haapavesi ja Siikalatva
Esityksen transkriptio:

10. Siirräntäjärjestelmät Laitteiden liittäminen järjestelmään Siirrännän hierarkia Muistiinkuvattu I/O DMA-siirto I/O-pyyntöjen käsittely 18/09/2018 Liisa Marttinen kevät 2005

Tietokonejärjestelmä Keskusyksikkö (CPU) prosessori eli suoritin keskusmuisti väylät ohjaimet oheislaitteet

Laiteohjain (I/O Moduuli) suoritin käyttäjäprosessi Muisti laiteajuri KJ-prosessi, (tai aliohjelma?) väylä data c/s laiteohjain laite laite laiteohjainprosessi (device controller, device controller process)

Laitteiden käytön toteutus Käyttäjäohjelma kutsuu käyttöjärjestelmän laiteajuria tekemään I/O:n. Laiteajuri suoritetaan samalla suorittimella kuin käyttäjäohjelmakin. Laiteajuri ohjaa laitteen toimintaa laitteen laiteohjaimella olevien kontrollirekisterien (muistialue ’c’) avulla Laiteajuri voi lukea laitteen tilatietoa laiteohjaimella olevien statusrekisterien (muistialue ’s’) avulla Laiteajuri voi lukea (kirjoittaa) laitteen lukemaa (laitteelle kirjoitettavaa) tietoa laiteohjaimella olevien datarekistereiden (muistialue’data’) avulla Kontrolli-, status- ja datarekisteri kolmikko muodostaa ”I/O-portin” suorittimen näkökulmasta ks. laiteohjainkuva (ed. kalvo)

Siirrännän hierarkia sovellusohjelmataso käyttöjärjestelmätaso loogisia kokonaisuuksia, tietueita ja tiedostoja ohjelman sisäisiä nimiä Readln (File1, X) Open (Tdsto, RW) käyttöjärjestelmätaso laitteisto 18/09/2018 Liisa Marttinen kevät 2005

käyttöjärjestelmätaso sovellusohjelmataso käyttöjärjestelmätaso rutiinit, jotka toteuttavat ja valvovat siirräntää laiteriippumaton siirräntä sovellukselle yhtenäinen tapa käyttää kaikkia siirräntäpalveluita laiteriippuva siirräntä laitteiden todelliseen käyttöön liittyvä ohjausohjelmisto koodattu laiteajureihin laitteisto

käyttöjärjestelmätaso laitteisto sovellusohjelmataso käyttöjärjestelmätaso laitteisto siirräntä voidaan toteuttaa kokonaan prosessorin valvonnassa ei hyödynnetä rinnakkaisuutta laiteohjain (siirräntään erikoistunut prosessori) huolehtii itsenäisesti siirrännästä prosessorin ja ohjainten välinen kommunikointi 18/09/2018 Liisa Marttinen kevät 2005

laiteriippumaton taso SIIRRÄNNÄN HIERARKIA muuttujat SOVELLUS laiteriippumaton taso KÄYTTÖJÄRJESTELMÄ keskeytys laiteajurit LAITEOHJAIMET tulostus syöttö 18/09/2018 Liisa Marttinen kevät 2005

laitekuvaaja yksi kutakin laitetyyppiä varten talletettavat tiedot riippuvat laitteesta laitteen yksilöivä tunnus (väyläosoite) ohjeet laitteen käytöstä urien, sektorien ja levypintojen määrä, lohkon koko viitteet näppäimistön merkinmuunnostauluihin laitteen tilatietoa varattu/vapaa/rikki laitteeseen liittyvät semaforit viitteet jonottaviin palvelupyyntöihin viite laitetta käyttävän prosessin kuvaajaan

laiteriippumattoman siirrännän tehtäviä loogisesta tiedostonimestä => käytettävän laitteen tyyppi pitää kirjaa levytilan vapaista ja varatuista alueista siirrännän puskurointi (levylohko) luku/kirjoituskohdan ylläpito tarvittaessa käynnistää fyysisen siirrännän antaa laiteajurille tehtävän 18/09/2018 Liisa Marttinen kevät 2005

laiteajurin tehtäviä tehtävät riippuvat laitteesta muodostaa parametrien ja laitekuvaajan perusteella laitetta ohjaavat käskyt esim. levylohkonumeroiden muuttaminen levypinnan, uran ja sektorin numeroiksi levypyyntöjen optimointi ohjaimella tehtävän fyysisen siirrännän käynnistys siirrännän kirjanpito siirron oikeellisuuden tarkistukset ja virheiden korjausyritykset 18/09/2018 Liisa Marttinen kevät 2005

AJURI- PROSESSI MUISTI LEVYOHJAIN laiterekisterit -data -ohjaus -ok MUISTIINKUVATTU I/O: siirrettävä tieto + ohjaustiedot keskusmuistiin ‘kommunikointialueelle’ LEVY

PROSESSORI MUISTI LEVYOHJAIN puskuri osoite lkm DMA-SIIRTO: ohjain siirtää itsenäisesti tietoa levyltä keskusmuistiin LEVY

I/O-pyyntöjen käsittely sovellusprosessi sovellusprosessi käsittelee muuttujia, tietueita, tiedostoja,.. käyttää kirjastorutiineja Readln(File1,X) Open (TdstoX,RW) oheislaitteet sovellukselle erikoistiedostoja käyttöjärjestelmä laiteohjain 18/09/2018 Liisa Marttinen kevät 2005

Käyttöjärjestelmä Laiteohjain laiteriippumaton taso laiteajurit kaikille laitteille yhteiset toiminnot laiteajurit jokaiselle laitteelle oma ajuri huolehtii kunkin laitteen erityispiirteistä Laiteohjain suorittaa fyysisen siirron laitteen ja keskusmuistin välillä 18/09/2018 Liisa Marttinen kevät 2005

KÄYTTÖJÄRJESTELMÄ laite- ajuri 1 laiteriippumaton taso laite- ajuri 2 Sovellus DATA- ALUE laiteriippumaton taso laite- ajuri 2 laite- ajuri 3 Sovellus DATA- ALUE ... laite- ajuri n lohkopuskurit 18/09/2018 Liisa Marttinen kevät 2005

Laite- Sovellus riippu- maton taso data- alue Laite- ajuri Laite- Laiteriippumaton taso valmistelee ja käynnistää siirron ja jää odottamaan siirron valmistumista Laite- riippu- maton taso Sovellus data- alue Laiteajuri käynnistää pyydettäessä fyysisen I/O:n ja jää odottamaan siirron valmistumista siirtopyyntö aiheuttaa keskeytyksen ja vie prosessin WAIT-jonoon siirron valmistu- minen vie prosessin READY-jonoon ja aikanaan suoritukseen Laite- ajuri Laiteohjain suorittaa pyydetyn siirron Laite- ohjain Lohkopuskurit Käyttöjärjestelmä data laitteella 18/09/2018 Liisa Marttinen kevät 2005

Esim. tiedostonlukupyyntö Read(tiedostonro, paljonko, minne) Esim. luetaan tiedostosta nro 2 100 tavua muistipaikkaan 200 = muistialueelle Taulu[0,99], joka alkaa muistipaikasta 200 Read (2, 100, 200) 18/09/2018 Liisa Marttinen kevät 2005

Käyttöjärjestelmän toiminta lukupyynnön yhteydessä laiteriippumaton taso suorittaa kaikki siirräntään liittyvät yleiset toiminnot selvittää mikä laite on kyseessä määrittää mikä levylohko on kyseessä tutkii, onko siirräntä yleensä edes tarpeen luettava tieto jo valmiina lohkopuskurissa kirjoitettavaa tietoa ei ole lainkaan muutettu tarvittaessa käynnistää siirrännän ja jää odottamaan sen valmistumista eri laitteita varten omat laiteajurit 18/09/2018 Liisa Marttinen kevät 2005

käyttöjärjestelmä: laiteriippumaton taso tutkii mikä laite on kyseessä prosessin kuvaaja PCB käytettävä laiteajuri; lohkon koko tiedostokuvaajataulu 0 1 2 3 4 ... laitekuvaajat nimi, laitenumero =‘levynro’ uid, gid rwx-bitit r/w-positio lohkonumerot avoimet tiedostot -taulu ….

käyttöjärjestelmä: laiteriippumaton taso lukupositio ja lohkon koko => monesko tiedoston lohko => lohko 0 lukupositio = 0 => tiedoston alku etsi numeron perusteella lohkopuskurista jo löytyy, luetaan sieltä jos ei löydy varaudutaan levylukuun lohkoa 0 ei löydy lohkopuskurista lohkopuskureita lohko 6 lohko 10 lohko 3

käyttöjärjestelmä: laiteriippumaton taso levyltä lukeminen varataan lohkolle puskuri muodostetaan ko. laitteen ajuria varten pyyntöpaketti (lue, puskurin osoite, lohkonumero) viedään paketti ajurin jonoon lohkopuskureita lohko 6 lohko 3 varataan lohkolle 0 puskuri 1 18/09/2018 Liisa Marttinen kevät 2005

Down (Pyyntö_palveltu * jää odottamaan levyn laiteajurin työjono lue, puskurinro (=1) lohkonro (=0) Laiteriippumaton taso herättää laiteajurin ja jää odottamaan siirron valmistumista Up(Pyyntö_odottaa) *herätä ajuri Down (Pyyntö_palveltu * jää odottamaan 18/09/2018 Liisa Marttinen kevät 2005

Laiteajuri toista Down(Pyyntö_odottaa) Ota pyyntöpaketti jonosta muuta se laiteohjaimen ymmärtämään muotoon; käynnistä fyysinen I/O; Down(Siirto_valmis) jos virhe, niin ilmoita ylöspäin Up(Pyyntö_palveltu) tuhoa palvelupyyntöpaketti ikuisesti

Laiteohjaimen ymmärtämään muotoon Laske laitekuvaajassa olevan tiedon perusteella tiedon sijainti levyllä levypinta, ura, sektori ja siirrettävien sektoreiden määrä ilmoita laiteohjaimelle mistä = levyosoite minne = lohkopuskurin osoite paljonko = lohkon koko (esim. levyn sektoreina) operaatio = lue

Laiteohjain Tutki tehtävät operaatiot laiterekistereistä prosessorin ja ohjaimen välinen kommunikointialue mistä = levyosoite minne = lohkopuskurin osoite paljonko = lohkon koko operaatio = lue Tee fyysinen DMA-siirto ensin laitteelta omaan puskuriin ja sieltä vähitellen keskusmuistin lohkopuskuriin Talleta tieto onnistumisesta laiterekisteriin Aiheuta keskeytys

keskeytys ja sen käsittely laitekeskeytys selvitä keskeyttäneen laitteen numero etsi laitteen (=levyn) laitekuvaaja mikä ajuri kyseessä Up(Siirto_valmis) * herättää juuri tätä * siirtoa odottavan * ajurin 18/09/2018 Liisa Marttinen kevät 2005