linux ismertetése

18
Linux ismertetése Prém Dániel Tanszéki mérnök Windisch Gergely Tanársegéd Operációs Rendszerek 2013/2014/1

Upload: jocelyn-cleveland

Post on 02-Jan-2016

36 views

Category:

Documents


0 download

DESCRIPTION

Linux ismertetése. Operációs Rendszerek 2013/2014/1. Unix története. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Linux  ismertetése

Linux ismertetése

Prém DánielTanszéki mérnök

Windisch GergelyTanársegéd

Operációs Rendszerek2013/2014/1

Page 2: Linux  ismertetése

Unix története• A Unix operációs rendszer fejlesztése a Multics-szal (Multiplexed Operating and

Computing System) kezdődött. A Multics projekt az 1960-as évek közepén indult, a General Electric, Massachusetts Institute for Technology és a Bell Laboratories együttműködésében.

• Azonban 1969-ben a Bell Laboratories kivált a projektből, mivel a Multics-ot túl bonyolultnak találták, és emiatt egy új operációs rendszer kifejlesztésébe fogtak az AT&T segítségével, amelyet UNICS-nak (Uniplexed Operating and Computing System) neveztek el.

• Az első verziót egy hónap alatt elkészítették (egy-egy hétbe telt megírni a rendszermagot, a héjat, a szövegszerkesztőt és az assembler fordítót)

• Ahogy az operációs rendszer változott, a nevét lerövidítették, és így született meg a rövidebb "Unix" név.

• A UNIX nevet gyakran használjuk operációs rendszer család megnevezésére is, néha függetlenül attól, hogy egyáltalán fejlődésében van-e közvetlen köze az eredeti UNIX-hoz vagy sem. Ennek alapján a Linux is egy UNIX-szerű rendszer, annak ellenére, hogy közvetlenül nem használtak fel benne UNIX-eredetű kódot. A UNIX és UNIX-szerű operációs rendszereket gyakran *NIX közös megnevezéssel illetik.

Page 3: Linux  ismertetése

Unix története• A UNIX rendszermagját eleinte assembly segítségével készítették el,

majd 1973-ban nagyrészt átírták C nyelvre, amely lehetővé tette az egyszerű portolást a különböző hardverekre.

• A C nyelvű kernel forradalminak számított a maga idejében.• Alapvetően az egyszerűség jellemezte.• Minigépekre (mini-computers) tervezték majd onnan terjedt át a

mainframek és munkaállomások (workstations) világába.• A sokszínűség és inkompabilitás szinte az egész Unix-történetet

végigkíséri• Sok Unix verzió: jó, mert verseny egységesség hiánya

(Szabványosítási törekvések voltak, de nem jártak sikerrel)• Kereskedelmi Unix verziók: HP-UX, IBM AIX, Mac OSX, Oracle Solaris• Ingyenes Unix verziók: Open Solaris, FreeBSD, OpenBSD, NetBSD

Page 4: Linux  ismertetése

Unix nem Linux

• A „Linux” elnevezés szigorú értelemben véve a Linux-rendszermagot jelenti, amelyet Linus Torvalds kezdett el fejleszteni 1991-ben.

• A köznyelvben mégis gyakran a teljes Unix-szerű operációs rendszerre utalnak vele, amely a Linux-rendszermagra és az 1983-ban, Richard Matthew Stallman vezetésével indult GNU (GNU’s Not Unix) projekt keretében született alapprogramokra épül. A Linux pontosabb neve ebben az értelemben GNU/Linux.

• A „Linux” kifejezést használják Linux-disztribúciókra is, ám ilyenkor általában a disztribúció nevét is hozzáteszik. Egy-egy disztribúció olyan összeállítás, amely az alaprendszeren túl bizonyos szempontok alapján összeválogatott és testre szabott programokat tartalmaz.

Page 5: Linux  ismertetése

Linux története

• A GNU szabad szoftveres megmozdulás célja az volt, hogy szabadon felhasználható, minőségi szoftvereket készítsen és terjesszen. Elkezdődött a GNU operációs rendszer, a GNU/Hurd fejlesztése is, de végül sohasem látott napvilágot.

• A GNU Projekt főként az alkalmazásokra specializálódott és a hardvert vezérlő kernelre nem jutott kellő kapacitás.

• Ezért amikor megismerték Linus rendszermagját (kernelét), hamar beleszerettek és a két projekt összefonódott.

• A GNU/Linux nincs egyetlen cég kezében sem, hanem egy fejlesztői közösség áll mögötte és általuk fejlődik.

• Sok szempontból úttörő megoldásokat alkalmaztak, de található volt benne a „nagy” Unix verziókhoz képest gyenge pontok is.(pl.: a szálkezelés a 2.6-es kernelig nagyon kezdetleges volt)

Page 6: Linux  ismertetése

Szabad világ megteremtői

Richard M. StallmanGNU alapítója `84FSF alapítója `85

Linus Torvalds

LINUX kitalálója `91

Page 7: Linux  ismertetése

Szabad szoftver• A „szabad szoftver” elnevezés a felhasználók szabadságára utal. Azt

jelenti, hogy a felhasználóknak szabad futtatni, másolni, közzétenni, tanulmányozni, megváltoztatni és tökéletesíteni a szoftvert. Pontosabban kifejtve a felhasználók négy különböző jogát jelöli:– A jogot arra, hogy futtassák a programot, bármilyen céllal.– A jogot arra, hogy tanulmányozzák a program működését, és azt a

szükségleteikhez igazíthassák. Ennek előfeltétele a forráskód elérhetősége.– A jogot arra, hogy másolatokat tegyenek közzé a felebarátaik segítése

érdekében.– A jogot arra, hogy tökéletesítsék a programot, és a tökéletesített változatot

közzétegyék, hogy az egész közösség élvezhesse annak előnyeit. Ennek előfeltétele a forráskód elérhetősége.

• Egy program szabad szoftver, ha a felhasználók ezen jogok mindegyikével rendelkeznek.

Page 8: Linux  ismertetése

Nyílt forráskód• A nyílt forráskódú licenc olyan licenc, mely biztosítja egy számítógépes

program forráskódjának nyitottságát.• 1998-ban megalapult az OSI (Open Source Initiative) közhasznú

társaság, melynek célja a szabad szoftverek vállalati környezetben történő népszerűsítése.

• Egy szabad szoftver okvetlenül nem ingyenes, mert például a vásárló nem képes azt magának lefordítani, szüksége van kézikönyvre, CD-n vagy DVD-n szeretné a programokat megkapni, vagy mert támogatásra van szüksége. Az is elképzelhető, hogy valaki egyedi fejlesztéssel, testreszabással, adott hiba kijavításával, adott funkció beépítésével bíz meg egy programozót vagy céget, amely így már pénzbe kerül.

• A nyílt forráskódú megnevezés bevezetésére azért volt szükség, mert az angolban a szabad szoftverben (free software) szereplő „free” ingyenes jelentéssel is bír, amikor az nem feltétlenül igaz.

• Ha egy program Szabad és Nyílt akkor azt FOSS-nak rövidítjük.(Free and Open Source Software)

Page 9: Linux  ismertetése

Licencezési módok

• Copyleft– Lényege, hogy a jog adta eszközöket nem az adott szellemi termék

terjesztésének gátlására, hanem a megkötések kiküszöbölésére használják fel, így garantálva a felhasználás szabadságát a módosított változatokra nézve is, azaz a szabad szoftver szabad marad módosítás után is.

– Leggyakoribb formája a GNU General Public License (GPL)

• Permissive– Megengedi, hogy a szabad szoftver egyes új részei más

licencezéssel legyenek piacra dobva.– Leggyakoribb formája a BSD licenc és az MIT Licenc

• Bővebben:– http://en.wikipedia.org/wiki/Free_software_licence

Page 10: Linux  ismertetése

Ki fejleszt szabad szoftvert?

• Nagyok:– IBM, Oracle, Novell, Red Hat, Google, Mozilla, stb.– Pénzt a támogatással és a kapcsolódó szolgáltatásokkal

keresnek

• Közepesek:– Ösztöndíjjal, kormánytámogatással, egyetemi közegben

fejlesztenek

• Kicsik - „végfelhasználók”:– mert kell egy program– mert kell egy feature a programba (nem kell nulláról kezdeni)– just for fun – gyakorlás (munkatapasztalatként elfogadható)

Page 11: Linux  ismertetése

Unix-Like rendszerek felépítése

Page 12: Linux  ismertetése

Kernel• A rendszer magja, amely a hardver erőforrásainak kezelésért felelős

(beleértve a memóriát és a processzort is).• A többfeladatos (multitask) rendszerekben a kernel felelős azért, hogy

megszabja, hogy melyik program és mennyi ideig használhatja a hardver egy adott részét (ezen módszer neve a multiplexálás).

• A kerneleket négy fő kategóriába soroljuk:– a monolitikus kernelek gazdag és hatékony absztrakciókat biztosítanak az alattuk

található hardware elemekhez (ilyen pl.: a Linux és a BSD kernel)– a mikrokernelek egy kis méretű alapkészletet biztosítanak a hardware kezeléséhez,

és számos alkalmazással – amiket „szervereknek” nevezünk – biztosítják a további, részletesebb funkcionalitást (ilyen pl.: az IBM AIX és a Minix kernel)

– a hibrid vagy módosított mikrokernelek hasonlóak a színtiszta mikrokernelekhez de több, részletesebb kódot tartalmaznak a kernelmagban, hogy nagyobb sebességet érjenek el (ilyen pl.: a Windows NT kernel és a Linux újabb verziói)

– az exokernelek (vagy rendszer rutinkönyvtárak) nem biztosítanak absztrakciókat vagy állandó rendszermagot, hanem egy programokban használható rutinkönyvtárból állnak, ami a hardver közvetlen vagy közvetett elérését biztosítja (inkább kutatási terület)

Page 13: Linux  ismertetése

Linux kernel fejlődése• Linux esetében a kernel cserélhető• 3-4 elemet tartalmazó verziószámozás

• Kernel verziószáma• Major verzió• Minor verzió• Patchek

• 1991: Linux 0.01• 1994: Linux 1.0• 1996: Linux 2.0• 1999: Linux 2.2.0• 2001: Linux 2.2.4 a 2.4-es kernel• 2003: Linux 2.2.6 a 2.6-os kernel• 2011: Linux 3.0• 2012: Linux 3.2.0

• A Linux 3.x kernel található meg az Android 4.x készülékekben

Page 14: Linux  ismertetése

Shell

• A rendszerhély (shell) az adott operációs rendszer parancsértelmezője.

• Interfész a felhasználó és a kernel között.– Command Line Interface (CLI)– Parancssori felület

• Linux alatt több shell létezik, amelyek között szabadon választhatunk.– BSH (Bourne SHell)– BASH (Bourne Again SHell) alapértelmezett– CSH (C SHell)– TCSH (Advanced C SHell): a T a TENEX operációs rendszerre utal– KSH (Korn SHell): A C és Bourne shellek legjobb szolgáltatásait ötvözi– ZSH (Z SHell): Továbbfejlesztett Korn Shell

Page 15: Linux  ismertetése

Disztribúciók

A disztribúciók különböző felhasználási területeket céloznak meg, mint vállalkozási szféra, otthoni felhasználók, szerverek, multimédia központok.

Emiatt a gyártók különböző alkalmazásokat integrálnak, fejlesztenek, esetleg egyedi javításokat (patch) eszközölnek vagy akár további fejlesztőeszközöket adnak, azért hogy a célterület igényeit a lehető legjobban lefedjék.

Page 16: Linux  ismertetése

Disztribúciók fő komponensei

Mint látható a modern operációs rendszerek sok komponensből tevődnek össze. A kernel ezeknek csak egy része.

A baloldali ábra jól szemlélteti az alkalmazások rétegződését.

Page 17: Linux  ismertetése

Linux disztribúciók

• Ingyenes verziók:– Debian és holdudvara (pl.: Ubuntu)– Fedora (RedHat közeli)– Open Suse– Sokan mások…

• Fizetős verziók:– RedHat Enterprise Linux– SUSE Linux Enterprise– Oracle Linux

• Live-CD:– Telepítés nélkül kipróbálható– Knoppix– Demolinux

Page 18: Linux  ismertetése

Hasznos linkek

• http://www.hup.hu – Hungarian Unix Portal• http://www.kernel.org – Linux kernel helye• http://www.distrowatch.com – Különböző disztribúciók

összegyűjtve• http://hogyan.org/ – Linux tutorialok magyarul• http://www.howtoforge.com/ – Linux tutorialok angolul

• http://www.google.hu és http://hu.wikipedia.org/Hiszen a Google a barátod és a Wiki a barátnőd