Pytania do lewandowskiego na wyklad


1.s=3, jakie będzie s po wait() i czy zablokuje się?
S=2
nie blokuje się bo większe od 0
Semafor S jest zmienną całkowitą która oprócz nadawania wartości początkowej jest
dostępna tylko za pomocą dwu standardowych niepodzielnych operacji wait() i signal()
wait() while S<=0 do "nic"
S:=S-1
2.s=3, jakie będzie s po signal() i czy zablokuje się?
S=4
nie blokuje się, bo po prostu się nie blokuje i ju\ :)
signal(S) S:=S+1 j.w.
3.Kolejkowanie  wyliczanie średniego czasu oczekiwania dla:
-RR algorytm: Ka\dy proces otrzymuje małą jednostkę czasu procesora (kwant czasu). Po
upływie tego czasu proces jest wywłaszczany i dodawany na koniec kolejki procesów
gotowych. Je\eli w kolejce gotowych jest n procesów, a kwant czasu wynosi q, wówczas
ka\dy proces otrzymuje 1/n część czasu procesora podzieloną na odcinki o długości nie
większej ni\ q. \aden proces nie czeka dłu\ej ni\ (n-1)q.
-SJF algorytm: szukamy najkrótszych i dodajemy kolejno dzieląc sumę przez ilość procesów
- kolejność uwarunkowana długością pojedynczego procesu
-FCFS algorytm: ( P1 + P2 + PN )/N - dodajemy w kolejności od P1 do PN
4.PCB wyjaśnić
Blok kontrolny procesu (Process Control Block (PCB)
Zawiera informacje związane z danym procesem
" Stan procesu
" Licznik rozkazów
" Rejestry CPU
" Informacje o planowaniu przydziału CPU
" Informacja o zarządzaniu pamięcią
" Informacje do rozliczeń
" Informacje o stanie we/wy
5. Wywłaszczanie jest gdy:
" Decyzje o przydziale procesora mogą zapadać, gdy proces:
1. Przechodzi ze stanu aktywności do stanu oczekiwania
2. Przechodzi ze stanu aktywności do stanu gotowości
3. Przechodzi ze stanu oczekiwania do stanu gotowości
4. Kończy działanie
" Planowanie w sytuacjach 1 i 4 jest niewywłaszczające (nonpreemptive)
" W pozostałych sytuacjach planowanie jest wywłaszczające (preemptive)
6.Planowanie (planista) krótkoterminowe  wyjaśnić.
planista dodaje nowy dla procesu procesor, tylko jeden proces
Planiści (programy szeregujące)
" Planista długoterminowy (Long-term scheduler) (lub planista zadań (job
scheduler))  wybiera, które procesy powinny być umieszczone w kolejce
procesów gotowych
" Planista krótkoterminowy (Short-term scheduler) (lub planista procesora
(CPU scheduler))  wybiera, który proces powinien być wykonany jako
następny i przydziela mu procesor
" Planista krótkoterminowy jest uaktywniany b. często (milisekundy) 1 (musi
być szybki)
" Planista długoterminowy jest uaktywniany uaktywniany bardzo rzadko
(sekundy, minuty) 1 (mo\e być wolny)
" Planista długoterminowy nadzoruje stopień wieloprogramowości
" Procesy mogą być opisane jako nale\ące do jednej z dwóch grup:
 Proces ograniczony przez we/wy  spędza większość czasu na
wykonywaniu operacji we/wy, mniej zajmując się obliczeniami
 Proces ograniczony przez procesor  spędza większość czasu na
obliczeniach (rzadziej zamawia operację we/wy)
7.Fragmentacja zewnętrzna/wewnętrzna.
- Fragmentacja zewnętrzna (External Fragmentation)  całkowita wielkość
wolnej pamięci jest wystarczająca do realizacji \ądania przydziału, ale nie
jest ona ciągła
- Fragmentacja wewnętrzna (Internal Fragmentation)  przydzielona
pamięć mo\e być nieco większa od \ądanej; ró\nica między tymi
wielkościami jest bezu\ytecznym kawałkiem pamięci wewnątrz
przydzielonego obszaru
8.Do czego mają dostęp ró\ne wątki w procesie:
mają tylko do kodu (? na pewno ?)
Wątek w spół-u\ytkuje wraz z innymi równorzędnymi wątkami sekcję kodu, sekcję danych
oraz takie zasoby systemu jak otwarte pliki i sygnały.
9.Skrzynka pocztowa jaki to jest program:
Pośredni
10.W jakim algorytmie występuje konwojowanie
w FCFS
11.Sekcja krytyczna  co zawiera(?).
Sekcja krytyczna to ciąg operacji na pewnym zasobie (zwykle pamięci), który musi być
wykonany w trybie wyłącznym przez tylko jeden z potencjalnie wielu procesów. Po wejściu
do sekcji proces wykonuje protokół wejścia w którym sprawdza, czy mo\e wejść do sekcji
krytycznej. Po wyjściu z sekcji wykonuje protokół wyjścia, aby poinformować inne procesy,
ze opuścił ju\ sekcje krytyczną i inny proces mo\e ją zająć.
Rozwiązanie problemu sekcji krytycznej:
a. Wzajemne wykluczanie  Je\eli proces Pi wykonuje swoją sekcję krytyczną,
wówczas \adne inne procesy nie mogą wykonywać swoich sekcji krytycznych
b. Postęp - Je\eli \aden z procesów nie wykonuje swojej sekcji krytycznej i są
procesy, które chcą wejść do swoich sekcji krytycznych, wtedy wybór
procesów, które wejdą do sekcji krytycznej nie mo\e być odkładany na czas
nieokreślony
c. Ograniczone czekanie - Musi istnieć ograniczenie liczby wejść innych
procesów do ich sekcji krytycznych, po tym jak proces za\ądał wejścia do
swojej sekcji krytycznej i zanim ten dostęp zostanie przyznany
Zakładamy, \e ka\dy proces wykonuje się z prędkością niezerową
Brak zało\enia dotyczącego względnej prędkości N procesów
12.Funkcja fork() jaki proces tworzy?
fork()  wywołanie systemowe tworzące nowy proces a w zasadzie utworzenie dwóch
blizniaczych kopii procesu, działających równolegle
Funkcja fork() i fork1() jest funkcją w systemie operacyjnym Unix (i nie tylko) powodującą, \e
pojedynczemu programowi, któremu do jego wykonania przypisany jest pojedynczy proces
w systemie operacyjnym, przypisuje się dwa procesy poprzez rozwidlenie: rodzic i dziecko -
czyli tworzy nowy proces. W chwili utworzenia, proces - dziecko jest kopią procesu - rodzica
(kopiowane są obszary pamięci, wartości zmiennych i część środowiska). Aby umo\liwić
zró\nicowanie dalszego działania obu procesów, konieczne jest ustalenie, który z nich jest
dzieckiem, a który rodzicem.
13.Co zawiera licznik rozkazu?
Licznik rozkazów (Program counter (PC)) wskazuje na adres następnego rozkazu do
wykonania w procesie.
 Zawiera adres rozkazu do pobrania
Rejestr rozkazów (Instruction register (IR))
 Zawiera ostatnio pobrany rozkaz
14.Gdzie przechowywany jest i-węzeł,
I-węzeł (ang. i-node, index-node) jest rekordem (strukturą danych) w którym przechowuje
większość informacji o konkretnym pliku na dysku. I-węzeł zawiera identyfikatory
u\ytkownika oraz grupy szatkowników pliku, czas ostatniej modyfikacji oraz dostępu do
pliku, licznik trwałych dowiązań do pliku oraz typ pliku.
15.Proces zakleszczenia
Zakleszczenie (deadlock)
" Zakleszczenie  dwa lub więcej procesów oczekują w nieskończoność na zdarzenie,
które mo\e być spowodowane tylko przez jeden z oczekujących procesów
Mówimy \e zbiór procesów jest w stanie zakleszczenia gdy ka\dy proces tym zbiorze
oczekuje na zdarzenie, które mo\e być spowodowane tylko przez inny proces z tego zbioru.
Zdarzenia o które głównie tu chodzi to pozyskiwanie i zwalnianie zasobów.
" Głodzenie  blokowanie nieskończone. Proces mo\e nigdy nie zostać usunięty z
kolejki semafora w której oczekuje
" Inwersja priorytetów  Problem planowania, w którym proces o ni\szym priorytecie
blokuje proces o priorytecie wy\szym
16. proces potomny.
Proces mo\e tworzyć nowe procesy. Proces tworzący nazywa się macierzystym (parent
process) a utworzone przez niego procesy nazywamy potomnymi. (children).
Gdy proces tworzy pod proces, ten ostatni mo\e otrzymać swoje zasoby bezpośrednio od
systemu operacyjnego. Proces macierzysty mo\e rozdzielać swoje zasoby między procesy
potomne albo powodować \e niektóre zasoby np pamięć lub pliki będą przez potomków
u\ytkowane wspólnie.
17.algorytmy zastępowania stron
mamy ciąg
7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1
FIFO (first in first out) - (pierwszy na wejściu pierwszy na wyjściu) nie zastopujemy tych
samych wartości,nic się nie dzieje gdy 0 na 0, 1 na 1, 2 na 2 itd. w danej kolumnie nie mogą
powtarzać się liczby, wtedy tez nic się nie dzieje :) (tzn dzieje się tylko tyle \e staramy się
podstawić kolejną liczbę).
7 7 7 2 2 2 2 4 4 4 0 0 0 0 0 0 0 7 7 7
- 0 0 0 0 3 3 3 2 2 2 2 2 1 1 1 1 1 0 0
- - 1 1 1 1 0 0 0 3 3 3 3 3 2 2 2 2 2 1
7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1
Optymalny - zasada bardzo podobna do FIFO z tym \e zastępujemy tę stronę która najdłu\ej
nie będzie u\ywana
7 7 7 2 2 2 2 2 2 2 2 2 2 2 2 2 2 7 7 7
- 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 0 0 0 0
- - 1 1 1 3 3 3 3 3 3 3 3 1 1 1 1 1 1 1
7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1
LRU (Least Recently Used) zastępowanie najdawniej u\ywanych stron
7 7 7 2 2 2 2 4 4 4 0 0 0 1 1 1 1 1 1 1
- 0 0 0 0 0 0 0 0 3 3 3 3 3 3 0 0 0 0 0
- - 1 1 1 3 3 3 2 2 2 2 2 2 2 2 2 7 7 7
18.dane charakterystyczne wątków w procesie (Thread Specific Data)
-Pozwalają ka\demu wątkowi na posiadanie własnej kopii pewnych danych
19.wytłumaczenie jakichś skrótów
-Tablica stanów urządzeń (Device-status table)
-Bezpośredni dostęp do pamięci - Direct Memory Access (DMA)
-interfejs graficzny urzytkownika (Graphics User Interface (GUI))
-interpreter wiersza poleceń (Command-Line (CLI))
-interfejs programu aplikacji (Application Program Interface (API))
-Komunikacja międzyprocesowa (Interprocess Communication - IPC)
-Blok kontrolny procesu (Process Control Block (PCB)
-wywołanie procedury lokalnej (local procedure call (LPC))
-Zdalne wywołania procedur (Remote Procedure Calls (RPC))
-Zdalne wywołania metody (Remote Method Invocation (RMI)) (Java)
-First-Come, First-Served (FCFS)
-najpierw najkrótsze zadanie (Shortest-Job-First (SJF))
-Planowanie karuzelowe/rotacyjne (Round Robin (RR))
-długość odcinka czasu (Time-slice length)
-Jednostka zarządzania pamięcią - Memory-Management Unit (MMU)
-Konsolidacja dynamiczna (Dynamic Linking)
-Przydział ciągły pamięci - Contiguous Allocation
-dynamiczny przydział pamięci (Dynamic Storage-Allocation)
-Rejestr bazowy tablicy stron (Page-table base register) (PTBR)  wskazuje poło\enie tablicy
stron
-Rejestr długości tablicy stron (Page-table length register) (PRLR)  zawiera wielkości tablicy
stron
-pamięć asocjacyjna lub bufor translacji adresów (associative memory / translation look-
aside buffers) (TLBs)
-identyfikatory przestrzeni adresowej (address- space identifiers) (ASIDs)
-Segment-table base register (STBR) wskazuje na poło\enie tablicy segmentów w pamięci
-Segment-table length register (STLR) wskazuje numer segmentów u\ywanych przez program
-Kopiowanie przy zapisie - Copy-on-Write (COW)
20.Tablice adresów (wykład 7 czytać)
21.
Pamięć mo\emy traktować jak du\ą tablicę słów (maszynowych). W zale\ności od
architektury,
słowo maszynowe składa się z określonej liczby (będącej potęgą 2-ki) bitów, np. 32, 64 czy
128.
Pozycję słowa w tablicy, jaką jest pamięć, nazywamy adresem. Adres jest liczbą binarną
zło\oną z określonej liczby bitów.
Zwykle liczba tych bitów jest równie\ potęgą 2-ki, często taką samą jak w słowie
maszynowym, choć nie zawsze.
Jeśli włączone jest stronicowanie, wówczas cała pamięć (4 GB) dzielona jest na bloki  strony
o rozmiarach 4 kB; w procesorach Pentium i nowszych mo\liwe jest tak\e u\ywanie stron o
rozmiarach 4 MB. Gdy program odwołuje się do pamięci, podaje adres właściwej komórki
pamięci. Adres ten jest 32-bitową liczbą, która składa się z trzech części:
1. indeks w katalogu stron (liczba 10-bitowa),
2. indeks w tablicy stron (liczba 10-bitowa),
3. przesunięcie w obrębie strony (liczba 12-bitowa).
to z wiki
Posted on: Piątek, 26 Czerwiec 2009, 23:28:39+dodatkowo mogło byc
Ka\da pozycja w tablicy stron przechowuje pewne dodatkowe informacje dotyczące strony
pamięci, tak\e te przydatne w realizacji pamięci wirtualnej:
* Bit obecności (ang. present)  mówi czy strona znajduje się w pamięci fizycznej. Gdy
system operacyjny usuwa stronę z pamięci, tzn. zapisuje ją na dysk, zeruje ten bit. Jeśli
program odwoła się do strony nieobecnej w pamięci procesor generuje wyjątek i wówczas
system operacyjny wczytuje z dysku uprzednio zapisaną tam zawartość strony.
* Bit u\ycia (ang. accessed)  jest ustawiany przez procesor, gdy nastąpi odwołanie do
danej strony. System operacyjny zwalnia pamięć zapisując nieu\ywane strony pamięci na
dysku. Wartość zerowa bitu u\ycia oznacza brak odwołań do strony i jest sygnałem dla
systemu, \e mo\e być przeniesiona na dysk. Ustawiony bit u\ycia mo\e w pewnym stopniu
zabezpieczać stronę przed przeniesieniem na dysk.
* Bit modyfikacji (ang. dirty lub modified)  jest ustawiany podczas zapisu danych. Je\eli
dana strona jest usuwana z pamięci, to w przypadku ustawienia bitu modyfikacji musi być
zapisana na dysk. Wartość zerowa bitu modyfikacji oznacza, \e strona w pamięci oraz strona
na dysku jest taka sama, więc podczas usuwania strony z pamięci nie ma konieczności
ponownego zapisywania jej na dysk.
1101010101 to najprawdopodobniej chodziło o indeks w tablicy stron plus dodatkowe 0/1
w zale\ności czy podany był bit modyfikacji.


Wyszukiwarka

Podobne podstrony:
1 Mieczysława Kordas DZISIEJSZE KATAKLIZMY NA ZIEMI (Pytania do Jezusa)
Pytania do egzaminu dyplomowego na kierunku Urbanistyka i Architektura z przedmiotu
pytania do wykładów
MNM pytania do Wykladu 2014
Ściąganie drążka wyciągu górnego do klatki na maszynie
pytania do egzaminu
Przydatne wpisy do rejestru na komputerach klienta uzupełnie
Sterownik nadajnika do lowow na lisa
Jak przygotowac sie do kursu na kategorie A
Gotowa wyszukiwarka do wstawienia na chomika(1)(1)
Pytania do egzaminu z nauki o państwie i prawie
A m przystosowana do wzorstu na glebach skazonych metalami
Pytania do egzaminu

więcej podobnych podstron