I m

i

ę

N

a

z

w

i

s

k

o

G

r

u

p

a

D

a

t

a

Egzamin z Systemów Operacyjnych J

e

Ŝ

e

l

i

w

z

a

d

a

n

i

u

w

y

s

t

ą

p

i

n

a

z

w

a

W

i

n

d

o

w

s

m

a

m

y

n

a

m

y

ś

l

i

3

2

b

i

t

o

w

y

s

y

s

t

e

m

o

p

a

r

t

y

n

a

a

r

c

h

i

t

e

k

t

u

r

z

e

W

i

n

3

2

J

e

Ŝ

e

l

i

w

z

a

d

a

n

i

u

w

y

s

t

ą

p

i

n

a

z

w

a

p

r

o

c

e

s

m

a

m

y

n

a

m

y

ś

l

i

3

2

b

i

t

o

w

y

p

r

o

c

e

s

Zadanie 1

K

a

r

t

a

d

ź

w

i

ę

k

o

w

a

o

b

s

ł

u

g

i

w

a

n

a

j

e

s

t

p

r

z

e

z

u

r

z

ą

d

z

e

n

i

e

w

i

r

t

u

a

l

n

e

i

s

t

e

r

o

w

n

i

k

K

a

r

t

a

sound.vxd

sound.drv.

w

y

k

o

r

z

y

s

t

y

w

a

n

a

j

e

s

t

j

e

d

n

o

c

z

e

ś

n

i

e

p

r

z

e

z

p

r

o

c

e

s

W

i

n

d

o

w

s

i

a

p

l

i

k

a

c

j

ę

s

y

s

t

e

m

u

M

S

@

D

O

S

a

z

n

a

c

z

y

ć

r

y

s

u

n

e

k

,

.

Z

k

t

ó

r

y

p

o

p

r

a

w

n

i

e

o

p

i

s

u

j

e

a

r

c

h

i

t

e

k

t

u

r

ę

s

y

s

t

e

m

u

i

w

y

k

o

r

z

y

s

t

a

n

i

e

z

a

s

o

b

ó

w

p

r

z

e

z

p

r

a

c

u

j

ą

c

e

p

r

o

c

e

s

y

.

W

3

2

D

O

S

W

3

2

D

O

S

W

3

2

D

O

S

W

3

2

D

O

S

i

n

W

3

2

D

O

S

i

n

i

n

i

n

i

n

drv

vxd

vxd

drv

vxd

drv

vxd

drv

vxd

drv

r

r

r

r

k

a

t

a

r

k

a

t

a

k

a

t

a

k

a

t

a

k

a

t

a

a

b

c

d

e

Wskazówka: j a k i e s ą z a d a n i a s

t

e

r

o

w

n

i

k

ó

w

u

r

z

ą

d

z

e

ń

i

u

r

z

ą

d

z

e

ń

w

i

r

t

u

a

l

n

y

c

h

?

Zadanie 2

W

s

y

s

t

e

m

i

e

W

i

n

d

o

w

s

p

r

a

c

u

j

e

1

6

@

b

i

t

o

w

y

p

r

o

c

e

s

W

i

n

d

o

w

s

3

,

k

t

ó

r

y

o

t

w

o

r

z

y

ł

w

i

d

o

c

z

n

e

o

k

n

o

a

k

a

j

e

s

t

.

x

.

J

s

t

a

n

d

a

r

d

o

w

a

r

e

a

k

c

j

a

s

y

s

t

e

m

u

,

g

d

y

u

Ŝ

y

t

k

o

w

n

i

k

p

r

z

e

s

u

w

a

m

y

s

z

n

a

d

o

k

n

e

m

t

e

g

o

p

r

o

c

e

s

u

?

r

z

ą

d

z

e

n

i

e

w

i

r

t

u

a

l

n

e

w

y

w

o

ł

u

j

e

f

u

n

k

c

j

ę

,

k

t

ó

r

ą

w

c

z

e

ś

n

i

e

j

p

r

o

c

e

s

m

u

s

i

z

a

r

e

j

e

s

t

r

o

w

a

ć

,

a

mouse.vxd

U

3

2

@

b

i

t

o

w

y

s

t

e

r

o

w

n

i

k

w

y

w

o

ł

u

j

e

f

u

n

k

c

j

ę

,

k

t

ó

r

ą

w

c

z

e

ś

n

i

e

j

p

r

o

c

e

s

m

u

s

i

z

a

r

e

j

e

s

t

r

o

w

a

ć

,

b

mouse.drv

r

o

c

e

s

o

t

r

z

y

m

u

j

e

m

e

l

d

u

n

k

i

,

c

WM_MOUSEMOVE

P

S

y

s

t

e

m

n

i

e

o

b

s

ł

u

g

u

j

e

1

6

@

b

i

t

o

w

y

c

h

p

r

o

c

e

s

ó

w

,

p

r

o

c

e

s

m

u

s

i

a

n

a

l

i

z

o

w

a

ć

d

a

n

e

z

p

o

r

t

u

m

y

s

z

y

d

Zadanie 3

W

y

w

o

ł

a

n

i

e

p

o

n

i

Ŝ

s

z

e

j

f

u

n

k

c

j

i

s

p

o

w

o

d

u

j

e

w

s

y

s

t

e

m

i

e

W

i

n

d

o

w

s

(

w

s

k

a

ź

n

i

k

j

e

s

t

n

i

e

z

a

i

n

i

c

j

o

w

a

n

y

)

:

ptr

char f(void) {char *ptr; char c; c = *ptr; return c;}

u

n

k

c

j

a

n

a

p

e

w

n

o

w

y

k

o

n

a

s

i

ę

i

z

w

r

ó

c

i

l

o

s

o

w

ą

w

a

r

t

o

ś

ć

z

p

r

z

e

s

t

r

z

e

n

i

a

d

r

e

s

o

w

e

j

s

w

o

j

e

g

o

p

r

o

c

e

s

u

,

a

F

u

n

k

c

j

a

n

a

p

e

w

n

o

z

w

r

ó

c

i

w

a

r

t

o

ś

ć

z

p

r

z

e

s

t

r

z

e

n

i

a

d

r

e

s

o

w

e

j

s

w

o

j

e

g

o

a

l

b

o

i

n

n

e

g

o

p

r

o

c

e

s

u

,

b

F

e

Ŝ

e

l

i

w

s

k

a

z

u

j

e

b

a

j

t

l

e

Ŝ

ą

c

y

n

a

s

t

r

o

n

i

e

,

k

t

ó

r

a

n

i

e

m

a

p

r

a

w

d

o

o

d

c

z

y

t

u

,

s

y

s

t

e

m

z

a

w

i

e

s

i

s

i

ę

,

c

ptr

J

e

Ŝ

e

l

i

w

s

k

a

z

u

j

e

b

a

j

t

l

e

Ŝ

ą

c

y

n

a

s

t

r

o

n

i

e

,

k

t

ó

r

a

n

i

e

m

a

p

r

a

w

d

o

o

d

c

z

y

t

u

,

p

r

o

c

e

s

w

y

k

o

n

u

j

ą

c

y

d

ptr

J

f

u

n

k

c

j

ę

z

o

s

t

a

n

i

e

p

r

z

e

r

w

a

n

y

.

Wskazówka: j a k i e s ą p r a w a d

o

s

t

ę

p

u

d

o

s

t

r

o

n

y

?

Zadanie 4

W

W

i

n

d

o

w

s

p

r

a

c

u

j

ą

3

p

r

o

c

e

s

y

i

c

z

b

a

w

ą

t

k

ó

w

i

a

k

t

u

a

l

n

y

p

r

i

o

r

y

t

e

t

p

o

k

a

z

a

n

e

s

ą

w

t

a

b

e

l

i

.

L

.

P

r

o

c

e

s

p

1

p

2

p

3

1

2

3

w

ą

t

k

i

w

w

w

w

4

w

5

p

r

o

r

y

e

1

6

1

6

1

1

1

7

i

t

t

5

5

K

t

ó

r

y

r

y

s

u

n

e

k

p

o

p

r

a

w

n

i

e

p

r

z

e

d

s

t

a

w

i

a

k

o

l

e

j

k

o

w

a

n

i

e

(

p

o

m

i

j

a

m

y

w

ą

t

k

i

s

y

s

t

e

m

o

w

e

)

?

W5

W1

W2

W3

W4

W5

W1

W4

W3

W2

W1

W5

W1

W2

W2

W3

W3

W4

W4

W5

a

b

c

d

Zadanie 5

r

a

c

u

j

ą

d

w

a

w

ą

t

k

i

o

r

ó

w

n

y

c

h

p

r

i

o

r

y

t

e

t

a

c

h

:

(

u

r

u

c

h

o

m

i

o

n

y

p

i

e

r

w

s

z

y

)

i

(

u

r

u

c

h

o

m

i

o

n

y

d

r

u

g

i

)

W

c

h

w

i

l

i

,

w1

w2

.

P

g

d

y

w

ą

t

e

k

1

w

y

k

o

n

u

j

e

p

o

d

k

r

e

ś

l

o

n

ą

i

n

s

t

r

u

k

c

j

ę

n

a

s

t

ę

p

u

j

e

p

r

z

e

ł

ą

c

z

e

n

i

e

z

a

d

a

ń

i

s

y

s

t

e

m

p

r

z

e

ł

ą

c

z

a

k

o

n

t

e

k

s

t

n

a

w

ą

t

e

k

2

u

n

k

c

j

a

n

i

e

j

e

s

t

w

s

p

ó

ł

b

i

e

Ŝ

n

a

a

z

n

a

c

z

y

ć

,

c

o

p

r

a

w

d

o

p

o

d

o

b

n

i

e

p

o

j

a

w

i

s

i

ę

n

a

e

k

r

a

n

i

e

printf

.

.

Z

.

F

int wyswietl(char *s) {

int w1(void *p) int w2(void *p) int w;

{

{

w

=printf(s);

___

wyswietl(”0000”); wyswietl(”1111”); return w;

return 0;

return a;

}

}

}

a

00001111

b

00011110

S

y

s

t

e

m

z

a

w

i

e

s

i

s

i

ę

,

p

o

n

i

e

w

a

Ŝ

d

o

s

z

ł

o

d

o

k

o

n

f

l

i

k

t

u

w

s

p

ó

ł

d

z

i

e

l

e

n

i

a

z

a

s

o

b

ó

w

(

w

s

p

ó

l

n

y

e

k

r

a

n

)

c

r

o

c

e

s

w

y

k

o

n

u

j

ą

c

y

w

ą

t

k

i

z

o

s

t

a

n

i

e

p

r

z

e

r

w

a

n

y

p

r

z

e

z

s

y

s

t

e

m

,

p

o

n

i

e

w

a

Ŝ

d

o

s

z

ł

o

d

o

k

o

n

f

l

i

k

t

u

d

P

w

s

p

ó

ł

d

z

i

e

l

e

n

i

a

z

a

s

o

b

ó

w

(

w

s

p

ó

l

n

y

e

k

r

a

n

)

Zadanie 6

S

e

r

w

e

r

s

k

r

z

y

n

k

i

p

o

c

z

t

o

w

e

j

p

r

a

c

u

j

e

n

a

k

o

m

p

u

t

e

r

z

e

o

n

a

z

w

i

e

,

k

l

i

e

n

t

n

a

k

o

m

p

u

t

e

r

z

e

o

n

a

z

w

i

e

Komp1

Komp2.

a

z

n

a

c

z

y

ć

o

d

p

o

w

i

e

d

ź

,

k

t

ó

r

a

z

a

w

i

e

r

a

i

n

s

t

r

u

k

c

j

ę

t

w

o

r

z

ą

c

ą

s

k

r

z

y

n

k

ę

p

o

c

z

t

o

w

ą

d

l

a

s

e

r

w

e

r

a

i

o

t

w

i

e

r

a

j

ą

c

ą

p

l

i

k

Z

d

l

a

k

l

i

e

n

t

a

w

c

e

l

u

w

y

s

y

ł

a

n

i

a

w

i

a

d

o

m

o

ś

c

i

w

y

ł

ą

c

z

n

i

e

d

o

s

e

r

w

e

r

a

.

a

CreateMailslot(”\\\\.\\skrzynka.net”,4096,1000,0); fopen(”\\\\komp1\\skrzynka.net”,”w”); b

CreateMailslot(”\\\\komp1\\skrzynka.net”,4096,1000,0); fopen(”\\\\komp2\\skrzynka.net”,”w”); c

CreateMailslot(”\\\\.\\skrzynka.net”,4096,1000,0); fopen(”\\\\*\\skrzynka.net”,”w”); d

CreateMailslot(”\\\\komp1\\skrzynka.net”,4096,1000,0); fopen(”\\\\komp1\\skrzynka.net”,”w”); Zadanie 7

W

W

i

n

d

o

w

s

p

r

a

c

u

j

ą

w

s

p

ó

ł

b

i

e

Ŝ

n

i

e

d

w

a

p

r

o

c

e

s

y

z

y

m

o

Ŝ

n

a

t

a

k

p

o

p

r

a

w

i

ć

k

o

d

,

Ŝ

e

b

y

p

r

o

c

e

s

1

n

i

e

z

o

s

t

a

ł

.

C

z

a

b

l

o

k

o

w

a

n

y

?

CEvent e;

CEvent e;

int main(void) {

int main(void) {

CSingleLock SL(&e); SL.Lock(); obliczaj2(); return 0; obliczaj1(); e.SetEvent(); return 0;

}

}

i

c

n

i

e

t

r

z

e

b

a

p

o

p

r

a

w

i

a

ć

,

p

r

o

c

e

s

1

n

i

e

z

o

s

t

a

n

i

e

z

a

b

l

o

k

o

w

a

n

y

a

N

a

l

e

Ŝ

y

z

m

i

e

n

i

ć

k

l

a

s

ę

o

b

i

e

k

t

u

n

a

b

e

CMutex

N

a

l

e

Ŝ

y

n

a

d

a

ć

i

d

e

n

t

y

c

z

n

e

n

a

z

w

y

d

l

a

o

b

y

d

w

u

z

d

a

r

z

e

ń

(

o

b

i

e

k

t

ó

w

k

l

a

s

y

)

c

CEvent

N

W

W

i

n

d

o

w

s

n

i

e

m

o

Ŝ

n

a

s

y

n

c

h

r

o

n

i

z

o

w

a

ć

p

r

o

c

e

s

ó

w

,

n

i

e

d

a

s

i

ę

p

o

p

r

a

w

i

ć

t

e

g

o

p

r

z

y

k

ł

a

d

u

d