4772
Comment:
|
3229
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
## page was renamed from OperacneSystemy = Počítačové siete = |
= Operačné systémy = |
Line 4: | Line 3: |
2008/09 -- ZS | <<Pozor>> Zápočtové cviko bude 20.5.2016. Domáce zadanie je tu [[attachment:zadanie2_2016.pdf]] <<Pohov>> |
Line 6: | Line 7: |
== Vyučujúci == | == Repozitáre == |
Line 8: | Line 9: |
## Doplň vyučujúcich | https://bitbucket.org/gjenca/os2016 |
Line 10: | Line 11: |
* Gejza Jenča gejza.jenca@stuba.sk | == Konzultačné hodiny == |
Line 12: | Line 13: |
V utorok 10:00-12:00. Radšej ale konzultuje priamo na cvičení. == Skúška == |
|
Line 22: | Line 26: |
* Textový editor vim | |
Line 24: | Line 27: |
* Základy internetových protokolov * Protokol http * Základy HTML |
|
Line 28: | Line 28: |
== Domáce zadania == | == Výsledky == |
Line 30: | Line 30: |
=== Cvičenia pre prípravu na prvé skúšobné cvičenie === | ##[[/Vysledky]] |
Line 32: | Line 32: |
<<Pozor>> Tieto zadania si vypracujte doma. Ak to zvládnete sami, nemali by ste mať na skúšobnom cvičení problém. Môžete si samozrejme navzájom pomáhať. Zadania nebudem zbierať. Na cvičení vám dám urobiť niečo podobné, takže si vypracované zadania doneste, pomôže vám to. Body dostanete za to, čo urobíte priamo na cvičení. |
== Ďalšie cvičenia == |
Line 38: | Line 34: |
'''Skúšobné cvičenie bude vo štvrtok 30.10 -- nie v piatok, aby nás nezaskočilo prípadné voľno pred 1.11''' <<Pohov>> |
[[ /CviceniaZoShellu | Cvičenia zo shellu]] |
Line 41: | Line 36: |
Pripomínam, že príkaz {{{man}}} je vaším priateľom. Pre komplexnejšie informácie odporúčam nahliadnuť do Advanced Bash Scripting Guide, link je nižšie. a) premenovanie obrázkov Vytvorte v bashi skript {{{rename_pics}}}, ktorý premenuje všetky súbory v aktuálnom adresári, ktoré majú koncovku {{{JPG}}} na súbory s koncovkou {{{jpg}}}, napr. {{{obrazok1.JPG}}} premenuje na {{{obrazok1.jpg}}}. Pomôcka: pre transformáciu mena môžete použiť takéto niečo: {{{ NOVE_MENO=`echo $STARE_MENO | sed '...'`}}} Dávajte si pozor na to, aby ste premenovali iba koncovky, reťazec {{{JPG}}} sa môže vyskytovať aj uprostred mena súboru. Môžete prepokladať, že mená súborov neobsahujú žiadne biele znaky, napr. medzery. b) upravte skript z A) tak, aby premenoval aj súbory ako {{{obrazok1.jPG}}} a podobne. c) Vytvorte v bashi skript {{{showsize}}}, ktorý sčíta dĺžky súborov v aktuálnom adresári a výsledok vypíše. Pomôcka: je niekoľko ciest ako to spraviť. Vyskúšajte prvú cestu a potom druhú: V prvom rade musíte nejako vyprodukovať stĺpec s dľžkami súborov. Buďto na to choďte cez {{{ ls -l | tail -n +2 | cut -c ... }}} alebo {{{ for FILE in *; do stat ... $FILE done }}} (viď manuálová stránka {{{stat}}}) Teraz je viac ciest. 1. Naprogramujete to sčítanie v bashi sami, klasicky cez premenné s použitím bashovskej aritmetiky cez príkaz let. 2. Pomocou postupnosti príkazov prepojených do rúry vyrobíte z tých čísel výraz ako {{{12+1024+254}}} a ten potom pošlete na vstup príkazu bc cez rúru. Budete zrejme musieť nahradiť nové riadky plusom, to sa robí pomocou {{{ tr '\n' '+' }}} Kostra prvého spôsobu: {{{ SUM=0 for NUMBER in `... kód produkujúci zoznam dĺžok ...`; do ... sem prirátavanie NUMBER k SUM cez let ... done echo $SUM }}} Kostra druhého spôsobu: {{{ ... kód produkujúci zoznam dĺžok ... | tr '\n' '+' | bc }}} Poznamenávam, že tomu ešte niečo chýba, pretože ten {{{tr}}} vyrobí z posledného newline tiež plus, takže {{{bc}}} bude frfľať, že má nekorektný príkaz. Stačí však ešte jeden {{{sed 's...'}}} a je to; poraďte si sami. |
[[attachment:python_zadania.pdf | Cvičenia z Pythonu]] |
Line 98: | Line 42: |
=== Pythonovské programy === * [[/Fork|fork(), wait(), SIGCHLD]] * [[/Pipe|pipe()]] * [[/Socket| UNIXové sockety]] === Skripty === |
* [[attachment:tahak_python.pdf|Ťahák - Python (komplexný)]] * [[http://www.yukoncollege.yk.ca/~ttopper/COMP118/rCheatSheet.html|Ťahák - Python (jednoduchší)]] * http://bitbucket.org/gjenca/c_vyuka_public repozitar s C programami * http://bitbucket.org/gjenca/python_vyuka_public repozitar s python programami |
Line 111: | Line 50: |
1. ''Začínáme programovat v jazyce Python'', Daryl Harms, Kenneth !McDonald; Computer Press, 2003 (nie je nutné, stačí dokumentácia v systéme) | 1. ''Začínáme programovat v jazyce Python'', Daryl Harms, Kenneth !McDonald; Computer Press, 2003 1. ''Learning Python'',, Mark Lutz, David Ascher; O'Reilly 2007, http://slav0nic.org.ua/static/books/python/OReilly.Learning.Python.3rd.Edition.Oct.2007.eBook-BBL.rar |
Line 118: | Line 58: |
1. ''A Byte of Python'', Swaroop C H, http://www.swaroopch.com/notes/Python 1. ''How to Think Like a Computer Scientist'', Jeffrey Elkner, Allen B. Downey and Chris Meyers, http://openbookproject.net//thinkCSpy/ 1. Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/ |
|
Line 122: | Line 65: |
1. http://www.py.cz/ Český server venovaný Pythonu, obsahuje aj dokumentáciu k starším verziám Pythonu 1. Mercurial SCM, http://mercurial.selenic.com/ 1. Python documentation, http://docs.python.org/ 1. A Guide to Python's Magic Methods, http://www.rafekettler.com/magicmethods.html |
|
Line 125: | Line 73: |
20 bodov zo 40. Body sa budú udeľovať v rámci cvičení. | 15 bodov z 30. Body sa budú udeľovať v rámci cvičení. Budú 2 zápočtové cvičenia, jedno zo shell scriptov a jedno z Pythonu. |
Line 129: | Line 78: |
== Výsledky == | ## http://bitbucket.org/gjenca/csv2html2012 == Ostatné == ## http://bitbucket.org/gjenca/vimrc |
Operačné systémy
Zápočtové cviko bude 20.5.2016. Domáce zadanie je tu zadanie2_2016.pdf |
Repozitáre
https://bitbucket.org/gjenca/os2016
Konzultačné hodiny
V utorok 10:00-12:00. Radšej ale konzultuje priamo na cvičení.
Skúška
Stručná osnova predmetu
- Princípy OS Unix/Linux
- Základy práce so systémom
- Súborový systém
- Užívatelia a skupiny
- Procesy, rúry
- Prehľad základných utilít
- Programovanie v shelli, skripty
- Programovací jazyk Python
Výsledky
Ďalšie cvičenia
Materiály
http://bitbucket.org/gjenca/c_vyuka_public repozitar s C programami
http://bitbucket.org/gjenca/python_vyuka_public repozitar s python programami
Literatúra
Linux: Příručka českého uživatele, Vilém Vychodil; Computer Press 2003, Brno (je žiadúce, aby každý mal svoju kópiu)
Začínáme programovat v jazyce Python, Daryl Harms, Kenneth McDonald; Computer Press, 2003
Learning Python,, Mark Lutz, David Ascher; O'Reilly 2007, http://slav0nic.org.ua/static/books/python/OReilly.Learning.Python.3rd.Edition.Oct.2007.eBook-BBL.rar
The Art of Unix Programming, Eric S. Raymond, http://www.faqs.org/docs/artu/
Umění programování v Unixu, Eric S. Raymond, (český preklad horeuvedeného)
How To Ask Questions The Smart Way, Eric Steven Raymond, http://www.catb.org/~esr/faqs/smart-questions.html
Dive into Python, Mark Pilgrim, http://www.diveintopython.org/
Advanced Bash-Scripting Guide, Mendel Cooper, http://tldp.org/guides.html
GNU/Linux Command-Line Tools Summary, Gareth Anderson, http://tldp.org/guides.html
A Byte of Python, Swaroop C H, http://www.swaroopch.com/notes/Python
How to Think Like a Computer Scientist, Jeffrey Elkner, Allen B. Downey and Chris Meyers, http://openbookproject.net//thinkCSpy/
Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/
Webové stránky
http://www.root.cz/clanky/regularni-vyrazy-1/ seriál o regulárnych výrazoch od P. Satrapu
http://www.py.cz/ Český server venovaný Pythonu, obsahuje aj dokumentáciu k starším verziám Pythonu
Mercurial SCM, http://mercurial.selenic.com/
Python documentation, http://docs.python.org/
A Guide to Python's Magic Methods, http://www.rafekettler.com/magicmethods.html
Podmienky na zápočet
15 bodov z 30. Body sa budú udeľovať v rámci cvičení. Budú 2 zápočtové cvičenia, jedno zo shell scriptov a jedno z Pythonu.
Príklady a cvičenia