Uvod Flashcards
Ako by vyzeral pocitacovy system bez OS?
Kazdy program by musel obsahovat vsetko
Jeden program be vedel bezat naraz
Jeden pouzivatel sucasne
Ziadne rozumne delenie prostriedkov
Co znamena ze “program by musel obsahovat vsetko”?
Ak by zapisoval do suboru, tak by musel obsahovat konkretny suborovy system, komunikaciu s diskom, osetrenie subezneho pristupu a podobne
Programy by teda boli prilis velke
Co je OS?
Zakladne programove vybavenie pocitaca, SW vrstva medzi HW a aplikaciami
Co ponuka OS?
Komunikue s HW (terminal, disky, siet, zvuk…)
Poskytuje jednotne rozhranie pre ostatny SW - appky
Riadi pristup k prostriedkom - subeh, bezpecnost
Efektivne rozdeluje HW prostriekdy medzi pouzivatelov, programy a zariadenia
Ake HW prostriedky rozdeluje OS?
Procesorovy cas, pamat, diskovy priestor
Co je cielom pri rozdelovani HW prostriedkov?
najvacsie vyuzitie, priepustnost, najmensia doba odozvy, efektivita
Co sa pouziva na pridelovanie prostriedkov a preco?
Heuristiky, lebo pridelovanie prostriedkov je NP-tazky problem
Ake funkcie ponuka OS?
Umoznuje userovi pracovat s PC systemom - poskytuje rozhranie
Umoznuje vykonavanie dalsich programov
Poskytuje im prostredie v podobe sady sluzieb bez ohladu na HW
Zabezpecuje izolaciu (neovplyvnovanie) procesov a userov
V com je OS dobry pre vyvoj programov?
odstranuje zavislost na HW a setri naklady - cas
Preco OS vyuziva abstrakcie?
Na zakrytie nevyhod a obmedzeni HW
Ake abstrakcie napr ponuka OS?
abstrakcia periferii (ako subory read a write) abstrakcia CPU - proces ma dojem ze ma CPU len pre seba abstrakcia pamate - virtualna pamat, logicky adresovy priestor
Ake 2 pohlady pozname na OS?
ze je to:
- rozsireny stroj, teda doplna sadu instrukcii o extra sluzby
- spravca prostriedkov - prideluje procesorovy cas, pamat, a pod.
Co su systemove volania?
Rozsirene instrukcie od OS, sprostredkovavaju procesu kontakt s okolim
Ake systemove volania pozname napr?
procesy - fork, exec, wait…
pamat - mmap, brk, mlock
subory - open, read, write, seek…
Preco potrebujeme spravu prostriedkov?
Prostriedky su limitovane a procesy o ne superia
Kam uklada sprava pamate aktualne nevyuzivane casti?
na disk (swap)
okrem organizacie suborov do priecinkov a pod.,co ma este na starosti suborovy system?
pristup k suborom a pod.
Okrem pamate, CPU, a suborov co este potrebujeme spravovat?
V/V operacie, siet
Kedy pracuje jadro?
reaguje na prerusenia
kto okrem procesov vie zobudit jadro?
casovac
Je teda OS iniciativny?
Vobec nie, len caka na instrukcie
Aka je struktura OS?
- API - systemove volania jadra
- UI - textove, alebo GUI
OS je v uzsom zmysle len jadro, v sirsom zmysle aj shell, kniznice a pod
Ake to su monoliticke systemy?
Jadro obsahuje vsetko, aj to co netreba, nema moc strukturu, stare
Ake su vrstvove systemy?
Kazda vyssia vrstca poskytuje abstraktnejsi pohlad na stroj
Ake su dnesne OS? vrstvove ci monoliticke?
jadro monoliticke, vnutorne clenene do vrsiev, prechod medzi vrstvami vsak nie je vynucovany HW
Aka je vyhoda vrstvovym OS oproti monolitickym?
maju prehladnejsiu strukturu a lahsie sa udrziavaju
Aky kod by mal byt v jadre?
Len taky ktory nevyhnutne potrebuje privilegovany rezim, ostatne nech riesia procesy.
Aky je model klient-server?
Jadro ma minimum funkcii
vsrtky ostatne su presunute na procesy-servery
proces aplikacie = klient
napr. Windows NT
Aka je nevyhoda klient-server?
Procesy vyzaduju vacsiu reziu teda menej efektivne
Mikrojadra sa dnes ______ v dosledku snahy o znizenie rezie
zvacsuju
Ake to su objektove OS?
Vsetky prostriedky su reprezentovane objektami
jadro obsahuje mechanizmus na riadeny pristup k objektom
Ake to su virtualne stroje?
Jadro poskytuje vyssej vrstve nie len rozsireny stroj pre procesy, ale viac kopii HW. Na kazdej vie bezat samostatny OS
virtual machine
Aky je rozdiel medzi jednoprocesovym a multiprocesovym OS?
multiprocesovy vie vykonavat viac programov sucasne
Ake 2 typy OS pozname podla spracovania uloh?
Davkove - pouzivatel zada ulohu a caka na vysledok
Interaktivne - pouzivatel vie komunikovat s ulohou pocas vykonavania - dnes vsetky systemy
Ake su systemy so zdielanim casu?
v multiprocesovych systemoch je vyuzivane na rozdelenie casu CPU medzi viacere subezne procesy
Ake su systemy realneho casu?
Procesy maju striktne poziadavky na dodrzanie casovania, vyuziva sa v riadiacich a vnorenych systemoch
Ako sa jadro lisi od procesov?
Proces moze vykonavat vsetky neprivilegovane instrukcie, napr pristup do pamate a nejaky vypocet, ale nemoze vykonavat privilegovanie instrukcie (vstupno/vystupne a pod.) - musi o to poziadat jadro systemovym volanim
Aky je rozdiel medzi realnym a chranenym rezimom?
Realny - kazdy beziaci program ma plnu kontrolu nad procesorom, pamatou, periferiami
chraneny - virtualna pamat, strankovanie, viacere urovne privilegii a pod.
Co sa stane ak chce proces pristupit k HW?
vyhodi sa vynimka
Ako oznacujeme privilegovane urovne na intel procesoroch?
CPL
Kolko CPL urovni pozname?
4, 0 az 3
Aka uroven je kernel mode?
0
Aka uroven je user mode?
3
Kedy sa meni CPL?
Pri zmene toku riadenia, teda napr HW prerusenia, SW prerusenia od procesov
Ako prebieha mechanizmus systemoveho volania?
- skok v programe so zmenou CPL
- Instrukcia sw prerusenia
- obsluzi sa jedno zo sw preruseni
Kde sa davaju argumenty a navratove hodnoty systemovych volani?
Do registrov, pamate
Ake instrukcie ma intel na skok do jadra so zmenou CPL?
SYSENTER/SYSEXIT
MS DOS pracuje v realnom alebo chranenom rezime?
Realnom
Ako prebieha zavadzanie OS?
- Procesor po resete skoci na pevne danu adresu v ROM
- Na adrese je skok na POST alebo BIOS
- BIOS zisti z akeho disku sa ma bootovat
- Prvy sektor obsahuje MBR, kde je prva cast bootloadera 446B
- Kedze 446B nestaci, tak sa precita a spusti dalsia cast
- Bootloader precita a spusti jadro
- Jadro nastavi IDT, GDT
- Vytvori sa prvy proces
Co je IDT?
Interrupt Descriptor Table
Co je GDT?
Global descriptor table
Co je MBR?
Master Boot Record
Ako sa najprv programovalo?
Priamo v strojovom kode
Ake boli prve programovacie jazyky?
Fortranm assembler
V ktorej generacii stupol pocet tranzistorov na cipe a rapidne klesla spotreba?
V tretej - 1965-1980
Na akej baze bezali PC v druhej generacii?
Tranzistory, V/V ako magneticke pasky a dierne stitky
Vdaka comu sa umoznilo vytvorenie procesora v stvrtej generacii PC?
Vysoka integracia polovodicov na cipe
V ktorom roku vznikol UNIX?
1969
Kto je zakladatel UNIXu?
Dennis Ritchie
V akom jazyku je napisany UNIX?
C
Kedy vznikol vim?
1985 cca
Kedy vznikol Linux?
1991
Co je textove rozhranie k zakladnym funkciam OS?
shell - interpreter prikazoveho riadku
ako intepretuje prikazy shell?
riadok po riadku
co umoznuje najma shell?
vytvaranie novych procesov spustanim programov
Co cita shell?
Bud stdin (vacsinou terminal) alebo subor (skript)