Grupa B
Nazwa Windows oznacza 32-bitowy system oparty na architekturze NT Jeżeli w zadaniu wystąpi nazwa proces mamy na myśli 32-bitowy proces Windows W każdym zadaniu poprawna jest jedna odpowiedź
1. Dostęp do BIOSu komputera zabezpieczony jest hasłem, które przechowywane jest w pamięci CMOS. Użytkownik załogowany w systemie Windows bez uprawnień administratora uruchamia aplikację systemu MS-DOS, która zeruje pamięć CMOS. Co się stanie po restarcie komputera?
a Windows nie pozwoli na taką operację i wyświetli okno z komunikatem, ale aplikacja nie zostanie przerwana.
b Nic się nie stanie.
c BIOS wyświetli komunikat o błędnej sumie kontrolnej pamięci CMOS.
d System Windows nie pozwoli na taką operację i aplikacja zostanie zamknięta podczas wykonywania operacji. 2. Proces wyświetla okno pokazane na rysunku. Z ilu wątków składa się ten proces?
d Nie można określić liczby wątków na podstawie wyglądu okna.
3. Wykonanie poniższej funkcji w systemie Windows spowoduje (wskaźnik ptr jest niezainicjowany): char f(void) {char *ptr; char c; c = *ptr; return c;}
a Funkcja na pewno wykona się i zwróci pewną wartość z przestrzeni adresowej swojego procesu, b Funkcja na pewno zwróci wartość z przestrzeni adresowej swojego albo innego procesu, c Jeżeli ptr wskazuje bajt leżący na stronie, która nie ma praw do odczytu, system zawiesi się.
d Jeżeli ptr wskazuje bajt leżący na stronie, która nie ma praw do odczytu, proces wykonujący funkcję zostanie
przerwany.
4. W systemie pracują procesy PI i P2, obydwa z uprawnieniami tego samego użytkownika. Proces PI zmienia procesowi P2 uprawnienia do pewnej strony pamięci z „wykonywanie - do odczytu” na „brak dostępu”. System zareaguje w następujący sposób:
a Proces P1 zostanie przerwany, ponieważ wykonuje niedozwoloną operację.
b Natychmiast po zmianie praw dostępu do strony pamięci nastąpi przełączenie kontekstu na proces P2 i zostanie on przerwany.
c Proces P2 zostanie przerwany, gdy wykona instrukcję, która odwołuje się do tej strony pamięci.
d Gdy proces P2 wykona instrukcję, która odwołuje się do tej strony pamięci, zostanie przerwany proces P1._
5. Pewien 32-bitowy proces konsoli uruchamia 5 wątków, które przeprowadzają długotrwałe obliczenia. Wątki zapisują informację o zaawansowaniu obliczeń w jednym pliku za pomocą funkcji fprintf. Aby zapewnić poprawne działanie funkcji f print f należy:
a Zastosować odpowiedni mechanizm synchronizacji wątków, np. sekcję krytyczną.
b Taki przypadek jest niemożliwy, aplikacja konsoli posiada jedno okno i dlatego może mieć tylko jeden wątek.
c Zmienić typ aplikacji na kontrolkę ActiveX, ponieważ w kontrolkach wszystkie funkcje są synchronizowane.
d Napisać w asemblerze wersję funkcji fprintf, która korzysta z niskopoziomowych funkcji dostępu do systemu
plików.
6. Proces PI uruchamia wątek wl, a proces P2 uruchamia wątek w2. Chcemy, żeby wątki wl i w2 mogły wymieniać informacje między sobą. W tym celu należy:
a Zastosować mechanizmy komunikacji i synchronizacji procesów.
b W wątkach wl i w2 zadeklarować tablice o takich samych nazwach, system automatycznie uczyni je wspólnymi dla obydwu wątków i będzie można użyć ich do wymiany danych, c Zastosować mechanizmy komunikacji i synchronizacji wątków.
d Użyć zmiennych globalnych o identycznych nazwach.__
7. W systemie Windows jeden proces uruchamia dwa wątki, najpierw w2, następnie wl (tryby otwierania plików: w-do zapisu, a - dołączanie). Zakładając, że zmienna e jest globalna, określić zawartość pliku plik. txt?
CEvent e(0,0); UINT w2(void* p){
UINT wl(void* p) | CSingleLock SL(&e);
fprintf(f,"1");
SL.Lockj); SL.UnlockO; fprintf(f,"3"); return 0;
fprintf(f,"2"); e.SetEvent(); return 0;
FILE *f=fopen("plik.txt","a"); FILE *f=fopen("plik,txt","w") ;
213
123
132
321
8. Co robi następująca instrukcja? (wykonujący ją proces jest procesem Windows):
CallNamedPipe ("WWaNNpipe^b", s, strlen (s)+1, b, 256, &n, 5000); a Jest to transakcja potokiem o nazwie "a " z serwerem na komputerze o nazwie "b". b Jest to transakcja potokiem o nazwie "b" z serwerem na komputerze o nazwie "a c Jest to transakcja potokiem nazwanym, ale pierwszy parametr funkcji jest niepoprawny.
d Jest to aktualizacja danych w pliku o nazwie "b” znajdującym się na dyskietce a: w folderze "pipę".