Arto Salminen
|
|
- Tuomo Laaksonen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 7. Luento: Ytimet Arto Salminen
2 Agenda Johdanto Perusydintyypit Pollaavat Keskeyttävät Prosessiydin Esimerkki: Linux-ydin Valmiina saatavista ytimistä Lyhyesti virtualisoinnista Yhteenveto
3 Johdanto Käyttöjärjestelmän ytimen päätehtävät: Keskeytysten käsittely Oheislaitteiden ohjaus Prosessien hallinta (Muistinhallinta jos monimutkaisempi kokonaisuus) Pienet ytimet ilman käyttöjärjestelmän omaisia toimintoja Sovellus ja käyttöjärjestelmätaso sekoittuvat helposti (ja tämä voi olla jopa toivottavaa esim. ajoitukseen liittyvistä syistä!) Ohjelmoija vastaa kaikesta Yleiskäyttöisellä puolella käyttöjärjestelmä tarjoaa perusresurssit Esim. prosessit (kevennettynä säie tai tehtävä tai kevytprosessi)
4 Pollaava ydin Yksinkertaisin mahdollinen ydin, mutta silti varsin käyttökelpoinen monessa yksinkertaisessa laitteessa Alustuksen lisäksi ei keskeytyspalveluita lainkaan (tai vain 1 kello?) Sisäiseltä rakenteeltaan ikuinen silmukka, joka käsittelee laitteita jossain järjestyksessä
5 Koodi (rutiini yleensä) int main() { alusta laitteet; while (1) { testaa ja käsittele laite 1; testaa ja käsittele laite 2; testaa ja käsittele laite 3;. testaa ja käsittele laite n; } }
6 Ominaisuuksista Hyvää: Suoraviivainen ja nopea tehdä vaikka itse tarpeen vaatiessa Sopii pieniin sovelluksiin Ei keskeytyksiä -> Ei poissulkemisongelmaa Huonoa Kaikki toiminnot ehdittävä suorittaa saman syklin aikana (rajoittaa kokoa ja monimutkaisuutta) Järjestelmä mitoitettava pahimman mahdollisen tilanteen mukaan -> Tavallisella kierroksella paljon luppoaikaa Pitkään suoritettavat toiminnot voidaan joutua osittamaan -> Lisää monimutkaisuutta Olennaista: Laitteen käsittely ja tiedon käsittely tapahtuvat yhtä aikaa!
7 Ositusesimerkki void palvele() { static int tilamuuttuja = 0; switch (tilamuuttuja) { case 0: if (laitteella töitä) { aloita työt; tilamuuttuja = 1; } break; case 1: jatka käsittelyä; tilamuuttuja = 2; break; case 2: tee työt loppuun; tilamuuttuja = 0; } // switch } // palvele break; default: virhe;
8 Keskeytysohjatut ytimet Melko yksinkertainen ydin, muttei vedä siinä suhteessa vertoja pollaavalle ytimelle Ikuinen odotussilmukka, jonka keskeytyspalvelu aina välillä keskeyttää Keskeytykset sidotaan sopiviin keskeytyskäsittelijöihin, ja käsittelijät suorittavat varsinaiset operaatiot Odottaessa voidaan suorittaa jotain hyödyllistä (joskus käytetään termiä taustaydinprosessi, vaikka järjestelmässä ei varsinaisia prosesseja olekaan)
9 Koodi (tulostus kirjoittimelle) int main() { alusta laitteet; while (1) { if (uusia merkkejä) { tulkitse niin pitkälle kuin mahdollista } if (kirjoitettava rivi valmis) { aloita rivin kirjoitus/salli kellokeskeytykset } } } void sarjaliityntä() {siirrä merkki käsiteltävien puskuriin} void kellokeskeytys() { kirjoita seuraava merkki; siirrä kirjoituspäätä }
10 Ominaisuuksista Hyvää Yksinkertainen ja nopea toteuttaa itse tarvittaessa Kieltämällä keskeytykset aina keskeytyskäsittelyn ajaksi päästään eroon poissulkemisongelmasta (taustaprosessin kanssa niitä voi yhä tulla!) Huonoa Ositus ei onnistu keskeytyksien käsittelyn suhteen; taustaprosessin kanssa näin voi toimia Ei sovi läheskään kaikkiin järjestelmiin, sillä keskeytystä ei aina tule koskaan (näyttö? mittausjärjestelmä?) Monimutkaistuu jos keskeytyksillä on eri prioriteetit, ja keskeytyksiä ei voi kieltää
11 Prosessiydin Yksinkertaisenakin selvästi edellisiä monimutkaisempi Sovellus toteutettu prosesseissa Keskeytyspalvelu (käytännössä laiteajurit) huolehtivat kommunikoinnista oheislaitteiden kanssa Käytännössä nykyiset (pienet) prosessiytimet ovat hämmästyttävän keveitä ja sopivat siksi myös pienien sulautettujen järjestelmien toteuttamiseen Ero aiempiin ytimiin: Sovelluslogiikka prosesseissa Laiteohjaus ajureissa Tavallisesti 1 prosessi joka ei tee mitään (taustasäie)
12 Koodi int main () { alusta laitteet; luo prosessit; käynnistä skeduleri; } while (1) { odota, että joku keskeyttää ns. idle-prosessi } prosessi 1 { prosessin 1 käskyt; } prosessi n { prosessin n käskyt; }
13 Arviointi Hyvää Prosesseissa voidaan keskittyä ratkaisemaan sovelluskohtaisia ongelmia Voidaan mitoittaa keskimääräisen kuorman mukaan (paitsi jos reaaliaikaisuus halutaan taata) Loogisia toimintoja voi olla useita ajossa yhtä aikaa; prioriteettien perusteella voidaan valita niistä seuraavaksi suoritettava Huonoa Selvästi monimutkaisempi (sekä toteuttaa että myös debugata!) Poissulkemis- ja muut rinnakkaisuuden ongelmat
14 Yhteenveto erilaisista ytimistä Ytimen tyyppi Pollaava ydin Kietoutuneet toisiinsa Ikuinen silmukka Keskeyttävä ydin Kietoutuneet toisiinsa Keskeytykset Ydin vs. sovelluslogiikka Ohjausrakenne Prosessiydin Erotettu toisistaan Laiteohjaus ytimessä, ydin kontrolloi sovelluksia
15 Yhteenveto erilaisista ytimistä jatkuu Ytimen tyyppi Edut Haitat Pollaava ydin Keskeyttävä ydin Prosessiydin Helppo tehdä itse tarpeen vaatiessa Helppo tehdä itse tarpeen vaatiessa; erottaa taustasäikeen muusta joten mukana joustoa Selkeä ero ytimen ja sovellusten välillä Joustamaton Vaikka pollaavaa joustavampi edelleen joustamaton Voi olla resurssisyöppö; laitteisto monimutkaistuu myös
16 Taustasäikeestä (prosessiydin, keskeytysohjattu ydin) Tarkoitus yksinkertaistaa skeduleria Pienin mahdollinen prioriteetti -> Ajossa silloin, kun ei ole mitään muuta tehtävää Yleinen käyttö: Kerää tietoa järjestelmän toiminnasta Ongelma: Luotettavaa tietoa ei saatavilla silloin kun sitä eniten tarvittaisiin (huippukuormitustilanteet) Ongelma: Monesti dokumentoimatonta tietoa järjestelmästä kumuloituu juuri taustasäikeeseen, ja sille alkaa syntyä oma rooli järjestelmässä (ratkaisu: uusi prosessi, jolla on vähän korkeampi prioriteetti?)
17 Monoliittinen vastaan mikroydin Monoliittisessä ytimessä lähes kaikki ytimen toiminnot on sisällytetty ytimen hoidettavaksi Jaetut tietorakenteet mahdollisia Ytimen sisäinen poissulkeminen kun käsitellään jaettuja tietorakenteita Mikroytimessä toimintoja on pyritty hajauttamaan eri prosesseihin, jolloin ytimestä saadaan pienempi ja yksinkertaisempi Kommunikointi sanomien välityksellä; ei jaettuja tietorakenteita (puhtaimmassa muodossa) Vikasietoisuus voi kasvaa (jos joku prosessi ajautuu ongelmiin, se voidaan käynnistää uudelleen ajamatta koko ydintä alas)
18 Monolithic vs microkernel
19 QNX, Minix
20 Windows NT / 2000
21 Entäpä reaaliaika? Jos ohjelmoija vastaa kaikesta, niin myös reaaliajasta sitä tarvittaessa Korkeaprioriteettisin keskeytys palvelee reaaliaikatoiminnot Kokonaan reaaliaikainen ydin, jolloin se lupaa huolehtia esim. skedulointialgoritmillaan reaaliajasta (tietyin oletuksin!) Yleiskäyttöisessä ympäristössä erilaisia kikkoja Esim. 2 ydintä, joista toinen reaaliaikainen ja toinen yleiskäyttöinen Kommunikointi yleensä sallittua: Reaaliaikainen KJ voi nähdä yleiskäyttöisen KJ:n esim. sovellusprosessina, ja yleiskäyttöinen KJ puolestaan reaaliaikaisen KJ:n esim. laiteajurina
22 Yleensä reaaliaikaan liitettäviä vaatimuksia Irroittava skedulointi Prioriteettimekanismit + tason nosto kriittisellä alueella Ennustettava synkronointi Tunnetut latenssit Tehtävän vaihto Keskeytykset Keskeytyksen jälkeinen vuorontaminen
23 Valmiit ytimet Käytännössä aina (reaaliaikaisia) prosessiytimiä Tyypillisiä piirteitä: Pieni koko (mahduttava kokonaan ROM:iin) Prioriteetteihin perustuva skedulointi Ajetaan vain testattuja ohjelmia; ei suojauksia (nopeuttaa ympäristön vaihtoa ja prosessien välistä kommunikointia) Sovellusohjelmat etuoikeutetussa tilassa (KJkutsut, jotka eivät vaadi ympäristön vaihtoa voidaan suorittaa aliohjelmakutsuina ohjelmoidun keskeytyksen sijaan suorituskykysyistä) Mikroydintyyppinen ratkaisu, jossa ydin sisältää vain prosessien hallinnan ja kommunikoinnin tarvitsemat palvelut; laitteiden ohjausta varten on sovellusprosessit
24 Joitakin keskeisiä ominaisuuksia Skaalattavuus Pienimmillään muutamia kilotavuja, isommillaan RT + Unix Laitteistovalikoima Joitakin ytimiä saa lähes mille laitteistolle tahansa, ja joillekin laitteistolle saa lähes minkä ytimen tahansa; olennaiseksi nousemassa oheislaitteet ja niiden ominaisuuksien käyttö (esim. laitteistokiihdytetty grafiikka) Kommunikointi ja poissulkeminen: Yleensä semaforit ja/tai viestinvälitys Korkeamman tason mekanismit harvinaisia (esim. monitorit, Adan rendezvous); toisaalta nämä ovat pikemminkin ohjelmointikielen kuin ytimen rakenteita Verkkoyhteydet yleistymässä (TCP/IP, Bluetooth, WLAN, ) Kustannukset Suoritin (voi vaihdella ympäristön vaatimusten mukaan) Ydin (kertakorvaus, lisenssi per yksikkö) Kehitysympäristö (kertamaksu, lisenssi, joskus jopa ilmainen)
25 Kehitysympäristö Toteutuskieli Yleensä C tai konekieli Muita: PL/M, Ada, Fortran, C++, Java Kehitysympäristönä yleensä PC, kohdelaitteeseen tarvitaan usein ristikäännös Kehitysympäristöllä voi olla vähän käyttäjiä -> Laatu vaihtelee! Tilanne ei paljon helpompi vaikka voisi tehdä suoran käännöksen kehityskoneessa (esim. virtualisoidun ympäristön avulla), sillä laitteistovaatimukset yleensä varsin erilaisia
26 Esimerkki: Linux-ydin Monoliittinen prosessiydin Modulaarisuus sallii ytimen (hallitun) räätälöinnin Ajureiden avulla mahdollista laajentaa ytimen toimintaa tarpeen mukaan Useita yrityksiä, jotka tekevät homman puolestasi, jos olet valmis maksamaan Dev. Drv1 Dev. Drv2 Dev. Drv3 Dev. Drv4 New Funct. Processor/Cache Control Memory Management Process Management File System Interface Networking Stacks Device & I/O Interface Kernel State Information Extended f. Security/Auth.
27 PS3 Linux-ydin Linux kernel can access some devices directly (e.g. USB host controller). Other devices are virtualized by hypervisor and device service is provided via hypervisor call. For example, storage service hypervisor calls are available.
28 EmbinuxTM Sulautettu Linux
29 Paravirtualized Linux on OKL4 (Genode / Motorola QA4) OKL4 virtuaalikone (hypervisor) ajaa Linux ydintä ja RTOSydintä samalla prosessorilla. Lisäksi ohjelma voidaan suorittaa suoraan OKL4-ytimen päällä
30 Joitakin kaupallisia ytimiä C Executive (askeettinen, oikeastaan vain aliohjelmakirjasto) Posix-yhteensopivia (monimutkaisia, oikeastaan melkein kuin yleiskäyttöinen käyttöjärjestelmä) LynxOS PDOS psos+ UniFLEX Sulautettu Linux
31 Posix-yhteensopivuudesta ( Core services Process Creation and Control Signals Floating Point Exceptions Segmentation / Memory Violations Illegal Instructions Bus Errors Timers File and Directory Operations Pipes C Library (Standard C) I/O Port Interface and Control Process Triggers
32 Posix-yhteensopivuudesta ( Real-time extensions Priority Scheduling Real-Time Signals Clocks and Timers Semaphores Message Passing Shared Memory Asynch and Synch I/O Memory Locking Interface
33 Posix-yhteensopivuudesta ( Thread extensions Thread Creation, Control, and Cleanup Thread Scheduling Thread Synchronization Signal Handling
34
35 Lyhyesti virtualisoinnista virtuaalinen ikään kuin todellisen sijaan; täsmällinen määrittely vaikeaa Voidaan soveltaa usealla tasolla, Tässä lähinnä laitteiston virtualisointi; VM joka toimii kuten laitteisto Hypervisorin (VM Monitor, VMM) ohjauksessa full lähes täydellinen virtualisointi; partial vain osa virtualisoidaan Para- - ei laitteiston virtualisointia, mutta osa ohjelmista voidaan eristää (Käyttöjärjestelmän virtualisointi)
36 System vs. process VM Applications Operating system Virtualizing software (VM) Hardware Applications Virtualizing software (VM) Operating system Hardware System virtual machine Process virtual machine
37 Yhteenveto Ytimien erot kulminoituvat siihen, miten ytimen ja sovelluksen toiminnot erotetaan Pollava ydin: Ydin ja sovelluslogiikka kietoutuneet toisiinsa; ohjausrakenne ikuinen silmukka Keskeyttävä ydin: Ydin ja sovelluslogiikka kietoutuneet toisiinsa; ohjausrakenne keskeytykset Prosessiydin: Ydin ja sovelluslogiikka erotettu toisistaan; laiteohjaus ytimessä, sovelluslogiikka prosesseissa Monoliittinen vs. mikroydin Useita valmiina saatavia ytimiä; jos tarvitset johonkin todelliseen laitteeseen ytimen, tutki edes saatavilla olevat vaihtoehdot ennen kuin ryntäät oman toteutuksen kimppuun ( oma kiinnostus + omat harrastukset on eri asia ;-)
38 Sitten jotain ihan muuta: Dynamic C Integrated development environment reduces the time and effort to write real-time software for embedded systems that use a Rabbit microprocessor enabling easy development of a wide range of applications Toteuttaa monet ytimiin liittyvät seikat mielenkiintoisella tavalla ohjelmointikielen tasolla
39 Koodia (ftp://ftp1.digi.com/support/documentation/html/dyncusersmanual/3tutoria.htm) main() { int secs; // seconds counter secs = 0; // initialize counter while (1) { // endless loop // Task 1 will print the seconds elapsed. costate { secs++; // increment counter waitfor( DelayMs(1000) ); // wait one s. printf("%d seconds\n", secs); // print elapsed s. } // Task 2 checks if any keys have been pressed. costate { if (!kbhit() ) abort; // key been pressed? printf(" key pressed = %c\n", getchar() ); } } // end of while loop } // end of main
7. Luento: Ytimet. Tommi Mikkonen,
7. Luento: Ytimet Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Johdanto Perusydintyypit Pollaavat Keskeyttävät Prosessiydin Valmiina saatavista ytimistä Esimerkki: Linux-ydin Yhteenveto Johdanto Käyttöjärjestelmän
LisätiedotOHJ-4301 Sulautettu Ohjelmointi
OHJ-4301 Sulautettu Ohjelmointi (http://www.cs.tut.fi/~sulo/) 5op, to 12-14, TB 109 Arto Salminen, arto.salminen@tut.fi Läpäisyvaatimukset Hyväksytysti suoritetut: Tentti Harjoitustyöt Harjoitustyöt 3
Lisätiedot7. Ytimet. 7.1 Ytimen roolista
Ytimet 121 7. Ytimet Sulautettujen järjestelmien toteuttaminen erilaisten käyttöjärjestelmän ytimien avulla lienee nykyisin tavanomaisin toteutustekniikka. Seuraavassa esittelemme joitakin käyttöjärjestelmän
Lisätiedot4. Luento: Prosessit ja säikeets. Tommi Mikkonen, tommi.mikkonen@tut.fi
4. Luento: Prosessit ja säikeets Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Prosessi Säikeet Keskeytykset Keskeytyskäsittely Käyttöjärjestelmäkutsut Prosessielementti Prosessin hallinta Suunnittelunäkökohtia
LisätiedotKäyttöjärjestelmät: poissulkeminen ja synkronointi
Käyttöjärjestelmät: poissulkeminen ja synkronointi Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet
LisätiedotOHJ-4301 Sulautettu Ohjelmointi
OHJ-4301 Sulautettu Ohjelmointi (http://www.cs.tut.fi/~sulo/) /~sulo/) 5op, to 12-14, 14, TB 109 Tommi Mikkonen, tommi.mikkonen@tut.fi Arto Salminen, arto.salminen@tut.fi Läpäisyvaatimukset Hyväksytysti
LisätiedotPalvelut. Sulautetut järjestelmät Luku 2 Sivu 1 (??) Sulautetut käyttöjärjestelmät
Sulautetut järjestelmät Luku 2 Sivu 1 (??) Palvelut Käyttöjärjestelmän tehtävänä on tarjota ohjelmoijalla erilaisia palveluita Tyypillisin palvelu, jota sulautetut käyttöjärjestelmät tarjoavat on prosessien
LisätiedotKäyttöjärjestelmät: prosessit
Käyttöjärjestelmät: prosessit Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Käyttöjärjestelmä
Lisätiedot6. Luento: Skedulointi eli Vuoronnus. Tommi Mikkonen, tommi.mikkonen@tut.fi
6. Luento: Skedulointi eli Vuoronnus Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Peruskäsitteet Skedulointialgoritmeja Reaaliaikajärjestelmien skedulointi Skeduloituvuuden analysoinnista Yhteenveto Peruskäsitteet
Lisätiedot5. Luento: Rinnakkaisuus ja reaaliaika. Tommi Mikkonen, tommi.mikkonen@tut.fi
5. Luento: Rinnakkaisuus ja reaaliaika Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Perusongelmat Jako prosesseihin Reaaliaika Rinnakkaisuus Rinnakkaisuus tarkoittaa tässä yhteydessä useamman kuin yhden
LisätiedotPertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro1 29.10.2013
Virtualisointi Pertti Pennanen DOKUMENTTI 1 (5) SISÄLLYSLUETTELO Virtualisointi... 2 Virtualisointiohjelmia... 2 Virtualisointitapoja... 2 Verkkovirtualisointi... 2 Pertti Pennanen DOKUMENTTI 2 (5) Virtualisointi
LisätiedotArto Salminen,
4. Luento: Prosessit ja säikeet Arto Salminen, arto.salminen@tut.fi Agenda Prosessi Säikeet Keskeytykset Keskeytyskäsittely Käyttöjärjestelmäkutsut Prosessielementti Prosessin hallinta Suunnittelunäkökohtia
LisätiedotTietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä
Tietojenkäsittelyn perusteet 2 Lisää käyttöjärjestelmistä 2011-02-09 Leena Ikonen 1 Systeemiohjelmat Systeemiohjelmiin kuuluvat Kääntäjät ja tulkit (+debuggerit) Käyttöjärjestelmä Linkittäjät Lataajat
LisätiedotTietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.
Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja John von Neumann ja EDVAC, 1949 TITO-kurssista Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon
LisätiedotSisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä
Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista John von Neumann ja EDVAC, 1949 Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon
LisätiedotLuento 10: Tosiaikakäyttöjärjestelmät
Luento 10: Tosiaikakäyttöjärjestelmät Lähteet: Liu: Real-Time Systems, luku 12, Stankovic & Rajkumar: Real-Time Operating Systems. Real-Time Systems, 28,237-253,2004. Lisäksi kalvosarjassa on kuvia myös
LisätiedotSisältö. Luento 10: Tosiaikakäyttöjärjestelmät. Ominaisuuksia. Arkkitehtuuriratkaisuja. Sulautettu järjestelmä: Useita ohjaavia prosessoreja
Luento 10: Tosiaikakäyttöjärjestelmät Lähteet: Liu: Real-Time Systems, luku 12, Stankovic & Rajkumar: Real-Time Operating Systems. Real-Time Systems, 28,237-253,2004. Lisäksi kalvosarjassa on kuvia myös
LisätiedotKäyttöjärjestelmät II
LUENTO 1 Käyttöjärjestelmät II Kertaus: KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 [Stal05] Kustakin luvusta enemmän tai vähemmän alkuosa Jos jokin asiat tässä tuntuvat hatarilta, niin (a) kysykää ja/tai
LisätiedotLinux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä
Linux 00 Keskeiset piirteet Tux-pingviinin kuva: Larry Ewing, Simon Budig ja Anja Gerwinski Kysymyksiä 1. Mikä Linux on? 2. Kuinka Linux syntyi ja kehittyy? 3. Mitkä ovat Linuxin vahvuudet? 2 1 Linux on
LisätiedotOngelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?
Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön? 2013-2014 Lasse Lensu 2 Systeemiohjelmat ovat tietokoneen laitteistoa lähellä olevia ohjelmia,
LisätiedotKäyttöjärjestelmät. Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi
Käyttöjärjestelmät Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Kurssin sisältö Johdanto, historiaa
Lisätiedot2 Konekieli, aliohjelmat, keskeytykset
ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä
Lisätiedot4. Lausekielinen ohjelmointi 4.1
4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen ja tulkinta. - Kääntäminen,
LisätiedotKäyttöjärjestelmän rakenne
Käyttöjärjestelmän rakenne Tietokonejärjestelmä = Laitteisto + ohjelmisto Sovellus saa laitteiston käyttöönsä kj:n avustuksella CPU ja muisti Oheislaitteet KJ tarjoaa laitteiston käytössä tarvittavat palvelunsa
LisätiedotStallings, Luku 4.1. KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1. KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 12-1
"! $# Stallings, Luku 4.1 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1 %& ()* +,.-0/212321416587912: 12;?5A@ 165 12;
LisätiedotKäyttöjärjestelmät II
LUENTO 1 Käyttöjärjestelmät II Kertaus: : KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 12 [Stal05] Kustakin luvusta enemmän n tai vähemmv hemmän n alkuosa Jos jokin asiat tässt ssä tuntuvat hatarilta, niin
LisätiedotYleiskuva. Käyttöjärjestelmät II. Tietokonejärjestelm. rjestelmä. KJ ja laitteistopiirteet. KJ ja laitteistopiirteitä.
Kertaus: : KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 12 [Stal05] Kustakin luvusta enemmän n tai vähemmv hemmän n alkuosa Jos jokin asiat tässt ssä tuntuvat hatarilta, niin (a) kysykää ja/tai (b) kerratkaa
LisätiedotPikaintro käyttöjärjestelmiin
Tietotekniikan laitos Jyväskylän yliopisto TIES406 Tietotekniikan opintojen aktivointi, luento 17.8.2011 Outline Tietokonelaitteisto 1 Tietokonelaitteisto 2 3 4 Outline Tietokonelaitteisto 1 Tietokonelaitteisto
LisätiedotProsessi perinteisesti
Käyttöjärjestelmät t I Luento 11: SÄIKEETS Stallings, Luku 4.1 Sisält ltöä Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä Säikeen tilat Käyttöjärjestelmän
LisätiedotStallings, Luku 4.1. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH
Käyttöjärjestelmät t I Luento 11: SÄIKEETS Stallings, Luku 4.1 KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 11-1 Sisält ltöä Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden
LisätiedotSisältöä SÄIKEET, SMP
LUENTO 5 Sisältöä SÄIKEET, SMP Stallings, Luku 4 Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä SMP Windowsin säikeet 1 2 Säikeet (multithreading) Prosessi
LisätiedotSecurity server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents
LisätiedotLinux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat
Linux rakenne Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat Linux ydin Ytimen (kernel) päätehtävä on tarjota rajapinta
LisätiedotLuento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus
Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän e eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokone- järjestelmäj ä Käyttäjä Tietokonelaitteisto Oheislaitteet
LisätiedotBackup Exec 3600 Appliance
Backup Exec 3600 Appliance Markku A Suistola Principal Presales Consultant Parempaa varmistusta kaikille! Ohjelmisto Appliance Pilvi Virtuaalisen ja fyysisen ympäristön suojaus 2 Perinteinen ratkaisu usein
LisätiedotRinnakkaisuus. parallel tietokoneissa rinnakkaisia laskentayksiköitä concurrent asioita tapahtuu yhtaikaa. TTY Ohjelmistotekniikka
Rinnakkaisuus parallel tietokoneissa rinnakkaisia laskentayksiköitä concurrent asioita tapahtuu yhtaikaa Rinnakkaisuuden etuja: laskennan nopeutuminen (sarjoittuvat operaatiojonot) ilmaisuvoima (ongelman
LisätiedotSecurity server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes
LisätiedotLuento 1 (verkkoluento 1) Tietokonejärjestelmä
Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä This image cannot currently be displayed.
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Merkintöjen tulkintoja *++Pstack->top = item *Pstack->top++ = item (*Pstack->top)++ *(Pstack++)->top = item *(++Pstack)->top = item Lisää pinon toteutuksia Dynaaminen taulukko
LisätiedotTIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?
Miksi moniprosessorijärjestelmä? Laskentaa voidaan hajauttaa useammille prosessoreille nopeuden, modulaarisuuden ja luotettavuuden vaatimuksesta tai hajauttaminen voi helpottaa ohjelmointia. Voi olla järkevää
LisätiedotConcurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo
Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...
LisätiedotOngelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle,
Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle, sovellusohjelmille ja käyttäjille? 2012-2013 Lasse Lensu
LisätiedotVirtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group
Virtualisoi viisaasti paranna palvelua Iikka Taanila Systems Architect IBM Systems and Technology Group Älykkäämpi IT Web Servers App Servers End Users App Servers App Servers App/DB Server App/DB Servers
LisätiedotKernel (Fig 4.10 [Stal 05]) Operating Systems Examples and Process Management
WEEK 2 Operating Systems Examples and Process Management Microkernels (4.3), SMP (4.2) Examples (2.5 2.8) Process management (Chapter 3) 1 Kernel (Fig 4.10 [Stal 05]) monolithic 2 Syksy 20007, Tiina Niklander
LisätiedotAgenda. Läpäisyvaatimukset Henkilökunta Luennot ja aikataulu Kurssimateriaali Harjoitustyöt Demoharjoitus Tentti ja arvostelu Muuta?
OHJ-4301 Sulautettu Ohjelmointi (http://www.cs.tut.fi/~sulo/) 5op, to 12-14, 14, TB 109 Arto Salminen, arto.salminen@tut.fi Agenda Läpäisyvaatimukset Henkilökunta Luennot ja aikataulu Kurssimateriaali
LisätiedotArto Salminen,
6. Luento: Skedulointi eli Vuoronnus Arto Salminen, arto.salminen@tut.fi Agenda Peruskäsitteet Skedulointialgoritmeja Reaaliaikajärjestelmien skedulointi Skeduloituvuuden analysoinnista Yhteenveto Peruskäsitteet
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 11: Rinnakkaisuus Riku Saikkonen (osa kalvoista on suoraan ei-laajan kurssin luennoista) 25. 4. 2012 Sisältö 1 Rinnakkaisuusmalleja: säie ja prosessi 2
LisätiedotTietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone
ja ylläpito computer = laskija koostuu osista tulostuslaite näyttö, tulostin syöttölaite hiiri, näppäimistö tallennuslaite levy (keskusyksikössä) Keskusyksikkö suoritin prosessori emolevy muisti levy Suoritin
LisätiedotVMwaren keskitetty työasemaratkaisu
VMwaren keskitetty työasemaratkaisu Santeri Stolt Järjestelmäasiantuntija VMware Finland Työasemia virtualisoidaan - nyt By the end of 2010, all new PC deployments will be virtualized. Brian Gammage and
LisätiedotTietokoneen toiminta, K Tavoitteet (4)
Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?
LisätiedotLuento 1 Tietokonejärjestelmän rakenne
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Luento
LisätiedotLiite 1. Projektin tulokset (Semaforit Javassa) Jukka Hyvärinen Aleksanteri Aaltonen
Helsingin Yliopisto, tietojenkäsittelytieteen laitos Rinnakkaisohjelmointi (syksy 2006) Liite 1. Projektin tulokset (Semaforit Javassa) Jukka Hyvärinen Aleksanteri Aaltonen a. Käyttötarkoitus ja sovellusalue
LisätiedotLuento 1 Tietokonejärjestelmän rakenne
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
LisätiedotLuento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotLuento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
LisätiedotAndroid ohjelmointi. Mobiiliohjelmointi 2-3T5245
Android ohjelmointi Mobiiliohjelmointi 2-3T5245 Mikä on Android? Linux kernelin päälle rakennettu, Googlen kehittämä sovelluspino mobiilisovelluksiin Erillinen versio puhelimelle ja taulutietokoneille
LisätiedotIntegrointi. Ohjelmistotekniikka kevät 2003
Integrointi Ohjelmistotekniikka kevät 2003 ERP (Toiminnanohjausjärjestelmä) Myynti Henkilöstö, palkanlaskenta Kirjanpito Myynti Myyjät Extranet Tietovarasto Laskutus, reskontrat Asiakas ERP Asiakasrekisteri
LisätiedotGraafisen käyttöliittymän ohjelmointi Syksy 2013
TIE-11300 Tietotekniikan vaihtuva-alainen kurssi Graafisen käyttöliittymän ohjelmointi Syksy 2013 Luento 10 Rinnakkaisuus käyttöliittymäohjelmoinnissa Juha-Matti Vanhatupa Rinnakkaisuus ja käyttöliittymäohjelmointi
LisätiedotJakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000
Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?
LisätiedotRINNAKKAINEN OHJELMOINTI A,
RINNAKKAINEN OHJELMOINTI 815301A, 18.6.2005 1. Vastaa lyhyesti (2p kustakin): a) Mitkä ovat rinnakkaisen ohjelman oikeellisuuskriteerit? b) Mitä tarkoittaa laiska säikeen luominen? c) Mitä ovat kohtaaminen
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Taulukon edut Taulukon haitat Taulukon haittojen välttäminen Dynaamisesti linkattu lista Linkatun listan solmun määrittelytavat Lineaarisen listan toteutus dynaamisesti linkattuna
LisätiedotSulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä.
Sulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä. On arvioitu, että maailmassa on tällä hetkellä enemmän sulautettuja
Lisätiedot1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotRinnakkaistietokoneet luento S
Rinnakkaistietokoneet luento 5 521475S Silmukalliset ohjelmat Silmukat joissa ei ole riippuvuussyklejä voidaan vektoroida eli suorittaa silmukan vektorointi Jokainen yksittäinen käsky silmukan rungossa
LisätiedotVirtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest).
1 Virtualisoinnin avulla voidaan purkaa suora linkki suoritettavan sovelluksen (tai käyttöjärjestelmän tms.) ja sitä suorittavan laitteiston välillä. Näin saavutetaan joustavuutta laitteiston käytössä.
Lisätiedot11. Javan toistorakenteet 11.1
11. Javan toistorakenteet 11.1 Sisällys Laskuri- ja lippumuuttujat. Sisäkkäiset silmukat. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin
LisätiedotKoottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.
2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet
LisätiedotOnko ilmainen lounas sittenkin olemassa - Linux mobiililaitteessa -
Onko ilmainen lounas sittenkin olemassa - Linux mobiililaitteessa - Ari Jaaksi 1 Ari Jaaksi Mobiilipaivat2003.PPT / 17.12.2003 / AJa Ohjelma Linux ja distrot Linuxin avoimuus free!= free i.e. ilmainen!=
LisätiedotProcesses and threads
WEEK 3 Threads Stallings, Chapter 4 Also: Chapter 1 Processes and threads Yksiajo MS-DOS??? Moniajo vanha UNIX Solaris & Uudet 2 Syksy 2007, Tiina Niklander 5-1 Threads Own TCB, stack, state, storage location
Lisätiedot12. Javan toistorakenteet 12.1
12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu
LisätiedotVäylämoduuli - DALI Master Wago
Sähkönumero 36 150 43 Ylsnimi ja tuotesarja Väylämoduuli Tekninen nimi DALI Master 753-647 Pitkä tuotenimi DALI Master moduuli 753-647 GTIN-koodi 4050821475712 Toimittajan tuotekoodi 753-647 Toimittajan
Lisätiedot1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 19: Rinnakkaisuus Riku Saikkonen (merkityt ei-laajan kurssin kalvot: Otto Seppälä) 24. 3. 2011 Sisältö 1 Säikeet 2 Lukot 3 Monitorit 4 Muuta säikeisiin
LisätiedotOSA II: Hajautettu ympäristö. Sisältö, osa II. Ei yhteistä muistia. Sanomanvälitys. Etäproseduurikutsu. Rendezvous. Rio 2004 / Auvo Häkkinen
OSA II: Hajautettu ympäristö Ei yhteistä muistia 6-1 Sisältö, osa II Sanomanvälitys Etäproseduurikutsu Rendezvous 6-2 Sanomanvälitys Käsitteistöä Kanavat Asiakkaat ja Palvelijat Kommunikointitapoja Andrews
Lisätiedot12. Javan toistorakenteet 12.1
12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu
LisätiedotProsessit ja säikeet SMP, Mikroytimet W2K säikeet
LUENTO 3 Käyttöjärjestelmät II Prosessit ja säikeet SMP, Mikroytimet W2K säikeet Stallings, Ch 3-4.4 1 Mitä KJ-I:ssä / KJ-II:ssa? KJ I + RIO (luvut 3.1-3, 4.1, 5, 6.1-6) Prosessin tilat, jonot, PCB Luonti,
LisätiedotMonitorit. Monitori Synkronointimenetelmiä Esimerkkejä. Andrews , Stallings 5.5
Monitorit Monitori Synkronointimenetelmiä Esimerkkejä Andrews 5.1-5.2, Stallings 5.5 Tavoite Minimoi virhemahdollisuuksia poissulkeminen ohjelmoijan vastuulla P():t ja V():t siellä, täällä ja tuolla -
LisätiedotMonitorit. Tavoite. Monitori Synkronointimenetelmiä Esimerkkejä. Andrews , Stallings 5.5. Minimoi virhemahdollisuuksia
Monitorit Monitori Synkronointimenetelmiä Esimerkkejä Andrews 5.1-5.2, Stallings 5.5 Tavoite Minimoi virhemahdollisuuksia poissulkeminen ohjelmoijan vastuulla P():t ja V():t siellä, täällä ja tuolla -
Lisätiedot10:30 Tauko. 12:00 Lopetus. Yhteistyössä:
Pilviteknologiat työasemaympäristössä Microsoft ja Citrix yhdessä Ohjelma 08:30 Aamupala ja ilmoittautuminen 09:00 Virtualisointia työpöydällä vai työpöytien virtualisointia? 10:00 Optimoitu, virtualisoitu
LisätiedotJakso 8 Ohjelman toteutus järjestelmässä
Jakso 8 Ohjelman toteutus järjestelmässä Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit 1 Prosessi (4) Järjestelmässä olevan ohjelman esitysmuoto Järjestelmässä voi olla samalla kertaa
LisätiedotSovellusarkkitehtuurit
HELIA TiKo-05 1 (9) Sovellusarkkitehtuurit ODBC (Open Database Connectivity)... 2 JDBC (Java Database Connectivity)... 5 Middleware... 6 Middleware luokittelu... 7 Tietokanta -middleware... 8 Tapahtumamonitorit
LisätiedotEtäproseduurikutsu, Remote Procedure Call (RPC) Etäproseduurikutsu. Poissulkeminen moduulin sisällä?
Etäproseduurikutsu Andrews 8.1, 10.3, Stallings 13.3 RPC Toteutus Virhesemantiikka Etäproseduurikutsu, Remote Procedure Call (RPC) Palvelu etäkoneessa, ei yhteistä muistia Asiakkaat pyytävät palvelua prosedurikutsumekanismilla
LisätiedotEtäproseduurikutsu. Etäproseduurikutsu, Remote Procedure Call (RPC)
Etäproseduurikutsu RPC Toteutus Virhesemantiikka Andrews 8.1, 10.3, Stallings 13.3 Etäproseduurikutsu, Remote Procedure Call (RPC) Palvelu etäkoneessa, ei yhteistä muistia Asiakkaat pyytävät palvelua prosedurikutsumekanismilla
LisätiedotEtäproseduurikutsu. RPC Toteutus Virhesemantiikka. Andrews 8.1, 10.3, Stallings 13.3
Etäproseduurikutsu RPC Toteutus Virhesemantiikka Andrews 8.1, 10.3, Stallings 13.3 Etäproseduurikutsu, Remote Procedure Call (RPC) Palvelu etäkoneessa, ei yhteistä muistia Asiakkaat pyytävät palvelua prosedurikutsumekanismilla
LisätiedotLuento 8 Ohjelman toteutus järjestelmässä
Luento 8 Ohjelman toteutus järjestelmässä Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit 1 Prosessi (4) Järjestelmässä olevan ohjelman esitysmuoto Järjestelmässä voi olla
LisätiedotLuento 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit
Luento 8 Ohjelman toteutus järjestelmässä Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit 1 Prosessi (4) Järjestelmässä olevan ohjelman esitysmuoto Järjestelmässä voi olla
LisätiedotOSA I: Yhteisten muuttujien käyttö Prosessit samassa koneessa. Sisältöä. Poissulkeminen. Halutut ominaisuudet 2-1. Rinnakkaiset, atomiset operaatiot
Sisältöä OSA I: Poissulkeminen ja nti Semaforit ja rinnakkaisuuden hallinta Yhteisten muuttujien käyttö Prosessit samassa koneessa Lukkiutuminen Monitorit 2-1 2-2 Poissulkeminen ja nti Rinnakkaiset, atomiset
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 22. huhtikuuta 2016 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille! Kirjoittamasi luokat, funktiot ja aliohjelmat
LisätiedotSisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä
Sisällys 11. Javan toistorakenteet Laskuri- ja lippumuuttujat.. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin lopettaminen break-lauseella.
Lisätiedot6.3. AVR_rauta. EEPROM-muisti 09.12.2007 pva
6.3. AVR_rauta. EEPROM-muisti 09.12.2007 pva Experience is what causes people to make new mistakes instead of old ones... - Unknown Sisältö Yleistä EEPROM-rekisterit Protoilu-ohje EEPROMmista ja Fuse-biteistä
LisätiedotKJ-II K2006 / Auvo Häkkinen - Teemu Kerola
LUENTO 3 Käyttöjärjestelmät II Prosessit ja säikeet SMP, Mikroytimet W2K säikeet Stallings, Ch 3-4.43 1 Mitä KJ-I:ss I:ssä / KJ-II:ssa II:ssa? KJ I + RIO (luvut 3.1-3, 4.1, 5, 6.1-6) Prosessin tilat, jonot,
LisätiedotKäyttöjärjestelmät II. SMP, Mikroytimet. Prosessit yleensä. UNIX prosessit. UNIX SVR4 Prosessit. UNIX prosessin kuvaaja
Käyttöjärjestelmät II Prosessit ja säikeet SMP, Mikroytimet W2K säikeet Stallings, Ch 3-4.43 LUENTO 3 Mitä KJ-I:ss I:ssä / KJ-II:ssa II:ssa? KJ I + RIO (luvut 3.1-3, 4.1, 5, 6.1-6) Prosessin tilat, jonot,
LisätiedotJakso 8 Ohjelman toteutus järjestelmässä
Jakso 8 Ohjelman toteutus järjestelmässä Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit 1 Prosessi (4) Järjestelmässä olevan ohjelman esitysmuoto Järjestelmässä voi olla samalla
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. FT Ari Viinikainen
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op FT Ari Viinikainen Tietokoneen rakenne Keskusyksikkö, CPU Keskusmuisti Aritmeettislooginen yksikkö I/O-laitteet Kontrolliyksikkö Tyypillinen Von Neumann
LisätiedotJakso 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit
Jakso 8 Ohjelman toteutus järjestelmässä Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit 1 Prosessi (4) Järjestelmässä olevan ohjelman esitysmuoto Järjestelmässä voi olla samalla
LisätiedotOSA I: Yhteisten muuttujien käyttö. Prosessit samassa koneessa. Rio 2004 / Auvo Häkkinen 2-1
OSA I: Yhteisten muuttujien käyttö Prosessit samassa koneessa 2-1 Sisältöä Poissulkeminen ja synkronointi Semaforit ja rinnakkaisuuden hallinta Lukkiutuminen Monitorit 2-2 Poissulkeminen ja synkronointi
LisätiedotOSA I: Yhteisten muuttujien käyttö. Sisältöä. Prosessit samassa koneessa. Poissulkeminen ja synkronointi. Semaforit ja rinnakkaisuuden hallinta
OSA I: Yhteisten muuttujien käyttö Prosessit samassa koneessa 2-1 Sisältöä Poissulkeminen ja synkronointi Semaforit ja rinnakkaisuuden hallinta Lukkiutuminen Monitorit 2-2 Poissulkeminen ja synkronointi
LisätiedotAlgoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
Lisätiedot