Linux. ffl Disainiprintsiibid. ffl Tuuma moodulid. ffl Protsessihaldus. ffl Planeerimine. ffl Mäluhaldus. ffl Failisüsteemid. ffl Sisend ja väljund

Seotud dokumendid
Operatsioonisüsteemide ehitus

MTAT Operatsioonisüsteemid - protsessid

Linux süsteemi administreerimine

Operatsioonisüsteemid Intelligentne arvutikasutus IFI6070 Tanel Toova

Andmeturve

OPERATSIOONISÜSTEEMIDE EHITUS Ülevaade Protsessi mõiste Protsesside planeerimine Operatsioonid protsessidega Protsessihaldus Protsesside koostöö Prots

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

Loeng03

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesug

Monitooring

Operatsioonisüsteemid 1. loeng

Kfloppy vormindamistööriista käsiraamat

Operatsioonisüsteemid

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

Loeng07

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

Operatsioonisüsteemide ehitus

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

P2P süsteemid

EIK-OSadmin-Edmund

E-arvete juhend

KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V)

Loeng12

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft PowerPoint - loeng.ppt

Tartu Ülikool Loodus- ja täppisteaduste valdkond Arvutiteaduse instituut Sandra Puusepp CVE Referaat Tartu 2018

Elisa Ring Elisa Ringi mobiilirakendus Versioon

SPORTident Air+

Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi

KsirKi käsiraamat

Microsoft Word - Referaat.docx

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd

JABRA STYLE Kasutusjuhend jabra.com/style

6 tsooniga keskus WFHC MASTER RF 868MHz & 4 või 6 tsooniga alaseade SLAVE RF KASUTUSJUHEND 6 tsooniga WFHC RF keskus & 4 või 6 tsooniga alaseade SLAVE

StandardBooks_versiooni_uuendusWin

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Peer-to-peer süsteemid Peer-to-peer süsteemide liigitus Liigitus Ründed Anonüümsus Puuräsi DHT Näide: Kazaa Näide: Kadem

VÕRUMAA KUTSEHARIDUSKESKUS Infotehnoloogia õppetool Rivo Kikkul Vabavaralise operatsioonisüsteemi arendus Estobuntu baasil Lõputöö Infotehnoloog

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode])

Kom igang med Scratch

Andmeturve

EST_QIG_TEW-424UB(V3.1.1).cdr

Hajussüsteemid

Microsoft Word - Toetuste veebikaardi juhend

Side

Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööa

SK-3MD

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp

HAJUSSÜSTEEMID HAJUSSÜSTEEMID SOAP ja veebiteenused Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinev

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx

ArcGIS rakendused välitöödeks Raido Valdmaa AlphaGIS

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind


Microsoft Word - requirements.doc

Mining Meaningful Patterns

Microsoft Word - EHR.docx

PowerPoint Presentation

Microsoft Word - TM70_SP-MG_kasutusjuhend.docx

Funktsionaalne Programmeerimine

Andmeturve

PowerPoint Presentation

B120_10 estonian.cdr

PROJEKTI TÄIELIKU E-RIIGIHANGETE VÕIMEKUSE LOOMINE TEEKAART Täiendatud märts 2019 Projekti seos asutuse eesmärkidega ja projekti eesmärgid Rahandusmin

Sidekursus 2002

Dias nummer 1

Uudiseid k-meride abil bakterite leidmisest [Compatibility Mode]

MTAT Operatsioonisüsteemid - Failisüsteemid

Operatsioonisüsteemi ülesanded

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis

MTAT Operatsioonisüsteemid - Turvalisus

Microsoft Word - EVS_ISO_IEC_27001;2014_et_esilehed.doc

PowerPointi esitlus

MTAT Operatsioonisüsteemid - Turvalisus

VL1_praks6_2010k

Programmi AnimatorDV Simple+ lühike kasutajajuhend

Paroolide murdmine vastavate tabelitega (rainbow table). „Sool“ paroolide krüpteerimisel. Protokoll IPSec, võtmevahetus IKE protokolliga.

loeng2

SIDE (IRT 3930) Loeng 9/2012 Infotransport Teema - sõnumid Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst. Sõn

Eesti kõrgusmudel

Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3

Kursuseprogrammi vorm

AG informaatika ainekava PK

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

Microsoft Word - installation-guide.doc

EE-macbook-retina-12-early2015-qs.indd

“MÄLUKAS”

Võrguregistripõhine võrguplaneerimine Jaanus Kokk AS Eesti Telekom

Microsoft PowerPoint - Lisa 5 koolituse materjalid

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

PowerPoint Presentation

VOIP121 estonian.cdr

Tartu Ülikool

EUPL v 1 1-all versions _4_

Microsoft PowerPoint - IRZ0020_praktikum4.pptx

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k

Seminar bakalaureusekursuse alusainete teemal Edmund Laugasson 20. juunil 2017 kell ruumis ICT-315, TTÜ Käesoleva

Väljavõte:

Linux ffl Ajalugu ffl Disainiprintsiibid ffl Tuuma moodulid ffl Protsessihaldus ffl Planeerimine ffl Mäluhaldus ffl Failisüsteemid ffl Sisend ja väljund ffl Protsessidevaheline side ffl Võrk ffl Turvalisus 1

Ajalugu ffl 0.01 (mai 1991) töötas 80386 peal, võrku polnud, piiratud riistavara tugi, Minixi failisüsteem ffl 1.0 (märts 1994 Λ TCP/IP Λ BSD sokliliides Λ IP üle Etherneti Λ Parem failisüsteem Λ SCSI kontrollerite tugi Λ Palju muud rauda toetatud ffl 1.2 (märts 1995) viimane versioon ainult PC-de jaoks (1.2 sees tegelike portide integreerimine) ffl 2.0 (juuni 1996) mitme protsessori tugi, uued riistavaraplatvormid ffl 2.2 (jaanuar 1999) tuum mitme protsessori peal, tulemüürindus, TCP pinu ffl 2.4 (jaanuar 2001) skaleeruv SMP (failisüsteemid, võrguprotokollid) 2

Linuxi süsteem ffl Linuxi tuum, GNU utiliidid (gcc!) (+ BSD, MIT, XFree,...) ffl GPL litsents (algul muu litsents) ffl Arendajad laiali üle maailma ffl Linux Standards Base, File System Hierarcy Standard (FHS) ffl Distributsioonid (SLS, Slackware, Red Hat, Debian,...) ffl POSIX (baas, lõimed, veidi reaalaja tuge) 3

Disainiprintsiibid ffl Tuum, süsteemsed teegid, süsteemsed programmid, rakendusprogrammid ffl Protsessor on tuuma moodis (kernel mode) või kasutaja moodis (user mode) ffl Monoliitne tuum ffl Tuuma aadressruumi saab käigu pealt mooduleid juurde laadida ffl Moodulid: arenduse hõlbustamiseks, mälu kokkuhoiu jaoks, universaalsuse jaoks, natuke ka 3. partei litsentsiprobleemide leevendamiseks 4

Moodulid ffl Liides: moodulite laadimine / välja laadimine ning sümbolite haldus ffl Sümbolid võivad olla tuuma sisesed või moodulitele eksporditud ffl Moodul saab kasutada ainult eksporditud sümboleid ffl GPL-klausliga eksporditud sümbolid ffl Tainted tuum kui on laaditud kahtlasi mooduleid ffl Sümbolite versioneerimine (modversions) ffl Alamsüsteemide registreerimisfunktsioonid Λ Registreerida saab failisüsteeme, võrguprotokolle, võrguliideseid, muid seadmedraiverid, binaarfailide formaate ffl Ressursihaldus I/O portide ja mäluvahemike haldus, IRQ-de ja DMA kanalite haldus 5

Protsessihaldus ffl fork+exec mudel ffl Copy-On-Write (COW) mudel protsesside kopeerimiseks ffl clone() fork(), mis jagab rohkem (lõimede tekitamiseks) ffl Iga protsessiga on seotud PID (+muu teenindusinfo), volitused, iseloom (personality) ffl Alamprotsessile saab andmeid edasi anda keskkonnamuutujate kaudu ffl Keskkonnamuutujad ja programmi argumendid 6

Protsessi kontekst ffl Planeerimiskontekst (prioriteediinfo, signaalid, registrid,ujukomaregistrid,...) ffl Raamatupidamisinfo (kasutatud aeg ja ressursid) ffl Avatud failide tabel ffl Failisüsteemi kontekst jooksev ja juurkataloog ning nimeruumiinfo ffl Signaalihandlerite tabel ffl Virtuaalmälu kontekst (nimekiri VMA-dest) ffl Lõimed jagavad omavahel VMA kirjeid, muidu eraldi protsessid (kasutajatasemel POSIXühilduv teek, mis Linuxi omapärad ära peidab) ffl Tuumas oma lõimed (paistavad kah protsessistabelist) 7

Planeerimine ffl Tuum võib töötada protsessi kontekstis või ilma protsessi kontekstita (katkestuste poolt algatatud töö) ffl Sünkroniseerimine tuuma sees: katkestused või teisel protsessoril toimuv võib kriitilisi sektsioone segada ) vaja kriitilisi sektsioone kaitsta ffl Bottom Half (! sof tirq) tase katkestuste kohal, aga allpool protsessi konteksti ffl Tuumas väljatõrjumist ei kasutata (kasutatakse 2.5 alates) ffl Kasutajaprotsessidel prioriteedid pluss ajaloo arvestamine ffl Lisaks kaks pehme reaalaja planeerimisklassi (SCHED FIFO ja SCHED RR) 8

Mäluhaldus ffl Füüsiline mälu jaguneb tsoonideks ffl Igas tsoonis nn buddy-allocator järjestikused mälutükid on paarikaupa samasuured, et saaks vabastamisel suuremaks kokku panna. Vajadusel saab omakorda kaheks võrdseks jagada ffl Lehekülje suurus sõltuvalt arhitektuurist 4K.. 8K ffl Ühesuunaline mäluhaldus (viidad protsesside mälult füüsilistele lehekülgedele, tagasi pole) ffl Kerneli tasemel oma mäluhaldus (virtuaalmälu plokkide ja füüsilise mälu plokkide kohta eraldi) ffl Kasutajaprotsessidel on nimekiri VMA-dest (Virtual Memory Area), nende seest viidad füüsilistele lehekülgedele ffl VMA-d võivad jagatud olla (mmap ja clone tõttu) ffl MMU leheküljetabelisse kopeerimiseks hoitakse protsessi juures ka leheküljetabeleid ffl Nõudmisel nullitav mälu (demand zero memory) 9

Programmide käivitamine ffl ELF formaadis binaarid, toetatud on ka A.OUT (3 sorti) ffl Käivitamisel mmap itakse binaar mällu, antakse juhtimine algusse ffl Leheküljepöörduse vead toovad programmi alguse sisse ja hakatakse täitma ffl Programmi alguses olev dünaamiline linkur mmap ib ka dünaamiliselt lingitud teegid ffl Dünaamilise koodi jaoks positsioonist sõltumatu kood (PIC positsion independent code) 10

Failisüsteemid ffl VFS tuumas olev virtuaalne failisüsteem ffl Tegeleb kataloogipuu, nimede ja i-kirjetega ffl Üldistab kõik erinevate failisüsteemide sarnase koodi ning teeb uue failisüsteemi realiseerimise litsamaks ffl Ext2 (2nd Extended Filesystem) seni põhiline failisüsteem Λ Põhineb Minixi failisüsteemil ja UFS ideedel (ikirjed, silindrigrupid) Λ Fragmente ei kasutata, ruumi haldamine plokikaupa Λ Plokigrupid silindrigruppide asemel Λ Bitikaart vabade plokkide kohta Λ Plokkide eelallokeerimine ffl Ext3, Reiserfs, XFS, JFS ffl /proc failisüsteem protsesside silumisinfo ja tuuma andmete jaoks 11

Sisend-väljund ffl Plokkseadmed, märkseadmed, võrguseadmed ffl Võrguseadmetega suheldakse soklite kaudu, enamasti protokollide vahendusel ffl Märkseadmetel liiniprotokoll (line discipline) tty, slip, HDLC,... ffl Plokkseadmetega on seotud kaks puhverdust: ffl Buffer cache puhvrid ootel IO operatsioonide andmetega ning täidetud IO tulemustega ffl Page cache seal hoitakse kõiki laaditud lehekülgi (protsesside kood ja andmed, failisüsteemi puhvrid,...) 12

Protsessidevaheline side ffl Signaalid ffl SYSV IPC (semaforid, jagatud mälu, teatejärjekorrad) ffl mmap() abil saadud jagatud mälu ffl Tuuma siseselt wait queue (signaale ei kasutata) ffl Torud (pipe) nimega ja nimeta ffl Sokliliides 13

Võrk ffl Tuuma tasemel tugi paljudele võrguprotokollidele ffl Võrguprotokolle saab käigu pealt lisada (moodulid) ffl Võrguliideseks kõigi protokollide puhul BSD-st pärit sokliliides (erinevatel protokollidel erinevad soklitüübid) ffl Kõige all on võrguseadmete draiverid (füüsilised või virtuaalsed) ffl skbuf sokliga seotud datagrammi andmed kernelis ffl Tulemüürindus: ipfw+ipfwadm! ipchains! iptables 14

Turvalisus ffl UID, GID, /etc/passwd ffl rwxrwxrwx ffl Kõik on võrdsed, aga root on eriti võrdne ffl Setuid, setgid ffl Rakendusprogrammidele PAM (Pluggable Authentication Modules) ffl Capabilities kõikvõimsa roodu ellimineerimiseks 15