Figyelem! Bukásért felelősséget nem vállalunk!
|
|
- Lídia Gáspár
- 8 évvel ezelőtt
- Látták:
Átírás
1 Operációs rendszerek II. kidolgozott tételsor Verzió 1.0 (Build: ) Készült: Dr. Fazekas Gábor Operációs rendszerek 2. diasorok és előadásjegyzetek Ellenőrző kérdések december 30-i állapota alapján OPERATING SYSTEM CONCEPTS, 8TH EDITION (Abraham Silberschatz & Peter B. Galvin) Boruzs Tibor féle tételsor Készítette: Fodor Attila, Magyari László és Málik Tamás Figyelem! Bukásért felelősséget nem vállalunk! 2015/16-es tanév, 1. félév
2 1. Mit jelent a preemptív processzus ütemezés? Beavatkozó ütemezés, az operációs rendszer ha úgy dönt, elveszi a processztől a CPU-t. 2. Értelmezze a processzusütemezéshez kapcsolódó alábbi fogalmakat: végrehajtási idő, várakozási idő, válaszidő! Végrehajtási (turnarund, fordulási) idő: várakozás a memóriába kerülésre + készenléti sorban töltött idő + CPU-n töltött idő + I/O-val töltött idő. Várakozási idô (waiting time): készenléti sorban (ready queue) töltött idő Válaszidô (response time): a kérés benyújtásától az elsô válasz megjelenéséig (nem output!) Eltelt idő. (Interaktív rendszerekben a turnaround nem jó jellemző.) 3. Melyek az FCFS processzus ütemezés előnyei és hátrányai? Igény bejelentési sorrend szerinti kiszolgálás (first-come, first-served =FCFS), mindenki sorra kerül. Hátrány: az átlagos várakozási idő nagy szórása, konvoj effektus (Pl.: 4-es úton a szénásszekér) 4. Van-e optimális processzus ütemezési stratégia? Van, a legrövidebb először. Azt a processzt engedjük a CPU-hoz, melynek a következő helyfoglalási ideje a legrövidebb. Melyik fogja a legrövidebb ideig lefoglalni a CPU-t azt előre nem tudjuk. 5. Mit jelent az exponenciális átlagolás? Mondjon példát az alkalmazására! Megpróbáljuk megjósolni a következő helyfoglalási időt. Az eddigi viselkedések alapján kiszámoljuk a következő futás várható idejét. A mai rendszerek ezt használják. Definíciója: Alkalmazási példa: A rövidebb igény először (shortest job first, shortest job next, SJF, SJN) kiszolgálás elve. 6. Mit jelent a prioritásos processzus ütemezési stratégia? Számokat rendelünk a processzekhez, minél kisebb ez a szám és a foglalási ciklus, annál nagyobb a prioritás. Az SJF, ill. FCFS is prioritásos kiszolgálásnak tekinthető! Belső és külső prioritás. Problémák: végtelen indefinit blokkolódás = éhezés, éhhalál. Példa: MIT 1973 IBM 7094: 1967 óta várt egy processzus a CPU-ra!! Megoldás: aging (unix példa) 7. Mit jelent a körleosztásos (Round Robin) processzus ütemezési stratégia? Minden processzus sorban q ideig (q= millisec.) használhatja a CPU-t. n processzus esetén a maximális várakozási idő (n-1)/q. Ha q kicsi: ->FCFS, ha q nagy:-> kontextus váltási költség relatíve megnő! Egy bizonyos idő múlva az ütemező elveszi a feladattól a processzort /preemptív/ és az addig futó folyamatot a sor végére küldi és a következő folyamatot indítja egy bizonyos időre. Hátránya hogy sok az adminisztrációja. 8. Mit jelent a többsoros processzus ütemezés? A célja a szálak egyenletes elosztása,a prioritás korrekt figyelembevétele. Többprocesszoros ütemezéskor használt paraméterek: Processzor megfelelés, ideális processzor, következő processzor
3 9. Mit jelent a processzus ütemezés esetén a visszacsatolásos sor? Round Robinoknál előfordulhat, hogy pár folyamat abba a sorban ahol van nem érzi jól magát és akkor másik sorba kerül. 10. Mit jelent az éhezés (starvation)? Prioritásos ütemezésnél a kiszolgálóhoz nem jut hozzá a sor. 11. Mi a kritikus szakasz probléma? n folyamat verseng egy bizonyos (közös) adat használatáért Mindegyik folyamatnak van egy kódszegmense, ahol ezt a bizonyos adatot eléri (olvassa/írja): ez az ún. kritikus szakasz. Probléma: hogyan biztosítható, hogy amíg egy processzus a kritikus szakaszát hajtja végre, addig egyetlen más processzus se léphessen be a saját kritikus szakaszába. 12. Milyen követelményeket kell kielégítenie a kritikus szakasz kezelésének? Követelmények: Kölcsönös kizárás o nem lehet egynél több processzus a kritikus szakaszában Progresszió o a kiválasztás (futásra) nem késleltethetô határozatlan ideig Korlátozott várakozás o minden igény kiszolgálása megkezdôdik korlátozott számú kritikus szakasz végrehajtása után 13. Mit jelent a processzusok szinkronizációja kapcsán a kölcsönös kizárás elve? Egyszerre csak egy processzus használhat egy er őforrást. 14. Mi az entry és exit kódszekciók funkciója a kritikus szakasz kezelésében? Minden egyes fizikai laphoz (frame-hez) tartalmaz egy bejegyzést (entry). Egy bejegyzés az adott frameben tárolt logikai lap virtuális címét és annak a processzusnak az azonosítóját tartalmazza, amelyikhez a frame tartozik. A folyamat végrehajtja az utolsó utasítását, majd megkéri az operációs rendszert, hogy törölje (exit). Ennek során output adatok kerülnek át a gyermektôl a szülôhöz (cf. fork), a folyamat által használt erôforrásokat az operációs rendszer felszabadítja. 15. A szemaforok mint szinkronizációs primitívek (eszközök). magas szintû szinkronizációs eszközök (szikronizációs primitív), amelyek lehetôvé teszik egy absztrakt adattípus biztonságos megosztását konkurens processzusok között. 16. A monitor mint szinkronizációs primitív (eszköz). Magas szintű szinkronizációs eszközök (szikronizációs primitív), amelyek lehetővé teszik egy absztrakt adattípus biztonságos megosztását konkurens processzusok között. formálisan: a monitor eljárások, változók és adatszerkezetek együttese, amelyek egy speciális csomagba vannak integrálva. A processzusok hívhatják a monitorban levő eljárásokat, de nem érhetik el közvetlenül annak belső adatszerkezetét. Speciális típus: condition Speciális műveletek: x.wait, x.signal. A monitor azt kívánja biztosítani, hogy egy időben csak egy processzus legyen aktív (rajta).
4 17. A kritikus régió, mint szinkronizációs primitív (eszköz). Magas szintű szinkronizációs eszköz. Egy megosztott változó v, amelynek típusa T, deklarációja var v: shared T; A v változó csak az alábbi alakú utasításokon keresztül érhetô el: region v when B do S; ahol B egy logikai kifejezés. Amíg az S utasítás végrehajtás alatt áll, másik processzus nem érheti el a v változót. Ha a processzus megpróbálja végrehajtani a region utasítást, a B logikai kifejezés kiértékelődik. Ha B igaz, az S utasítás végrehajtódik. Ha hamis, akkor a processzus végrehajtása késleltetődik addig, amíg a kifejezés igaz nem lesz és egyetlen más processzus sincsen a v-hez kapcsolt régióban. Példa: korlátos puffer problémája Implementáció: pl. szemaforokkal 18. Ismertesse az írók és olvasók problémáját! Egy adatot, állományt több processzus megosztva, párhuzamosan használ, egyesek csak olvassák, mások csak írják. Hogyan biztosítható az adatok konzisztenciája? Stratégiák: 1. Minden olvasó azonnal hozzáférhet az adatokhoz, hacsak egy író nem kapott már engedélyt az írásra. 2. Egy író azonnal írhat, ha erre kész és más írók éppen nem írnak. Mindkét stratégia éhezéshez (starvation) vezethet, de van megoldás 19. Ismertesse az vacsorázó filozófusok problémáját. Miért/hogyan vezethet holtponthoz? Egy kör alakú asztal mellett öt filozófus ül, mindegyik előtt van egy tányér rizs és a szomszédos tányérok között egy-egy evő-pálcika. Evéshez a filozófus a saját tányérja melletti két evôeszközt használ-hatja úgy, hogy ezeket egymás után kézbe veszi. Ha befejezte az étkezést, vissza- teszi az eszközöket, és gondolkodni kezd. Majd újra megéhezik, stb. 20. Ismertesse a Bakery algoritmust! Minden processzus kap egy sorszámot, mielôtt belép a kritikus szekciójába (ticket). A legkisebb sorszámú processzus hajthatja végre a kritikus szekcióját. Ha Pi és Pj sorszáma megegyezik, akkor a kisebb indexű jogosult a kritikus szekciójába belépni. A sorszámozó rendszer mindig monoton növekvő sorszámokat generál. Pl.: 1,2,2,3,3,3,4,4,... Jelölés: < jelentse a (ticket #, process ID) párra definiált lexikografikus rendezést.
5 21. Folytonos tárallokálás, fix particionálás: egyenlő- és változó hosszúságú partíciók. Az operatív memóriát egyetlen folytonos tömbnek tekinthetjük. A memória "rendszer"- és "felhasználói program" részekre bomlik. A rendszer résznek tartalmaznia kell a memóriába beágyazott megszakítási vektort, az I/O kapukat (portok). Minden processzus egyetlen összefüggő (folytonos) részt foglal el a memóriából. Folytonos tárallokálásnál egy program számára kiosztható tárterület folytonos (összefüggő). Fix partícionálás: A felhasználói tárterületet olyan különböző méretű partíciókra osztották, melyek mérete a rendszer működése során nem változhatott. Minden partícióban egyetlen folyamat tartózkodhat. A multi programozás fokát a partíciók száma korlátozza. Egyenlő méretű partíciók kialakítása Bármelyik olyan processzus melynek mérete kisebb vagy egyenlő a partíció méretével, betölthető egy elérhető partícióba. Ha az összes partíció tele van, az operációs rendszer kicserélheti egy partícióban levő másik processzussal Problémák: egy program nagyobb is lehet, mint a partíció, ekkor a programozónak az overlay technikát kell alkalmaznia a főmemória kihasználása nem jó: minden program, méretétől függetlenül egy egész partíciót elfoglal (belső töredezettség - internal fragmentation)megoldás: nem egyenlő méretű partíciók Elhelyezési algoritmus: Azonos méretű partíciók: azonos méret miatt bárhova mehet Nem azonos méretű partíciók: minden processzushoz a lehető legkisebb alkalmas partíciót választani (belső töredezettség minimalizálása) 22. Folytonos tárallokálás, dinamikus particionálás: allokációs elvek (first fit, stb.). Külső- és belső fragmentáció. Dinamikus partícionálás: Változó méretű partíciók. Nincs belső tördelődés, viszont van külső tördelődés: memória felszabadítása után lyuk marad a partíció helyén Allokációs elvek: first fit: A lista elejétől indulva az első megfelelő méretű szabad helyet keresi. Ez a leggyorsabb algoritmus, mert kevés idő megy el a szabad kely keresésével. A szabad hely ekkor két részre vágódik kivéve, ha pont akkora, mint a program az egyik részébe kerül a program, a másik megmarad szabadnak. next fit: A first fit olyan változata, mely megjegyzi az előző lyuk helyét, és innen folytatja a keresést. Nem túl hatékony. best fit: A listában minimumkeresést végez a legalább akkora méretű lyukak közt, melybe a program belefér. Így az egész listán végig kell mennie. Hajlamos arra, hogy kicsi, használhatatlan lyukakat csináljon. worst fit: A lista legnagyobb lyukát választja ki. Szintén nem túl hatékony. Külső fragmentáció: Azt jelenti, hogy az összességében rendelkezésre álló hely elegendő, de ez apró részekben jelenik meg, ahová viszont nem fér be egyetlen folyamat sem. Belső fragmentáció Az az eset, amikor tárkezelési eljárások egy csoportjánál a rendszer nagyobb tárterületet foglal le, mint amennyi szükséges, ezért a lefoglalt terület egy része kihasználatlan marad.
6 23. Folytonos tárallokálás, társblokkok módszere (buddy rendszer) előnyei. A buddy rendszert a dinamikus partícionálás problémájára fejlesztették ki, melyben korlátozták a kiosztható memóriaméretet 2 hatványaira. Ezáltal a szemétgyűjtögetés (garbage collection) könnyebbé vált. Kezdetben a teljes memória szabad, foglaláskor pedig a rendszer egy fát épít fel felezve a memóriablokkok méretét. Ha két egy szinten lévő blokk felszabadul, azt összevonva magasabb szintre emeljük. Viszonylag könnyen implementálható. Belső és külső elaprózódás is megjelenhet 24. Lapozás, lap és keret, laptábla. Logikai és fizikai cím, címfordítás. Invertált laptábla. Lapozás (Paging):A külső fragmentáció problémájának egy megoldását kapjuk, ha a memóriát és a processzusokat kis, egyenlő méretű egységekre osztjuk. minden processzusnak saját laptáblája van minden laptáblabejegyzés tartalmazza a főmemóriában található megfelelő lap keretszámát Lap: processzusdarab // A virtuális memória a lapozás során fel lesz osztva egyenlő részekre, ezek a lapok. (tehát a virtuális memóriában van) Keret: memóriadarab // A fizikai memóriát felosztjuk a lapok méretével megegyező méretű részekre, ezek a lapkeretek (a fizikai memóriában vannak) Laptáblák: Az op. rendszer minden processzushoz egy ún. laptáblát tart fent tartalmazza a processzus lapjaihoz tarozó keretek helyzetét az egész laptábla túl sok főmemóriát foglalhat le laptáblák szintén tárolhatók a virtuális memóriában, így amikor egy processzus fut, laptáblájának csak egy része van a főmemóriában Logikai cím: lap sorszáma + lapon belüli relatív cím Fizikai cím: keret memóriabeli kezdőcíme + kereten belüli kezdőcím Invertált laptábla: Egy bejegyzés itt tartalmazza, hogy mely processz mely lapja van pillanatnyilag a lapkertben Címfordítás: laptáblabejegyzésekhez nagysebességű cache memória a TLB ( legutóbb használt laptábla bejegyzéseket tartalmazza) adott virtuális cím, processzor megvizsgálja a TLB-t ha laptábla bejegyzést talál, kinyeri a keretszámot, megalkotja a valós címet ha nem talál bejegyzést, lapszámot használja a processzus laptáblájának indexelésére lap a főmemóriában van-e ( ha nincs laphiba ) TLB frissítése egy új lapbejegyzéssel Logikai cím fizikai címmé konvertálása 25. Szegmentáció, szegmentáció lapozással. A szegmentálás egy memóriakezelési módszer, mely során a memóriát több címtérre, azaz szegmensekre bontjuk. Minden résznek megvan a saját, 0-tól kezdődő címtartománya. Egy memóriacím így két részből áll, egy szegmenscímből és egy eltolási- (offset) címből. Hardver és operációs rendszer szinten valósul meg. A szegmensekhez elérési jogok tartoznak: írható vagy olvasható, vagy futtatható. Így például a programunk nem írhatja felül saját magát, mert a programkódot egy olyan szegmensben tároljuk, amely csak futtatható A lapozás és a szegmentáció: lapozás láthatatlan, szegmentáció látható a programozó számára lapozás csökkenti a külső töredezettséget szegmentációval lehetséges az adatszerk-ek megosztása, védelme ( láthatóság, írható, olvasható ), minden szegmens több azonos méretű lapra van tördelve A szegmentáció lapozással megoldást úgy fejlesztették ki, hogy kombinálták a szegmentációt a lapozással. A DOS valós címzést használt lapozás nélkül. Az IBM OS/2 rendszere volt az első, mely tartalmazta a lapozást.
7 26. A virtuális memóriakezelés koncepciója, szolgáltatásai, jelentősége. A végrahajtandó kódnak a memóriában kell lennie, de nagyon riktán van az egész program a memóriában. A teljes programra nincs szükségünk egyszerre, csupán egy részére, így az töltődik be a memóriába, a többi a virtuális memóriába kerül, a háttértárra. Koncepciója: Szabadítsuk meg a programozót a fizikai memória méretének a korlátaitól A virtuális memória koncepciója a felhasználó/programozó memória szemléletének teljes szeparálását jelenti a fizikai memóriától. Jelentősége: az operációs rendszer végzi, tehát nem megy el a programozó ideje a memóriakezeléssel. Nem korlát többé a fizikai memória mérete. A programozó nem vesződik az overlay megtervezésével. Egyszerre több program aktív kódrésze lehet benn a memóriában, ami jobb CPU kiszolgálást eredményezhet. (Közben nem növekszik a válaszadási és végrehajtási idő!) Kevesebb I/O tevékenység szükséges a Swapping-hez. (A futási sebesség nő!) 27. Lapozás és virtuális memóriakezelés, laphibák, a virtuális memóriakezelés teljesítőképessége. Page Fault (laphiba) Az elsô hivatkozás a lapra biztosan laphibát okoz. Az operációs rendszer eldönti, hogy a hivatkozás maga is hibás-e (abortálás), vagy a lap nincs a memóriába betöltve. Üres keret (frame) keresés. Lap betöltése a keretbe. A hivatkozott (gépi) utasítás végrehajtásának folytatása (restart). Úgy működik, hogy az operációs rendszer minden egyes folyamatnak ad a központi memóriából egy akkora részt, amelyben a folyamat még működik, és a folyamatnak csak azt a részét tartja a központi memóriában, amelyre éppen szükség van. A folyamatnak azt a részét, amelyre nincs szükség (mert például már rég nem adódott rá a vezérlés, és feltételezhetjük, hogy rövid időn belül nem is fog végrehajtódni) ki kell rakni a háttértárra (a diszken az ún. lapozási területre). A virtuális memóriakezelés teljesítőképessége: akkor jó a kezelés, ha minél kevesebb a laphiba. 28. Laphelyettesítési (cserélési) algoritmusok: FCFS/FIFO, Bélády anomália, optimális algoritmus. FIFO (First In First Out) //( FCFS First Come First Served )algoritmus: Előny: csekély hardver támogatás szükséges! a processzushoz tartozó kereteket körkörös pufferként kezeljük a lapokat körkörösen (round-robin) dobjuk ki ezt a stratégiát a legegyszerűbb megvalósítani (ott, ahol nincs koncepció) a memóriában legrégebb óta tartózkodó lap kerül kidobásra Probléma: előfordulhat, hogy ezekre a lapokra nagyon hamar szükség lesz újból Bélády anomália: a keretek számának növeléséből nem következik az, hogy csökken a laphibák száma. Tételszerűen nem lehet bebizonyítani. Optimális algoritmus: azt a lapot kell beáldozni, melyet egy ideig nélkülözni tudunk. A referenciasztring végignézése után az aktuális pozíciótól a legmesszebbit lehet kidobni. A referenciasztringet akkor ismerjük, ha lefuttatjuk a programot.
8 29. Az optimális algoritmust approximáló algoritmusok: LRU, NRU,NFU, óra/második esély algoritmus. LRU: azt a lapot kell kidobnunk, melyet a legrégebben használtunk. Nehéz implementálni, mert nem tudni, hogy a lapra mikor történt utoljára hivatkozás. Egy vektor segítségével keressük meg a legrégebben használt lapot. Ez viszont ellentmond, tehát olyan algoritmust kell találni, mely racionális. Időigényes, és lehet hogy 1-2 szituációban nem éri meg ezt az algoritmust használni. Legkevésbé használt (LFU: Least Frequently Used vagy NFU: Not Frequently Used) algoritmus: A bonyolult megvalósítás miatt az LRU-algoritmus helyett sokszor annak hardvertámogatást nem, vagy alig igénylő közelítését szokták használni (LFU). Ennél az algoritmusnál abból indulhatunk ki, hogy a közelmúltban gyakran használt lapokat a folyamatok a közeljövőben is használni fogják még, és ugyanígy, a közelmúltban ritkán, vagy nem használt lapokra a közeljövőben nem lesz szükség. Ilyenkor az operációs rendszer rendszeres időközönként végignézi a memóriában levő lapokat, és a hozzájuk rendelt számlálóhoz hozzáadja az R bit (0 vagy 1) értékét, és egyben törli az R biteket. Az algoritmus a legkisebb számláló értékkel rendelkező vagyis a legritkábban használt lapot választja ki kivitelre. Hátrányt jelent, hogy az algoritmus nem felejt, vagyis az egykor gyakran használt lapok még sokáig a memóriában maradnak akkor is, ha már biztosan nem lesz rájuk hivatkozás. A problémán öregítéssel segíthetünk, például úgy, hogy az R bitet a legnagyobb helyi értékű bit helyére másoljuk, de előtte a számlálót jobbra léptetve csökkentjük a régebbi hivatkozások súlyát. A módszer másik problémája, hogy a frissen betöltött (és így biztosan kis számláló értékű) lapokat is könnyen kiteheti újra a háttértárra. Ezért általában a frissen behozott lapokat az első használatig befagyasztjuk (page locking) a tárba. (NRU: Not Recently Used) algoritmus: az R (hivatkozott) és M (módosított) bitek használatán alapszik. A hivatkozottság egy idő elteltével elveszti a jelentőségét, ezért az operációs rendszer rendszeres időközönként törli az R bitet. Ugyanakkor az M bit értékét őrizni kell, hiszen törlése információ veszteséghez vezetne. A két bit értéke alapján az algoritmus a lapokat négy csoportba osztja, és lapkivitelnél hátranézve és a használat idejét és módját is figyelembe véve, a lehető legkisebb prioritású csoportból választ véletlenszerűen. Óra/Második esély: Egyetlen bittel, referenciabittel mérem, hogy volt-e hivatkozás a lapra, vagy nem. Ha 0 a bit értéke, akkor nem volt, és az a lap lesz az áldozat. A lapok referenciabitjeit átnézzük ciklusban. Ha van nullás bit, akkor az lesz az áldozat. Ha volt hivatkozás a lapra, akkor a referenciabitet lenullázom, ezzel adok neki még egy esélyt. Kiküszöböli a FIFO hibáját, nem törli a gyakran használt lapokat. 30. Vergődés (trashing), a lokalitás elv, munkakészlet (working set) algoritmus lényege. Vergődés (Trashing): lapcserélgetés folyik. Ha túl sok a laphiba, sok az I/O művelet, ennek következtében a program futása észre vehetően jóval lassabb lesz. Szembetűnő a vergődés megjelenése a gépen, az a jelenség mikor a merevlemez nagyon dolgozik, a gép meg olyan szinten be van lassulva, hogy már az egérkurzor is szaggat. Lokalitás elv: vergődés elleni modell. Több lapot, keretet egyszerre tartunk a memóriában, melyekre lokálisan szükség van. Akár egy utasítás is megkövetelheti, hogy egyszerre több lap is benne legyen az operatív memóriában. Munkakészlet (working set): Prediktív dolog. Minden folyamatra kiterjed, összeadva a blokkok méretét, ha a méret meghaladja a fizikai memóriáét, akkor vergődés alakulhat ki. A munkakészlet meghatározásához használható jóslási technika, amely hasonló, mint az exponenciális átlagolás módszere, tehát jóslatot lehet mondani arra, hogy a folyamatnak hány lapra lesz szüksége.
9 31. Az operációs rendszer állománykezelésének általános jellemzői: az állomány (fájl), mint absztrakt periféria. Egy állomány absztrakt perifériát jelent. A fájl összekapcsolása a standard perifériával az operációs rendszer dolga. Az operációs rendszer számára egy fájl nem más, mint bájtok sorozata. A számítógépek az adatokat különböző fizikai háttértárakon tárolhatják. Egy egységes logikai szemléletet vezettek be az adattárolásra és adattárakra: az operációs rendszer elvonatkoztatva a tároló eszköz és a tárolt adat fizikai tulajdonságaitól, egy logikai tároló egységet (adatállomány/fájl/file) használ. A fájlokat az operációs rendszer képezi le a konkrét fizikai tároló berendezésre. Felhasználói szemszögből: a fájl összetartozó adatok egy kollekciója, amelyeket egy másodlagos tárban tárolunk. A fájl a felhasználó számára az adattárolás legkisebb allokációs egysége: felhasználói adatot a háttértáron csak valamilyen fájlban tárolhatunk. Az operációsrendszer támogatást nyújthat a fájl tartalmának kezelésében, a fájl szerkezetének (adatszerkezet) létrehozásában. 32. Az állományszerkezet fogalmai (mező, rekord, állomány, adatbázis) és az állományokkal kapcsolatos alapvető műveletek. Mező: az adat alapvető egysége, egy értéket tartalmaz, hosszával és típusával jellemezhető Rekord: összetartozó mezők gyűjteménye, egy egységként kezelhető Állomány: hasonló rekordok gyűjteménye, önálló egység, egyedi fájlnevek, hozzáférés korlátozható Adatbázis: összetartozó adatok gyűjteménye, az elemek között kapcsolatok léteznek Alapműveletek: 1. Létrehozás (create) területallokálás + új bejegyzés a directoryba. 2. Írás (write) write pointer szerepe 3. Olvasás (read) kurrens pozíció szerepe 4. Újrapozicionálás (repositioning) 5. Törlés (deleting) 6. Csonkítás (truncate) További műveletek: bővítés (append), átnevezés (rename), másolás (copy), az attribútumok megváltoztatása. 33. Operációs rendszer és futtató rendszer támogatás az állomány kezeléshez: a fájlrendszer architektúrája (rétegei). Az állomány megnyitás és lezárás szerepe. Fájlkezelő rendszer a fájlokhoz való hozzáférést biztosítja a felhasználók számára a programozónak nem szükséges fájlkezelő szoftvert fejlesztenie, ez az op. rendszer egyik szolgáltatása Fájlrendszer architektúra Eszközkezelők: o legalacsonyabb szint o perifériákkal való közvetlen kommunikáció (eszközfüggő) o I/O műveletek megkezdéséért felelős az adott eszközön o I/O kérelmeket dolgoz fel Fzikai I/O: o alacsony (blokk) szintű műveleteket végez o a blokkok elsődleges memóriában való elhelyezésével foglalkozik
10 I/O felügyelő: o a fájl I/O elkezdéséért és bejezéséért felelős o a hozzáférés ütemezésével foglalkozik (telj esítményfokozás) o az operációs rendszer része Logikai I/O o lehetővé teszi az alkalmazások és a felhasználó számára a rekordokhoz való hozzáférést o általános célú rekord I/O műveleteket szolgáltat o a fájlokat jellemző alapvető adatokat tartja karban Megnyitáskor először a rendszer beolvassa az attribútumokat, ezután a munka fájlal felgyorsul a feldolgozás. Először kiderül, hogy létezik-e a fájl. Ha outputállomány, ezzel hozza létre az iniciális attribútumait. Ezzel valósul meg a fájlvédelem, az osztott felhasználás, vagyis ha többen megnyitották, szabad-e nekem használni. Lezáráskor közlöm, hogy én hoztam létre, hogy más is használta, és a rendszer visszaírja az attribútumokat a háttértárra. Mentésnél a rendszer lezárja és újranyitja az állományt. 34. Fájl szervezési módok és támogatásuk (pile, szekvenciális, indexelt, indexszekvenciális, direkt/hashing). pile adatgyűjtés érkezési sorrendben (struktúrálatlanul) a cél: nagy mennyiségű adatot felhalmozni és elmenteni rekordoknak különböző mezőik lehetnek nincs szerkezete a rekordhoz való hozzáférés fárasztó kereséssel jár... szekvenciális a rekordokat egyetlen sorrendben, a fájl első rekordjától az utolsó felé haladva éri el, mely sorrend megegyezik a rekordok létrehozásának sorrendjével a rekordok mérete és formátuma azonos, kulcsmező használata egyértelműen meghatározza a rekordot a rekordok fizikailag egymás után következnek, vagy rekordmutatók használatával egy láncolt lista határozza meg a rekordok sorrendjét. akkor alkalmazzuk, ha a fájlt használó program a rekordok összességének feldolgozását igényli indexelt a különböző kulcsmezőkhöz többszintű indexet használunk új rekord hozzáadása esetén az összes indexfájlt frissíteni kell olyan alkalmazásoknál használatos, ahol az információ időzítése kritikus indexelt szekvenciális direkt hozzáférési eljárás, amely a kulcs szerinti kereséshez indexeket használ index: kulcsértékeket és rekordmutatókat tartalmazó táblázat. Az index lehet egyszintű vagy többszintű. Az indexek külön fájlba, ún. indexfájlba kerülnek. az egyszintű indexben illetve a többszintű index legalsó szintjén a kulcsértékek mellett a rekordmutatókat találjuk, míg a többszintű index felsőbb szintjein a kulcsértékek mellett az alattuk lévő szint táblázataira találunk utalásokat. új rekordok hozzáadása egy overflow fájlhoz, amit firssítéskor hozzáfűzünk a fő fájlhoz a teljesítmény növeléséhez többszintű indexeket lehet használni ugyanahhoz a kulcsmezőhöz olyan adatbázisokhoz is alkalmazzuk, ahol gyakoriak az összetett feltételű keresések direkt hasításos (hash) fájlok direkt hozzáférési eljárás, melynek során egy kulcs értékéből az ún. hasítófüggvény határozza meg a rekordmutatót. Ha az így kijelölt helyen nincs a keresett rekord, az eljárás szekvenciális kereséssel folytatódik. kulcsmező szükséges minden rekordhoz alkalmazás: ha a tárolandó adatmennyiséghez képest legalább 3-4- szeres terület áll rendelkezésre
11 35. Könyvtár (fájljegyzék/directory) szerkezetek fejlődése, fájljegyzékekkel kapcsolatos operációs rendszer műveletek. Tartalom: fájlokkal kapcsolatos információkat tartalmaz (kiterjesztés, hely, tulajdonos) a könyvtár maga is egy fájl, melynek tulajdonosa az operációs rendszer a fájlnevek és fájlok közötti kapcsolatot biztosítja Könyvtárszerkezet Egyszintű könyvtár o bejegyzések listája, minden fájlhoz egy o szekvenciális fájl, ahol a fájlnevek szolgálnak kulcsként o nem nyújt segítséget a fájlok rendezéséhez (csoportosítási problémák) o nem lehet két különböző fájlnak ugyanaz neve! (elnevezési problémák) Kétszintű könyvtár o egy-egy jegyzék minden felhasználónak és egy főkönyvtár (user/master dir.) o a főkönyvtár minden felhasználóhoz tartalmaz bejegyzést (hozzáférési jogok) o minden felhasználói jegyzék egy egyszerű listája a felhasználó fájljainak o névadási probléma megoldva, de csoportosítás továbbra sem lehetséges 36. Fa szerkezetű és aciklikus fájljegyzékek. Fa-szerkezetű könyvtár o főkönyvtár, alatta felhasználói könyvtárak o egy fájljegyzék bizonyos elemei lehetnek újabb fájljegyzékek (alfájljegyzék), így fájljegyzékeknek egy hierarchikus rendszere jön létre o a fájlok a főkönyvtárból kiindulva különböző ágakon haladva találhatók meg o ez lesz a fájl elérési útja (pathname) o több fájlnak is lehet azonos neve, amíg az elérési útjuk eltérő o munkakönyvtár (current directory) váltása cd() o a fájlok a munkakönyvtárhoz képest is hivatkozhatók (relative path) Aciklikus fájljegyzék (fájljegyzék=directory: o Egy aljegyzék (fájl) osztott használatának problémája: több felhasználó/alkalmazás szeretné a o saját directory rendszerében látni. o Megoldás: egy típusú directory bejegyzésnek, valamely fájlra, vagy aljegyzékre mutató kapcsolónak (symbolic link) a bevezetése. Logikailag: alias-képzés! o Technikailag lehetséges lenne a mutató (link) helyett a teljes directory bejegyzést 37. Fájl hozzáférési módok és fájlvédelem, UNIX fájlvédelem. Fájlmegosztás Többfelhasználós rendszerben a fájlok megoszthatók a felhasználók között Hozzáférési jogok o nincs a felhasználó még a fájl létezéséről sem tud a felhasználó számára nem engedélyezett azon könyvtár olvasása, mely tartalmazza a fájlt o ismeret a felhasználó csak a fájl létezéséről tud, illetve hogy ki a fájl tulajdonosa o végrehajtás a felhasználó betöltheti és futtathatja a programot, de nem másolhatja o olvasás a fájl minden célból olvasható, így futtatható és másolható is o hozzáfűzés a fájlhoz adat hozzáfűzhető, de a fájl eredeti tartalma nem törölhető és módosítható o frissítés a fájl módosítható, törölhető, létrehozható, újraírható, stb. o védelem megváltoztatása a felhasználó a hozzáférési jogokat megváltoztathatja o törlés a felhasználó törölheti a fájlt
12 o tulajdonos az összes elöbbi joggal rendelkezik jogokat határozhat meg más felhasználó számára a következő csoportosítással o egy bizonyos felhasználó o felhasználók egy csoportja (user group) o mindenki (publikus fájlok esetén) Szimultán hozzáférés o a felhasználó lezárhatja a fájlt frissítés megakadályozása céljából o a felhasználó lezárhat egyedi rekordokat frissítés közben o a megosztott hozzáférés problémái: kölcsönös kizárás és holtpont 38. Fájl allokáció: folytonos, láncolt, indexelt. Másodlagostár-kezelés o fájl allokáció: másodlagos tárhely fájloknak való kiosztása o szabad tárhely kezelés: nyomon követi a kiosztásra alkalmas tárhelyet Előfoglalás o a fájl létrehozásakor szükség van a lehető legnagyobb várható fájlméretre o nehéz elég pontosan megjósolni a potenciális maximális fájlméretet o fájlméret túlbecslése célravezető Háttértár kiosztási módszerek folytonos kiosztás o minden fájl egymást követő blokkok sorozatát foglalja el o a helyfoglalás katalógusbejegyzése: kezdő blokk és elfoglalt blokkok száma o algoritmusok szükségesek a megfelelő méretű szabad helyek megkeresésére o algoritmusok közös hibája: külső töredezettség veszélye o állományok általában nem bővíthetők!! láncolt kiosztás o minden állomány blokkok lácolt listája, ezek a lemezen tetszőleges helyen helyezkednek el o minden blokk tartalmaz egy mutatót a lánc következő blokkjára o a fájl allokációs tábla bejegyzése az első és az utolsó blokkra mutat o nincs külső töredezettség, és a fájlok egyszerűen bővíthetők o szekvenciális fájlok esetén biztosít nagy hatékonyságot indexelt kiosztás o mutatókat indexblokkokba tömöríti, az indexblokk i-edik eleme az állomány i. blokkjára o mutat, a fájlallokációs tábla az indexblokk címét tárolja 39. A FAT. Az indexelt állományszervezés általánosítása. Elv: 1 indextábla, minden blokkhoz 1 bejegyzés,olyan univerzális indexelés, mikor a pointereket a memóriában tartom, minden blokkhoz 1 pointer, ha a szóban forgó blokk fájlhoz tartozik, megmutatja melyik a fájlnak a következő blokkja. Rendszertöltéskor a memóriába be lehet vinni a fat táblát. ha nagy a háttértár, akkor blokkok helyett foglalási egységet használunk (cluster). Tehát a FAT 2 helyen van jelen, a memóriában és a háttértáron, amit az újabb rendszerek updatelnek. A FAT 32 annyiban különbözik a FAT-tól, hogy a clusterek 32 bitesek. A FAT nem tartalmazza a fájlnevet, azt a directory tartalmazza. 40. A UNIX rendszerek indexelt allokációjának sémája. (INODE) Az inode-ok egy-egy fájl minden adatát tartalmazzák a nevén kívül. A név ugyanis a könyvtárban tárolódik az inode sorszámával együtt. Az inode több adatblokk sorszámát tartalmazza, melyek a fájl adatait tárolják. Az inode írja le egy fájl lemezen való elhelyezkedését, a fájl tulajdonosát, a hozzáférési jogosultságokat és időket. Minden fájl egy és csak is egy inode-dal rendelkezik, míg neve több is lehet. A néven keresztül lehet kapcsolatot teremteni az inode-dal, amely azután elvezet a fájlban tárolt információhoz. az inode tartalmazza: a fájl tulajdonosainak azonosítóját, a fájl típusát, hozzáférési jogokat, utolsó hozzáférés illetve módosítás idejét, fájlra mutató linkek számát, fájlméretet, a fájl által elfoglalt lemezblokkok táblázatát
13 41. Szabadhely kezelés. Bit tábla használata: diszk minden blokkjához egy bitet rendelünk, a bit értéke mutatja az adott blokk foglaltságát Láncolás: láncolt lista a szabad blokkokról Indexelés: indextábla a szabad blokkokról Szabad blokkok listája: külön területen, a diszken tárolva 42. Directory implementáció. A jegyzék maga is egy fájl, ami bejegyzéseket tartalmaz más fájlokról. A bejegyzésekben a fájlok attribútumait tárolhatjuk. Miután a jegyzék is fájl, blokkok tartoznak hozzá is. Blokkjain belül vannak a bejegyzések, ezek lehetnek állandó, vagy változó hosszúságúak. A bejegyzésekben az attribútumok között a legfontosabb a fájlnév. A bejegyzések struktúrája lehet: lineáris, nem rendezett bejegyzéseken, amik között nem foglalt bejegyzések is lehetnek (a törölt fájlokra); rendezett, hézagok nélküli bejegyzéseken, ahol is gyorsabb keresési módszerek is megvalósíthatók; hash táblás: a szokásos szekvenciális bejegyzések mellett egy hash táblát is implementálnak, ami a gyorsabb keresést segíti.
Operációs rendszerek II. kidolgozott tételsor Verzió 1.0 (Build: 1.0.2011.12.30.)
Operációs rendszerek II. kidolgozott tételsor Verzió 1.0 (Build: 1.0.2011.12.30.) Készült: Dr. Fazekas Gábor Operációs rendszerek 2. diasorok és előadásjegyzetek Ellenőrző kérdések 2011. december 21-i
9. Virtuális memória kezelés
9. Virtuális memória kezelés Háttér Igény szerinti (kényszer) lapozás A kényszer lapozás teljesítménye Laphelyettesítési algoritmusok Frame-k allokálása Vergôdés (csapkodás, thrashing) Kényszer szegmentálás
Fábián Zoltán Hálózatok elmélet
Fábián Zoltán Hálózatok elmélet Fizikai memória Félvezetőkből előállított memóriamodulok RAM - (Random Access Memory) -R/W írható, olvasható, pldram, SDRAM, A dinamikusan frissítendők : Nagyon rövid időnként
Operációs rendszerek II. Folyamatok ütemezése
Folyamatok ütemezése Folyamatok modellezése az operációs rendszerekben Folyamatok állapotai alap állapotok futásra kész fut és várakozik felfüggesztett állapotok, jelentőségük Állapotátmeneti diagram Állapotátmenetek
Nyíregyházi Egyetem Matematika és Informatika Intézete. Fájl rendszer
1 Fájl rendszer Terminológia Fájl és könyvtár (mappa) koncepció Elérési módok Fájlattribútumok Fájlműveletek ----------------------------------------- Könyvtár szerkezet -----------------------------------------
Operációs rendszerek III.
A WINDOWS NT memóriakezelése Az NT memóriakezelése Memóriakezelő feladatai: Logikai-fizikai címtranszformáció: A folyamatok virtuális címterének címeit megfelelteti fizikai címeknek. A virtuális memóriakezelés
Problémák. Lehet hogy a program nem fér be a memóriába Mozgatás diszkre és vissza A programok lokalitásának elve
Virtuális memória 1 Problémák Lehet hogy a program nem fér be a memóriába Mozgatás diszkre és vissza A programok lokalitásának elve A program rövid idő alatt csak kis részét használja a memóriának Biztonság
Operációs rendszerek II.
Operációs rendszerek II. 1. Az operációs rendszer memóriakezelőjével szemben támasztott követelmények (relokáció, védelem, megosztás, logikai szervezés, fizikai szervezés) Megosztás (Sharing): a hatékonyságot
Fájl rendszer (implementáció) Fájl rendszer struktúra Allokációs módszerek Szabad hely kezelése Directory implementáció Helyreállítás
1 Fájl rendszer (implementáció) Fájl rendszer struktúra Allokációs módszerek Szabad hely kezelése Directory implementáció Helyreállítás 2 Fájl rendszer struktúra A fájl rendszer rétegekből (layers) áll,
Operációs rendszerek 1. 8. előadás Multiprogramozott operációs rendszerek
Operációs rendszerek 1. 8. előadás Multiprogramozott operációs rendszerek Soós Sándor Nyugat-magyarországi Egyetem Faipari Mérnöki Kar Informatikai és Gazdasági Intézet E-mail: soossandor@inf.nyme.hu 2011.
Máté: Számítógép architektúrák 2010.12.01.
Máté: Számítógép architektúrák... A feltételes ugró utasítások eldugaszolják a csővezetéket Feltételes végrehajtás (5.5 5. ábra): Feltételes végrehajtás Predikáció ió C pr. rész Általános assembly Feltételes
9. Állományok kezelése. Operációs rendszerek. Állomány (file) Könyvtár. Az állománykezelő feladatai. Az állományrendszer réteges implementációja
Operációs rendszerek 9. Állományok kezelése Simon Gyula Felhasznált irodalom: Kóczy-Kondorosi (szerk.): Operációs rendszerek mérnöki megközelítésben Tanenbaum: Modern Operating Systems 2nd. Ed. Silberschatz,
8. Memória management
8. Memória management Háttér Logikai és fizikai címtér Swapping Folytonos allokálás Lapozás Szegmentáció Szegmentáció lapozással 101 Háttér Az számítógép (processzor) kapacitásának jobb kihasználása megköveteli,
Számítógép architektúrák
Számítógép architektúrák Számítógépek felépítése Digitális adatábrázolás Digitális logikai szint Mikroarchitektúra szint Gépi utasítás szint Operációs rendszer szint Assembly nyelvi szint Probléma orientált
12. Másodlagos tár szerkezet
12. Másodlagos tár szerkezet Diszk felépítés Diszk ütemezés Diszk kezelés Swap (csere) terület kezelés Diszk megbízhatóság Stabil-tár implementáció 71 Diszk felépítés Logikailag a diszk blokkokból képezett
Dr. Illés Zoltán zoltan.illes@elte.hu
Dr. Illés Zoltán zoltan.illes@elte.hu Operációs rendszerek kialakulása Op. Rendszer fogalmak, struktúrák Fájlok, könyvtárak, fájlrendszerek Folyamatok Folyamatok kommunikációja Kritikus szekciók, szemaforok.
Operációs rendszerek. UNIX fájlrendszer
Operációs rendszerek UNIX fájlrendszer UNIX fájlrendszer Alapegység: a file, amelyet byte-folyamként kezel. Soros (szekvenciális) elérés. Transzparens (átlátszó) file-szerkezet. Link-ek (kapcsolatok) létrehozásának
Ütemezés (Scheduling),
1 Ütemezés (Scheduling), Alapfogalmak Ütemezési feltételek (kritériumok) Ütemezési algoritmusok Több-processzoros eset Algoritmus kiértékelése 2 Alapfogalmak A multiprogramozás célja: a CPU foglaltság
Számítógép Architektúrák
A virtuális memória Horváth Gábor 2016. március 30. Budapest docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu Virtuális tárkezelés Motiváció: Multitaszking környezet Taszkok
Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek
Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek Tömb Ugyanolyan típusú elemeket tárol A mérete előre definiált kell legyen és nem lehet megváltoztatni futás során Legyen n a tömb mérete. Ekkor:
Nem biztos, hogy mindenhol helytáll, helyenként hiányos, de az eddigi kérdések össze vannak gyűjtve őszi félév első zhval bezárólag.
Nem biztos, hogy mindenhol helytáll, helyenként hiányos, de az eddigi kérdések össze vannak gyűjtve. 2013 őszi félév első zhval bezárólag. 1. Mi az operációs rendszer kernel módja és a felhasználói módja
Operációs rendszerek. Az NT memóriakezelése
Operációs rendszerek MS Windows NT (2000) memóriakezelés Az NT memóriakezelése 32-bites virtuális memóriakezelés: 4 GB-os címtartomány, alapesetben: a fels! 2 GB az alkalmazásoké, az alsó 2 GB az OPR-é.
Egyirányban láncolt lista
Egyirányban láncolt lista A tárhely (listaelem) az adatelem értékén kívül egy mutatót tartalmaz, amely a következő listaelem címét tartalmazza. A láncolt lista első elemének címét egy, a láncszerkezeten
10. Fájl rendszer interfész
10. Fájl rendszer interfész Fájl koncepció Elérési módok Könyvtár szerkezet Védelem Konzisztencia szemantika 140 Fájl koncepció A számítógépek az adatokat különbözô fizikai háttértárakon tárolhatják (pl.
Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája
Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból
Ütemezés (Scheduling),
1 Ütemezés (Scheduling), Alapfogalmak Ütemezési feltételek (kritériumok) Ütemezési algoritmusok Több-processzoros eset Algoritmus kiértékelése 2 Alapfogalmak A multiprogramozás célja: a CPU foglaltság
Programok, statikus linkelés
Memória kezelés 1 Programok, statikus linkelés Rendszer könyvtár, mint bármelyik másik tárgykód (object file) Előny Egyszerű Nincs verzió probléma, program és library illeszkedik Hátrány Nagy bináris kód
11. Gyakorlat. Az operációs rendszer szintje
11. Gyakorlat Az operációs rendszer szintje Az operációs rendszer szintű utasítások az alkalmazói programozók rendelkezésére álló teljes utasításkészletet jelentik. Tartalmazzák majdnem az összes ISA-szintű
Programozás alapjai. 10. előadás
10. előadás Wagner György Általános Informatikai Tanszék Pointerek, dinamikus memóriakezelés A PC-s Pascal (is) az IBM PC memóriáját 4 fő részre osztja: kódszegmens adatszegmens stackszegmens heap Alapja:
Szenzorhálózatok programfejlesztési kérdései. Orosz György
Szenzorhálózatok programfejlesztési kérdései Orosz György 2011. 09. 30. Szoftverfejlesztési alternatívák Erőforráskorlátok! (CPU, MEM, Energia) PC-től eltérő felfogás: HW közeli programozás Eszközök közvetlen
Adatszerkezetek 1. előadás
Adatszerkezetek 1. előadás Irodalom: Lipschutz: Adatszerkezetek Morvay, Sebők: Számítógépes adatkezelés Cormen, Leiserson, Rives, Stein: Új algoritmusok http://it.inf.unideb.hu/~halasz http://it.inf.unideb.hu/adatszerk
Processzus. Operációs rendszerek MINB240. Memória gazdálkodás. Operációs rendszer néhány célja. 5-6-7. előadás Memóriakezelés
Processzus Operációs rendszerek MINB40 5-6-7. előadás Memóriakezelés Egy vagy több futtatható szál Futáshoz szükséges erőforrások Memória (RAM) Program kód (text) Adat (data) Különböző bufferek Egyéb Fájlok,
Adatbáziskezelés. Indexek, normalizálás NZS 1
Adatbáziskezelés Indexek, normalizálás NZS 1 Fáljszervezés módjai Soros elérés: a rekordok a fájlban tetszőleges sorrendben, például a felvitel sorrendjében helyezkednek el. A rekord azonosítója vagyis
A számítógép egységei
A számítógép egységei A számítógépes rendszer két alapvető részből áll: Hardver (a fizikai eszközök összessége) Szoftver (a fizikai eszközöket működtető programok összessége) 1.) Hardver a) Alaplap: Kommunikációt
elektronikus adattárolást memóriacím
MEMÓRIA Feladata A memória elektronikus adattárolást valósít meg. A számítógép csak olyan műveletek elvégzésére és csak olyan adatok feldolgozására képes, melyek a memóriájában vannak. Az információ tárolása
Operációs rendszerek Memóriakezelés 1.1
Operációs rendszerek Memóriakezelés 1.1 Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK Operációs rendszerek p. A memóriakezelő A
Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)
1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)
Operációs rendszerek. UNIX/Linux fájlrendszerek
Operációs rendszerek UNIX/Linux fájlrendszerek Tartalom Linux fájlrendszerek UNIX/Linux fájlrendszerek Szimbolikus linkek Fájlrendszerek csatolása Virtuális fájlrendszer Szuperblokk Inode Objektumok 2
Utolsó módosítás:
Utolsó módosítás: 2011. 09. 08. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 10 11 12 13 14 Erősen buzzword-fertőzött terület, manapság mindent szeretnek
Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter
Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot
Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)
1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)
Operációs rendszerek. Az NT folyamatok kezelése
Operációs rendszerek Az NT folyamatok kezelése Folyamatok logikai felépítése A folyamat modell: egy adott program kódját végrehajtó szál(ak)ból és, a szál(ak) által lefoglalt erőforrásokból állnak. Folyamatok
Operációs rendszerek. Folyamatok ütemezése
Operációs rendszerek Folyamatok ütemezése Alapok Az ütemezés, az események sorrendjének a meghatározása. Az ütemezés használata OPR-ekben: az azonos erőforrásra igényt tartó folyamatok közül történő választás,
Operációs rendszerek 1. kidolgozott tételsor Verzió: 1.0 (Build: 1.0.2011.05.19.)
Készült: Operációs rendszerek 1. kidolgozott tételsor Verzió: 1.0 (Build: 1.0.2011.05.19.) Operációs rendszerek I. elméleti (Dr. Fazekas Gábor), gyakorlati (Dr. Adamkó Attila) jegyzet Számítógép architektúrák
Utolsó módosítás:
Utolsó módosítás:2011. 09. 29. 1 2 4 5 MMU!= fizikai memóriaillesztő áramkör. Az utóbbinak a feladata a memória modulok elektromos alacsonyszintű vezérlése, ez sokáig a CPU-n kívül a chipset északi hídban
OPERÁCIÓS RENDSZEREK. Elmélet
1. OPERÁCIÓS RENDSZEREK Elmélet BEVEZETÉS 2 Az operációs rendszer fogalma Az operációs rendszerek feladatai Csoportosítás BEVEZETÉS 1. A tantárgy tananyag tartalma 2. Operációs rendszerek régen és most
Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem
13. Védelem A védelem célja Védelmi tartományok Hozzáférési mátrixok (access matrix, AM) A hozzáférési mátrixok implementációja A hozzáférési jogok visszavonása Képesség-alapú rendszerek Nyelvbe ágyazott
Utolsó módosítás:
Utolsó módosítás: 2012. 09. 06. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 Forrás: Gartner Hype Cycle for Virtualization, 2010, http://premierit.intel.com/docs/doc-5768
... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.
Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat
Informatikai Rendszerek Intézete Gábor Dénes Foiskola. Operációs rendszerek - 105 1. oldal LINUX
1. oldal LINUX 2. oldal UNIX történet Elozmény: 1965 Multics 1969 Unix (Kernighen, Thompson) 1973 Unix C nyelven (Ritchie) 1980 UNIX (lényegében a mai forma) AT&T - System V Microsoft - Xenix Berkeley
Számítógép felépítése
Alaplap, processzor Számítógép felépítése Az alaplap A számítógép teljesítményét alapvetően a CPU és belső busz sebessége (a belső kommunikáció sebessége), a memória mérete és típusa, a merevlemez sebessége
BASH script programozás II. Vezérlési szerkezetek
06 BASH script programozás II. Vezérlési szerkezetek Emlékeztető Jelölésbeli különbség van parancs végrehajtása és a parancs kimenetére való hivatkozás között PARANCS $(PARANCS) Jelölésbeli különbség van
5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix
2. Adattípusonként különböző regisztertér Célja: az adatfeldolgozás gyorsítása - különös tekintettel a lebegőpontos adatábrázolásra. Szorzás esetén karakterisztika összeadódik, mantissza összeszorzódik.
Operációs rendszerek. 3. előadás Ütemezés
Operációs rendszerek 3. előadás Ütemezés 1 Szemaforok Speciális változók, melyeket csak a két, hozzájuk tartozó oszthatatlan művelettel lehet kezelni Down: while s < 1 do üres_utasítás; s := s - 1; Up:
Algoritmusok és adatszerkezetek 2.
Algoritmusok és adatszerkezetek 2. Varga Balázs gyakorlata alapján Készítette: Nagy Krisztián 1. gyakorlat Nyílt címzéses hash-elés A nyílt címzésű hash táblákban a láncolással ellentétben egy indexen
Programozás alapjai II. (7. ea) C++ Speciális adatszerkezetek. Tömbök. Kiegészítő anyag: speciális adatszerkezetek
Programozás alapjai II. (7. ea) C++ Kiegészítő anyag: speciális adatszerkezetek Szeberényi Imre BME IIT M Ű E G Y E T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I. 2016.04.05. - 1
Operációs rendszerek II. Tárkezelés
Tárkezelés Témák I. Memória (központi tár) kezelés 1. Programok fizikai tárigényének csökkentése 2. Memória hézagmentes kitöltése. 3. Háttértár használata memória kiváltására. II. Állományrendszerek Mágneslemezes
Speciális adatszerkezetek. Programozás alapjai II. (8. ea) C++ Tömbök. Tömbök/2. N dimenziós tömb. Nagyméretű ritka tömbök
Programozás alapjai II. (8. ea) C++ Kiegészítő anyag: speciális adatszerkezetek Szeberényi Imre BME IIT Speciális adatszerkezetek A helyes adatábrázolás választása, a helyes adatszerkezet
7. Virtuális tárkezelés. Operációs rendszerek. Bevezetés. Motiváció 2. Motiváció 1. 7.1. A virtuális tárkezelés általános elvei
7. Virtuális tárkezelés Operációs rendszerek 7. Virtuális tárkezelés Simon Gyula Bevezetés A virtuális tárkezelés általános elvei Lapcsere stratégiák Folyamatok lapigénye, lapok allokációja Egyéb tervezési
Adatszerkezetek 2. Dr. Iványi Péter
Adatszerkezetek 2. Dr. Iványi Péter 1 Hash tábla A bináris fáknál O(log n) a legjobb eset a keresésre. Ha valamilyen közvetlen címzést használunk, akkor akár O(1) is elérhető. A hash tábla a tömb általánosításaként
Adatbázis rendszerek. dr. Siki Zoltán
Adatbázis rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati személyzeti
10. előadás Speciális többágú fák
10. előadás Adatszerkezetek és algoritmusok előadás 2018. április 17., és Debreceni Egyetem Informatikai Kar 10.1 A többágú fák kezelésére nincsenek általános elvek, implementációjuk elsősorban alkalmazásfüggő.
Memóriakezelés (Memory management) folytatás Virtuális memória és kezelése
1 Memóriakezelés (Memory management) folytatás Virtuális memória és kezelése Alapok (lapok, csere, hibák, címszámítás) Lapkiosztási elvek Lapcsere stratégiák A programozó szerepe a laphibák számának csökkenésében
Adatszerkezetek 1. Dr. Iványi Péter
Adatszerkezetek 1. Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot kódoltan tároljuk
Autóipari beágyazott rendszerek. Komponens és rendszer integráció
Autóipari beágyazott rendszerek és rendszer integráció 1 Magas szintű fejlesztési folyamat SW architektúra modellezés Modell (VFB) Magas szintű modellezés komponensek portok interfészek adattípusok meghatározása
Programozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék
9. előadás Wagner György Általános Informatikai Tanszék Leszámoló rendezés Elve: a rendezett listában a j-ik kulcs pontosan j-1 kulcsnál lesz nagyobb. (Ezért ha egy kulcsról tudjuk, hogy 27 másiknál nagyobb,
Programozás alapjai II. (7. ea) C++
Programozás alapjai II. (7. ea) C++ Kiegészítő anyag: speciális adatszerkezetek Szeberényi Imre BME IIT M Ű E G Y E T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I. 2016.04.05. - 1
Operációs rendszerek 1.
Operációs rendszerek 1. Fájlkezelés Balla Tibor balla.tibor@inf.unideb.hu Fájlrendszer: Könyvtárak és Fájlok Inode szuperblokk inode tábla tényleges lemezterület inode = index-node Az inode tábla egy fix
Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)
Adatszerkezetek Nevezetes algoritmusok (Keresések, rendezések) Keresések A probléma általános megfogalmazása: Adott egy N elemű sorozat, keressük meg azt az elemet (határozzuk meg a helyét a sorozatban),
Memóriakezelés (Memory management)
1 Memóriakezelés (Memory management) Háttér, alapok Logikai és fizikai címtér Valós címzésű menedzselés Partíciók Szabad/foglalt partíciók kezelése 2 Háttér, alapok Az számítógép (processzor) kapacitásának
15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30.
15. tétel Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. Edényrendezés Tegyük fel, hogy tudjuk, hogy a bemenő elemek (A[1..n] elemei) egy m elemű U halmazból kerülnek ki, pl. " A[i]-re
Operációs rendszerek feladatai
Számolási példák és algoritmusok Operációs rendszerek (VIMIA) Készítették: Darvas Dániel, Horányi Gergő, Jámbor Attila, Micskei Zoltán, Szabó Tamás Utolsó módosítás: 04. május. Verzió:..8 Budapesti Műszaki
Matematikai és Informatikai Intézet. 4. Folyamatok
4. Folyamatok A folyamat (processzus) fogalma Folyamat ütemezés (scheduling) Folyamatokon végzett "mûveletek" Folyamatok együttmûködése, kooperációja Szálak (thread) Folyamatok közötti kommunikáció 49
C programozási nyelv Pointerek, tömbök, pointer aritmetika
C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek
Előadás_#03. Előadás_03-1 -
Előadás_#03. 1. Ütemezés [OR_05_Ütemezés_ok.ppt az 1-30. diáig / Előadás_#03 (dinamikusan)] Tekintsük át, hogy eddig minek a kapcsán merült fel ütemezés. Tulajdonképpen minden olyan lépés, ami állapot
Tartalom. Operációs rendszerek. 5.1. Bevezetés. 5.2. CPU ütemezés. Középtávú ütemezés. Hosszútávú ütemezés
Tartalom Operációs rendszerek Bevezetés CPU ütemezés Ütemezési algoritmusok alapjai Ütemezési algoritmusok 5. Ütemezés Simon Gyula Felhasznált irodalom: Kóczy-Kondorosi (szerk.): Operációs rendszerek mérnöki
17. A 2-3 fák és B-fák. 2-3 fák
17. A 2-3 fák és B-fák 2-3 fák Fontos jelentősége, hogy belőlük fejlődtek ki a B-fák. Def.: Minden belső csúcsnak 2 vagy 3 gyermeke van. A levelek egy szinten helyezkednek el. Az adatrekordok/kulcsok csak
A programozás alapjai előadás. [<struktúra változó azonosítók>] ; Dinamikus adatszerkezetek:
A programozás alapjai 1 Dinamikus adatszerkezetek:. előadás Híradástechnikai Tanszék Dinamikus adatszerkezetek: Adott építőelemekből, adott szabályok szerint felépített, de nem rögzített méretű adatszerkezetek.
Operációs rendszerek előadás Multiprogramozott operációs rendszerek. Soós Sándor ősz
Operációs rendszerek 1. 8. előadás Multiprogramozott operációs rendszerek Soós Sándor 2011. ősz 1 Tartalomjegyzék. Tartalomjegyzék 1. Multiprogramozott operációs rendszerek 1 1.1. Multiprogramozás..........................
Előadás_#13. Egy lemez írási művelet kiszolgálása
Előadás_#13. 1. Az NT fájlrendszere, NTFS A korábbi fájl rendszerek vs. az NTFS korlátai: FAT12 alatt a fájl név 8.3 szerkezetű, egy fájl maximális mérete nem lehet több mint 32MB. A maximális partíció
Occam 1. Készítette: Szabó Éva
Occam 1. Készítette: Szabó Éva Párhuzamos programozás Egyes folyamatok (processzek) párhuzamosan futnak. Több processzor -> tényleges párhuzamosság Egy processzor -> Időosztásos szimuláció Folyamatok közötti
Architektúra, megszakítási rendszerek
Architektúra, megszakítási ek Mirıl lesz szó? Megszakítás fogalma Megszakítás folyamata Többszintű megszakítási ek Koschek Vilmos Példa: Intel Pentium vkoschek@vonalkodhu Koschek Vilmos Fogalom A számítógép
Fájlrendszerek. A Windows operációs rendszerek fájlrendszere
Fájlrendszerek A Windows operációs rendszerek fájlrendszere Fájlrendszerek definíció A számítástechnika egy fájlrendszer alatt a számítógépes fájlok tárolásának és rendszerezésének a módszerét érti, ideértve
Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015
Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás - Pál László 12. ELŐADÁS Állomány-kezelés 2 Objektumorientált programozás - Pál László Mi a
8. gyakorlat Pointerek, dinamikus memóriakezelés
8. gyakorlat Pointerek, dinamikus memóriakezelés Házi ellenőrzés Egy számtani sorozat első két tagja A1 és A2. Számítsa ki a sorozat N- dik tagját! (f0051) Egy mértani sorozat első két tagja A1 és A2.
Az operációs rendszer szerkezete, szolgáltatásai
Az operációs rendszer szerkezete, szolgáltatásai Felhasználói programok Rendszerhívások Válaszok Kernel Eszközkezelők Megszakításvezérlés Perifériák Az operációs rendszer szerkezete, szolgáltatásai Felhasználói
Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:
Operációs rendszerek MS Windows NT (2000) folyamatok Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: szálak ütemezése végrehajtásra
OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -
OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc - koczka.ferenc@ektf.hu KÖVETELMÉNYEK GYAKORLATI JEGY: Két zárthelyi dolgozat eredményes megírása. Forrás: http://wiki.koczka.hu ELMÉLETI VIZSGA Az előadások
Operációs Rendszerek II. 5. előadás
Operációs Rendszerek II. 5. előadás Virtuális memóriakezelés Megjelenésekor komoly viták zajlottak a megoldás hatékonyságáról A (nem túl jelentős) teljesítmény csökkenésért cserébe jelentős előnyök: a
Adatbázis-kezelő rendszerek. dr. Siki Zoltán
Adatbázis-kezelő rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati
Listák, szótárak, fájlok Listák, szótárak, fájlok
lista fogalma, használata listák másolása (alap szintű, teljes körű) szótárak fogalma, használata adatbázis alkalmazás fejlesztése műveletek fájlokkal (megnyítás, írás, olvasás, lezárás) rejtjelező alkalmazás
Adatbázis rendszerek Gy: Az adattárolás fejlődése
Adatbázis rendszerek 1. 2. Gy: Az adattárolás fejlődése 1/22 B ITv: MAN 2017.09.17 Papír alapú adattárolás Lyukkártya 2/22 Probléma: 3/22 Papír alapú adattárolás Lyukszalag 4/22 Papír alapú adattárolás
Operációs rendszerek
Operációs rendszerek 2. EA Regiszter: A regiszterek a számítógépek központi feldolgozó egységeinek (CPU-inak), illetve mikroprocesszorainak gyorsan írható-olvasható, ideiglenes tartalmú, és általában egyszerre
(kernel3d vizualizáció: kernel245_graph.mpg)
(kernel3d vizualizáció: kernel245_graph.mpg) http://www.pabr.org/kernel3d/kernel3d.html http://blog.mit.bme.hu/meszaros/node/163 1 (ml4 unix mérés boot demo) 2 UNIX: folyamatok kezelése kiegészítő fóliák
Operációs Rendszerek II. Első verzió: 2009/2010. I. szemeszter Ez a verzió: 2009/2010. II. szemeszter
Operációs Rendszerek II. Első verzió: 2009/2010. I. szemeszter Ez a verzió: 2009/2010. II. szemeszter 1 Mai témák ZFS NTFS 2 ZFS Új koncepció, nem továbbgondolás Pooled storage modell Minden művelet copy-on-write
Programozás alapjai. 8. előadás
8. előadás Wagner György Általános Informatikai Tanszék Azonosítók érvényességi köre Kiindulási alap: a blokkszerkezetű programozási nyelvek (C, FORTRAN, PASCAL, ) Egy program szerkezete: Fejléc Deklarációsrész
Előadás_#08. Előadás_08-1 -
Előadás_#08. 1. Állományrendszerek [OR_12_Tárkezelés-File_rendszer_ok.ppt az 44-72. diáig / nem minden diát érintve] Rövid hardver áttekintés a lemez alapú háttértárakról: FDD 18 szektor, 80 sáv, 2 oldal,
2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés
. Számítógépek működési elve Bevezetés az informatikába. előadás Dudásné Nagy Marianna Az általánosan használt számítógépek a belső programvezérlés elvén működnek Külső programvezérlés... Vezérlés elve
CPU regiszterei. Átmeneti tár / Gyorsító tár / Cache memória (Oprendszer vezérelt) Központi memória
Előadás_#07. 1. Tárkezelés [OR_12_Tárkezelés-File_rendszer_ok.ppt az 1-29. diáig / nem minden diát érintve] A tárolóeszközök több szempont szerint is csoportosíthatóak (sebesség, kapacitás, mozgó alkatrészek
Ismerkedjünk tovább a számítógéppel. Alaplap és a processzeor
Ismerkedjünk tovább a számítógéppel Alaplap és a processzeor Neumann-elvű számítógépek főbb egységei A részek feladatai: Központi egység: Feladata a számítógép vezérlése, és a számítások elvégzése. Operatív