Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

1 byte (8 dvojkových cifer či dvě šestnáctkové cifry)

Podobné prezentace


Prezentace na téma: "1 byte (8 dvojkových cifer či dvě šestnáctkové cifry)"— Transkript prezentace:

1 1 byte (8 dvojkových cifer či dvě šestnáctkové cifry)
Jak se pracovalo s počítači dříve mov ax,bp sub ax,4 push ax push offset text2 call _scanf pop ax mov ax,word ptr [bp-2] add ax,word ptr [bp-4] FF A3 B8 31 A7 B4 EF 17 E8 1E 38 91 1A 24 B8 C7 DD F4 D7 FF AF 14 B3 57 Pro projekt „Cesta k vědě“ (veda.gymjs.net) vytvořil V. Pospíšil Modifikace a šíření dokumentu podléhá licenci CC-BY-SA. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti 1 byte (8 dvojkových cifer či dvě šestnáctkové cifry)

2 Jak se pracovalo s počítači dříve
Přímé adresování – proměnné byly uloženy v programátorem určené buňce paměti 35448 : 1 35449 : 2 byte od buňky představují rychlost částice 35450 : 35451 : 2 byte od buňky představují hmotnost částice 35452 : … a tak podobně … Jak se například zadávalo násobení dvěmi? FF A3 8A B4 EF 17 E8 1E 38 91 1A 24 B8 C7 DD F4 D7 FF AF 14 B3 57 instrukce pro násobení 2-byte čísla v paměti danou konstantou buňka paměti ( 8A79 16 = ) hodnotu čísla v zadaných dvou buňkách vynásob dvěmi

3 Co se všechno mohlo pokazit
Pokud například instrukce A2 znamenala násobení 1-byte čísla v paměti konstantou, způsobil podobný překlep následující: v = = 2EE0 16 v = = 5DC0 16 1 35449 : 35450 : 1 35449 : 35450 : správně FF A3 8A B4 EF 17 E8 1E 38 91 1A 24 B8 C7 DD F4 D7 FF AF 14 B3 57 v = = 2EE0 16 A2 namísto A3: 2 x E0 16 = 1C0 16 v = = 2EC0 16 1 35449 : 35450 : 1 35449 : 35450 : špatně

4 Co se všechno mohlo pokazit
35448 : 1 35449 : 2 byte od buňky představují rychlost částice 35450 : 4 byte od buňky představují rychlost částice 35451 : 2 byte – čísla od 0 do 65535 35452 : Co když si později uvědomíme, že tento rozsah je malý a chceme rychlost 4 byte (0 – ) ? 2 byte od buňky představují hmotnost částice … a tak podobně … FF A3 8A B4 EF 17 E8 1E 38 91 1A 24 B8 C7 DD F4 D7 FF AF 14 B3 57 V kódu je nutné změnit všechny příslušné instrukce, pozice buněk a čísla pozic VŠECH proměnných, které jsou v paměti umístěné za rychlostí!

5 Co všechno se mohlo pokazit
Na starých počítačích pracovali pouze určení operátoři a programovali požadavky uživatelů. Se vzrůstajícím využíváním výpočetní techniky ale toto schéma přestalo vyhovovat a bylo nutné umožnit přístup k počítačům uživatelům přímo. Uživatelé se ovšem v instrukčních sadách nevyznají a kromě toho mohou mít na počítač nesmyslné či kolidující požadavky – zvláště pokud přijdou zároveň.

6 Operační systémy a programovací jazyky
Řešením bylo a) zavést nějaký symbolický jazyk, kterému by rozuměl jak počítač, tak člověk b) zamezit uživatelům přímý přístup k HW prostředkům počítače a položit mezi ně další vrstvu programů, která by zpracovávala požadavky uživatelů na počítač v pořadí, ve kterém přijdou, bez kolizí c) zamezit uživateli počítače v přístupu k úlohám a datům jiného uživatele, aby nedocházelo k omylům Překladače - programy, které převádějí lidem srozumitelný jazyk do strojového kódu (BASIC, Fortran, C, Pascal, atd… ) Operační systém - skupina programů odpovídající za přímý přístup k HW a správu uživatelských požadavků (UNIX, Linux, Windows atd…)

7 Dennis MacAlistair Ritchie
OS UNIX Ken Thompson 1943 - Dennis MacAlistair Ritchie 1941 - Počítač PDP-7 Operační systém UNIX byl vyvinut v sedmdesátých letech pro společnost Bell Telephone Laboratories (divize AT&T) na počítači PDP-7. V souvislosti s UNIXem byl také vyvinut programovací jazyk C. UNIX byl ve vyšších verzích psán v C-čku sám, což umožnilo jeho přenositelnost na další počítače (strojový kód je sám o sobě zpravidla nepřenositelný). Koncem sedmdesátých let antimonopolní úřad zakázal AT&T činnost v počítačovém průmyslu. Společnost převedla licenci k UNIXu na univerzity odkud přešel později znovu do komerční sféry. Dnes se užívá v několika variantách na velkých mainframech.

8 OS UNIX – strom verzí OS Linux

9 Richard Matthew Stallman
Projekt GNU Richard Matthew Stallman 1953 - GNU je projekt zaměřený na svobodný software, inspirovaný operačními systémy unixového typu. Původní cíl byl vyvinout operační systém se svobodnou licencí, který však neobsahuje žádný kód původního UNIXu. Jeho jméno je rekurzivní zkratka pro GNU's Not Unix (anglicky GNU Není Unix). Projekt GNU založil v roce 1983 programátor Richard Stallman, vlastní softwarový vývoj začal o rok později. Cílem projektu bylo vytvořit kompletní svobodný operační systém. To se podařilo naplnit v roce 1992, kdy byla poslední chybějící součást, jádro (kernel), doplněna nezávisle vytvořeným svobodným jádrem Linux. Ačkoliv se takovému systému často říká Linux, přesnější pojmenování je GNU/Linux. Operační systém GNU však může používat i jiná jádra, např. jádro Hurd (systém se pak nazývá GNU/Hurd). Krédo svobodného software jsou tyto čtyři svobody: svoboda používat program za jakýmkoliv účelem svoboda studovat, jak program pracuje a možnost přizpůsobit ho svým potřebám svoboda redistribuovat kopie programu - můžete pomoci přátelům svoboda vylepšovat program a zveřejňovat zlepšení, aby z nich mohla mít prospěch celá komunita Projekt GNU 1983 - Dnes řídí chod GNU Free Software Foundation. Organizace je autorem licencí GPL (General Public Licence) a GFDL (General Free Documentation Licence), které mohou používat i jiní autoři softwaru a dokumentace. Slovo Free zde neznamená „zadarmo“, nýbrž „svobodný“ (dle výše uvedených zásad).

10 Obslužné programy a nástroje
OS GNU/Linux Linus B. Torvalds 1969 - Linux 1991 - Jádro systému Linux začalo být vyvíjeno v roce 1991 pro počítače s procesorem řady 386. Vychází z myšlenkově UNIXu, veškerý kód byl ale napsán znovu a na jeho vývoji se nepodílela žádná komerční společnost. Ve spojení s programy projektu GNU je šířeno jako plnohodnotný systém GNU/Linux. „Potřebuju nějaký rozumný systém – DOS neumí multitasking, UNIX je příšerně drahý a náročný…“ Uživatelské rozhraní Obslužné programy a nástroje Jádro (kernel) HARDWARE UŽIVATEL 1 UŽIVATEL 2 UŽIVATEL 3 Aplikace

11 Šíření OS GNU/Linux GNU/Linuxová distribuce je označení kompletu programových balíků provozovatelných na operačním systému GNU/Linux. Tzn. nejenom vlastního jádra operačního systému ale i dalších aplikací, které mohou být, ale většinou nejsou autorským dílem distributora. Tyto distribuce se liší například ve způsobu instalace programových balíků, integrací vlastních konfiguračních metod, atp. Jedna z nejpopulárnějších distribucí v Evropě (sídli v Německu). Jedná se o rozsáhlou distribuci (7+ CD či 2 DVD), společnost vlastní Novell. Red Hat Enterprise Linux (často značen RHEL) je linuxová distribuce vyvíjená americkou firmou Red Hat Inc. určená pro podnikovou sféru. Fedora Core nekomerční verze Red Hat Linuxu. Mandriva nekomerční distribuce zaměřená na snadnost ovládání Scientific Linux nekomerční distribuce pro laboratoře Debian nekomerční univerzitní distribuce

12 Přihlášení do Linuxu Každý uživatel má právo manipulovat pouze s vlastními soubory a smí spouštět obecné aplikace. Nesmí operovat se soubory ostatních uživatelů a zejména nesmí měnit nastavení systému. Systém smí konfigurovat pouze tzv. superuživatel, který se vždy přihlašuje pod jménem root. Zpravidla to bývá správce sítě. Uživatel root smí absolutně všechno – od mazání a vytváření uživatelských účtů přes změny systémových nastavení až po zápis do číchkoliv a jakýchkoliv souborů. Pracujete-ůi pod uživatelem root, je třeba si každý krok důkladně rozmyslet – neuvážená operace snadno operační systém zničí. Aby systém umožnil člověku práci, je nutné se do něj nejprve přihlásit, a to pomocí zvoleného uživatelského jména a hesla. Uživatel, který sedí přímo u daného počítače má obvykle k dispozici grafické rozhraní, po síti je třeba užít konzoli (příkazový řádek).

13 Uživatel je přihlášen do linuxu přes konzoli (příkazovou řádku)
Přihlášení z Windows do linuxu na vzdáleném počítači pomocí programu putty

14 Přihlášení do Linuxu Přímo z linuxové konzole se lze přihlásit k jinému vzdálenému počítači příkazem ssh. Příkaz ssh přihlásí uživatele pospisil na počítač s internetovou adresou buon.fjfi.cvut.cz Uživatelské heslo je možné změnit příkazem passwd.

15 Základní nástroje Linuxu - shell
Samotné jádro pro práci na operačním systému nestačí – neumí totiž komunikovat s uživatelem. K tomu je potřeba nějaký další software. Pro linux nejtypičtější je inerpret příkazové řádky. Interpret příkazové řádky (konzole, terminál nebo shell) je jeden z obslužných programů. Nejpoužívanější je bash (akronym Bourne Again Shell) vychází z UNIXovského shellu napsaného Stephenem Bournem pro Bellovy laboratoře. Existují i další shelly, jako Korn (ksh) či C-shell (csh). Bash je vyvíjen v rámci projektu GNU. Shell umožňuje: Komunikaci uživatele a jádra přes jednoduché psané příkazy Spouštění dalších aplikací a přesměrování jejich vstupů a výstupů dle potřeb uživatele Spouštět skripty – posloupnosti příkazů shellu a spuštění jednotlivých aplikací dle instrukcí zapsaných v souboru. Pracuje-li uživatel v grafickém rozhraní, lze mít najednou otevřeno libovolné množství shellů, každý v jiném okně. Každý shell (okno) může mít rozdílné nastavení systémových proměnných a v každém může být přihlášen jiný uživatel.

16 Dva bash shelly s různými přihlášenými uživateli
Základní nástroje Linuxu - shell Dva bash shelly s různými přihlášenými uživateli

17 Soubory v Linuxu Linux má adresáře a soubory uspořádány podobně jako Windows. Je zde však několik rozdílů: Linux nedělí strom adresářů podle diskových oddílů. Místo toho má jeden základní strom, ke kterému se jednotlivé disky připojují jako podadresáře. Kromě souborů a adresářů existují ve stromu tzv. symbolické odkazy. Tyto odkazy se tváří, jako by byly normálními soubory, ale ve skutečnosti jsou jen „ukazatele“ na soubory fyzicky zapsané někde jinde. Jsou do jisté míry analogií „zástupců“ ve Windows. Základ stromu adresářů má pevně danou strukturu. Některé adresáře mají speciální význam. Soubory začínající tečkou jsou považovány za skryté. Při psaní jmen souborů a adresářů platí následující pravidla znak pro aktuální adresář znak pro adresář o jeden blíže ke kořeni než aktuální / odděluje jména adresářů (opačné lomítko než pod Windows) * nahrazuje libovolnou skupinu znaků ve jménu souboru ? nahrazuje jeden znak ve jménu souboru ~ nahrazuje cestu k domovskému adresáři uživatele

18 Soubory v Linuxu Například: /home/pospisil/
Domovský adresář uživatele pospisil ~/Screenshots/ Adresář Screenshots v domovském adresáři aktuálního uživatele. V případě uživatele pospisil je toto zkratka pro /home/pospisil/Screenshots/ /home/pospisil/* Všechny soubory v adresáři /home/pospisil/ /home/pospisil/*.log Všechny soubory v adresáři /home/pospisil/ končící skupinou znaků .log ./hy*xt.log Všechny soubory v aktuálním adresáři začínající skupinou znaků hy a končící skupinou znaků xt.log ../log?.txt Všechny soubory o adresář níž než aktuální ve tvaru log<libovolný znak>.txt ../public/*_log?.txt Všechny soubory ve „vedlejším“ adresáři public ve tvaru <libovolná skupina znaků>_log<libovolný znak>.txt

19 Strom adresářů v Linuxu
/ /bin Důležité spustitelné soubory (nízká úroveň) /boot Soubory pro zavádění systému /dev Ovladače zařízení. Soubory zde jsou ve skutečnosti komunikačními kanály a data do nich zapsaná se posílají na HW zařízení. /etc Systémová nastavení /home Domovské adresáře uživatelů /lib Programové knihovny Dočasná disková zařízení se připojují do podadresářů sem (CD, DVD, USB flash disk apod.) /mnt /proc Informace o jádře a běhu systému. Soubory zde jsou ve skutečnosti přímými kanály do paměti používané jádrem. Jakýkoliv zápis sem má zpravidla fatální následky. /root /sbin Domovské adresář superuživatele root /tmp Spustitelné soubory (aplikace nízké úrovně) Dočasné soubory aplikací /usr Spustitelné soubory a data aplikací /var Různá proměnná data (pošta, tiskové fronty apod.)

20 Strom adresářů v Linuxu
Tento strom je vytvořen vždy a musí být umístěn na disku, ze kterého byl systém do počítače zaveden. Další adresáře mohou být vytvářeny dle libosti. Pokud má linux pracovat s dalšími disky, je nutné vytvořit adresář a přikázat jádru, aby obsah dalšího disku umístil do tohoto adresáře. Zcela typicky Do adresář /home/ je umístěn (mount) obsah jiného fyzického disku, než na kterém je systém. To jednak ochraňuje systémové soubory před případným poškozením a navíc zabraňuje tomu, aby uživatelé „zaplácali“ veškeré volné místo, které systém potřebuje k činnosti. Do adresáře /windows/C je připojen disk obsahující systém Windows. Analogicky do /windows/D, windows/E … jsou namountovány další disky s windowsovskými daty. Pro připojování a odpojování disků slouží programy mount a umount. Operace s nimi lze doporučit pouze zkušeným uživatelům. Moderní distribuce linuxu zpravidla zařizují automatický mount/umount pro média typu CD, DVD a USB flash.

21 Usnadnění práce s konzolí
V grafickém módu lze práci s konzolí usnadnit přes schránku. Levým tlačítkem lze označit libovolný text, pravým tlačítkem se označené znaky umístí do příkazové řádky. Klávesou tab se aktivuje funkce doplňování. Shell po jejím stisknutí doplní rozepsané jméno souboru, je-li možné soubor jednoznačně identifikovat z již napsaných znaků.

22 Základní nástroje Linuxu – program ls
Program ls slouží k výpisu obsahu aktuálního adresáře. Nejobvyklejší volby : -- help : vypíše všechny možnosti -l : vypíše všechny informace o souborech : výpis do sloupce -a : vypíše i skryté soubory (jejich jméno začíná tečkou) Přidáme-li jméno souboru nebo libovolnou zkratku, vypíše jen příslušný soubor (soubory), pokud existují. Například ls *.txt vypíše všechny soubory s příponou .txt

23 Přístupová práva k souborům
K souboru mohou přistupovat tři typy uživatelů : vlastník (owner - ten, který soubor vytvořil), člen skupiny (group) a kterýkoliv jiný (other). K souboru lze přistupovat třemi způsoby : číst soubor (read), zapisovat do souboru (write) a spouštět soubor (execute). To dává dohromady devět typů přístupových práv, která lze zvlášť nastavit. Práva všech souborů v adresáři zobrazí ls s direktivou –l. Informace se zobrazují následovně: -rwxr-xr-x pospisil users :52 exeprog Velikost souboru v byte Datum a čas poslední modifikace Jméno souboru Majitel souboru Typ souboru (- pro normální, d pro adresář) Počet odkazů na soubor Skupina majitele souboru Přístupová práva -rwxr-xr-x Čtení, zápis a spouštění ostatními Písmeno – operace je povolena, pomlčka – operace je zakázána Čtení, zápis a spouštění skupinou Čtení, zápis a spouštění vlastníkem

24 Přístupová práva k souborům
Měnit práva k souborům smí jen vlastník a superuživatel (root). K tomu je určen příkaz chmod . Jeho parametry jsou a … všichni (all), u … uživatel (user), g … skupina (group), o … ostatní (other) + … udělí právo k operaci, - … odebere právo k operaci r … právo ke čtení, w … právo pro zápis, x … právo pro spouštění a jméno souboru (souborů). Parametr –R změní práva zadaných souborů ve všech podadresářích. Přístupová práva adresářů mají trochu jiný význam. Nemá smysl se ptát, zda adresář lze spouštět či nikoliv (nejde to nikdy), přístupové právo x je proto předefinováno na právo prohlížet obsah adresáře.

25 Základní nástroje Linuxu – program cd
Program cd slouží k změně aktuálního adresáře. Jako parametr program vyžaduje jméno adresáře. Pokud je spuštěn bez parametru, změní aktuální adresář na domovský adresář uživatele.

26 Základní nástroje Linuxu – program cp
Program cp slouží pro kopírování souborů mezi adresáři. Povinné parametry jsou cp zdrojový-soubor cílový-soubor všechny parametry lze vypsat příkazem cp --help.

27 Základní nástroje Linuxu – program rm
Program rm slouží pro mazání souborů. Všechny parametry lze vypsat příkazem rm --help. Pozor – smazané soubory nelze obnovit!

28 Základní nástroje Linuxu – programy mkdir a rmdir
Programy mkdir a rmdir slouží pro vytváření a mazání adresářů. Všechny možnosti lze vypsat pomocí direktivy --help.

29 Základní nástroje Linuxu – program ssh
Program ssh slouží pro otevření shellu na vzdáleném počítači. Jako parametr vyžaduje uživatelské jméno a adresu počítače ve tvaru ssh Spojení ukončíme příkazem exit. Chceme-li spouštět vzdálené grafické aplikace, je nutné volat ssh s direk-tivou –X.

30 Základní nástroje Linuxu – program scp
Program scp slouží pro kopírování souborů mezi vzdálenými pošítači. Povinné parametry jsou scp počítače>:zdrojový-soubor cílový-soubor scp zdrojový-soubor počítače>: cílový-soubor všechny parametry lze vypsat příkazem scp --help. Program se zeptá na heslo.

31 Základní nástroje Linuxu
Další užitečné programy pro orientaci v adresářovém stromě: Program pwd vypíše cestu k aktuálnímu adresáři Program whoami vypíše jméno aktuálního uživatele Program which najde umístění spustitelného souboru (v cestě spustitelných souborů) Program whereis projde navíc i některé standardní adresáře a najde i manuálové stránky.

32 Základní nástroje Linuxu
Další užitečné programy : Program grep vyhledá zadaný řetězec v souboru Program head vypíše prvních 10 řádek ze souboru (pro rychlé vyhledávání) Program tail vypíše posledních 10 řádek ze souboru Program sort setřídí obsah textového souboru Program diff porovná obsah dvou souborů a vypíše rozdíly

33 Rozšířené nástroje Linuxu - mc
Nadstavba shellu zejména pro práci se soubory je široce rozšířený Midnight Commaner. Umožňuje pohodlnou práci se soubory ve dvou oknech, umí i připojit strom vzdáleného počítače protokolem ssh a zobrazit jej v okně. Shell pod ním běží i nadále. Nepotřebuje grafické rozhraní.

34 Grafické rozhraní Linuxu
Základem grafického rozhraní linuxu je X Window system (X11), což je serverová aplikace umožňující ostatním programům grafický výstup a vstup přes myš a další polohovací zařízení (vytvořena v roce 1984). Zásadní rozdíly mezi X11 a MS Windows: X11 není součástí jádra. Linux bude běžet i bez X11 v textovém módu a jeho funkčnost se nezmění. X11 je serverová aplikace, která běží na počítači uživatele. Programy, které skrze ni posílají své vstupy a výstupy ale lokálně běžet nemusí. X11 dokáže ošetřit v podstatě libovolné množství aplikací spuštěných na libovolném množství vzdálených počítačů. X11 nedefinuje vzhled prostředí. Tvary oken, ikon panelů a dalších grafických prvků s X11 vůbec nesouvisí – to zajišťuje tzv. správce oken. Správců oken je k dispozici velké množství a uživatel si může vybrat dle svého vkusu.

35 Grafické rozhraní Linuxu
Aplikace net Správce oken X Window net Jádro (kernel) net

36 Grafické rozhraní Linuxu
Správce oken KDE 3.1

37 Grafické rozhraní Linuxu
Správce oken Gnome

38 Grafické rozhraní Linuxu
Správce oken FluxBox

39 Grafické rozhraní Linuxu
Správce oken fvwm

40 Proč Linux? GNU/Linux je otevřený systém, na kterém pracuje tisíce vývojářů po celém světě. Ke každému spustitelnému souboru je dodáván i zdrojový kód – jakékoliv chyby jsou rychle objeveny a odstraněny. Aplikace jsou rychle aktualizovány a vznikají nové, vyhovující momentálním potřebám. Linux je stabilní. Aplikace jsou dobře chráněny jedna před druhou a jádro je rovněž „nedobytné“ - zároveň je ale umožněna dobrá komunikace mezi procesy. Více uživatelů může na jednom počítači provozovat větší množství aplikací, aniž by se to projevilo na stabilitě. Lidově řečeno, systém je dokonale „blbuvzdorný“. Bezpečnost dat a programů je řešena systémově na nejnižší úrovni (na rozdíl od Windows, kde je řešená dodatečně). Data uživatele mohou být neviditelná pro ostatní a ani sebelepší virus spuštěný jedním uživatelem nemůže ovlivnit další uživatele nebo systém. Linux je od základů stavěný pro práci v síti. Umožňuje nejen síťové sdílení souborů, ale i sdílení strojového času. Jeden výpočetní systém může snadno rozdělit podúkoly na více počítačů, což je obrovská výhoda zejména pro rozsáhlé vědecké výpočty. Linux je volně šiřitelný a to včetně komerčních verzí a včetně všech aplikací. Uspořené náklady jsou více než zřejmé.

41 Proč ne Linux? Výrobci se neobtěžují s vývojem ovladačů pro hardware. Pro velké množství komponent píší ovladače nadšenci, ale zejména u moderních grafických karet toto zůstává velkým problémem. 3D akcelerace pod linuxem funguje málokdy. Takže žádná pařba . Absence her výrazně brání rozšíření linuxu do domácností. Přenositelnost dokumentů MS Office na GNU aplikace jsou zatím omezené (Microsoft velmi nerad publikuje své formáty). Pro kanceláře je tak problém s převodem agendy pod linux. GNU aplikace (Open Office) mají zároveň hůře zpracovanou možnost vedení podnikové dokumentace podle norem, vyžadovaných evropskými úřady. To zatím brání rozšíření linuxu do kanceláří. Mnozí konzervativní šéfové mají názor „je to zadarmo – je to k ničemu“. Tato mylná domněnka však zajisté vymizí s nastupující generací .


Stáhnout ppt "1 byte (8 dvojkových cifer či dvě šestnáctkové cifry)"

Podobné prezentace


Reklamy Google