Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Operációs rendszerek Bátfai Norbert Debreceni Egyetem Informatikai Kar (DE IK), Információ Technológia.

Hasonló előadás


Az előadások a következő témára: "Operációs rendszerek Bátfai Norbert Debreceni Egyetem Informatikai Kar (DE IK), Információ Technológia."— Előadás másolata:

1 Operációs rendszerek Bátfai Norbert nbatfai@inf.unideb.hu http://www.inf.unideb.hu/~nbatfai/ Debreceni Egyetem Informatikai Kar (DE IK), Információ Technológia Tanszék egyetemi tanársegéd Dokumentum verzió: 0.0.40, http://www.inf.unideb.hu/~nbatfai/#oshttp://www.inf.unideb.hu/~nbatfai/#os DEIK_MIPPOS_2008tavasz_BN_1.odp Debrecen, 2008. április 30. 1. előadás – KÉK VAGY PIROS PIRULA Programozó Páternoszter DE IK mérnök informatikus szak előadás

2 Operációs rendszerek előadás Bátfai, Norbert Debreceni Egyetem, Informatikai Kar, Információ Technológia Tanszék nbatfai@inf.unideb.hu Copyright © 2008 Bátfai Norbert E közlemény felhatalmazást ad önnek jelen dokumentum sokszorosítására, terjesztésére és/vagy módosítására a Szabad Szoftver Alapítvány által kiadott GNU Szabad Dokumentációs Licenc 1.2-es, vagy bármely azt követő verziójának feltételei alapján. Nem változtatható szakaszok: A szerzőről. Címlap szövegek: Programozó Páternoszter, Bátfai Norbert, Gép melletti fogyasztásra. Hátlap szövegek: Belépés a gépek mesés birodalmába. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being: A szerzőről, with the Front- Cover Texts being: Programozó Páternoszter, Bátfai Norbert, Gép melletti fogyasztásra, and with the Back-Cover Texts being: Belépés a gépek mesés birodalmába. Felhasználási engedély A GNU Free Documentation License nem hivatalos magyar fordítása: http://www.gnu.hu/fdl.htmlhttp://www.gnu.hu/fdl.html

3 Az első előadás vázlata Bevezetés és elmélet ● Az informatikai kultúra kora ● A kurzusról ● Az előadóról ● Ars Poetica ● Az operációs rendszer (általában, vele és nélküle) ● Egy kis történelem ● A GNU és az Open Source mozgalom Példák ● GNU/Linux (Fedora-, Ubuntu-, Debian GNU/Linux) Kernelfordítás ● MINIX ● FreeBSD ● OpenSolaris (Nexenta – GNU/Solaris, BeleniX) Gyakorlat ● A gyakorlat javasolt témája

4 Wachowski Andy és Wachowski Larry. The Matrix. (1999) http://www.imdb.com/title/tt0133093/ http://www.imdb.com/title/tt0133093/ Lépten nyomon hivatkozunk rá, még itt, ebben az előadásban is! Arntz William és Chasse Betsy. What the #$*! Do We (K)now!? Mi a csudát tudunk a világról? (2004) http://www.imdb.com/title/tt0399877/, http://www.whatthebleep.com/http://www.imdb.com/title/tt0399877/http://www.whatthebleep.com/ Szeretném, ha ez lenne a jövő: http://www.youtube.com/watch?v=aw9Jo5qNCsQhttp://www.youtube.com/watch?v=aw9Jo5qNCsQ (Ő ugyanaz a Hameroff, mint a filmben) Zemeckis Robert. Contact. (1997) http://www.imdb.com/title/tt0118884/http://www.imdb.com/title/tt0118884/ Ha hallgatóként ezt tudtam volna, kereshettem volna én is Isten üzenetét... Bailey David H. The BBP Algorithm for Pi. (2006) http://crd.lbl.gov/~dhbailey/dhbpapers/bbp-alg.pdf http://crd.lbl.gov/~dhbailey/dhbpapers/bbp-alg.pdf Programozói-információs civilizáció, avagy a feltételezett és ajánlott mozik Lehet Isten üzenete a matematikában? Lehetünk többek, mint Turing gépek? Hozhat megváltást az informatika?

5 Ezt olvasta Stewart Hameroff és így született az Orch OR tudatmodell: http://www.quantumconsciousness.orghttp://www.quantumconsciousness.org Informatikai ismeretterjesztés Penrose, Roger: ● A császár új elméje : számítógépek, gondolkodás és a fizika törvényei ● A nagy, a kicsi és az emberi elme : [kozmológia, kvantummechanika ésa tudatosság fizikája] Mérő László: ● Észjárások : a racionális gondolkodás korlátai és a mesterséges intelligencia ● Új észjárások : a racionális gondolkodás ereje és korlátai ● Az élő pénz : [a gazdasági vállalkozások eredete és az evolúció logikája] ● Mindenki másképp egyforma : a játékelmélet és a racionalitás pszichológiája Barabási, Albert-László: ● Behálózva : a hálózatok új tudománya : hogyan kapcsolódik minden egymáshoz, és mit jelent ez a tudományban, az üzleti és a mindennapi életben A felsorolt könyvek mind megtalálhatóak a könyvtárunkban.

6 A szentek keze Bátfai Norbert, Juhász István: Javát tanítok: Bevezetés a programozásba a Turing gépektől a CORBA technológiáig. http://www.hik.hu/tankonyvtar/site/books/b10108/konyv.pdf Megtalálható a könyvtárunkban. Csak elektronikusan a Kempelen Farkas Digitális Felsőoktatási Tankönyvtárban Bátfai Norbert: Nehogy már a mobilod nyomkodjon Téged! : A prog- ramozás egy szellemi sport: ismerd meg te is az alaplépéseket! http://www.eurosmobil.hu/NehogyMar

7 Az előadás egy általános áttekintést ad a tárgyról, de a tárgyalást a MINIX – GNU/Linux (illetve FreeBSD, OpenSolaris) – Java tengely mentén megpróbáljuk színesíteni. Az előadás anyagát ez a vetítés foglalja össze, alapkönyve pedig a Andrew S. Tanenbaum, Albert S. Woodhull: Operációs rendszerek, PANEM 1999. mivel ebből van sok a könyvtárban, ezért minden előadásban erre vonatkozóan adjuk meg az elolvasásra ajánlott oldalszámokat. Az új kiadás: Tanenbaum, Albert S. Woodhull: Operációs rendszerek : tervezés és implementáció, PANEM 2007. Az előadás megadja a gyakorlatokon elvégzendő feladatokat is, a legtöbb ilyen feladat a Programozó Páternoszter című elektronikus jegyzetben részletesen ki van dolgozva, ennek a 0.0.247 verziójára vonatkozóan hivatkozunk oldalszámokra. Az előadást számos hivatkozás említésével színesítjük, hogy önálló érdeklődésből is forgassátok! A kurzusról http://www.inf.unideb.hu/~nbatfai/#pp Hivatali adatok Kód: INBK211E-K4-01 Kredit: 4 OR 15- 20 PP 2- 7 OR3 11- 13

8 A tankönyvről (1999-es kiadás) 1. DEENK NAGYK 2.em. szabadpolc004.451.9 T26mell 2.DEENK Matematikai és Informatikai Intézet28.484 mell.mell 3.DEENK Matematikai és Informatikai Intézet26.272 mell.mell 4.DEENK Matematikai és Informatikai Intézet26.280 mell.mell 5.DEENK Matematikai és Informatikai Intézet26.289 mell.mell 6.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 mell mell 7.DEENK Matematikai és Informatikai Intézet28.483 mell.mell 8.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 mell mell 9.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 mell mell 10.DEENK NAGYK RaktárA/K 597.675 11.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 12.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 13.DEENK Műszaki Kar Könyvtára33.012 CD mell. 14.DEENK Matematikai és Informatikai Intézet28.484 15.DEENK Matematikai és Informatikai Intézet28.483 16.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 17.DEENK Társadalomtudományi Könyvtár szabadpolc681.3.06 T26 18.DEENK Műszaki Kar Könyvtára33.012 19.DEENK Matematikai és Informatikai Intézet26.289 20.DEENK Matematikai és Informatikai Intézet26.280 21.DEENK Matematikai és Informatikai Intézet24.293 22.DEENK Matematikai és Informatikai Intézet24.294 23.DEENK Matematikai és Informatikai Intézet24.295 24.DEENK Matematikai és Informatikai Intézet26.272 (2006-os kiadás) 1.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 mell 2.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 mell 3.DEENK NAGYK RaktárA 2.532.688 mell.mell 4.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 5.DEENK NAGYK RaktárA 2.532.688 6.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 7.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 (2007) 1.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 mell 2.DEENK NAGYK 2.em. szabadpolc004.451.9 T26 Andrew S Tanenbaum: A UNIX clone with source code for operating systems courses. ACM SIGOPS Operating Systems Review Volume 21, Issue (1987) http://portal.acm.org/citation.cfm?id=24592.24596 Andrew S. Tanenbaum, Albert S. Woodhull: Operációs rendszerek OR OR 3

9 Programozó Páternoszter Kiegészítések és a laborok anyaga http://www.inf.unideb.hu/~nbatfai/#pp Platformok és nyelvek a jegyzetben Programozási témák a jegyzetben PP 17 Az oldalszámok a 0.0.247 verzióra vonatkoznak.

10 Kiegészítő tankönyvek (2000) 1.DEENK NAGYK RaktárA 2.507.515 2.DEENK NAGYK RaktárA/K 2.507.515 3.DEENK NAGYK RaktárK 2.507.515 4.DEENK Matematikai és Informatikai Intézet 28.218 Ez a könyv elérhető a Kempelen Farkas Digitális Felsőoktatási tankönyvtárban is: http://www.hik.hu/tankonyvtar/site/books/b10096/ Benyó Balázs et al.: Operációs rendszerek mérnöki megközelítésben MM

11 Miért Linux, FreeBSD, MINIX és OpenSolaris? ● Mert lelkesedésből! ● Mert ingyenesen (is) elérhetőek, letölthetőek, használhatóak! ● Mert megismerhetőek, azaz forrásaik, megoldásaik tanulmányozhatóak, sőt, sok esetben még módosíthatóak is! ● Mert számos területen (például szervernek, asztali gépnek, beágyazott rendszernek, oktatásban) nagyon jók! (Tehát akár az otthoni gépedre is felteheted, használhatod - például egy Linux akár céged webszervere is lehet - és tanulmányozhatod őket. Ez a tulajdonság a Windows operációs rendszerekre tipikusan nem igaz, mert azok kizárólag kereskedelmi forgalomban megvásárolhatóak. De személyes véleményem, hogy a Windows asztali számítógépként a legtöbbet tudja kihozni a hardverből és megvalósítja azt a vágyat, hogy bárki könnyen kezelni tudja a gépet. Viszont nekünk most egy kicsit mélyebb szemléletmódra van szükségünk.)

12 Most is éppen egy Morpheusi választás előtt álsz! Most a piros pirula választása, ha felteszel (legalább) egy GNU/Linux rendszert a saját gépedre. Hogy melyiket, abban az előadás és a labor majd ad tanácsot. Take the Red Pill Mivel a hallgatóság – a tantervi háló szerint – a legoptimálisabb esetben is csak ezzel a kurzussal párhuzamosan hallgatja a C nyelvet, ezért természetesen sem az előadáson, sem a gyakorlaton nem kell egyetlen önálló programot sem megírnod! Amit tipikusan tenned kell: az a megkapott C források bemásolása egy fájlba, a fájl lefordítása, majd futtatása (tehát nem programozás, hanem csupán egyszerű CLI használat)! Ez után a futás során szerzett tapasztalataidat, esetleg magának a kódnak a lényegi pontjait emeljük ki, beszéljük meg a gyakorlatokon. Illetve úgy találkozhatsz még C kódokkal, hogy ha az előadásban el akarunk mesélni valamit, le akarunk írni valamilyen folyamatot akkor azt C vagy egy C-szerű nyelven tesszük meg, de ez nyilván nem programozás. Tehát a labor és az előadás sikeres teljesítéséhez sem kell szükségszerűen programoznod! - Ez KÉK PIRULA. De az érdeklődőknek segítek az anyaggal, feladatokkal, hogy lelkesedésükben akár programozhassanak is! - És most ez a PIROS PIRULA! Ne ess pánikba! A szereplő C kódok olvasásáról Wachowski Andy, Wachowski Larry: The Matrix: http://www.imsdb.com/scripts/Matrix,-The.html

13 Választott mottóink mégis „Csak akkor értesz valamit, ha be tudod programozni. Te magad és nem valaki más! Ha nem tudod beprogramozni, akkor csak úgy gondolod, hogy érted.” - Gregory Chaitin: META MATH! The Quest for Omega http://www.cs.auckland.ac.nz/CDMTCS/chaitin/omega.html „Nem tudok kimerítő leírást adni arról, hogy hogyan tudsz megtanulni programozni -- nagyon összetett tudásról van szó. Egyet azonban elárulhatok: a könyvek és tanfolyamok nem érnek túl sokat (sok, valószínűleg a legtöbb hacker autodidakta). Aminek van értelme: (a) kódot olvasni és (b) kódot írni.” - Eric Steven Raymond: How To Become A Hacker A magyar fordítás: http://esr.fsf.hu/hacker-howto.htmlhttp://esr.fsf.hu/hacker-howto.html „Beszélj más programozókkal, olvasd más programjait. Ez fontosabb minden könyvnél és minden tanfolyamnál.” - Peter Norvig: Teach Yourself Programming In Ten Years A magyar fordítás: http://mestyanm.extra.hu/doc/21_nap.htmlhttp://mestyanm.extra.hu/doc/21_nap.html

14 Ismert vicc a „Lucifer szemlét tart a pokolban”, szomorúan csattanó poénja, hogy a harmadik üstöt azért nem kell őrizni, mert abban magyarok fortyognak, s ők úgyis visszahúzzák egymást. Erre cáfoljunk rá a vizsgára készüléskor és a gyakorlati munka során: társainknak, egymásnak segítsünk! További remek lehetőség az egymásnak segítésre, ha a tapasztaltabbak segítséget nyújtanak a mindenféle (például GNU/Linux, FreeBSD, GNU/OpenSolaris) operációs rendszerek telepítésében érdeklődő csoporttársaiknak az otthoni gépükre. Iránymutatás a csoportmunkához Ha mégis megrémítenének a kódok Akkor gondolj arra, hogy ezek a programozói-információs civilizáció hieroglifái és nyugtasson meg az alábbi jel, hogy az adott fóliákat, vagy egyelőre az adott fóliákat csak illusztrációs célból villantottuk fel. i Az óra fóruma: http://forum.inf.unideb.hu/http://forum.inf.unideb.hu/

15 Számonkérés – előadás, vizsga A laboron két „kisbajnokságot” nyert hallgatók (nem csoportok) kérhetnek egy megajánlott ötöst az utolsó három gyakorlat valamelyikén: ez egy egyéni feladat megoldását jelenti a gyakorlaton. Maximum 2 fős csoportok a félév során kérhetnek önálló vizsgaleladatot, amit az utolsó két gyakorlat valamelyikén mutatnak be a csoport előtt: előre deklarálva, hogy hármast, négyest vagy ötöst szeretnének, a csoport, a gyakorlatvezető és az előadó opponálja őket, a DocBook*-ban (esetleg OpenOffice-ban) ledokumentált, az előadás előtt elküldött feladatmegoldásuk alapján. (Folytatás a következő fólián.) *: http://www.inf.unideb.hu/~nbatfai/#ppmhttp://www.inf.unideb.hu/~nbatfai/#ppm PIROS PIRULÁK KÉK PIRULA Aki – az alábbiak szerint – nem szerzett megajánlott jegyet, az a vizsgaidőszakban tesztet ír, a teszt (90%) és a teszt kiértékelésének esetleges közös átnézése, illetve az előadás és a laborok (10%) látogatása alakítja ki a vizsgajegyet. 50%- 2, 65%- 3, 80%- 4, 90%- 5.

16 A két otthoni feladatot (az adott határidőig és számlimitig) beküldő hallgatók (a teszten elért, minimum kettesről) egy jeggyel feljebb tornászhatják a vizsgajegyüket. Az ilyen feladatok beküldése értelemszerűen nem lehet kötelező – mint piros pirula – csak a lelkes és szorgalmas érdeklődőknek szól. (A jegy feltornászásához összefoglaló DocBook vagy OpenOffice dolgozatot kérek.) A négy otthoni feladatot (az adott határidőig és számlimitig) beküldő hallgatók kérhetnek egy megajánlott ötöst, négyest vagy közepest (a jegy a beküldött anyag minőségétől függ, a jegy kérésekor egy összefoglaló DocBook vagy OpenOffice dolgozatot kérek, ami tartalmazza a feladatokhoz kiírt beküldendő anyagot). Az egy kiemelt otthoni feladatot (az adott határidőig és számlimitig) beküldő hallgatók kérhetnek egy megajánlott ötöst vagy négyest (a jegy a beküldött anyag minőségétől függ, DocBook vagy OpenOffice dolgozatot kérek, ami tartalmazza a feladathoz kiírt beküldendő anyagot). (A dolgozatok tartalmazzanak a témát érintő valamennyi elméletet, jópár sort, magyarázó ábrát! Részletesen, lehetőleg sok képpel mutassák be a feladat megoldását, különös tekintettel arra, hogy az adott megoldás működik is! (A tipikus dolgozat 14-20 oldal.) PIROS PIRULÁK Számonkérés – labor (BN laborján) Részvétel! Három-négy fős csoportokban, az előadás alapján egy szigorlati tétel kidolgozása írásban: http://www.inf.unideb.hu/oktatas/?cat=&site=hallgato/nappali/tetelsor/tetel&t=inbk001x

17 Operációs rendszer Az operációs rendszer az egy program, ami …. Milyen például, amikor nincs? Egészen pontosan, milyen, ha még nem fut? Ilyen szituáció, amikor éppen bekepcsoltad a géped: Rendszerindítás (x86 PC) Elindul az alaplapon (ROM vagy flash) található BIOS (Basic I/O System) program, elvégez egy hardver ellenőrzést (POST: Power-On Self Test). Ha minden rendben, azt nem veszed észre, ha gond van, akkor annak jellegét sípolgatja (ki is próbálhatod, mit sípol például, ha bakapcsolás előtt kiveszed a memóriát). Tegyük fel, hogy a CMOS Setup-ban a merevlemezről bootolás van beállítva, ekkor a BIOS beolvassa a lemez első szektorát, a Master Boot Record-ot: Bootstrap loaderPartíciós tábla 0x1b e 0x1f d 4x16 bájt a 4 elsődleges partíciónak A5 512 bájt magic numbe r

18 Master Boot Record, MBR A5 Az egész merevlemez, most négy elsődleges partícióval Adato k Boot szektor Boot szektor Boot szektor Boot szektor Adato k A5 A memória 0x00007c0 0 A BIOS beolvassa, ide adja a vezérlést 1.1. Átmásolja önmagát és odaadja a vezérlést: az aktív vagy a menüből kiválasztott partíció boot szektorát bemásolja a 0000:7c00 címre (ezért kellett a futó önmagát máshova másolnia) és átadja a vezérlést, a boot szektor kódja tölti majd be a megfelelő operációs rendszer kernelét. 2.2. 3.3.

19 # cfdisk -P r /dev/sda Disk Drive: /dev/sda Sector 0: 0x000: EB 48 90 8E C0 8E D8 8E D0 BC 00 7C 89 E6 BF 00 0x010: 06 B9 00 01 F3 A5 89 FD B1 08 F3 AB FE 45 F2 E9 0x020: 00 8A F6 46 BB 20 75 08 84 D2 78 07 80 4E BB 40 0x030: 8A 56 BA 88 56 00 E8 FC 00 52 BB C2 07 31 03 02 0x040: FF 00 00 20 01 00 00 00 00 02 FA 90 90 F6 C2 80 0x050: 75 02 B2 80 EA 59 7C 00 00 31 C0 8E D8 8E D0 BC 0x060: 00 20 FB A0 40 7C 3C FF 74 02 88 C2 52 BE 7F 7D 0x070: E8 34 01 F6 C2 80 74 54 B4 41 BB AA 55 CD 13 5A 0x080: 52 72 49 81 FB 55 AA 75 43 A0 41 7C 84 C0 75 05 0x090: 83 E1 01 74 37 66 8B 4C 10 BE 05 7C C6 44 FF 01 0x0A0: 66 8B 1E 44 7C C7 04 10 00 C7 44 02 01 00 66 89 0x0B0: 5C 08 C7 44 06 00 70 66 31 C0 89 44 04 66 89 44 0x0C0: 0C B4 42 CD 13 72 05 BB 00 70 EB 7D B4 08 CD 13 0x0D0: 73 0A F6 C2 80 0F 84 EA 00 E9 8D 00 BE 05 7C C6 0x0E0: 44 FF 00 66 31 C0 88 F0 40 66 89 44 04 31 D2 88 0x0F0: CA C1 E2 02 88 E8 88 F4 40 89 44 08 31 C0 88 D0 0x100: C0 E8 02 66 89 04 66 A1 44 7C 66 31 D2 66 F7 34 0x110: 88 54 0A 66 31 D2 66 F7 74 04 88 54 0B 89 44 0C 0x120: 3B 44 08 7D 3C 8A 54 0D C0 E2 06 8A 4C 0A FE C1 0x130: 08 D1 8A 6C 0C 5A 8A 74 0B BB 00 70 8E C3 31 DB 0x140: B8 01 02 CD 13 72 2A 8C C3 8E 06 48 7C 60 1E B9 0x150: 00 01 8E DB 31 F6 31 FF FC F3 A5 1F 61 FF 26 42 0x160: 7C BE 85 7D E8 40 00 EB 0E BE 8A 7D E8 38 00 EB 0x170: 06 BE 94 7D E8 30 00 BE 99 7D E8 2A 00 EB FE 47 0x180: 52 55 42 20 00 47 65 6F 6D 00 48 61 72 64 20 44 0x190: 69 73 6B 00 52 65 61 64 00 20 45 72 72 6F 72 00 0x1A0: BB 01 00 B4 0E CD 10 AC 3C 00 75 F4 C3 00 00 00 0x1B0: 00 00 00 00 00 00 00 00 00 00 80 8F B6 00 80 01 0x1C0: 01 00 07 FE FF FF 3F 00 00 00 5D 49 17 03 00 FE 0x1D0: FF FF 81 FE FF FF 6D 74 1B 03 FE 64 9C 00 00 FE 0x1E0: FF FF A5 FE FF FF 6B D9 B7 03 76 16 71 02 00 FE 0x1F0: FF FF 83 FE FF FF E1 EF 28 06 0B 90 61 03 55 AA # fdisk (FreeBSD alól) The data for partition 1 is: sysid 7 (0x07),(OS/2 HPFS, NTFS, QNX-2 (16 bit) or Advanced UNIX) start 63, size 51857757 (25321 Meg), flag 0 beg: cyl 0/ head 1/ sector 1; end: cyl 1023/ head 254/ sector 63 The data for partition 2 is: sysid 129 (0x81),(Minix since 1.4b, early Linux partition or Mitac disk manager) start 52130925, size 10249470 (5004 Meg), flag 0 beg: cyl 1023/ head 255/ sector 63; end: cyl 1023/ head 254/ sector 63 The data for partition 3 is: sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD) start 62380395, size 40965750 (20002 Meg), flag 80 (active) beg: cyl 1023/ head 255/ sector 63; end: cyl 1023/ head 254/ sector 63 The data for partition 4 is: sysid 131 (0x83),(Linux native) start 103346145, size 56725515 (27698 Meg), flag 0 beg: cyl 1023/ head 255/ sector 63; end: cyl 1023/ head 254/ sector 63 # cfdisk -P ts /dev/sda (Ubuntu alól) Partition Table for /dev/sda First Last # Type Sector Sector Offset Length Filesystem Type (ID) Flag -- ------- ----------- ----------- ------ ----------- -------------------- ---- 1 Primary 0 51857819 63 51857820 HPFS/NTFS (07) Boot 2 Primary 52130925 62380394 0 10249470 Minix / old Lin (81) None 3 Primary 62380395 103346144 0 40965750 FreeBSD (A5) None 4 Primary 103346145 160071659 0 56725515 Linux (83) None Partition Table for /dev/sda ---Starting--- ----Ending---- Start Number of # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors -- ----- ---- ---- ---- ---- ---- ---- ---- ----------- ----------- 1 0x80 1 1 0 0x07 254 63 1023 63 51857757 2 0x00 254 63 1023 0x81 254 63 1023 52130925 10249470 3 0x00 254 63 1023 0xA5 254 63 1023 62380395 40965750 4 0x00 254 63 1023 0x83 254 63 1023 103346145 56725515 0x1b e 0x1f d Partíciós tábla az MBR-ben a kurzushoz előkészített egyik gépemen

20 Rendszerindítás (Linux x86 PC) (1)BIOS POST MBR betöltése (2)MBR bootstrap loader fut keresi és betölti a boot loadert (3)A boot loader betölti a Linux (vagy más) kernelt GRUB, GRand Unified Bootloader http://www.gnu.org/software/grub/ (A betöltés GUT-ját használják például a Linux disztribúciók, a Solaris x86 disztribúciók.) A rendszerindítás (system startup) tipikus lépései: A rendszerindítás feladata a hardver inicializálása és a kernel képének betöltése a memóriába. (A folyamat a processzor valós címzési módjában assembly kóddal indul. A kövezkező fóliákon illusztrációként láthatunk majd némi AT&T, GAS (Linux, FreeBSD) szintaxisú: forrás-mit, cél-hova, $konstans, %regiszter) és Intel (MINIX, OpenSolaris) szintaxisú: cél, forrás, stb. kódot.)

21 GRUB munkában a kurzushoz előkészített két gépen Az Ubuntu feltette GRUB Az Fedora feltette GRUB Otthoni feladat: telepíts fel a gépedre (legalább) 3-féle rendszert!. „Bizonyítékul” írj néhány sort, hogy miért éppen a választottakat választottad és a fentiekhez hasonló fotót és ugyancsak az előbbiekhez hasonlóan az MBR-t küld el az email címemre, az „OS-OTTHONI-TELEPÍTÉS” tárggyal. PIROS PIRULA Korábban láttuk Ubuntu és FreeBSD alól, kiegészítésképpen például: # dd if=/dev/rdsk/c1d0p0 bs=512 count=1|od -Axv -tx1 (Solaris alól) # /sbin/cfdisk -P ts /dev/sda (Fedora alól)

22 include/asm-i386/boot.h #ifndef _ASM_BOOT_H #define _ASM_BOOT_H /* Don't touch these, unless you really know what you're doing. */ #define DEF_INITSEG0x9000 #define DEF_SYSSEG0x1000 #define DEF_SETUPSEG0x9020 #define DEF_SYSSIZE0x7F00... arch/i386/boot/header.S /* *header.S * *Copyright (C) 1991, 1992 Linus Torvalds * *Based on bootsect.S and setup.S *modified by more people than can be counted * *Rewritten as a common file by H. Peter Anvin (Apr 2007) * * BIG FAT NOTE: We're in real mode using 64k segments. Therefore segment * addresses must be multiplied by 16 to obtain their respective linear * addresses. To avoid confusion, linear addresses are written using leading * hex while segment addresses are written as segment:offset. * */ #include #include "boot.h" SETUPSECTS= 4/* default nr of setup- sectors */ BOOTSEG= 0x07C0/* original address of boot- sector */ SYSSEG= DEF_SYSSEG/* system loaded at 0x10000 (65536) */ SYSSIZE= DEF_SYSSIZE/* system size: # of 16-byte clicks */.../* to be loaded */....code16.section ".bstext", "ax".global bootsect_start bootsect_start: # Normalize the start address ljmp$BOOTSEG, $start2 start2: movw%cs, %ax movw%ax, %ds movw%ax, %es movw%ax, %ss xorw%sp, %sp sti cld movw$bugger_off_msg, %si... Linux Az operációs rendszer nélkül - illusztráció x86 setup code rewrite in C – revised http://lkml.org/lkml/2007/7/11/362 i

23 src/sys/boot/i386/boot0/boot0.S /* * Copyright (c) 2002 Bruce M. Simpson * Copyright (c) 1998 Robert Nordier * All rights reserved. * * Redistribution and use in source and binary forms are freely * permitted provided that the above copyright notice and this * paragraph and the following disclaimer are duplicated in all * such forms. * * This software is provided "AS IS" and without any express or * implied warranties, including, without limitation, the implied * warranties of merchantability and fitness for a particular * purpose. * * $FreeBSD: src/sys/boot/i386/boot0/boot0.S,v 1.16 2007/03/26 21:56:13 thomas Exp $ */ /* A 512-byte boot manager. */ #ifdef SIO /*... using a serial console on COM1. */ #endif.set NHRDRV,0x475 # Number of hard drives.set ORIGIN,0x600 # Execution address.set FAKE,0x800 # Partition entry.set LOAD,0x7c00 # Load address.set PRT_OFF,0x1be # Partition table.set TBL0SZ,0x3 # Table 0 size.set TBL1SZ,0xa # Table 1 size.set MAGIC,0xaa55 # Magic: bootable... src/sys/boot/i386/boot0/boot0.S.globl start # Entry point.code16 # This runs in real mode /* * Initialise segments and registers to known values. * segments start at 0. * The stack is immediately below the address we were loaded to. */ start: cld # String ops inc xorw %ax,%ax # Zero movw %ax,%es # Address movw %ax,%ds # data movw %ax,%ss # Set up movw $LOAD,%sp # stack /* * Copy this code to the address it was linked for */ movw %sp,%si # Source movw $start,%di # Destination movw $0x100,%cx # Word count rep # Relocate movsw # code... FreeBSD Az operációs rendszer nélkül - illusztráció i

24 /usr/src/boot/masterboot.s !masterboot 2.0 - Master boot block codeAuthor: Kees J. Bot ! ! This code may be placed in the first sector (the boot sector) of a floppy, ! hard disk or hard disk primary partition. There it will perform the ! following actions at boot time:...... LOADOFF =0x7C00! 0x0000:LOADOFF is where this code is loaded BUFFER =0x0600! First free memory....text ! Find active (sub)partition, load its first sector, run it. master: xorax, ax movds, ax moves, ax cli movss, ax! ds = es = ss = Vector segment movsp, #LOADOFF sti ! Copy this code to safety, then jump to it. movsi, sp! si = start of this code pushsi ! Also where we'll return to eventually movdi, #BUFFER! Buffer area movcx, #512/2! One sector cld repmovs jmpfBUFFER+migrate, 0! To safety migrate:... MINIX Az operációs rendszer nélkül - illusztráció i

25 Az operációs rendszerrel A programozó általánosításai: „Javában minden objektum, UNIX-ban minden fájl,...” Az operációs rendszer - mint Mátrix - megteremti azt az álomvilágot, melyben vannak fájljaink, programjaink. Nélküle a „The desert of the real.” – a valóság sivatagában találjuk magunkat – ahogy Morpheus mondaná. Felhasználó i mód Kerne l mód Hardve r Rendszerhíváso k Sche d Arch MM IPC FS D Ne t CP U RAM IO Felhasználói programok CLI Processzuso k webböngész ő mp3 lejátszó parancsértelmez ő

26 Ha maradnál mégis a valóság sivatagában arch/i386/boot/header.S-ból: (ez volt valóban, a 2.6.23.13 idején, amikor készítettem az előadást, de alig két hét múlva a 2.6.24.2-ben már az arch/x86/boot/header.S).code16.global bootsect_start bootsect_start: # Normalize the start address ljmp $0x07c0, $start2 start2: movw %cs, %ax... jmp msg_loop bs_die: # Allow the user to press a key, then reboot xorw %ax, %ax int $0x16 int $0x19 # int 0x19 should never return. In case it does anyway, # invoke the BIOS reset code... ljmp $0xf000,$0xfff0.section ".bsdata", "a" bugger_off_msg:.ascii "Ezt a kodot az arch/i386/header.S-bol masoltuk es\r\n".ascii "beleirtuk ezt a ket sort leiro sort :)\r\n".ascii "Direct booting from floppy is no longer supported.\r\n".ascii "Please use a boot loader program instead.\r\n".ascii "\n".ascii "Remove disk and press any key to reboot...\r\n".byte 0 Hardver Gépi nyelv OS Rendszerprogramozás Felhasználói programok Számítógépes rendszer $ as bootsect.S -o bootsect.o $ ld bootsect.o -Ttext 0x0 --oformat binary -o bootsect ld: warning: cannot find entry symbol _start; defaulting to 0000000000000000 $ dd if=bootsect of=/dev/fd0 0+1 records in 0+1 records out 280 bytes (280 B) copied, 0,0950509 seconds, 2,9 kB/s i

27 A mi kurzusunk pozicionálása Hardver Gépi nyelv OS Rendszerprogramozás Felhasználói programok Számítógépes rendszer OS Rendszerhívás interfész Felhasználói programok Felhasználói mód Kernel mód Otthoni feladat: az előző példa mintájára készíts egy olyan „bootolható” floppyt, ami róla bebootolva kiír valamit a képernyőre. „Bizonyítékul” a programod és a folyamat néhány pillanatképét (fotó vagy virtuális gép screen-shot) küld el az email címemre, az „OS-OTTHONI-BOOTFLOPPY” tárggyal. (És-vagy hozd el a lemezed a laborra.) PIROS PIRULA

28 A parancssori interfész (CLI) Nem szerencsés a sajnos szokásos kifogás, hogy „én Windows-t használok”, mert a különbség itt például ; és : illetve % és $ és máshogy dőlnek a perjelek.

29 1964, M.I.T, Bell Labs, GE: MULTICS (Ken Thompson-1969 B nyelv, Dennis Ritchie) 1971, UNIX (és C nyelv-Dennis Ritchie) az AT&T forrásban (C források) is adja oktatási célokra a UNIX-ot 1974, Berkeley Egyetem: Berkeley UNIX (1977, Bill Joy, Berkeley Software Distribution, BSD) 1983, GNU (Richard Stallman) 1984, UNIX System V 1986, POSIX (Portable OS-IX) 1987, MINIX (Andrew S. Tanenbaum) 1991, Linux (Linus Torvalds hallgatóként) Történeti háttér Unix Timeline: http://www.levenez.com/unix/ Tökéletes poszterek a szobádba!http://www.levenez.com/unix/ Computer Languages Timeline: http://www.levenez.com/lang/http://www.levenez.com/lang/ D. Ritchie, K. Thompson: The UNIX Time-Sharing System (1974) http://citeseer.ist.psu.edu/10962.html MM 374 MM 384

30 GNU: Gnu's Not Unix (gə'nu:) A GNU-kiáltvány magyar fordítása: http://www.gnu.hu/gnu-kialtvany.html „Ha a GNU elkészül, mindenki úgy kaphat majd jó rendszerszoftvert, mint levegőt.” (Richard Stallman) 3. változat (GNU GPL v3), 2007. június 29.: http://www.gnu.org/licenses/gpl.htmlhttp://www.gnu.org/licenses/gpl.html magyar fordítása: http://www.gnu.hu/gplv3.htmlhttp://www.gnu.hu/gplv3.html „The GNU General Public Licence is the most popular and most widely used Free Software licence. The special thing about this licence is that it's a copyleft licence, that is to say: all versions of the program must carry the same licence. So the freedoms that the GNU GPL gives to the users must reach all the users of the program. And that's the purpose for which I wrote it.”... Richard Stallman interjú (film) a Java nyitásáról: http://www.sun.com/20061113/feature/customers.jsp Néhány példa Linux kernel release 2.6.xx: http://kernel.org (GNU GPL v2)http://kernel.org GNOME, The Free Software Desktop Project: http://www.gnome.org/,http://www.gnome.org/ magyar nyelvű lap: http://www.gnome.hu/http://www.gnome.hu/ GCC, the GNU Compiler Collection: http://gcc.gnu.org/http://gcc.gnu.org/ OpenJDK, Open-Source JDK Community: http://openjdk.java.net/http://openjdk.java.net/ jdk7: Java SE 7: https://jdk7.dev.java.net/https://jdk7.dev.java.net/ OpenOffice.org: http://www.openoffice.hu/ (ez az előadás is ezzel készült)http://www.openoffice.hu/ GIMP - The GNU Image Manipulation Program: http://www.gimp.org/ (az előadás képei)http://www.gimp.org/ magyar nyelvű lap: http://www.gimp.hu/http://www.gimp.hu/

31 Linux (kernel) A Linus-Tanenbaum vita: LINUX is obsolete: (The Tanenbaum Torvalds Debate, Open Sources: Voices from the Open Source Revolution) http://www.oreilly.com/catalog/opensources/book/appa.html „I still maintain the point that designing a monolithic kernel in 1991 is a fundamental error. Be thankful you are not my student. You would not get a high grade for such a design :-)” Linus Torvalds, a Helsinki Egyetem 22 éves hallgatója 1991-ben az iskolában (Helsinki Egyetem) az Opreációs rendszerekből tanult MINIX-el való "elégedetlenségében" kezdett a Linux fejlesztésébe. The Linux Kernel Archives: http://www.kernel.org/ (tipikusan az utolsó stabilt az „F” betű alól. Kb. 40 megás fájlt, de kitömörítve 200-300 mega, lefordítva pedig a gigát is meghaladhatja!)http://www.kernel.org/ Letöltés e Otthoni feladat: fordítsunk kernelt az otthoni Linuxunkon! „Bizonyítékul” a folyamat néhány pillanatképét (és a következő adatokat: processzorod típusa, memória mennyisége, a kernel fordítási – make utáni – ideje) küld el az email címemre, az „OS-OTTHONI-KERNELFORDITAS” tárggyal. A Programozó Páternoszter 173. oldalán találsz segítséget, illetve a Linux Kernel in a Nutshell című könyvet ajánlhatjuk: http://www.kroah.com/lkn/http://www.kroah.com/lkn/, http://www.kernel.org/pub/linux/kernel/people/gregkh/lkn/lkn_pdf/ http://www.kernel.org/pub/linux/kernel/people/gregkh/lkn/lkn_pdf/ PP 173 PIROS PIRULA

32 Linux kernel „Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX and Single UNIX Specification compliance. It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management, and multistack networking including IPv4 and IPv6. It is distributed under the GNU General Public License” … Linux kernel release 2.6.xx /* * linux/kernel/printk.c * * Copyright (C) 1991, 1992 Linus Torvalds * * Modified to make sys_syslog() more flexible: added commands to * return the last 4k of kernel messages, regardless of whether * they've been read or not. Added option to suppress kernel printk's * to the console. Added hook for sending the console messages * elsewhere, in preparation for a serial line console (someday). * Ted Ts'o, 2/11/93. * Modified for sysctl support, 1/8/97, Chris Horn. * Fixed SMP synchronization, 08/08/99, Manfred Spraul * manfred@colorfullife.com * Rewrote bits to get rid of console_lock *01Mar01 Andrew Morton */ #include... Pillantsunk bele! „...Linux powers everything from supercomputers to mobile phones around the world, and Torvalds has achieved fame as the godfather of the open-source movement,...” http://www.time.com/time/europe/hero2006/torvalds.html Linus Torvalds a TIME Forradalmárok és Vezetők ketegóriájának hőse.

33 Hol használják például? Motorola A780, E680 mobiltelefonok kernel/pkgs: https://opensource.motorola.com/sf/frs/do/viewSummary/projects.a780e680/frs Download E680 / E680i / A780 Kernel sources: http://sourceforge.net/projects/e680/http://sourceforge.net/projects/e680/ opensource.motorola.com: https://opensource.motorola.comhttps://opensource.motorola.com Linuxok a Google keresés mögött álló szerverei. Google Android - An Open Handset Alliance Project: http://code.google.com/android maemo.org: Maemo is the application development platform for Internet Tablets: http://maemo.org/ Pl.: Nokia N810: http://www.forum.nokia.com/devices/N810http://www.forum.nokia.com/devices/N810 /* * linux/kernel/printk.c * * Copyright (C) 1991, 1992 Linus Torvalds * 2004 Motorola * * Modified to make sys_syslog() more flexible: added commands to * return the last 4k of kernel messages, regardless of whether * they've been read or not. Added option to suppress kernel printk's * to the console. Added hook for sending the console messages * elsewhere, in preparation for a serial line console (someday). * Ted Ts'o, 2/11/93. * Modified for sysctl support, 1/8/97, Chris Horn. * Fixed SMP synchronization, 08/08/99, Manfred Spraul * manfreds@colorfullife.com * Rewrote bits to get rid of console_lock *01Mar01 Andrew Morton * * 2004-Aug-4 - (Motorola) Added changes to enable phone logging */ #include...

34 Linux kernel verziók The Linux Kernel Archives: http://www.kernel.org/ (a stabil most éppen a 2.6.23.13) 2.6.23 2.6.23.1 2.6.23.2 2.6.23.1 3 2.6.24-rc1 2.6.24-rc2 2.6.23.3 2.6.23.4 2.6.23.5 2.6.23.6 2.6.23.7 2.6.23.8 2.6.23.9 2.6.23.1 0 2.6.23.11 2.6.23.1 2 2.6.24 2.6.24-rc3 2.6.24-rc4 2.6.24-rc6 2.6.24-rc7 2.6.24-rc? most most, 2008. január 14. Javítások Fejleszté s Major.Minor.Revision.Patchleve l

35 Kernelfordítá s PP 173 ● 1.) A kernel forrásainak letöltése: The Linux Kernel Archives: http://www.kernel.org/ (tipikusan az utolsó stabilt az „F” betű alól, ez kb. 40 megás fájl, de kitömörítve 200-300 mega, lefordítva pedig a gigát is meghaladhatja!) A ~/Kernelek/2.6/ = /home/norbi/Kernelek/2.6/ könyvtáramba mentem a linux-2.6.24.2.tar.bz2 fájlt.http://www.kernel.org/ ● 2.) A források kicsomagolása: $ cd Kernelek/2.6 $ bzip2 -cd linux-2.6.24.2.tar.bz2 | tar xvf - ● 3.) Belépek a kicsomagoltba (és takarítok): $ cd linux-2.6.24.2 $ make mrproper ● 4.) Kiindulásnak szerzünk egy.config fájlt, a rendszerbelit bemásoljuk az akt. könyvtárba: $ cp /usr/src/kernels/valamilyen verzió számozás/.config. ● 5.) A kernel bekonfigurálása: $ make gconfig ● 6.) A kernel lefordítása: $ make … dolgozik a C fordító (ezt az időt mérd le a feladathoz) ● 7.) A többit majd rendszergazdaként: $ su Password: # make modules_install install ● 8.) Kész, jöhet az újraindítás Részletesebb infók: /home/norbi/Kernelek/2.6/linux-2.6.24.2/README

36 GNU/Linux (gə'nu: 'linəks) UBUNTU: http://ubuntu.huhttp://ubuntu.hu Ubuntu 7.10 (Gutsy Gibbon, Merész Gibbon), telepítő dvd: http://cdimage.ubuntu.com/releases/7.10/release/ (Debian alapú) FEDORA: http://fedoraproject.org/http://fedoraproject.org/ (Fedora a magyar Wikin: http://hu.wikipedia.org/wiki/Fedora_Core)http://hu.wikipedia.org/wiki/Fedora_Core Telepítő dvd: http://fedoraproject.org/getfedorahttp://fedoraproject.org/getfedora Disztribúciók Régen azt tanácsoltuk, olyan Linuxot válassz, amit a környezetedben is használnak. Ma ez inkább már csupán közösségépítő, mint praktikus tanácsunk. De számos magyar nyelvű Linuxos könyvet találsz a könyvtárban is! Néhány közösség: Debian GNU/Linux felhasználók, -rajongók és -fejlesztők levelezőlistája: https://www.linux.hu/wws/info/debian https://www.linux.hu/wws/info/debian Hungarian UNIX Portal http://hup.hu/ Néhány dokumentáció: Debian GNU/Linux Telepítési Útmutató: http://d-i.alioth.debian.org/manual (magyarul is)http://d-i.alioth.debian.org/manual Linux rendszeradminisztrátorok kézikönyve: http://tldp.fsf.hu/HOWTO/sag- hu/index.html (magyar fordítás)http://tldp.fsf.hu/HOWTO/sag- hu/index.html GNU/Linux Command-Line Tools Summary: http://www.tldp.org/LDP/GNU-Linux- Tools-Summary/http://www.tldp.org/LDP/GNU-Linux- Tools-Summary/

37 Ubuntu GNU/Linux Az alapértelmezett GNOME felülettel Ubuntu GNU/Linux: http://ubuntu.hu, http://www.ubuntu.comhttp://ubuntu.huhttp://www.ubuntu.com Ubuntu 7.10 (2007. október, Gutsy Gibbon, Merész Gibbon), telepítő dvd: http://cdimage.ubuntu.com/releases/7.10/release/ (Debian alapú)

38 Fedora GNU/Linux Az alapértelmezettGNOME felülettel Fedora GNU/Linux: http://fedoraproject.org/http://fedoraproject.org/ (Fedora a magyar Wikin: http://hu.wikipedia.org/wiki/Fedora_Core)http://hu.wikipedia.org/wiki/Fedora_Core Telepítő dvd: http://fedoraproject.org/getfedorahttp://fedoraproject.org/getfedora (Red-Hat alapú)

39 Debian GNU/Linux Debian GNU/Linux: http://www.debian.orghttp://www.debian.org (A Debian beszerzése: http://www.debian.org/distrib/ magyar nyelvű lap.http://www.debian.org/distrib/ Most éppen a http://cdimage.debian.org/debian-cd/current/ lapról ahttp://cdimage.debian.org/debian-cd/current/ debian-...-kde-...-.iso Debian GNU/Linux 4.0r2 (etch) KDE-s verziót próbáltuk ki. )

40 MINIX A UNIX 7. verziójától (1979) a forráskód már nem volt elérhető az egyetemek számára. Ezért, tehát oktatási célból írta Andrew Tanenbaum a MINIX operációs rendszert. The MINIX 3 Operating System: http://www.minix3.orghttp://www.minix3.org Live CD-ként töltsd le: http://www.minix3.org/download/, majd kitömörítés után (Windows alatt) például a http://infrarecorder.sourceforge.net/ InfraRecorder programmal tudod felírni: Actions/Burn Image... aztán csak be kell bootolnod a CD- ről és máris vár a MINIX 3 rendszer!http://www.minix3.org/download/http://infrarecorder.sourceforge.net/ Készíts egy MINIX Live CD-t magadnak és hozd el a laborra! Letöltés e PIROS PIRULA http://groups.google.com/group/comp.os.minix/topic s

41 FreeBSD A FreeBSD Projekt: http://www.freebsd.org/huhttp://www.freebsd.org/hu Letöltés e FreeBSD 7.0-RC1 és GNOME 2.20 A 4.4BSD-re épül, csomagok a GNU projekből is. (A BSD projekten belül született például a vi editor, a TCP/IP protokollok, a socket programozói interfész.) FreeBSD Handbook: http://www.freebsd.org/doc/en/books/handbook/http://www.freebsd.org/doc/en/books/handbook/ Magyarra fordított cikkek: http://www.freebsd.org/doc/hu/articles/http://www.freebsd.org/doc/hu/articles/

42 OpenSolaris Power of OpenSolaris with usability of Linux! http://www.gnusolaris.org ● OpenSolaris (kernel, Dtrace, ZFS) ● Debian/GNU Linux (APT) ● Ubuntu Linux Download Nexenta: http://www.nexenta.org/os/Download Letöltés e Home at OpenSolaris.org: http://opensolaris.org/os/http://opensolaris.org/os/ Nexenta – OpenSolaris alapú disztribúció BeleniX – OpenSolaris alapú disztribúció BeliniX: http://www.genunix.org/distributions/belenix_site/http://www.genunix.org/distributions/belenix_site/ (Live CD a telepítő.)

43 Open Source FSF által elismert licencek http://en.wikipedia.org/wiki/List_of_FSF_approved_software_licences http://www.gnu.org/philosophy/license-list.html GPL komapibilisek... nem GPL komapibilisek … Mozilla Public License... Common Development and Distribution License... 1998, Eric S. Raymond OSI által elismert licencek http://www.opensource.org/licenses Például: … Apache License, 2.0 … Common Development and Distribution License... New BSD license... GNU General Public License (GPL) GNU General Public License version 3.0 (GPLv3) … Qt Public License (QPL)...

44 Otthoni feladat: telepíts fel a gépedre (legalább) 5 GNU GPL-es (pl. GNOME, Gimp, Gnuplot, GCC, OpenOffice, Webalizer, VirtualBox OSE stb.) szoftvert!. „Bizonyítékul” írj néhány sort, hogy miért éppen a választottakat választottad és néhány képet küldj el az email címemre, az „OS-OTTHONI-GNUSOFT” tárggyal. További feladatok Otthoni feladat: telepíts fel a gépedre (Windows és Linux alá is) A Gimp, OpenOffice és a Webalizer szoftvert! „Bizonyítékul” írj néhány sort a szoftverekről és mellékelj néhány képet a használatukról az email címemre, az „OS-OTTHONI-GNUSOFT2” tárggyal. (Windows alatt a webalizerhez használhatos pl. a Linuxodon futó Apache access.log-ját.) Otthoni feladat: telepíts fel gépedre a LAMP-ot (Linux, Apache, MySQL, PHP) „Bizonyítékul” írj néhány sort a LAMP-ról és néhány képet küldj el az email címemre, az „OS-OTTHONI-LAMP” tárggyal. E két OS-OTTHONI-GNUSOFT-os feladat kizárja egymást. http://directory.fsf.org/project/Webalizer/ http://directory.fsf.org/project/apache/ http://directory.fsf.org/project/mysql/ http://directory.fsf.org/project/openoffice /

45 Tippek a gyakorlatra Bootoljunk be egy GNU/Linux rendszert és ismerkedjünk meg Vele! Használjunk karakteres konzolt, hogy fel sem merülhessen más, mint a parancssor használata! Beszéljünk a shellekről, a bash shellről, a környezeti véltozókról! Állítsuk be a nekünk tetsző PS1 változót! Beszéljük meg néhány alapvető parancs és a manuál használatát! Esetleg az előadás példájának mintájára a Linux kernel kódból „vágjunk ki”, és a programot binárisban írjuk hajlékonylemezre és bootoljunk be róla! Esetleg házi feladatnak (a „házi feladat” nem az „otthoni feladat”, csak annyiban, hogy ezt sem kötelező elkészíteni) adjuk fel a következő kódok „feltörését” (pontosabban a rendszergazda ellenőrzi, hogy a felhasználók megfelelően bonyolult jelszavakat használnak-e) a John the Ripper programmal, http://directory.fsf.org/project/JohntheRipper/http://directory.fsf.org/project/JohntheRipper/ $1$jmJCcLQX$hzvMzl3tzV0Kj4RIn7c6m0 $1$wZ3bMDHK$Xogj2CHjy4.o3MEB2nhp00 $1$X0FFXuk6$ikD/PljzJMBzQ05o2slyT. (miután esetleg a laboron is letöltöttük, futtatuk... ) Esetleg bootoljunk be a MINIX Live CD lemezünkről és ismerkedjünk meg Vele! Nézzük meg, hol vannak a parancsok, a források, tanulmányozzuk a licencet stb. Milyen parancsok vannak, amik már ismerősek az iménti GNU/Linux túrából? PP 21- 24 PP 23 [norbi@iam ~]$ echo $PS1 [\u@\h \W]\$ [norbi@iam ~]$ export PS1="[\u@\h \W _\t_ ]\$" [norbi@iam ~ _11:24:50_ ]$

46 Útravaló Ha az előadás elérte a célját, akkor telepítesz a gépedre néhány operációs rendszert. Valószínűleg most van egy hatalmas lemezed, amin teljes egészében egy Windows van. Ezért a Gnome Partition Editor http://gparted.sourceforge.net LiveCD- jét (http://gparted-livecd.tuxfamily.org) javaslom kiírni (Windows alatt például a http://infrarecorder.sourceforge.net InfraRecorder programmal tudod ezt megtenni, az Actions/Burn Image... menü választásával) Ezzel tudod zsugorítani a Windowst, majd új partíciókat létrehozni stb. Sőt, ha menet közben úgy alakul – Hoppá – hogy már nem tudod bebootolni a fentlévő oprendszereket, abban is segít. http://gparted.sourceforge.nethttp://gparted-livecd.tuxfamily.orghttp://infrarecorder.sourceforge.net Ami fontos, addig, amíg nincs mentésed, bele se kezd semmibe, mert megvan a jó esély, hogy mindent elvesztesz a lemezedről!

47 Köszönöm a figyelmet Az előadás elérte célját, ha úgy érzed, kipróbálsz néhány operációs rendszert a gyakor- latban a saját gépeden! Az előadások és a gyakorlatok kölcsönösen, oda-vissza építenek egymásra. Email: nbatfai@inf.unideb.hunbatfai@inf.unideb.hu Skype: batfai.norbert MSN: nbatfai@inf.unideb.hunbatfai@inf.unideb.hu Az óra fóruma: http://forum.inf.unideb.hu/ http://forum.inf.unideb.hu/


Letölteni ppt "Operációs rendszerek Bátfai Norbert Debreceni Egyetem Informatikai Kar (DE IK), Információ Technológia."

Hasonló előadás


Google Hirdetések