GRUPA A
Jeżeli w zadaniu wystąpi nazwa Windows mamy na myśli 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. Producent modemów wyprodukował nowy model modemu w formie karty na magistralę PCI, niekompatybilny
z dostępnymi na rynku. W celu umożliwienia działania tej karty w systemie Windows (programy MS-DOS nie będą
wykorzystywać modemu), producent musi dostarczyć następujące składniki programowe:
a
Sterownik trybu jądra i sterownik trybu użytkownika,
b
Tylko sterownik trybu jądra, ponieważ urządzenia PCI nie potrzebują sterowników trybu użytkownika,
c
Tylko sterownik trybu użytkownika, ponieważ urządzenie nie będzie współpracowało z MS-DOS,
d
Nic nie musi dostarczać, system Windows pobierze oprogramowanie z witryny Windows Update.
2. Co robi funkcja f?
void f(DWORD id, void *adres) { HANDLE hProces; DWORD n;
hProces = OpenProcess(PROCESS_ALL_ACCESS,0,id);
VirtualProtectEx(hProces,adres,4095,PAGE_READONLY,&n);
CloseHandle(hProces);}
a
Funkcja jest błędna, ponieważ nie kończy się instrukcją return,
b
Ustawia uprawnienia dostępu dla wskazanej strony pamięci procesu o zadanym identyfikatorze,
c
Funkcja jest błędna, ponieważ w wywołaniu VirtualProtectEx brakuje operatora & przed zmienną adres,
d
Odpowiedzi a i c są prawidłowe.
3. Rysunek obok przedstawia kolejkę systemową (wątek W1 ma najwyższy priorytet). Przyjmujemy
następujące założenia:
- aktualnie aktywny jest wątek W5, który jest w trakcie obliczeń i jest gotowy,
- wątki W1 i W2 nie są gotowe,
- wątek W4 jest w trakcie obliczeń i jest gotowy, wątek W3 nic nie robi i jest gotowy.
Który wątek stanie się aktywny po upłynięciu szczeliny czasowej?
W1
W2
W3
W4
4. Proces P1 utworzył obiekt synchronizacji typu zdarzenie w następujący sposób:
CEvent e1(0,0,”gotowe”);
W procesie P2 znajdują się nstępujące instrukcje:
CEvent e1; CSingleLock SL(&e1); SL.Lock();
Zakładamy, że procesy P1 i P2 są jednowątkowe o równych priorytetach. Zaznaczyć prawidłową odpowiedź.
a
Proces P2 zostanie zatrzymany i odblokowany gdy w P1 wystąpi instrukcja e1.SetEvent(),
b
Proces P2 zostanie zatrzymany i odblokowany gdy dowolne zdarzenie o nazwie ”gotowe” zostanie ustawione,
c
Proces P2 zostanie zatrzymany i przy podanych założeniach nie ma możliwości jego odblokowania,
d
Odpowiedzi a i b są prawidłowe.
5. Co się stanie w wyniku wykonania następujących instrukcji (wykonujący je proces jest procesem Windows):
HANDLE m; m=CreateMailslot(”\\\\prz.edu.pl\\mailslot\\stud”,0,0,0);
a
Na komputerze o nazwie prz.edu.pl zostanie utworzona skrzynka pocztowa o nazwie stud,
b
Będzie m==TRUE, jeżeli użytkownik stud ma konto e-mail na serwerze prz.edu.pl,
c
Użytkownikowi stud zostanie utworzone konto pocztowe na serwerze prz.edu.pl,
d
W funkcji CreateMailslot jest błąd, zamiast ”d3.edu.pl” powinien być znak ”.”.
6. Na komputerze o nazwie 108a2, na którym pracuje system Windows, uruchomiono serwer potoku nazwanego
o nazwie potok. Co należy wstawić w miejsce znaku
w poniższym kodzie, żeby transakcja z tym serwerem
zakończyła się pomyślnie:
char s[]="Wiadomość dla serwera\n"; char odp[256]; unsigned long nodp;
CallNamedPipe(
,s,strlen(s)+1,odp,256,&nodp,0);
a
”\\\\108a2\\pipe\\potok”,
b
”\\108a2\pipe\potok”,
c
Serwer potoku nazwanego nie może pracować z systemem Windows,
d
”\\\\108a2\\potok”.
7. Zaznaczyć, które stwierdzenia dotyczące technologii COM i ActiveX są prawdziwe.
a
Obiekt COM musi posiadać interfejs o nazwie IWindowsCOMObject,
b
Obiekty ActiveX identyfikowane są za pomocą nazwy (np. SOAnimacja),
c
Metoda obiektu ActiveX utworzonego w języku C++ musi mieć odpowiadającą funkcję w klasie reprezentującej
ten obiekt,
d
Zmiana wartości właściwości (property) kontrolki ActiveX nie może spowodować zmiany wyglądu kontrolki,
e
Do obsługi właściwości kontrolki ActiveX nie potrzebne są żadne składowe klasy bazowej kontrolki.
W1
W2
W3
W4
W5