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 2. Harmadik előadás 2007. február 19.

Hasonló előadás


Az előadások a következő témára: "Operációs Rendszerek 2. Harmadik előadás 2007. február 19."— Előadás másolata:

1 Operációs Rendszerek 2. Harmadik előadás 2007. február 19.

2 Fontosabb operációs rendszerek •Fontosabb. Miért is? •Akkor miről is lesz szó? –Unix –Windows –Linux •Nem valós technikatörténet (bár az is érdekes lenne)

3 „Hol a helyük”? Mini Comp. (~60) UNIX (~70) MainframeMicro Comp. (~80) PCSzerver Low-endMidrangeHigh-end Mainframe Windows (~93) Linux (~91)

4 Van még tovább? PCSzerverMainfr. • Van, mindkét irányban (sőt)  • Nagyjából out-of-scope 

5 Unix – a kezdetek •1969, Bell labs: alig használt PDP-7 „a sarokban” –Multics projekt leállta utáni űr… –Space travel játék (Thompson) –A PDP-7 gépen nem volt fejlesztő környezet (cross compilert kellett használni) –Thompson, Ritchie és mások elkezdtek írni egyet (először a fájlrendszert, majd jött a process alrendszer és egy egyszerű shell)

6 A történet folytatódik •Thompson, Ritchie és Ossanna meggyőzi a BTL-t hogy vegyenek egy PDP-11 gépet szövegszerkesztésre •A Unix portolásra kerül, megszületnek az első egyszerű kiadvány szerkesztő programok •Thompson a BCPL nyelvből kiindulva kifejleszti az interpretált B nyelvet •Ennek alapján – Ritchie által – megyszületik a C nyelv. A Unix diadalútja C nélkül nem valószínű – és viszont

7 Egy zárt világ •A rendszer a BTL-en belül közkedveltté válik, de házon kívül nem ismerik •1973-ban kiadott (belső) verzió már tartalmazza a „cc” C fordítót •Ugyanebben az évben az egész rendszert újraírják C-ben – ez a lépés alapozza meg a későbbi sikert

8 Úton az ismertség felé •1973: a Unix bemutatása egy ACM konferencián (1974, első írott publikáció) •1956-os antitröszt határozat miatt az AT&T nem kereskedhetett számítástechnikai termékkel (sem) → az ACM konferenciát követő nagy számú megkeresés hatására az AT&T a rendszert kutatási és (egyetemi) oktatási célokra jogdíj nélkül átadta (forráskóddal együtt) •1975-ben már telepített Unix-ot találunk Kanadában, Izraelben és Ausztráliában is •A Berkeley egyetem az elsők köz kap Unix licencet (1974 decemberben)

9 A sokszínűség •A gyors terjedés mellett megkezdődnek a módosítások (forráskód elérhető) •Az eredményeket sokszor a BTL is beépíti saját fejlesztéseibe •A Berkeley-en különösen aktív fejlesztés folyik, az eredeti rendszert jelentősen jobbító programokat külön csomagban, pénzért (USD50) kezdik forgalmazni

10 A BSD Unix •Először itt készül virtuális memóriakezelés Unix-hoz (32 bites VAX gépre) •1979-ben megjelenik az első saját OS verzió (3BSD) – ez már teljes csomag •A DARPA támogatja a Unix továbbfejlesztését (VM és TCP/IP fejlesztés) •Fentieken túl még több jelentős újítás innen származik •1993-ban megjelenik az utolsó (4.4BSD) verzió, a fejlesztés befejeződik •A rendszert a BSDI viszi tovább, a történet rögtön egy AT&T perrel indul – 1994-től érhető el a 4.4BSD-lite

11 Az „eredeti” •A fejlesztés a Bell berkein belül sem áll le •1982-ben az AT&T beléphet a piacra •Időközben a Unix Support Group nevű csapat kiadja a System III verziót (1982), majd 1983-ban a sokkal agresszívebben marketingelt Syste V-t. Sok kommerciális Unix alapul valamelyik System V verzión •Jelenlei verzió az SVR4

12 Az üzleti rendszerek •Több cég is foglalkozott saját hardverére portolt (és kibővített) Unix forgalmazásával (ezek forrása vagy a BTL vonal, vagy a BSD volt) •Első cég (1977) Ineractive Systems, de a Microsoft (az SCO-val együttműködve) is az elsők között van •1982-ben Bill Joy kilép a Berkeley-ről és másokkal együtt megalakítja a Sun Microsystems céget. Rendszerük a SunOS a 4.2BSD-n alapul

13 Azok a 80-as évek •A 80-as években több gyártó (IBM, HP, DEC és mások) is előrukkol saját új gépeivel és ehhez saját Unix verziót adnak ki •Minden cég megpróbál egyre több extra szolgáltatást beépíteni a rendszerébe, ez gyors fejlődést eredményez. •Ugyanakkor a különféle Unix verziók többé-kevésbé inkompatibilisek.

14 Mach •A Unix születéskori erősségei – kis méret és egyszerűség – az egyre több és több szolgáltatás beleintegrálásával tovatűntek •A 80-as évek elején a pittsburgi Carnegie-Mellon egyetemen megkezdődött egy új, mikrokernel alapú operációs rendszer – a Mach – fejlesztése •A rendszer „kívülről” BSD interfésszel bírt, ugyanakkor AT&T kódtól teljesen mentes volt. •A 2.5-ös (még monolitikus kernelű) verzió több piaci rendszer (OSF/1 és NextStep) alapja lett, az első mikrokerneles verzió a 3.0 volt

15 A Unix háború •1987-ben az AT&T szövetkezett a Sun-nal a következő System V verzió (SVR4) kidolgozására (a Sun korábban BSD vonalat használt). Megjelenik a Solaris 2. •Ez a lépés az iparban komoly nemtetszést váltott ki, kezdetét vette a Unix háború. •Szövetségek alakultak és szűntek meg, de egy új fenyegetés – a Windows NT – mindent megváltoztatott…

16 A közelmúlt •A Unix név és kód a Novell-hez kerül •A kódot a Novell eladja az SCO-nak, a Unix név a Open Group kezébe kerül •Sok, a 80-as években virágzó gyártó eltűnik, a megmaradtak (Sun, IBM, HP) viszont továbbra is fejlődnek – a Unix él és virul •Linux

17 Szabványok •A sokféle verzió megkeserítette a fejlesztők életét •Szabványosítási törekvések kezdődtek, de szabványból is sok, különböző alakult ki (ezek nem a belső működést, hanem az interfészeket írják le) •Egyik legjelentősebb szabvány az IEEE POSIX specifikáció •A szabványos kód nem tartalmazhatja az adott platformra jellemző többlet funkciókat!

18 Klasszikus (pre. SVR4) kernel

19 Fájl alrendszer

20  Hierarchikus könyvtár struktúra  Fájlok bájtfolyamok  „minden fájl” megközelítés  Eszközmeghajtó programok  Karakteres  Blokkos  Blokkos I/O caching  Program memória kárára!

21 Folyamat alrendszer Ütemező Memória kezelő Folyamatközi komm.

22 Ütemező Jellemzői:  Időosztásos működésre fókuszál  Prioritásos  User szinten Preemptive  Kernel szinten nem az!  Nincs RT támogatás!

23 Ütemező  Folyamat létrehozása: szülő-gyerek viszony!  Árva és Zombie folyamatok  Nincsenek szálak (threads)!

24 Memória kezelés  Virtuális memóriakezelés  Lapozás és swap  Kernel által foglalt memória fix mértékű!  A Buffer cache által használt memória nem elérhető!

25 Folyamatközi kommunikáció  Folyamatok közötti szinkronizáció és kommunikáció  Signal-ok  Pipe és FIFO

26 Változás mozgatórugói  Funkcionalitás –Fájlrendszer funkciók (locking, quota-k, ACL- ek) –IPC (magasabb absztrakciós szint) –Szálak –Hálózati szolgáltatások (NFS, NIS)

27 Változás mozgatórugói  Funkcionalitás  Teljesítmény, hardver fejlődése –Fájlrendszerek teljesítményének növelése –Új hardver-technológiák támogatása (RAID, SMP)

28 Változás mozgatórugói  Funkcionalitás  Teljesítmény, hardver fejlődése  Minőségi elvárások, megbízhatóság –Adatvesztés rendszerösszeomlás esetén –Működés hibák során

29 Változás mozgatórugói  Funkcionalitás  Teljesítmény, hardver fejlődése  Minőségi elvárások, megbízhatóság  Paradigmaváltás, új alkalmazások –Kliens-szerver alkalmazások előtérbe kerülése –Real-time elvárások (pl. média szerverek)

30 Solaris – a Solaris előtt •1982: SunOS 1.0 – BSD 4.1 alapú, még Motorola 68000 alapú Sun gépre •Hálózati technológiák komoly fejlesztése, több széles körben elterjedt (NFS, RPC). Az implementálásuk jelentős módosítást igényelt, a SunOS 2.0 már tartalmazza VFS-t (1984) •Új VM, dinamikus linkelés (SunOS 4, 1988 – első SPARC alapú rendszer) •Multiprocesszoros rendszerek támogatása, a SunOS 4.1 esetén még aszimmetrikus módon •A szimmetrikus multiprocesszing nagyon más…

31 Solaris •Az AT&T szövetség hatására a Sun System V alapon teljesen új rendszerrel ál elő •1992, Solaris 2.0 – még csak uniprocesszoros (ezután a korábbi verziók: Solaris 1.x). Még ebben az évben multiprocesszoros támogatás (2.1) •1993-tól x86 platform támogatás •1996-ban már 64 utas SMP (2.5.1), ugyanekkor fájlméret max. átlépi a 2GB-t (2.6) – FS 2.2 óta nagyobb •Következő nagy lépés a Solaris 7 (nem 2.7), ami már 64 bites processzorokat is támogatja •Minden verzió hoz újításokat (RBAC, újabb ütemezők, zónák és x64 támogatás), Jelenlegi verzió a Solaris 10, ennek már komoly AMD-s installált bázisa van (Opteron)

32 Solaris kernel

33 A régi és az új

34 Mac OS X •Az Apple egyedi gépéhez egyedi operációs rendszer já •A Windows növekvő sikere (és technikai újításai) a nehézségekkel küszködő Apple-t is lépésre kényszeríti, belső fejlesztések és külső próbálkozások (pl. BeOS, később abortáló IBM együttműködés) •Sok részeredmény született, de az átütő siker nem jött el •1997: az Apple megszerzi a OPENSTEP rendszert, Steve Jobs technikailag sikeres, de üzletileg problémás rendszerét. Elemeket emelnek át a Mac OS-be •1997, Jobs CEO kinevezést kap, 98-ban hírek jelennek meg egy új operációs rendszerről •1999, megjelenik az OS X (szerver verzió) •Jelenleg: 10.4 Tiger, de a Leopard már közeleg

35 Mac OS – miért érdekes? •1987: NextCube •1988: NexStep 0.8 – 4.3 BSD és Mach 2.0 •1989: NexStep 1.0 – Mach 2.5 •1994: OpenStep Specification (SUN-nal közösen, object-oriented OS spec) •1996: OpenStep 4.0 – OpenStep kompatibilis NextStep, Mach 3.0 •1997: az Apple megveszi a Next céget…

36 Linux – történet  Kezdet: Linux Torvalds, 1991 – x86  Internetes fejlesztőbázis, széles hardver platform támogatás  Kernel: Linus, prg: FSF GNU projekt  Kívülről Unix, felépítésében nem teljesen az (erősen hatnak egymásra)  Erősebb is, gyengébb is!

37 Linux - verziók  Támogatás nagy hardver és szoftver szállítóktól (IBM, HP, Oracle, SAP)  Debian – free  RedHat – $350…$2500/év  Fedora - free  SuSe - not free! Windows 2003, 10 user: ~ 1100 USD + support!

38 Linux - Jellemzők  Moduláris felépítésű kernel  Dyamic linking  Stackable modules  Virtuális fájlrendszer támogatás  Valós idejű ütemezés

39 Windows - történet  1981: PC-DOS 1.0 (flat FS)  1983: DOS 2.0, XT, HDD támogatás  1984: DOS 3.0, IBM AT  Nem használta a 286 képességeit  1990: Microsoft Windows 3.0

40 Windows - roadmap  OS-2: IBM és MS közös fejlesztés, összeveszés, NT fejlesztés indul  1993: Első Windows NT, a 3.1  1996: NT 4.0 – Win 95 felület  2000: Win 2000 (desktop, server)  2001: Win XP (csak desktop)  2003: Win 2003  2006: Vista

41 Windows – elvárások: 1989  32 bites, preemptive, VM támogatás  Többplatformos működés  Jó SMP skálázhatóság  Kliens-szerver környezet támogatása  MS-DOS és Win 3.x alkalmazások futtatása  Kormányzati POSIX 1003.1 elvárás  Kormányzati biztonsági elvárások  Unicode támogatás

42 Windows – Fejlesztési célok  Bővíthetőség – piaci elvárások  Hordozhatóság  Mezbízhatóság és robosztusság  Kompatibilitás  Teljesítmény

43 Windows – Jellemzők  Valós (preemptive) multitasking  Kliens-szerver modell  SMP és szálak támogatása  Objektum alapú megközelítés  Nagyrészt C nyelvű kód

44 Windows – Kernel  Pl. logon, session manager  Nem a service control manager vezérli

45 Windows – Kernel  Felhasználóktól függetlenül működnek  Spooler, task manager  Szerver alkalmazások (pl. Exchange) is

46 Windows – Kernel  Windows, Posix (régen OS/2) alkalmazások futtatásához szükséges támogató szolgáltatások

47 Windows – Kernel  Felhasználói programok  Az alrendszereket használják!  API hívások-ból nem dokumentált Kernel hívások

48 Windows – Kernel  Alap operációs rendszer szolgáltatások  Memória menedzsment, folyamat és szál menedzsment  Biztonság, I/O, hálózat, IPC

49 Windows – Kernel  Alacsony szintű operációs rendszer szolgáltatások  Szálak ütemezése, megszakítás és kizárás kezelés  SMP szinkronizáció, alap objektumok támogatása

50 Windows – Kernel  Hardver eszközök meghajtóprogramjai  Fájlrendszerek illesztése  Hálózati meghajtóprogramok

51 Windows – Kernel  Platform sajátosságok elfedése (pl. alaplapi chipset különbségek)

52 Windows – Kernel  GUI és grafikai funkciók  Teljesítmény elvárások miatt került a kernel szintjére

53 Windows – Kernel


Letölteni ppt "Operációs Rendszerek 2. Harmadik előadás 2007. február 19."

Hasonló előadás


Google Hirdetések