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 prezenčně.
Vyučující
RNDr. Petr Kulhánek, Ph.D. (přednášející)
Ing. Tomáš Trnka, Ph.D. (přednášejí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
Předpoklady
Základy práce s počítačem (např. MS Windows XX, Word, Excel)
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
Na konci kurzu bude student ovládat základní příkazy operačních systémů Unix a Linux. Bude je schopen spojovat do složitějších konstrukcí pomocí skriptování. Dále bude schopen vytvářet skripty v programovacích jazycích AWK a gnuplot. Jejich kombinací bude schopen analyzovat výstupy ze základních vědecko-technických výpočtů. Nabyté schopnosti jsou nezbytným předpokladem pro molekulové modelování, bioinformatiku, a efektivní využívání superpočítačové infrastruktury. Základy programování poslouží pro případné navazující studium programování v kompilovaných (C/C++, Fortran) nebo interpretovaných (Python) jazycích.
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ů vědecko-technických výpočtů
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
  • 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. XXIV, 562. 1993. info
  • BRANDEJS, Michal. UNIX - Linux : praktický průvodce. 1. vyd. Praha: Grada. 340 s. ISBN 8071691704. 1996. info
  • PETRLÍK, Lukáš. Jemný úvod do systému UNIX. 1. vyd. České Budějovice: Kopp. 189 s. ISBN 80-85828-28-6. 1995. 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
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Nachází se v prerekvizitách jiných předmětů
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.