Differences between revisions 105 and 189 (spanning 84 versions)
Revision 105 as of 2011-05-12 12:41:47
Size: 6152
Editor: jenca
Comment:
Revision 189 as of 2020-12-03 09:08:16
Size: 4915
Editor: jenca
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
2010/11 -- LS == Repozitár programov písaných na prednáškach ==
Line 5: Line 5:
##[[attachment:zadanie.pdf]]
## [[attachment:gallery.tar.gz]]
##[[attachment:passwd.txt]]
## [[attachment:zadanie2.pdf]]
##[[attachment:zadanie_opr.pdf]]
https://github.com/gjenca/os2020

Domace zadanie na prve cvicenie: [[attachment:zadanie1_os_2020.html]]
Line 12: Line 10:
Tí, ktorí neboli na niektorom zo skúšobných cvičení,
si môžu príslušné cvičenie nahradiť na poslednom cvičení v semestri.
Domáca príprava zostáva rovnaká, zadanie na cviku bude iné.
<<Pohov>>
== Skúška ==

<<Pozor>>
Termíny skúšky sú na http://is.stuba.sk.

Skúška bude prebiehať písomne. Obsah viď nižšie. Ihneď po napísaní vaše písomky opravím, potom
budem prípadne ešte konzultovať s tými ľuďmi, ktorí budú na hranici alebo nebudú spokojní s hodnotením.

Pri zapisovaní sa na skúšku musíte rešpektovať kapacitu miestnosti, ktorá je 20 ks. Keďže ste formálne
v dvoch predmetoch, musím to spraviť v AIS tak, že sa kapacita javí ako 40 ks.
Skúšobné cvičenie z Pythonu bude 15.12.2020, domáce zadanie je [[ attachment:zadanie2_os_2020.pdf | tu ]].
Line 28: Line 13:
Z Vychodila treba vedieť: == Záznamy prednášok ==
Line 30: Line 15:
 * 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. Pravdepodobne to bude nejaká trieda.


== Downloady pre cviko ==

[[attachment:zoznam.csv]]

== Vyučujúci ==

 * Gejza Jenča gejza.jenca@stuba.sk

== Konzultačné hodiny ==

V stredu 16:00-17:00. Radšej ale konzultuje priamo na cvičení.
 * [[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]]
Line 87: Line 43:
[[/Vysledky]] ##[[/Vysledky]]
Line 97: Line 53:
 * [[attachment:prva.pdf|pdf k prvej prednáške]]
Line 101: Line 56:
 * http://bitbucket.org/gjenca/c_vyuka_public repozitar s C programami
 * http://bitbucket.org/gjenca/python_vyuka_public repozitar s python programami
##=== Pythonovské programy ===
Line 105: Line 57:
## * [[PocitacoveSiete/Fork|fork(), wait(), SIGCHLD]]
## * [[PocitacoveSiete/Pipe|pipe()]]
## * [[PocitacoveSiete/Socket| UNIXové sockety]]
## * [[PocitacoveSiete/TCPSocket | Klient a server TCP]]
## * [[PocitacoveSiete/Sumator | TCP server pre scitanie cisel]]
## * [[PocitacoveSiete/ChatServer | Chatovací server - multithreading]]
## * [[PocitacoveSiete/Webserver | "Webovsky server" implementovaný na úrovni socketov]]
## * [[attachment:cgi-server.tar.gz | CGI server a skripty]]
 
Line 117: Line 60:
 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 127: Line 69:
 1. Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/
Line 134: Line 76:
 1. Python documentation, http://docs.python.org/
 1. A Guide to Python's Magic Methods, http://www.rafekettler.com/magicmethods.html
Line 144: Line 87:
http://bitbucket.org/gjenca/csv2html ## http://bitbucket.org/gjenca/csv2html2012
Line 148: Line 91:
http://bitbucket.org/gjenca/vimrc ## http://bitbucket.org/gjenca/vimrc

Operačné systémy

Repozitár programov písaných na prednáškach

https://github.com/gjenca/os2020

Domace zadanie na prve cvicenie: zadanie1_os_2020.html

Skúšobné cvičenie z Pythonu bude 15.12.2020, domáce zadanie je tu.

Záznamy prednášok

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

Cvičenia zo shellu

Cvičenia z Pythonu

Materiály

Literatúra

  1. 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)

  2. Začínáme programovat v jazyce Python, Daryl Harms, Kenneth McDonald; Computer Press, 2003

  3. The Art of Unix Programming, Eric S. Raymond, http://www.faqs.org/docs/artu/

  4. Umění programování v Unixu, Eric S. Raymond, (český preklad horeuvedeného)

  5. How To Ask Questions The Smart Way, Eric Steven Raymond, http://www.catb.org/~esr/faqs/smart-questions.html

  6. Dive into Python, Mark Pilgrim, http://www.diveintopython.org/

  7. Advanced Bash-Scripting Guide, Mendel Cooper, http://tldp.org/guides.html

  8. GNU/Linux Command-Line Tools Summary, Gareth Anderson, http://tldp.org/guides.html

  9. A Byte of Python, Swaroop C H, http://www.swaroopch.com/notes/Python

  10. How to Think Like a Computer Scientist, Jeffrey Elkner, Allen B. Downey and Chris Meyers, http://openbookproject.net//thinkCSpy/

Webové stránky

  1. http://www.root.cz/clanky/regularni-vyrazy-1/ seriál o regulárnych výrazoch od P. Satrapu

  2. http://www.py.cz/ Český server venovaný Pythonu, obsahuje aj dokumentáciu k starším verziám Pythonu

  3. Mercurial SCM, http://mercurial.selenic.com/

  4. Python documentation, http://docs.python.org/

  5. 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

Ostatné

KMaDGWiki: OperacneSystemy (last edited 2024-09-17 13:58:44 by jenca)