Általánosan a Linuxról
DE-EFK Egészségügyi Ügyvitelszervező Szak Linux c. tantárgy 2006 I. félév
LINUX fogalma
A Linux egy nyílt forráskódú (Open Source) multiuser /többfelhasználós/, multitasking /többfeladatos/ operációs rendszer, amely GPL licensz alatt került terjesztésre. GPL = GNU General Public License egy általános célú szabad licenc
LINUX fogalma ●
●
●
A „Linux” elnevezés szigorúan véve a Linux kernelt jelenti Gyakran az elnevezést a teljes Unix-szerű operációs rendszerre alkalmazzák, mely a Linux kernelre és a GNU könyvtárakra és eszközökre épül; ennek elnevezését gyakran a „GNU/Linux” formában használják. pl. Debian GNU/Linux
LINUX kernel ●
●
●
A Linux kernel a Linux operációs rendszer magja. Feladata, hogy kapcsolatot teremtsen a számítógépen futó programok és a hardver között. Felelős a megfelelő memória kezelésért, a processzor ütemezésért
Linux története - előzmények '80-as évek ●
QDOS (Quick and Dirty Operating System)
●
IBM – MS-DOS operációs
●
Drága Mac és Unix rendszerek Úgy vélték a UNIX soha nem lesz az otthoni felhasználók operációs rendszere! A remény neve MINIX volt
Linux története - MINIX ●
Andrew S. Tanenbaum holland professzor
●
Intel 8086 mikroprocesszor
●
●
●
Oktatási céllal, az operációs rendszer működésének oktatása Előnye, hogy nyílt forráskódú Vállalkozó szellemű programozók operációs rendszert írnak
Linux története - születés ●
●
●
●
Linus Benedict Torvalds – autodidakta hacker 1991-ben saját operációs rendszert szeretett volna írni a 80386 processzor védett módú (protected mode), feladat-váltó (task-switching) lehetőségeivel szeretett volna megismerkedni. A program fejlesztése a Tanenbaum-féle Minix alatt történt, eleinte Assembly nyelven.
Linux története - születés 1991. augusztus 25. Linus egy történelmi levelet küldött a MINIX hírcsoportba „Üdv minden Minix-felhasználónak odakinn! Készítek egy (ingyenes) operációs rendszert (csak hobbi, nem lesz olyan nagy és profi, mint a GNU a 386- (486) AT-klónokhoz. Április óta kotyvasztom, és már kezd elkészülni. Szeretnék visszajelzéseket hallani, mit szerettek, illetve nem szerettek a Minixben, mivel az én operációs rendszerem némileg hasonlít rá (többek között azonos a fájlrendszer fizikai kiosztása - :gyakorlati okokból). Mostanában ültetttem át a bash (1.08) és a gcc (1.40) programokat, és úgy tűnik, működnek a dolgok. Ez azt is jelenti, hogy pár hónapon belül valami használhatót fogok kapni, és kíváncsi lennék, milyen képességeket szeretnének az emberek. Minden javaslatot szívesen veszek, azt viszont nem ígérem, hogy meg is csinálom őket :-) - Linus (
[email protected])
GNU-Project - FSF ●
●
●
Richard M. Stallman
A GNU projekt 1984-ben indult azzal a céllal, A hogy egy teljesen szabadterjesztésű programokbóll álló, UNIX-szerű rendszert hozzon össze. Free Software Foundation = FSF
GNU – GNU is Not Unix Stallman álma egy szabadon felhasználható operációs rendszer elkészítése volt. ●
●
●
A GNU projekt egy sor magas minőségű és szélesen elterjedt szabad szoftvert hozott létre 1991-re a GNU projekt számos fejlesztőeszközt készített. - GCC GNU/Hurd
Szabad szoftver ●
●
A szabad szoftver kifejezés olyan számítástechnikai dolgokat (általában programokat) jelent, melyek szabadon felhasználhatóak. A szabad programok szabadságát a szabad licencek biztosítják.
Szabad szoftver A „szabad szoftver” elnevezés a felhasználók szabadságára utal.
1. A felhasználóknak szabad tetszőleges célra, tetszőleges számú számítógépen futtatni a szoftvert, azaz a felhasználást semmi nem korlátozza. 2. A felhasználó szabadon másolhatja és terjesztheti, illetve közzéteheti a szoftvert. 3. A felhasználó szabadon módosíthatja, testreszabhatja, javíthatja, tökéletesítheti a szoftvert. 4. A felhasználó szabadon közzéteheti a szoftver általa módosított verzióját.
Szabad szoftver ●
●
A „szabad” nem feltétlenül jelent „ingyenest”: bárki bármennyiért árusíthatja a kérdéses programokat; az egyetlen feltétel, hogy a fenti négy alapjogot garantálja vevői számra.
Free Software Foundation („Szabad Szoftver Alapítvány”) vezeti azon licencek listáját, amely megfelelnek a fenti elveknek.
●
http://fsf.hu
●
Openoffice.org, Firefox, Thunderbird
LINUX és a GNU kapcsolata ●
●
Egyrészt, a Linux rendszermag (az első néhány verzió kivételével) a GPL hatálya alá esik, másrészt a Linux rendszerek alapprogramjai és a felhasználói programok jelentős hányada a GNU project keretében készült, vagy írója a GPL-t alkalmazza. Bizonyos szempontból a Linux kiegészíti a GNU projectet. A GNU egy teljes rendszer szeretne lenni, de ezidáig még nem írtak rá egy megbízható rendszermagot.
LINUX és a hardver
LINUX és a hardver Mint a legtöbb operációs rendszer esetében, Linux alatt is az eszközök un. kernelmodulokon keresztül kommunikálnak a rendszerrel. Ezek a rendszermag részei. Windows esetében általában az eszközhöz adott lemezen találhatók meg, Linux esetében optimális esetben már maga a rendszermag tartalmazza azt.
LINUX és a hardver – JÓ TANÁCS! Ha tartósan Linuxot tervezünk használni, akkor mindennemű hardvervásárlás előtt informálódjunk, hogy mire számíthatunk linux tekintetében. ●
Gyártó mellékeli a drivert (free vagy non-free) ● Interneten elérhető ● Linux kernel tartalmazza
LINUX kernel
http://www.kernel.org A Linux-kernel egy nyílt Unix-szerű operációs rendszer mag, amelyet Linus Torvalds alkotott meg 1991-ben, és azóta össznépi erővel fejlesztik emberek a világ minden tájáról. A Linux-kernel C-ben íródott (néhány GNU C kiegészítéssel), de tartalmaz assembly kódrészletet is. Mivel GPL licensszel fejlesztik, a Linux forráskódja szabad szoftver.
LINUX kernel A monolitikus kernel, a számítógépes operációs rendszerek között, az egyetlen nagy programból álló rendszermag, nem pedig különálló, egymással különböző interfészeken keresztül kommunikáló programok összessége, mint napjaink mikrokernelei. A Linux rendszer magja még kifejlesztése után 15 év elteltével is monolitikus felépítésű, noha Andrew S. Tannenbaum professzor már kezdetben elavultnak nevezte a monolitikus struktúra miatt.
LINUX kernel A mikrokernelek az általuk nyújtott funkciók nagy részét felhasználói szintre (userspace) helyezték egy plusz absztrakciós szintet biztosítanak. Ennek előnye, előnye hogy a felhasználói szinten futó programrészek hibáinak vagy működési zavarainak esetén azok nem veszélyeztetik magának a rendszermagnak a működését, és így a rendszer stabilitása nagy mértékben nő. Hátránya azonban, hogy – mint minden új absztrakciós szint bevezetésének – ezzel csökken a rendszer teljesítménye, és így esetleg egyes kritikus feladatokat (nagyon gyors és pontos elérést igénylő hardware elemek kezelését) nem tudja hatékonyan megoldani.
LINUX kernel A hibrid kernelek alapjában véve olyan mikrokernelek, amelyekben néhány „nem létfontosságú” kódrészletet átmozgattak a felhasználói szintről (userspace) a kernel szintre (kernelspace) azért, hogy az kevesebb absztrakciót használva, gyorsabban fusson. Például: Windows NT alapú op.rendszer
LINUX kernel – Kernel modul A linux kernel eltér a hagyományos értelemben vett monolitikus kernelektől abban, hogy a kód nagy része (jellemzően egy-egy adott hardware támogatásáért felelős driver, azaz "eszközmeghajtó") nemcsak a kernel állományban foglalhat helyett, hanem külön u.n. kernel modulból is betöltehető. Ez a 2.0-ás kernelben bevezetett változás jelentősen lecsökkenti a kernel méretét és megkönnyíti a fejlesztést
LINUX kernel –
Kernel finomhangolása