Pamat Flashcards

1
Q

Co je to monoprogramovanie?

A

V pamati je len jeden program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Co je to swapping?

A

Vymena obsahu na sekundarne medium

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Aky OS bol monoprogramovy?

A

MS DOS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Co je multiprogramovanie?

A

Pri starte OS sa pamat rozdeli na segmenty, novemu procesu sa prideli najmensi vyhody volny usek

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Co je segment?

A

Usek pevnej dlzky

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Co je interna fragmentacia?

A

Program nemusi vyuzit vsetku pridelenu pamat

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Pozri si priklad na slide 7

A

slide 7

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Aka je vyhoda pouzitia segmentov s premenlivou dlzkou?

A

odstranenie internej fragmentacie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Co je to relokacia?

A

Presunutie programu na ine miesto

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Co je to externa fragmentacia?

A

Volna pamat je rozdrobena na male casti medzi obsadenymi usekmi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Ako vieme riesit externu fragmentaciu?

A

Kompaktificia pamate - obsadene useku sa presunu vedla seba a volne miesto sa zluci do jedneho bloku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Aky program vieme vybrat na swap na disk?

A

Napr dlho necinny

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Pozri si priklad na slide 13

A

slide 13

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Ako vie OS vediet ktore casti pamate su volne a kotre obsadene?

A

Bitove mapy

Zoznamy segmentov

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Co je nevyhoda bitovych map?

A

Prehladavanie tabulky pre najdenie suvisleho useku 0 je drahe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Kedy je dobra bitova mapa?

A

Ak mame male bloky

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Co sa pri alokacii spravi so zoznamom segmentov?

A

Najde sa dostatocne velky a rozdeli sa

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Ake pozname algoritmy alokacie blokov pamate?

A

First Fit
Next Fit
Best Fit
Worst Fit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Co je first fit?

A

prvy dostatocne velky segment sa pouzije - rychle a jednoduche

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Co je next fit?

A

“circular first fit” - nezacinam od zaciatku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Co je best fit?

A

najdem volny segment s najblizsou velkostou

nevyhoda - treba prejst celu pamat a vytvaram male a nepouzitelne volne bloky

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Co je worst fit?

A

Opak best fit

Nevyhoda je ze nemame potom kam dat velke ulohy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Co je to Quick Fit?

A

Zoznamy pre casto pouzivane velkosti segmentov

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Opis Buddy algoritmus

A

Udrzuju sa zoznamy volnych segmentov s velkostou mocnin dvojky
Bloky za sebou tvoria dvojice
Po prichode poziadavky sa velkost zaokruhli hore k mocnine 2 a pouzije sa prislusny zoznam, ak je plny tak sa najde vacsi a rozdeli sa na polovice
Po uvolneni sa skontroluje ci je dvojica volna, ak ano tak sa zlucia a presunu do vyssieho zoznamu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Co vyuziva Linux na buddy algoritmus?

A

bitovu mapu - na kazdu dvojicu blokov (1 ak je jeden obsadeny, 0 ak oba volne alebo obsadene)
aj zoznam volnych blokov

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Co je obmedzujuce pri sprave pamate?

A

Program zabera vzdy suvisly usek fyzickej pamate, teda velkost programu je obmedzena dostupnou fyzickou pamatou

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Co je virtualna pamat?

A

Proces pracuje so suvislym adresovym priestorom ktory je OS mapovany do fyz. pamate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Co je vyhoda virtualnej pamate?

A

Proces nemusi byt v suvislom useku fyz pamati a teda to eliminuje externu fragmentaciu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Kto robi preklad adries z virtualnej na fyzicku?

A

Memory Management Unit MMU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Co je strankovanie a preco ho vyuzivame?

A

Rozdelime virtualny adresny priestor na suvisle bloky rovnakej dlzky, lebo mapovat kazdu jednu adresu samostatne je narocne

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

V strankovani, na co je rozdelena fyzicka pamat?

A

Strankove ramy (page frame) - rovnako velke bloky

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Co obsahuje virtualna adresa v strankovani?

A

Cislo stranky a offset od zaciatku stranky

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Co robi mapovanie v strankovani?

A

Prideluje strankovym ramom stranky - pomocou tabulky stranok

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Kolko je tabuliek stranok?

A

Jedna pre kazdy proces

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Co je problemom strankovania?

A

Interna fragmentacia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Co je demand paging? (na poziadanie)

A

Proces sa moze vykonavat aj ked nie je cely v pamati, moze byt cas na disku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Co je nevyhoda demand pagingu?

A

zlozitejsi OS, OS moze pridelit viac pamate nez je dostupne

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Aky typ spravy pamate sa najviac dnes pouziva?

A

demand paging

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

Kedy nastava vypadok stranky?

A

Ked present bit v PTE nie je nastaveny

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Co sa stane ked nie je nastaveny valid bit?

A

nevieme prelozit adresu - SIGSEGV

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Co sa stane ak je adresa platna ale stranka nie je v pamati?

A

Najde sa volny strankovy ram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Ako sa pokracuje po vyrieseni page fault?

A

aktualizuje sa PTE a OS a restartuje sa proces od instrukcie ktora vypadok sposobila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

Pozri si priklad na slide 31

A

slide 31

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

Na co je tabulka stranok?

A

na preklad logickej adresy na fyzicku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

Musia byt rovnako velke virtualna a fyzicka adresa?

A

Nie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

Preco potrebujeme viacurovnove tabulky stranok?

A

Aby tabulky nezaberali tolko miesta

47
Q

Na co delime teda tabulky v dvojurovnovej tabulke stranok?

A

page directory, page table, offset

48
Q

Kolko je page directory?

A

1

49
Q

Co znamena bit 7 (page size bit)?

A

PDE neukazuje na tabulku stranok ale priamo na stranku

50
Q

Pozri si priklad na slide 39

A

slide 39

51
Q

Co je problem pri pouziti page table directory?

A

O jeden pristup navyse - rychlost klesa

52
Q

Co je TLB?

A

polozky z PT v cache

53
Q

Co je problem velkych stranok?

A

Interna fragmentacia

54
Q

Pozri si priklad na slide 48

A

slide 48

55
Q

Ako vieme riesit prilis velky pocet stranok na 64-bit architekture, kam sa nezmestia ani s pouzitim PTD?

A

Hierarchia tabuliek stranok
Inverzne tabulky - stranka ktoreho procesu je v rame umiestnena
Rozptylove tabulky

56
Q

Aky je problem inverznych tabuliek?

A

Narocnejsi preklad virtualnej adresy na fyzicku, treba to prejst cele, ale vieme pouzit TLB

57
Q

Ake flagy moze mat polozka tabulky stranok na x86?

A
G - global
D - dirty
A - accesed
C - Cache disabled
R - Read / Write
U - User / Supervisor (privilegovany proces?)
P - present / absent vo fyz. pamati
58
Q

Ake su priciny vypadku stranky?

A

nema nastaveny bit U,P pri pristupe alebo zapisovanie do takej co nema bit R

59
Q

Co sa spravi po vypadku stranky?

A

Spusti sa rutina co rozhodne co s tym, napriklad odosle signal procesu SIGSEGV
Alebo sa najde novy strankovy ram ak nebol bit P nastaveny

60
Q

Kto vie vynulovat Dirty a Accesed Bit?

A

OS

61
Q

Ake 2 sposoby algoritmov hladania obete pozname?

A

Vybrat nahodnu stranku

Optimalny algoritmus

62
Q

Naco su algoritmy hladania obete?

A

Vyber bloku pamate ktory uvolnime

63
Q

Aky je algoritmus NRU?

A

Not recently used
podla bitu R a D
vyberie sa nahodne stranka z triedy nepouzite nezmenene, resp nepouzite zmenene ak prva je prazdna

64
Q

Aky je algoritmus FIFO?

A

Odstranuje sa podla FIFO, moc sa ale nepouziva

65
Q

Co je algoritmus second chance?

A

rovnako ako FIFO ale ak je pouzivana vybrana obet, tak sa prida na koniec a dostane druhu sancu. Rezia je tym dost velka

66
Q

Co je zac alg Clock algorithm?

A

Rovnake ako second chance ale stranky su organizovane v kruhovom zozname a teda npresuvaju sa, presuva sa len pointer

67
Q

Aky algoritmus je least recently used LRU?

A

Najdlhsie nepouzita stranka

treba zistit aka stranka bola kedy naposledy pouzita - mega rezia

68
Q

Aky alg je NFU?

A

Not frequently used

Ako LRU, kazdy ma pocitadlo pristupov, obet je s najnizsou hodnotou pocitadla

69
Q

Aky je aging algoritmus?

A

Algoritmus starnutia

Pocitadlo sa posunie o bit doprava a R bit sa pripocita na najvyssiu poziciu

70
Q

Ktory z algoritmov je optimalny (teoreticky)?

A

Least recently used, ale prakticky moc nie

71
Q

Co ukladame, aky zoznam stranok?

A

Zoznam aktivnych a neaktivnych stranok

72
Q

Ako teda sa realne vybera obet?

A

Aging v zozname neaktivnych stranok

73
Q

Aky algoritmus je Clock-pro?

A

Uklada sa
recency - kolko pristupov k inym strankam sa urobilo od posledneho pristupu
Reuse distance RD - pocet inych stranok ku ktorym sa pristupovalo medzi dvoma pristupmi k stranke
Vybera sa obet na zaklade najvacsej RD

74
Q

Aky algoritmus pouziva Linux?

A

Clock pro

75
Q

Cim vyssia rychlost, tym …

A

zlozitejsie/drahsie a teda mensia kapacita

76
Q

Ake pozname typy pamate od najrychlejsich?

A
Registre
Cache
RAM
SSD
HDD
Siet
77
Q

Ake su 3 vlastnosti pamatovej hierarchie?

A

Inkluzivnost - blizsie k CPU je podmnozina dat z vzdialenejsej urovne
Koherencia - instancie rovnakych dat v rovnakych urovniach musia byt rovnake
Lokalita - pristup do pamate nie je rovnaky, ale vykazuje iste vzory

78
Q

Co je sekvencna lokalita?

A

Ak procesor v case n pristupil na adresu a, tak pravdepodobne bude v n+1 pristupovat k a+1
Teda sa oplati pozriet nasledujuce bloky

79
Q

Co je priestorova lokalita

A

Ak procesor v case n pristupil na adresu a, tak pravdepodobne bude v n+1 pristupovat k bloku blizkemu a.

80
Q

Co je casova lokalita?

A

Ak procesor v case n pristupil na adresu a, tak pravdepodobne bude v blizkej dobe pristupovat k a znova.

81
Q

Mozu procesy bezat rychlo aj ked je fyzickej pamate menej nez celkovy sucet pamate alokovanej procesmi? Preco?

A

Ano, lebo casto pouzivaju procesy malu cast priestoru a zmeny su pomale.

82
Q

Co je pracovna mnozina stranok?

A

Stranky ktore proces prave vyuziva

83
Q

Kedy sa proces vykonava bez vacsieho poctu vypadkov s ohladom na pracovnu mnozinu stranok?

A

pokial su stranky z tejto mnoziny v pamati

84
Q

Co je trashing?

A

neustale odkladanie a nahravanie stranok

85
Q

Pozri velkost pracovnej mnoziny na lide 84

A

slide 84

86
Q

Co je predstrankovanie?

A

Ak nechceme vypadky, tak si zavedieme nejake stranky do pracovnej mnoziny

87
Q

Aky je rozdiel medzi lokalnym a globalnym pristupom vyberu obete?

A

Lokalny - len z ramov procesu

Globalny - z ramov vsetkych procesov

88
Q

Aky je predpoklad Page Fault Frequency?

A

S rastucim poctom pridelenych strankovych ramov klesa pocet vypadkov

89
Q

Co robi Page Fault Frequency alg?

A

Sleduje frekvenciu vypadkov a pridava alebo odobera ramy aby ju udrzal v priajetlnom intervale

90
Q

Co je vyhodnejsie swapovat? menej velkych blokov alebo vela malych?

A

menej velkych

91
Q

Pozri slide 90 na optimalnu velkost stranky

A

slide 90

92
Q

Ake su sposoby pristupu k segmentu?

A

rwx

93
Q

Moze byt segment pouzivany viacerymi procesmi? Ak ano daj priklad

A

Ano, zdielane kniznice

94
Q

Co je to segmentacia?

A

Rozdelenie logickeho adresneho priestoru na samostatne segmenty

95
Q

Z coho sa sklada logicka adresa? Pri segmentacii

A

Z cisla segmentu a offsetu

96
Q

Je transparentne pre programatora strankovanie alebo segmentacia?

A

strankovanie

97
Q

Ako dostaneme fyzicku adresu z logickej v segmentacii?

A

bazova adresa vo fyz pamati segmentu + offset

98
Q

Aka architektura umoznuje kombinaciu segmentacie so strankovanim?

A

Intel Pentium

99
Q

Co su segmenty programu?

A

Suvisle bloky so samostatnym vyznamom - text, data, bss, heap, stack,…

100
Q

V akom structe je opisana Virtual Memory Area?

A

vm_area_struct

101
Q

Co su Virtual Memory Area VMA?

A

Suvisle oblasti virtualneho adresneho priestoru

102
Q

kde je dostupny zoznam VMA pre program?

A

/proc//maps

103
Q

Co robi volanie mmap?

A

Vytvara nove mapovanie vo virtualnom adresovom priestore procesu

104
Q

Co robi malloc(size)?

A

Alokuje size bajtov a vrati pointer na alokovanu pamat, alebo NULL v pripade chyby.

105
Q

Ako vieme uvolnit pamat alokovanu malloc?

A

free

106
Q

Kde alokuje pamat malloc?

A

V casti heap

107
Q

Kedy sa vykonava malloc so systemovym volanim brk?

A

Ak nie je miesto v heap a treba posunut hranicu datoveho segmentu

108
Q

Ake systemove volanie pouziva free?

A

sbrk

109
Q

Ak malloc vrati nenulovy pointer, znamena to ze bude pamat skutocne k dispozicii?

A

Nie

110
Q

Aku pamat poskytuje jadro procesom?

A

V celych strankach

111
Q

Co si uchovava jadro pre znizenie rezie s alokaciou?

A

prepripravene objekty roznej velkosti

112
Q

Coho sa tyka SLOB/SLAB/SLUB alokator?

A

Alokacie v jadre

113
Q

Pozri priklad od slide 107

A

slide 107