4701
Comment:
|
5613
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
Line 6: | Line 5: |
https://github.com/gjenca/os2019 | https://github.com/gjenca/os2021 |
Line 8: | Line 7: |
== Skúška == | == Záznamy prednášok == |
Line 10: | Line 9: |
Z Vychodila treba vedieť: | * [[https://drive.google.com/file/d/1gHvLco4zgIO-fxyj3_3X42f6fRl9xB81/view?usp=sharing | 29.9.2020 8:00 procesy, správa pamäti,fork]] * [[https://drive.google.com/file/d/1Qfel2bPsgBCeht-RFTPds_bbZYnjBdvD/view?usp=sharing | 29.9.2020 12:00 wait, execl, súborové popisovače, presmerovanie cez dup2]] * [[https://drive.google.com/file/d/1wrRLgwmWvYPI8Ngrd4XqIm5FExAre9LR/view?usp=sharing | 6.10.2020 8:00 komunikácia cez rúry]] * [[https://drive.google.com/file/d/1qmBbeLvis5RXdszfZW8OQCYiMj54Uapr/view?usp=sharing | 6.10.2020 12:00 bc ako príklad podriadeného procesu]] * [[https://drive.google.com/file/d/1R0BDf8gKI10lZF5ydPydvX0x-lQ_BQcH/view?usp=sharing | 13.10.2020 8:00 súbory, adresáre, symbolické linky]] * [[https://drive.google.com/file/d/1R6fwrTD2MuCEj2ndl__MFpc3YK0GBiy8/view?usp=sharing | 13.10.2020 12:00 elementy príkazového riadku]] * [[https://drive.google.com/file/d/1-ctZ4YU2-gZYClCJEwKgX8DnUHjlBr9Q/view?usp=sharing | 20.10.2020 8:00 užívatelia, skupiny, prístupové práva]] * [[https://drive.google.com/file/d/1q1K5odDHygaCy88tI9iGXHYXFPVuJxxE/view?usp=sharing | 20.10.2020 12:00 setgid na adresár, programy pre prácu so súbormi, head, tail]] * [[https://drive.google.com/file/d/1aT8yMqump_Z_rbpcMgsyF-rN9YxiKwxg/view?usp=sharing | 27.10.2020 8:00 cut, paste, sort, uniq, seq, stat, ...]] * [[https://drive.google.com/file/d/1xuYGuk5oLkzpJHqFc5cGQb9w2WvSDjy1/view?usp=sharing | 27.10.2020 12:00 skripty, základy programovania v shelli ]] * [[https://drive.google.com/file/d/1UzbPdjt7loiHIMuTutDvwtsnZeKGDQZF/view?usp=sharing | 3.11.2020 8:00 regulárne výrazy, grep, sed ]] * [[https://drive.google.com/file/d/1ZWMUAdBfHedVlHQiPYOMfIcK85UIeyJl/view?usp=sharing | 3.11.2020 12:00 argumenty príkazového riadku v skriptoch ]] * [[https://drive.google.com/file/d/1YBx2nDam2HtM4_KtWzyomXzsGkztmozP/view?usp=sharing | 10.11.2020 8:00 príklad dvoch skriptov od začiatku do konca ]] * [[https://drive.google.com/file/d/1GV6F-JD2seVMs3Q0_WZ6ms440O08svR4/view?usp=sharing | 10.11.2020 12:00 Python -- úvod, čísla, reťazce, zoznamy]] * [[https://drive.google.com/file/d/1XjwBsLjhXBWuFYdZwBrI38Zi5XIGPPeX/view?usp=sharing | 24.11.2020 8:00 Python -- ďalšie typy, podmienky, cykly, funkcie]] * [[https://drive.google.com/file/d/1i3BJ5vAGzfVYLk6YQUmHu0veSNtJR5_Q/view?usp=sharing | 24.11.2020 12:00 Python -- techniky iterácie, skripty]] * [[https://drive.google.com/file/d/1rNyhUWeUN6ilyslskeKGJ9KgkB4K-CXH/view?usp=sharing | 1.12.2020 8:00 Python -- funkcie, argumenty]] * [[https://drive.google.com/file/d/1qy1eLJVx8x9vgsQyljlYSSXR7_qgVQjT/view?usp=sharing | 8.12.2020 8:00 Python -- moduly, triedy]] * [[https://drive.google.com/file/d/1hqDBtV7NXA_4S83eBUHlBj7CQ1yc1u38/view?usp=sharing | 8.12.2020 12:00 Python -- retazce, vydelenia zoznamov a iných objektov]] * [[https://drive.google.com/file/d/1L34yCI4F4LZt-bznC-UOgHjn8CeclJ6M/view?usp=sharing | 15.12.2020 8:00 Python -- špeciálne metódy, uzávery, dekorátory ]] |
Line 12: | Line 30: |
* Kapitola 3: od začiatku až po 3.6 včítane * Kapitola 4: od začiatku až po 4.3 včítane. * Treba vedieť na úrovni porozumenia princípom ako fungujú procesy a rúry v UNIXe v kontexte ich používania na príkazovom riadku. * Treba vedieť ako vo vzájomnej synergii fungujú funkcie `fork`,`wait`,`pipe`,`dup2`,`exec*` viď http://bitbucket.org/gjenca/c_vyuka_public/src/tip/pipe/run_bc.c * Kapitola 5: v tej miere ako bolo odprednášané, najmä * štruktúra príkazového riadku, úvodzovky, apostrofy, medzery, opačné lomítka atď * presmerovanie vstupu a výstupu, {{{>,<,>>,<<,|}}} * skripty, mechanizmus fungovania konštrukcie {{{!#}}} * premenné, špeciálne premenné, argumenty skriptov * kontrola toku programu : {{{if,while,for}}} * princíp fungovania {{{if}}} a {{{while}}} cez exit status * príkaz {{{test}}} * Kapitola 6: * základné programy pre prácu s textom {{{sort,cut,paste}}} * regulárne výrazy, program {{{grep}}} * program {{{sed}}} (iba príkaz s) Z Pythonu treba vedieť základy: * zabudované dátové typy * základy programovania ({{{for,while,if}}}) * funkcie a parametre ({{{def}}}) * triedy ({{{class}}}) Na skúške sa vás: * Spýtam na pár vecí z kapitoly 3 a 4. * Napíšete mi jeden-dva jednoduché príkazové riadky vykonávajúce zadanú činnosť. Nemusíte sa učiť všetky options všetkých príkazov, ak bude niečo treba vedieť, prezradím to. Ide mi o overenie znalosti princípu fungovania. * Bude zadanie o regulárnych výrazoch. * Napíšete krátky program v Pythone. |
|
Line 66: | Line 54: |
* [[attachment:prva.pdf|pdf k prvej prednáške]] | |
Line 70: | Line 57: |
* http://bitbucket.org/gjenca/c_vyuka_public repozitar s C programami * http://bitbucket.org/gjenca/python_vyuka_public repozitar s python programami |
|
Line 76: | Line 61: |
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 |
1. ''Začínáme programovat v jazyce Python'', Daryl Harms, Kenneth !McDonald; Computer Press, 2003 |
Line 86: | Line 70: |
1. Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/ |
Operačné systémy
Repozitár programov písaných na prednáškach
https://github.com/gjenca/os2021
Záznamy prednášok
29.9.2020 12:00 wait, execl, súborové popisovače, presmerovanie cez dup2
20.10.2020 12:00 setgid na adresár, programy pre prácu so súbormi, head, tail
24.11.2020 8:00 Python -- ďalšie typy, podmienky, cykly, funkcie
8.12.2020 12:00 Python -- retazce, vydelenia zoznamov a iných objektov
15.12.2020 8:00 Python -- špeciálne metódy, uzávery, dekorátory
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
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
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/
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