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 System Windows nie pozwoli na taką operację i aplikacja zostanie zamknięta podczas wykonywania operacji, b BIOS wyświetli komunikat o błędnej sumie kontrolnej pamięci CMOS. c Nic się nie stanie.
d Windows nie pozwoli na taką operację i wyświetli okno z komunikatem, ale aplikacja nie zostanie przerwana.
2. Ile wątków może uruchomić pojedynczy proces Windows?
a Jest określona maksymalna licżba uruchamianych wątków, zależna od zasobów systemowych,
b Tyle, ile ma okien, c 128.
d Nieskończenie wiele. _
3. W systemie pracują procesy P1 i P2, obydwa z uprawnieniami tego samego użytkownika. Proces PI zmienia procesowi P2 uprawnienia do pewnej strony pamięci z „brak dostępu” na „do odczytu”. System zareaguje w następujący sposób:
a Obydwa procesy będą nadal pracować.
b Proces P2 zostanie przerwany, gdy wykona instrukcję, która odwołuje się do tej strony pamięci.
c Natychmiast po zmianie praw dostępu do strony pamięci proces P2 zostanie przerwany.
d Proces P1 zostanie przerwany, ponieważ wykonuje niedozwoloną operację._
4. Pewien 32-bitowy proces 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 fprintf należy:
a Proces zostanie przerwany przez system, ponieważ do pliku może zapisywać tylko jeden wątek.
b Zastosować odpowiedni mechanizm synchronizacji wątków, np. sekcję krytyczną.
c Napisać w asemblerze wersję funkcji fprint f, która korzysta z niskopoziomowych funkcji dostępu do systemu plików.
d Zmienić typ aplikacji na kontrolkę ActiveX, ponieważ w kontrolkach wszystkie funkcje są synchronizowane._
5. Pewien proces uruchamia wątek wl, a następnie wątek w2. Wątek wl czeka na zdarzenie od wątku w2. Co należy wstawić w miejsce znaków © i 0, żeby wątek wl zakończył się?
UINT wl(void* p){
CEvent el (0,0,0) ? CSingleLock SL(&el); SL.LockO; return 0;
UINT w2(void* p)| CEvent e1(0,0, Ę) ; el.SetEvent(); return 0;
a Można usunąć te znaki i przykład będzie poprawny, ponieważ zmienne e 1 należą do tego samego procesu, b np. 0: "zakończ wątek" 0: "zakończ wątek",
c np. 0:"moje zdarzenie 1" 0:"moje zdarzenie 2".
d koniecznie©: "\\\\.\\CEvent\\el" 0: "\\\\.\\CEvent\\el". _ „' ,J&
6. 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,"moje zdarzenie 1"); UINT wl(void* p){
FILE *f=fopen("plik.txt","a"); fprintf(f,"3"); e.SetEvent (); return 0;
132 123
UINT w2(void* p)|
CSingleLock SL(&e);
FILE *f=fopen("plik.txt","w"); fprintf(f,"X");
SL.LockO; SL.UnlockO; fprintf(f,"2"); return 0;
i
213 321
7. Co robi następująca instrukcja? (wykonujący ją proces jest procesem Windows):
CallNamedPipe ("WWaWpipeWb", s, strlen (s)+l,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 Mb" z serwerem na komputerze o nazwie "a c Jest to transakcja potokiem nazwanym, ale pierwszy parametr funkcji jest niepoprawny,
d Jest to aktualizacja pewnych danych w pliku o nazwie "b" znajdującym się na dyskietce a: w folderze
"Pipę".