Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

courses:a4m35osp_reseni [2011/05/29 15:51]
novakvo2 vytvořeno
courses:a4m35osp_reseni [2025/01/03 18:23] (aktuální)
Řádek 1: Řádek 1:
 ====== Řešení otázek z roku 2010 ====== ====== Řešení otázek z roku 2010 ======
 +
 +===== Pozor, některé otázky jsou chybně vypracované upozorňoval na to ve zkoušce z 28.6.2012, prý dá příště jiné otázky! =====
 +
  
 ===== Co je znakem OS software a produktů obecně? ===== ===== Co je znakem OS software a produktů obecně? =====
Řádek 10: Řádek 13:
 ===== Na jaké úrovni jsou svázané zdrojové kódy a historie unix, GNU, GNU Linux? ===== ===== Na jaké úrovni jsou svázané zdrojové kódy a historie unix, GNU, GNU Linux? =====
  
-1970 Unix vznikl ze zaniklého projektu Multics od Bell Labs +  * 1970 Unix vznikl ze zaniklého projektu Multics od Bell Labs 
-1983 Richard Stallman z MIT založil GNU project pro unix-like system. Založil Free Software Foundation, napsal spoustu toolů pod free licencí +  ​* ​1983 Richard Stallman z MIT založil GNU project pro unix-like system. Založil Free Software Foundation, napsal spoustu toolů pod free licencí 
-1991 Linus Torvalds napsal vlastní jádro a složil ho s GNU prostředím,​ vzniká GNU/Linux+  ​* ​1991 Linus Torvalds napsal vlastní jádro a složil ho s GNU prostředím,​ vzniká GNU/Linux 
  
 ===== Jaké základní fce má Busybox a které programy nahrazuje a proč? ===== ===== Jaké základní fce má Busybox a které programy nahrazuje a proč? =====
  
  
-Minimalizované alternativy základních linuxových nástrojů +  * Minimalizované alternativy základních linuxových nástrojů 
-Minimalizovaný webserver +  ​* ​Minimalizovaný webserver 
-Minimalizovaná C knihovna +  ​* ​Minimalizovaná C knihovna 
-Licence GPL +  ​* ​Licence GPL 
-Velikost 500 kB +  ​* ​Velikost 500 kB 
-Použití pro vestavěné zařízení s ramdiskem+  ​* ​Použití pro vestavěné zařízení s ramdiskem
  
 ===== Jak vypadá základní návaznost komponent od výkonného HW, kde běží aplikace po grafický výstup na XWIN architektuře?​ ===== ===== Jak vypadá základní návaznost komponent od výkonného HW, kde běží aplikace po grafický výstup na XWIN architektuře?​ =====
Řádek 49: Řádek 53:
 ===== Jak je, případně může být generován zisk společnosti,​ která investuje do OS systému? ===== ===== Jak je, případně může být generován zisk společnosti,​ která investuje do OS systému? =====
  
-Výrobci HW - zvedne poptávky po HW +  * Výrobci HW - zvedne poptávky po HW 
-Placená podpora +  ​* ​Placená podpora 
-Dvojí licencování - GNU/​proprietální licence, když nechci svůj kód mít open-source +  ​* ​Dvojí licencování - GNU/​proprietální licence, když nechci svůj kód mít open-source 
-Reklama +  ​* ​Reklama 
-Zakázkový vývoj rozšíření+  ​* ​Zakázkový vývoj rozšíření
  
 ===== Jaké jsou základní 2 možnosti pro umístění vyrovnávací paměti pro přístup k souborům na disku a podle jakých klíčů jsou data v paměti organizovaná?​ ===== ===== Jaké jsou základní 2 možnosti pro umístění vyrovnávací paměti pro přístup k souborům na disku a podle jakých klíčů jsou data v paměti organizovaná?​ =====
  
  
-diskové buffery +  * diskové buffery 
-pagecache v RAM +  ​* ​pagecache v RAM
- +
  
 Pagecache je organizovaná podle příslušnosti a offsetu v souboru inode. Offsety jsou zarovnány tak, aby odpovídaly velikosti paměťové stránky (4 kB u x86). Pagecache je organizovaná podle příslušnosti a offsetu v souboru inode. Offsety jsou zarovnány tak, aby odpovídaly velikosti paměťové stránky (4 kB u x86).
Řádek 67: Řádek 69:
 ===== Základní 2 koncepty pro obsluhu klientů, proč pro více klientů je nutná kombinace? ===== ===== Základní 2 koncepty pro obsluhu klientů, proč pro více klientů je nutná kombinace? =====
  
 +  * jedno vlakno na klienta + vlakno pro prijem spojeni a zakladani vlaken
 +  * zpracovani vseho v jednom vlakne (odpada rezie, ale nevyuzije se vice cpu)
 +  * thread-pool (pripravena vlakna + rizeni pridelovani)
  
-GUI vs příkazová řádka? ​ 
  
-Jak je omezena cena open-source produktů obecně a specificky pro GPL licenci?+ 
 +===== Jak je omezena cena open-source produktů obecně a specificky pro GPL licenci? ​=====
  
 Cena není omezena, binárky se mohou prodávat. Musí být ale možnost si to zkompilovat sám. Cena není omezena, binárky se mohou prodávat. Musí být ale možnost si to zkompilovat sám.
Řádek 76: Řádek 81:
 ===== Jaké jsou základní vrstvy operačního systému unixového typu od HW k uživateli? ===== ===== Jaké jsou základní vrstvy operačního systému unixového typu od HW k uživateli? =====
  
- +  * user 
-user +  ​* ​user space (aplikace, knihovny) 
-user space (aplikace, knihovny) +  ​* ​kernel space (ovladače, komunikace s hw, API pro aplikace) 
-kernel space (ovladače, komunikace s hw, API pro aplikace) +  ​* ​hardware
-hardware+
  
 ===== Jak vznikl projekt X Windows a jaké základní principy si tvůrci stanovili? ===== ===== Jak vznikl projekt X Windows a jaké základní principy si tvůrci stanovili? =====
Řádek 91: Řádek 95:
 ===== Které základní informace a data uchovávají systémy pro správu zdrojových kódů (SCM)? ===== ===== Které základní informace a data uchovávají systémy pro správu zdrojových kódů (SCM)? =====
  
- +  * které složky a soubory jsou pod SCM 
-které složky a soubory jsou pod SCM +  ​* ​commity s diffy změn uspořádané do DAG - directed acyclic graph 
-commity s diffy změn uspořádané do DAG - directed acyclic graph +  ​* ​odkazy na branche a tagy 
-odkazy na branche a tagy +  ​* ​odkaz na HEAD branch
-odkaz na HEAD branch+
  
 ===== Jaký je rozdíl ve výsledném grafu historie/​návaznosti verzí při použití „git merge“ a „git rebase“? ===== ===== Jaký je rozdíl ve výsledném grafu historie/​návaznosti verzí při použití „git merge“ a „git rebase“? =====
- 
  
 Merge spojí dvě větve a k oboum větvím je možno se vrátit. Merge spojí dvě větve a k oboum větvím je možno se vrátit.
Řádek 104: Řádek 106:
  
 ===== Čím je zajímavé řešení výlučného běhu (mutex) použité v GLIBC s NPTL na GNU/Linux a za jaké podmínky na souběh úloh se nejvíce výhody projeví? ===== ===== Čím je zajímavé řešení výlučného běhu (mutex) použité v GLIBC s NPTL na GNU/Linux a za jaké podmínky na souběh úloh se nejvíce výhody projeví? =====
- 
  
 Používá se futex. Skládá se z wait fronty v kernel space, která je spojená s integerem v user space. Více vláken a procesů může rychle operovat s integerem v user space, relativně náročná změna wait fronty v kernel space se nemusí volat moc často. Výhody se projeví, když jsou aplikace dobře napsané a nevolají změnu wait fronty moc často. Používá se futex. Skládá se z wait fronty v kernel space, která je spojená s integerem v user space. Více vláken a procesů může rychle operovat s integerem v user space, relativně náročná změna wait fronty v kernel space se nemusí volat moc často. Výhody se projeví, když jsou aplikace dobře napsané a nevolají změnu wait fronty moc často.
Řádek 110: Řádek 111:
 ===== Jak může vést použití open-source řešení ke snížení nákladů v komerční firmě? ===== ===== Jak může vést použití open-source řešení ke snížení nákladů v komerční firmě? =====
  
- +  * snížení licenčních nákladů 
-snížení licenčních nákladů +  ​* ​nezávislost na dodavateli 
-nezávislost na dodavateli +  ​* ​nezávislost na podpoře 
-nezávislost na podpoře +  ​* ​možnost upravit SW vlastním potřebám
-možnost upravit SW vlastním potřebám+
  
 ===== Vysvětlete činnost systémového volání mmap() a jak se váže koncepce použitá k implementaci tohoto volání ke spuštění aplikace v systému GNU/Linux (ale i Windows a Unix)? ===== ===== Vysvětlete činnost systémového volání mmap() a jak se váže koncepce použitá k implementaci tohoto volání ke spuštění aplikace v systému GNU/Linux (ale i Windows a Unix)? =====
Řádek 123: Řádek 123:
 ===== Proč jádro Linux přešlo zcela na koncept stránkové vyrovnávací paměti (pagecache) a vyrovnávací paměť na úrovni diskových bloků se nepoužívá?​ ===== ===== Proč jádro Linux přešlo zcela na koncept stránkové vyrovnávací paměti (pagecache) a vyrovnávací paměť na úrovni diskových bloků se nepoužívá?​ =====
  
-TODO +Protože byl požadavek na mapování souborů do paměti (mmap) a data se mohla objevit ve dvou kopiích (nepřípustné). ​
  
 ===== Porovnejte časovou (algoritmickou) komplexitu různých mechanizmů pro čekání na více událostí (periodické dotazování,​ select, poll, epoll)? ===== ===== Porovnejte časovou (algoritmickou) komplexitu různých mechanizmů pro čekání na více událostí (periodické dotazování,​ select, poll, epoll)? =====
  
-TODO+Select a poll bezi v linearnim case O(n), kde n je pocet deskriptoru. Deskriptorum rozumime jako jednotlivejm prostredkum (I-O, souborum) se kteryma pracujeme. Pokud jich jsou stovky, tak hodne zalezi na vykonu HW.
  
-~~DISCUSSION~~+Select je v BSD, poll je soucasti Solarisu
  
 +Všechny tyto mechanismy se zeptají, jestli je možné čtení/​zápis k danému souboru a a případně proces blokují, než je to možné. ​
  
 +  * Select O(n)
 +  * Poll O(N)
 +  * ePol O(1)
 +  * Periodické dotazování O(n_registered+n_active) ale zároveň zbytečné čekání a plýtvání zdroji
 +
 +===== Ve kterých případech je vhodné použí Model/View architekturu u návrhu GUI? =====
 +
 +Pokud je víc zobrazení závislých na jedněch datech (např. tabulka a graf v Excelu).
 +
 +===== Popište rozdíl mezi GPL a LGPL, MIT, Apache a Creative Commons licencemi. =====
 +
 +GPL je nejvíc virová, cokoliv používá GPL kód musí být taky GPL.
 +
 +LGPL umožňuje linkovat LGPL kód z jiných licencí. Typické použití je pro knihovny.
 +
 +MIT a Apache licence nejsou copyleft. Odvozenina může být pod jinou licencí. Je ale nutné uvést disclaimer a z jakého projektu byla odvozenina vytvořena. ​
 +
 +Creative commons je license pro jakýkoli obsah, nejenom pro software. Do license si člověk může dát 1-4 z těchto atributů:
 +  * Attribution - nutno uvést autora originálního projektu
 +  * Noncommercial - možno upravovat jenom pro nekomerční účely
 +  * NoDerivatives - možno pouze kopírovat dané dílo, ale nikoliv ho upravovat
 +  * Share-alike - znamená virální copyleft
 +
 +===== Popište správa aplikací a koncepce balíčků (Debian DEB, RedHat RPM) =====
 +
 +Správa aplikací v Linuxu probíhá přes package manager na jednom místě. Package managers: Aptitude, Yum
 +
 +Balíčkovací systémy:
 +  * DEB (Debian) - obsahuje tři soubory: debian-binary (identifikátor formátu), control (meta-data o balíčku), data (vlastní soubory balíčku)
 +  * RPM (Red Hat, Fedora) - obsahuje jeden soubor, na jménu záleží. Uvnitř souboru je hlavička, ověření integrity, metadata, soubory v taru.
 +
 +===== Co to je OS POSIXového typu? =====
 +
 +POSIX je přenositelné rozhraní pro operační systémy standartizované IEEE, vycházejí ze systémů UNIX a popisují jaké API má systém podporovat a jak má API vypadat.
 +
 +Jaké jsou architektury procesorů?
 +  * x86
 +  * x86_64
 +  * ARM
 +  * PowerPC
 +  * Sparc
 +
 +===== Co znamená křížový překlad? =====
 +
 +Tzv. cross-compiler se používá k překladu softwaru pro jinou platformu než na který běží/na který je ten kód napsán. Např. na linuxu kompilujete program pro Windows.
 +
 +===== Jaký je rozdíl mezi shell, core-utils, BusyBox? =====
 +
 +  * Shell - vyhodnocovač příkazů na příkazové řádce
 +  * core-utils - základní množina příkazů v linuxu - cat, ls, pwd, vi, …
 +  * BusyBox - emulace shellu a core-utils v embedded zařízení při minimální velikosti binárky
 +
 +===== Debian projekt a distribuce, popsat a myslím i jeho balíčkovací systém. =====
 +Projek založil Ian Murdock v roce 1993. Od začátku předpokládal kompletně nekomerční projekt vyvíjený stovkami dobrovolníků. Přes 1000 dobrovolníků,​ přes 22000 balíčků, 12 architektur
 +
 +===== 5 hlavních věcí omezující výkon počítače =====
 +
 +  * Výkon a počet CPU, 
 +  * velikost fyzikcé paměti (počet stránek)
 +  * šířka pásma pro přístup k paměti
 +  * šířka pásma pro přístup k datům na disku
 +  * šířka pásma síťového připojení / infrastruktury
 +
 +===== Rozdíl vzdálená (remote) větev vs lokální větev, jak se změní lokální po zavolání git fetch? =====
 +
 +Upravy jsou vždy provadeny na lokalní větvi, po zavolání git fetch je stažen aktuální stav větve nový ukazatel je označen jako server/​označení_záložky (tady asi nekdo myslel repo/​branch). Lokální větev je větev v PC. Vzálená je někde na serveru.
 +
 +===== Co je release a co snapshot? =====
 +
 +  * Release – soubory jsou uloženy v jejich počáteční podobě + seznam změn jedntlivých souborů (neni to spis vydani nove verze aplikace?)
 +  * snapshot – sadu snímků vlastního malého systému souborů.
 +
 +===== Jaké jsou role v Model View vzhledem ke QT =====
 +
 +
 +  * Odděluje data od jejich prezentace.
 +  * Data jsou v aplikaci jen jednou, řeší data redundancy hell
 +  * Jedny data mohou být zobrazeny více způsoby či perspektivami.
 +  * Jeden pohled lze použít pro zobrazní různých dat, pro různé modely
 +  * Modely generující data, data vubec nemusí existovat, počítají se na požádání.
 +  * Delegát/​Controller slouží pro zobrazení/​editaci dat
 +
 +
 +===== Co je reverzní mapování a kdy se použije? =====
 +
 +Otázka se vztahuje k paměti a reverznímu nalezení všech Page Table, který vedou na stejný Page Frame. Viz například [[http://​www.makelinux.net/​books/​ulk3/​understandlk-CHP-17-SECT-2|zde]].
 +
 +<​del>​Kromě IP musíme někdy vyhledat zpětně kanonický název hostitele. Proto byla vytvořena speciální doména ​ in-addr.arpa ​ (4 úrovňová). Ta obsahuje IP adresy v obrácené tečkové notaci. tj. 149.251.48.1 odpovídá 1.48.251.149.in-addr.arpa Mezi zónami a IP sítěmi může být vztah 1:n ke každé IP podsíti se musí vytvořit odpovídající zóny v in-addr.arpa a ty musí být zpřístupněny správcům podsítě.</​del>​
 +
 +===== 3 hlavní požadavky (na co si dát pozor) na ABI při přenosu binárních dat (struktury, nativní typy) vzhledem k síťovému přenosu? =====
 +
 +rozhraní, které nabízí služby jádra směrem k zařízení.
 +
 +  * Výrobci testují proti binární podobě OS, dodávají binární ovladač.
 +  * Hrozí porušení funkce ovladače se změnou ABI (např. update, service pack).
 +
 +===== Co znamená koncept "​Všechno je soubor(inode)"​ kde je použit a jaké jsou výjimky? =====
 +
 +   * Linux
 +   * Veškerá zařízení (myš, klávesnice ...) jsou v linuxu jako soubory
 +   * Sockety jsou výjimky
 +
 +~~DISCUSSION~~
courses/a4m35osp_reseni.1306677068.txt.gz · Poslední úprava: 2025/01/03 18:16 (upraveno mimo DokuWiki)
Nahoru
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0