C2110 Operační systém UNIX a základy programování

Přírodovědecká fakulta
podzim 2024
Rozsah
0/2/0. 2 kr. (plus ukončení). Ukončení: k.
Vyučováno kontaktně
Vyučující
RNDr. Petr Kulhánek, Ph.D. (přednášející)
Ing. Tomáš Trnka, Ph.D. (přednášející)
Mgr. Július Zemaník (cvičící)
Bc. Lucia Iľkovičová (cvičící)
Garance
RNDr. Petr Kulhánek, Ph.D.
Národní centrum pro výzkum biomolekul – Přírodovědecká fakulta
Kontaktní osoba: RNDr. Petr Kulhánek, Ph.D.
Dodavatelské pracoviště: Národní centrum pro výzkum biomolekul – Přírodovědecká fakulta
Rozvrh seminárních/paralelních skupin
C2110/01: Po 12:00–13:50 C04/118, P. Kulhánek, J. Zemaník
C2110/02: Út 8:00–9:50 C04/118, L. Iľkovičová, P. Kulhánek
C2110/03: Út 15:00–16:50 C04/118, P. Kulhánek, J. Zemaník
Předpoklady
Základy práce s počítačem
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 30 mateřských oborů, zobrazit
Cíle předmětu
Kurz poskytuje základní přehled příkazů operačních systémů Linux (Unix) a jejich kombinování do složitějších struktur pomocí skriptování v jazyce bash. Dále se kurz zaměřuje na základní práci se skriptovacími jazyky AWK a Gnuplot, které lze využít k analýze dat z experimentálních měření nebo počítačových simulací. Tyto dovednosti jsou zásadní pro oblasti, jako je molekulové modelování, chemoinformatika, bioinformatika a efektivní využívání superpočítačové infrastruktury. Kurz také poskytuje základy algoritmizace a programování, které tvoří solidní základ pro další studium programování v kompilovaných jazycích (C/C++, Fortran) nebo interpretovaných jazycích (Python, R).
Výstupy z učení
Student bude po absolvování předmětu * znát základní příkazy operačních systémů Unix a Linux * schopen spojovat příkazy do složitějších konstrukcí pomocí skriptování * schopen vytvářet skripty v programovacích jazycích AWK a Gnuplot * provádět automatizovanou analýzu výsledků z experimentů a počítačových simulací
Osnova
  • 1. Organizace výuky * Zaměření předmětu * Klastr WOLF * Místní přihlášení a vzdálený přístup
  • 2. Linux jako desktopové prostředí * Standardní a vědeckotechnické aplikace * Dokumentace příkazů * Kerberos
  • 3. Souborový systém, vytváření a mazání adresářů, kopírovaní, přejmenovávání, a mazání souborů * Vzdálený přenos souborů, hashovací funkce a jejich využití * Virtualizace
  • 4. Procesy, spouštění příkazů a programů, signály * Komunikace procesu s okolím, přesměrování, roury
  • 5. Základy programování, algoritmizace, datové struktury, aritmetické a logické operace * Textové editory
  • 6. Programy vs skripty * Bash: interaktivní vs neinteraktivní režim, spuštění skriptů * Bash: nastavení a získaní hodnoty proměnné, interpretace řetězců, operace s celými čísly, proměnné a procesy
  • 7. Bash: vstup a výstup * Bash: rozhodování, podmínky
  • 8. Bash: Cyklus pomocí while/until, vnořování bloků * Syntaktické a logické chyby, hledání chyb, ladění
  • 9. Gnuplot: interaktivní a neinteraktivní spouštění, příkaz plot * Gnuplot: skripty, terminály
  • 10. Bash: cyklus for ... in * Bash: cykly a přesměrování * Bash: přesměrování vstupu ve skriptech
  • 11. Základy AWK * AWK: proměnné
  • 12. AWK: Logické operace * AWK: Cykly, pole
  • 13. Procvičování (bash+gnuplot+awk)
  • 14. Komprese dat a archívy * Kompilace programů ze zdrojových kódů
Literatura
  • Kameník, P. Příkazový řádek v Linuxu: praktická řešení, 2. vydání.; Computer Press: Brno, 2021.
  • HAHN, Harley a Peter NORTON. Průvodce UNIXEM od Petera Nortona : Jak komunikovat s UNIXEM, jak UNIX ukládá a zobrazuje informace, používání unixového systému souborů, práce s editorem vi : Peter Norton's Guide to UNIX (Orig.). 1.vyd. Brno: UNIS, 1993, XXIV, 562. info
  • BRANDEJS, Michal. UNIX - Linux : praktický průvodce. 1. vyd. Praha: Grada, 1996, 340 s. ISBN 8071691704. info
  • PETRLÍK, Lukáš. Jemný úvod do systému UNIX. 1. vyd. České Budějovice: Kopp, 1995, 189 s. ISBN 80-85828-28-6. info
Výukové metody
přednášky, procvičování praktických příkladů, diskuze
Metody hodnocení
Účast v cvičení je povinná (povolené jsou dvě dopředu omluvené absence). V průběhu semestru se uskuteční tři testy (3x 20 bodů) a student vyhotoví algoritmus ve formě vývojového diagramu zadaného úkolu (10 bodů). Ve zkouškovém období pak závěrečný test (50 bodů) a vyřešení zadané úlohy pomocí vypracovaných skriptů (30 bodů). Pro úspěšné zakončení přemětu je zapotřebí získat minimálně 110 bodů.
Navazující předměty
Studijní opora
https://is.muni.cz/auth/el/sci/podzim2024/C2110/index.qwarp
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích podzim 2007 - akreditace, jaro 2000, podzim 2010 - akreditace, jaro 2001, jaro 2002, jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, podzim 2007, podzim 2008, podzim 2009, podzim 2010, podzim 2011, podzim 2011 - akreditace, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2018, podzim 2019, podzim 2020, podzim 2021, podzim 2022, podzim 2023.
  • Statistika zápisu (nejnovější)
  • Permalink: https://is.muni.cz/predmet/sci/podzim2024/C2110