Účast na přednáškách je doporučná. Předpokládá se, že na cvičeních
jsou studenti obeznámení s látkou probíranou na přednášce.
+Přednášky v [T2:C3-340][1]. Hlavní přednášející [Pavel Píša][2].
+
Osnovy přednášek
================
-1. Úvodní slovo o předmětu; Open-source software, projekt GNU, licence
+1. Úvodní slovo o předmětu; Open source software, projekt GNU, licence
a operační systémy vycházející z jeho filozofie
-2. Přehled významných Open-source projektů (i pro výběr semestrální
- práce)
-3. GNU - vznik základních vývojových nástrojů a jejich použití;
- Verzovací systém Git
-4. Založení vlastního projektu a zapojení se do existujícího projektu
-5. Technická infrastruktura (správa verzí a chyb, komunikace, wiki)
-6. Komerční model; Sociální a rozhodovací struktury
-7. Mezilidská komunikace
-8. Vydávání verzí, příprava balíčků a průběžný vývoj
-9. Dobrovolníci, vývoj a větvení projektů
-10. Licence, autorská práva a patenty
-11. Cílové platformy, přenositelnost a open-source hardware
-12. Linuxové jádro - vznik, vývoj, skladba a ovladače
-13. Trendy a výhled do budoucnosti
+ ([[ODF|osp-intro-gnu.odp]] a [[PDF|osp-intro-gnu.pdf]])
+
+2. Přehled významných Open source projektů (i pro [[výběr semestrální
+ práce|vyznamne-projekty]])
+ ([[ODF|osp-projects-map.odp]] a [[PDF|osp-projects-map.pdf]])
+
+3. Verzovací systém Git; GNU - vznik základních vývojových nástrojů a
+ jejich použití, křížový překlad
+ [Bart Trojanowski, Git the basics][3]
+
+ git clone git://git.jukie.net/intro-to-git.git/
+ cd intro-to-git.git
+ kpdf intro-to-git.pdf
+
+4. Linuxové jádro - vznik, vývoj, skladba a ovladače; GNU libc a
+ uživatelský prostor
+
+5. Grafická uživatelská prostředí a knihovny: QT, GTK+, GNOME, KDE
+
+6. Komerční model, sociální a rozhodovací struktury; Souborové
+ systémy, správa paměti, bloková zařízení.
+
+7. Založení vlastního projektu a zapojení se do existujícího projektu;
+ Technická infrastruktura (správa verzí a chyb, komunikace, wiki);
+ Virtualizace
+
+8. Mezilidská komunikace, dobrovolníci, vývoj a větvení projektů;
+ Zpracování událostí (hlavní smyčka, thread pools, C10k)
+
+9. Linuxové distribuce, vydávání verzí, příprava balíčků a průběžný
+ vývoj.
+
+10. Licence, autorská práva a patenty; Sledování živého systému,
+ ladění, opravy a analýzy.
+
+11. Cílové platformy, vestavěná zařízení, open source v průmyslu,
+ přenositelnost a open source hardware
+
+12. Trendy a výhled do budoucnosti
Požadavky ke zkoušce
====================
-...
+* Základní znaky open-source software, licence (GPL, LGPL), vývojový model,
+ spolupráce s komunitou, koexistence komerčních firem a open-source komunit.
+
+* Základní přehled o skladbě OS POSIXového typu, jádro, model ovladačů,
+ správa paměti, uživatelské prostředí (procesy, knihovny, souborové systémy),
+ grafická uživatelské rozhraní.
+
+* Alespoň minimální základ znalostí v oblastech Linux pro vestavé systémy,
+ architektury procesorů, křížový překlad, vývojové nástroje, knihovny,
+ aplikace Linuxu v průmyslu, multimediálních zařízeních a v bezpečnostně
+ kritických aplikacích (nanokernely, virtualizace).
+
+* K případné ústní části dokumentace k práci na vašem projektu, historie
+ ze systému správy verzí a záznam komunikace s dalšími vývojáři. I některé
+ otázky písemné části se mohou týkat typických aspektů, které se při
+ reálném komunitním vývoji vyskytují.
+
+ [1]:http://www.feld.cvut.cz/education/rozvrhy-ng/public/cz/mistnosti/10/11/m10114904.html
+ [2]:http://cmp.felk.cvut.cz/~pisa/
+ [3]:http://www.jukie.net/~bart/slides/