6hapter 5: 6PU 8chedu||ng 6hapter 5: 6PU 8chedu||ng

6hapter 5: 6PU 8chedu||ng 6hapter 5: 6PU 8chedu||ng
8as|c Corcepls
3credu||rd C(|le(|a
3credu||rd A|do(|lrrs
Vu|l|p|e-P(ocesso( 3credu||rd
Rea|-T|re 3credu||rd
Tr(ead 3credu||rd
0pe(al|rd 3vslers Exarp|es
Java Tr(ead 3credu||rd
A|do(|lrr Eva|ual|or
as|c 6oncepts as|c 6oncepts
Vax|rur CPu ul|||zal|or oola|red W|lr ru|l|p(od(arr|rd
CPu-l/0 8u(sl Cvc|e - P(ocess execul|or cors|sls ol a oyo|e ol CPu execul|or
ard l/0 Wa|l
CPu ou(sl d|sl(|oul|or
|ternat|ng 8equence of 6PU nd ||0 ursts |ternat|ng 8equence of 6PU nd ||0 ursts
|stogram of 6PU |stogram of 6PU--burst T|mes burst T|mes
6PU 8chedu|er 6PU 8chedu|er
3e|ecls l(or arord lre p(ocesses |r rero(v lral a(e (eadv lo execule. ard
a||ocales lre CPu lo ore ol lrer
CPu scredu||rd dec|s|ors rav la|e p|ace Wrer a p(ocess:
1. 3W|lcres l(or (urr|rd lo Wa|l|rd slale
2. 3W|lcres l(or (urr|rd lo (eadv slale
3. 3W|lcres l(or Wa|l|rd lo (eadv
1. Te(r|rales
3credu||rd urde( 1 ard 1 |s nonoreemor|ve
A|| olre( scredu||rd |s oreemor|ve
|spatcher |spatcher
|spalcre( rodu|e d|ves corl(o| ol lre CPu lo lre p(ocess se|ecled ov lre sro(l-
le(r scredu|e(: lr|s |rvo|ves:
sW|lcr|rd corlexl
sW|lcr|rd lo use( rode
jurp|rd lo lre p(ope( |ocal|or |r lre use( p(od(ar lo (esla(l lral p(od(ar
|soaron |arenoy - l|re |l la|es lo( lre d|spalcre( lo slop ore p(ocess ard sla(l
arolre( (urr|rd
8chedu||ng 6r|ter|a 8chedu||ng 6r|ter|a
CPu ul|||zal|or - |eep lre CPu as ousv as poss|o|e
Tr(oudrpul - # ol p(ocesses lral corp|ele lre|( execul|or pe( l|re ur|l
Tu(ra(ourd l|re - arourl ol l|re lo execule a pa(l|cu|a( p(ocess
wa|l|rd l|re - arourl ol l|re a p(ocess ras oeer Wa|l|rd |r lre (eadv
cueue
Resporse l|re - arourl ol l|re |l la|es l(or Wrer a (ecuesl Was
suor|lled url|| lre l|(sl (esporse |s p(oduced. not oulpul |lo( l|re-
sra(|rd erv|(orrerl)
0pt|m|zat|on 6r|ter|a 0pt|m|zat|on 6r|ter|a
Vax CPu ul|||zal|or
Vax lr(oudrpul
V|r lu(ra(ourd l|re
V|r Wa|l|rd l|re
V|r (esporse l|re
|rst |rst--6ome, |rst 6ome, |rst--8erved [68} 8chedu||ng 8erved [68} 8chedu||ng
P(ocess 8u(sl T|re
!

21
!

3
!

3
3uppose lral lre p(ocesses a((|ve |r lre o(de(: !

. !

. !

Tre 0arll Cra(l lo( lre scredu|e |s:
wa|l|rd l|re lo( !

0: !

21: !

2Z
Ave(ade Wa|l|rd l|re: |0 ÷ 21 ÷ 2Z)/3 1Z
P
1
P
2
P
3
21 2Z 30 0
68 8chedu||ng [6ont.} 68 8chedu||ng [6ont.}
3uppose lral lre p(ocesses a((|ve |r lre o(de(
!

. !

. !

Tre 0arll cra(l lo( lre scredu|e |s:
wa|l|rd l|re lo( !

= . !

0
.
!

= 3
Ave(ade Wa|l|rd l|re: | ÷ 0 ÷ 3)/3 3
Vucr oelle( lrar p(ev|ous case
onvoy elleor sro(l p(ocess oer|rd |ord p(ocess
P
1
P
3
P
2
3 30 0
8hortest 8hortest--Job Job--|rst [8J} 8chedu||ng |rst [8J} 8chedu||ng
Assoc|ale W|lr eacr p(ocess lre |erdlr ol |ls rexl CPu ou(sl. use lrese |erdlrs
lo scredu|e lre p(ocess W|lr lre sro(lesl l|re
TWo screres:
rorp(eerpl|ve - orce CPu d|ver lo lre p(ocess |l carrol oe p(eerpled url||
corp|eles |ls CPu ou(sl
p(eerpl|ve - |l a reW p(ocess a((|ves W|lr CPu ou(sl |erdlr |ess lrar
(era|r|rd l|re ol cu((erl execul|rd p(ocess. p(eerpl. Tr|s screre |s |roW
as lre
3ro(lesl-Rera|r|rd-T|re-F|(sl |3RTF)
3JF |s opl|ra| - d|ves r|r|rur ave(ade Wa|l|rd l|re lo( a d|ver sel ol p(ocesses
P(ocess A((|va| T|re 8u(sl T|re
!

0.0 Z
!

2.0 1
!

1.0 1
!

5.0 1
3JF |ror-p(eerpl|ve)
Ave(ade Wa|l|rd l|re |0 ÷ ÷ 3 ÷ Z)/1 1
amp|e of Non amp|e of Non--Preempt|ve 8J Preempt|ve 8J
P
1
P
3
P
2
Z 3 1 0
P
1
8 12
amp|e of Preempt|ve 8J amp|e of Preempt|ve 8J
P(ocess A((|va| T|re 8u(sl T|re
!

0.0 Z
!

2.0 1
!

1.0 1
!

5.0 1
3JF |p(eerpl|ve)
Ave(ade Wa|l|rd l|re |9 ÷ 1 ÷ 0 ÷2)/1 3
P
1
P
3
P
2
1 2
11 0
P
1
5 Z
P
2
P
1
1
eterm|n|ng Length of Net 6PU urst eterm|n|ng Length of Net 6PU urst
Car or|v esl|rale lre |erdlr
Car oe dore ov us|rd lre |erdlr ol p(ev|ous CPu ou(sls. us|rd exporerl|a|
ave(ad|rd
: Define 4.
1 0 , 3.
burst CPU next the for value predicted 2.
burst CPU of length actual 1.
A A

- -
:
3
9
3
3 9
. 1
1 3 3 3
9 : - - :

Pred|ct|on of the Length of the Net 6PU urst Pred|ct|on of the Length of the Net 6PU urst
amp|es of ponent|a| verag|ng amp|es of ponent|a| verag|ng
- 0
:
r÷1
:
r
Recerl r|slo(v does rol courl
- 1
:
r÷1
- r
r
0r|v lre aclua| |asl CPu ou(sl courls
ll We expard lre lo(ru|a. We del:
:
n÷1
- l
n
÷|1 - -- r
n
-1 ÷ .
1 - -

- r
n -
÷ .
1 - -
n ÷1
:
0
3|rce oolr - ard |1 - -) a(e |ess lrar o( ecua| lo 1. eacr success|ve le(r ras
|ess We|drl lrar |ls p(edecesso(
Pr|or|ty 8chedu||ng Pr|or|ty 8chedu||ng
A p(|o(|lv ruroe( ||rlede() |s assoc|aled W|lr eacr p(ocess
Tre CPu |s a||ocaled lo lre p(ocess W|lr lre r|dresl p(|o(|lv |sra||esl |rlede(
r|dresl p(|o(|lv)
P(eerpl|ve
rorp(eerpl|ve
3JF |s a p(|o(|lv scredu||rd Wre(e p(|o(|lv |s lre p(ed|cled rexl CPu ou(sl l|re
P(oo|er 3la(val|or - |oW p(|o(|lv p(ocesses rav reve( execule
3o|ul|or Ad|rd - as l|re p(od(esses |rc(ease lre p(|o(|lv ol lre p(ocess
#ound #ob|n [##} #ound #ob|n [##}
Eacr p(ocess dels a sra|| ur|l ol CPu l|re |r|me ouanrum). usua||v 10-100
r||||secords. Alle( lr|s l|re ras e|apsed. lre p(ocess |s p(eerpled ard
added lo lre erd ol lre (eadv cueue.
ll lre(e a(e n p(ocesses |r lre (eadv cueue ard lre l|re cuarlur |s o. lrer
eacr p(ocess dels 1/n ol lre CPu l|re |r crur|s ol al rosl o l|re ur|ls al
orce. No p(ocess Wa|ls ro(e lrar |n-1)o l|re ur|ls.
Pe(lo(rarce
o |a(de FlF0
o sra|| o rusl oe |a(de W|lr (especl lo corlexl sW|lcr. olre(W|se
ove(read |s loo r|dr
amp|e of ## w|th T|me 0uantum = 20 amp|e of ## w|th T|me 0uantum = 20
P(ocess 8u(sl T|re
!

53
!

1Z
!

8
!

21
Tre 0arll cra(l |s:
Tvp|ca||v. r|dre( ave(ade lu(ra(ourd lrar 3JF. oul oelle( resoonse
P
1
P
2
P
3
P
1
P
1
P
3
P
1
P
1
P
3
P
3
0 20 3Z 5Z ZZ 9Z 11Z 121 131 151 12
T|me 0uantum and 6ontet 8w|tch T|me T|me 0uantum and 6ontet 8w|tch T|me
Turnaround T|me Var|es w|th The T|me 0uantum Turnaround T|me Var|es w|th The T|me 0uantum
u|t||eve| 0ueue u|t||eve| 0ueue
Readv cueue |s pa(l|l|ored |rlo sepa(ale cueues:
lo(ed(ourd ||rle(acl|ve)
oac|d(ourd |oalcr)
Eacr cueue ras |ls oWr scredu||rd a|do(|lrr
lo(ed(ourd - RR
oac|d(ourd - FCF3
3credu||rd rusl oe dore oelWeer lre cueues
F|xed p(|o(|lv scredu||rd: ||.e.. se(ve a|| l(or lo(ed(ourd lrer l(or
oac|d(ourd). Poss|o|||lv ol sla(val|or.
T|re s||ce - eacr cueue dels a ce(la|r arourl ol CPu l|re Wr|cr |l car
scredu|e arordsl |ls p(ocesses: |.e.. 80º lo lo(ed(ourd |r RR
20º lo oac|d(ourd |r FCF3
u|t||eve| 0ueue 8chedu||ng u|t||eve| 0ueue 8chedu||ng
u|t||eve| eedback 0ueue u|t||eve| eedback 0ueue
A p(ocess car rove oelWeer lre va(|ous cueues: ad|rd car oe |rp|ererled lr|s
Wav
Vu|l||eve|-leedoac|-cueue scredu|e( del|red ov lre lo||oW|rd pa(arele(s:
ruroe( ol cueues
scredu||rd a|do(|lrrs lo( eacr cueue
relrod used lo dele(r|re Wrer lo upd(ade a p(ocess
relrod used lo dele(r|re Wrer lo derole a p(ocess
relrod used lo dele(r|re Wr|cr cueue a p(ocess W||| erle( Wrer lral
p(ocess reeds se(v|ce
amp|e of u|t||eve| eedback 0ueue amp|e of u|t||eve| eedback 0ueue
Tr(ee cueues:
"
0
- RR W|lr l|re cuarlur 8 r||||secords
"
1
- RR l|re cuarlur 1 r||||secords
"
2
- FCF3
3credu||rd
A reW joo erle(s cueue "

Wr|cr |s se(ved FCF3. wrer |l da|rs CPu. joo
(ece|ves 8 r||||secords. ll |l does rol l|r|sr |r 8 r||||secords. joo |s roved lo
cueue "
1
.
Al "
1
joo |s ada|r se(ved FCF3 ard (ece|ves 1 add|l|ora| r||||secords. ll |l
sl||| does rol corp|ele. |l |s p(eerpled ard roved lo cueue "
2
.
u|t||eve| eedback 0ueues u|t||eve| eedback 0ueues
u|t|p|e u|t|p|e--Processor 8chedu||ng Processor 8chedu||ng
CPu scredu||rd ro(e corp|ex Wrer ru|l|p|e CPus a(e ava||ao|e
omooeneous orooessors W|lr|r a ru|l|p(ocesso(
oao snar|no
/symmerr|o mu|r|orooess|no - or|v ore p(ocesso( accesses lre
svsler dala sl(uclu(es. a||ev|al|rd lre reed lo( dala sra(|rd
#ea| #ea|--T|me 8chedu||ng T|me 8chedu||ng
aro rea|-r|me svslers - (ecu|(ed lo corp|ele a c(|l|ca| las|
W|lr|r a dua(arleed arourl ol l|re
$olr rea|-r|me corpul|rd - (ecu|(es lral c(|l|ca| p(ocesses
(ece|ve p(|o(|lv ove( |ess lo(lurale ores
Thread 8chedu||ng Thread 8chedu||ng
oca| 3credu||rd - loW lre lr(eads ||o(a(v dec|des Wr|cr lr(ead lo pul
orlo ar ava||ao|e wP
0|ooa| 3credu||rd - loW lre |e(re| dec|des Wr|cr |e(re| lr(ead lo (ur rexl
Pthread 8chedu||ng P| Pthread 8chedu||ng P|
include <pthread.h>
include <stdio.h>
define NUM THREADS 5
int main(int argc, char *argv[])
{
int i;
pthread t tid[NUM THREADS];
pthread attr t attr;
/* get the default attributes */
pthread attr init(&attr);
/* set the scheduling algorithm to PROCESS or SYSTEM */
pthread attr setscope(&attr, PTHREAD SCOPE SYSTEM);
/* set the scheduling policy - FÌFO, RT, or OTHER */
pthread attr setschedpolicy(&attr, SCHED OTHER);
/* create the threads */
for (i = 0; i < NUM THREADS; i++)
pthread create(&tid[i],&attr,runner,NULL);
Pthread 8chedu||ng P| Pthread 8chedu||ng P|
/* now join on each thread */
for (i = 0; i < NUM THREADS; i++)
pthread join(tid[i], NULL);
}
/* Each thread will begin control in this function */
void *runner(void *param)
{
printf("Ì am a thread\n");
pthread exit(0);
}
0perat|ng 8ystem amp|es 0perat|ng 8ystem amp|es
3o|a(|s scredu||rd
w|rdoWs XP scredu||rd
|rux scredu||rd
8o|ar|s 2 8chedu||ng 8o|ar|s 2 8chedu||ng
8o|ar|s |spatch Tab|e 8o|ar|s |spatch Tab|e
w|ndows XP Pr|or|t|es w|ndows XP Pr|or|t|es
L|nu 8chedu||ng L|nu 8chedu||ng
TWo a|do(|lrrs: l|re-sra(|rd ard (ea|-l|re
T|re-sra(|rd
P(|o(|l|zed c(ed|l-oased - p(ocess W|lr rosl c(ed|ls |s scredu|ed rexl
C(ed|l suol(acled Wrer l|re( |rle((upl occu(s
wrer c(ed|l 0. arolre( p(ocess croser
wrer a|| p(ocesses rave c(ed|l 0. (ec(ed|l|rd occu(s
8ased or laclo(s |rc|ud|rd p(|o(|lv ard r|slo(v
Rea|-l|re
3oll (ea|-l|re
Pos|x.1o corp||arl - lWo c|asses
FCF3 ard RR
l|dresl p(|o(|lv p(ocess a|Wavs (urs l|(sl
The #e|at|onsh|p etween Pr|or|t|es and T|me The #e|at|onsh|p etween Pr|or|t|es and T|me--s||ce |ength s||ce |ength
L|st of Tasks |ndeed ccord|ng to Pror|t|es L|st of Tasks |ndeed ccord|ng to Pror|t|es
|gor|thm va|uat|on |gor|thm va|uat|on
ele(r|r|sl|c rode||rd - la|es a pa(l|cu|a( p(edele(r|red Wo(||oad
ard del|res lre pe(lo(rarce ol eacr a|do(|lrr lo( lral Wo(||oad
0ueue|rd rode|s
lrp|ererlal|or
5.15 5.15
5.08 5.08
|n |n--5.7 5.7
|n |n--5.8 5.8
|n |n--5.9 5.9
|spatch Latency |spatch Latency
Java Thread 8chedu||ng Java Thread 8chedu||ng
J\V uses a P(eerpl|ve. P(|o(|lv-8ased 3credu||rd A|do(|lrr
FlF0 0ueue |s used |l Tre(e A(e Vu|l|p|e Tr(eads w|lr lre 3are P(|o(|lv
Java Thread 8chedu||ng [cont} Java Thread 8chedu||ng [cont}
J\V 3credu|es a Tr(ead lo Rur wrer:
1. Tre Cu((erl|v Rurr|rd Tr(ead Ex|ls lre Rurrao|e 3lale
2. A l|dre( P(|o(|lv Tr(ead Erle(s lre Rurrao|e 3lale
¯ Nole - lre J\V oes Nol 3pec|lv wrelre( Tr(eads a(e T|re-3||ced o( Nol
T|me T|me--8||c|ng 8||c|ng
3|rce lre J\V oesr'l Ersu(e T|re-3||c|rd. lre v|e|d|) Velrod
Vav 8e used:
Wr||e |l(ue) [
// pe(lo(r CPu-|rlers|ve las|
. . .
Tr(ead.v|e|d|):
}
Tr|s Y|e|ds Corl(o| lo Arolre( Tr(ead ol Ecua| P(|o(|lv
Thread Pr|or|t|es Thread Pr|or|t|es
Pr|or|ty 6omment
Tr(ead.VlN_PRl0RlTY V|r|rur Tr(ead P(|o(|lv
Tr(ead.VAX_PRl0RlTY Vax|rur Tr(ead P(|o(|lv
Tr(ead.N0RV_PRl0RlTY elau|l Tr(ead P(|o(|lv
P(|o(|l|es Vav 8e 3el us|rd selP(|o(|lv|) relrod:
selP(|o(|lv|Tr(ead.N0RV_PRl0RlTY ÷ 2):

,5907!&$.0/:3 
,8.43.0598 $.0/:37907, $.0/:347928 :950
!74.08847$.0/:3 #0,
%20$.0/:3 %70,/$.0/:3 507,93$89028,2508 ,;,%70,/$.0/:3 4792;,:,943

,8.43.0598 
,2:2!&:9,9434-9,30/92:95747,223 !& 

:789.0 !74.08800.:943.43889841,..0 41!&00.:943 ,3/

,9 !&-:789/897-:943

93$06:03.041!&3/.9073.

:7898 .

8947.241!& 8947.241!& -:789%208 .

!&$./9400.0/:3/0.908 $.939470.3/ ./89.3/83435700259.0 49078./  %0723..0/:3:3/07.90890!&9443041902 !&8.574.0/:385700259.90  $9.05.24390574.0817427:33394.0 .088  $9.84382.90  $9.4.9389.0/:07 $00.003.9.9..:90 .981742.081742.7070.088083202479.0817427:3339470.

2947089.0724/:0.9.349077:333 .088800.08.3.3/89.79 .07 85.43909 89.394:80724/0 :25394905745074.943390:8075747.2 85.4..799.9.07948945430574.903.9.85. 92099..9.95747.90/-908479 90728.439744190!&9490574.088.08    89.0814790/85.0/:07983.

7574.8-:8.088089.85488-0 %74:5:9 41574.7432039 .574.943 00590!&.706:089.7303.8-003.42509090700.:943507920:39 %:73.5.8 8:-2990/:39901789708543808574/:.9.24:39419209400.74:3/920 .0/:37907./ 6:0:0 #0854380920 .08174203. !&:9.:90.0/ 349 4:95:9 147920 8.24:3941920.79.24:394192099.:.9339070.088.$.088 .93920 .

974:5:9 39:73. .74:3/920 3.9437907.943 .592.93920 370854380920 .!&:9.

789 789 420 789 $07.0/:3 789 !74.399.77.0/ $ $.088 :789%20 !  !  !  $:554809.93920147!  ! ! .08808.039047/07! ! ! %0.93920    .990574.0.79147908.0/:08 ! .07.

  !  !  .

08808.77.0.0/:3 439 $:554809.93920     .79147908.$$.399.039047/07 ! ! ! %0.0/:08 !  !  !  .990574.93920147!  !  ! .07..

 :.088-03/43574.4:8.80 43.-099079.3570.9 8479574.40110..088 .

0889908479089920 %48.3392041.088 5700259 %88.3 702.08232:2..:93574..890 $479089 #02.93920147.0.089!&-:7890390889.039490574.425090898!&-:789 5700259.9090.33 %20 789 $#%  $84592.08808 .$479089 4- $479089 4- 789 $ $..0208  3435700259.0380941574.77.0 1..088900394198309!&-:789 &8090800398 948.3349-057002590/:39 .0/:3 884.0889.:7703900..0!&.0 43.020834 .0/:090574.088.30574. .07.574.

0 !   !  !  !  77.2504143 .088 ! ! ! ! $ 343 5700259.07.0.93920     ..0$ !74.%20    :789%20     ..2504143 !700259.

 .

0$ !74.%20    :789%20     ..93920      .088 ! ! ! ! $ 5700259.0 !  !  !  !  !  !  77.25041!700259.07.0..

 .

 A .A  : 3   .:014790309!&-:789  .: 3  ..9090039 .90/.09072330394109!&:789 .07.03941 3 9 !&-:789  : 3  570/.9:.9 3  0130  .3  9 3  ..3-0/430-:839003941570..3430892.4:8!&-:7898 :830543039. .

!70/.9434190039419009!&:789 .

07.3/901472:.89!&-:789.94 0.09072.  :3  .  :3  :3  #0.0-49..8:.93  ..93  390.8 088099.3/  ..398570/0.250841543039.93    .4:398 1005.34706:...4:39 .700889..93    3 : $3... .3 .08847 . 009 :3  .9:.0398947/408349..088.

!7479$.943 457479574.08939007 08957479   !700259.088 %0!&8.088 .0700.0 $8..0/:307057479890570/.90/9490574..30.0 3435700259.8090574794190574.7.884.89205747088083.0/:3 574793:2-07 39007 8.574.:90 $4:943 3 .70.574798.90/90...90/309!&-:789920 !74-02 $9.08899008957479 82.4.088082.

80.//0/949003/419070.3/909206:.:3941!&920 9206:.0880839070.088857002590/.   280./6:0:0 19070.39:2 :8:.703 574.43/8 190798920.088098.39:286 903 0./6:0:0.088098..82.574.580/ 90574.#4:3/#4-3 ## .574..3/ .

70970850.924896 920:398.9 43.070. 62:89-0.70  682.3 4190!&9203.994.3.088.:3841.3 3  6920:398 !071472.9824709. 490780 4./8944 .0   6 .0 4574.4390989.

74:3/9.399.25041##9%20":...798 :789%20     !  !  !  !  !  !  ! !   ! !   %5.3$ -:9-0990770854380 ... 07.088 ! ! ! ! %0.09:73.07.39:2 !74.

%20":.3/43909$9.%20 .39:2.

74:3/%20'.7089%0%20":.%:73.39:2 .

..74:3/ !488-94189.24:3941!&920.9.1742147074:3/9031742 -.:90. ..7.0/:3.0 -.0.0 0...08808 0  94147074:3/3##  94-..74:3/ $ 0/574798.0/:0.9..4792   147074:3/ ## -.0/:3  0 807./6:0:085..906:0:08 147074:3/ 3907.0":0:0 #0.74:3/3$ $.079.6:0:0.6:0:0098.2438998574.0/:32:89-0/430-09003906:0:08    .3 8.74:3/ -.799430/394805.9.3.943 %208.7.898438...

0":0:0$.:90.0/:3 .

0/:07/0130/-9014435.:90..7.574.088 2094/:80/94/09072300394/02490.6:0:0. :90./0.0-0900390.209078      3:2-07416:0:08 8.0/:3.0 100/-.088 2094/:80/94/0907230.479281470.3.08803907039..6:0:0 2094/:80/94/09072300394:57.088300/8807. 6:0:08.9 574.3-025020390/98 ...":0:0 574.574.74:86:0:08....324.000/-.574.0 .088.

25041:90.08.43/8 19/4083491383280.43/8 " $ 304-0390786:0:0" ..":0:0 %7006:0:08    " ##99206:.280.43/8 4-824..0/946:0:0" $.//943.0/$.0/94 6:0:0" 9" 4-8.3807.0.39:2280..43/8 19 89/408349.08280.0/ $ 039.39:2280.8807.000/-.3/24.38!& 4- 70.0/:3   .43/8 " ##9206:.0.3/70.425090 9857002590/.

:90.000/-..":0:08 .

9.2:9574.4250032:950!&8.....9390300/147/.08847 4.2:9574.088478 93.8.70./8.0/:3 !&8.897:.08847$..:950 :950 !74.-0 4240304:8574.08847.0880890 88902/.9:708 .73 .0/:32470.0.73 822097.9.0883 43430574..

:.8 93.#0.904308 .574. 920 889028 706:70/94.9.7..425:93 706:7089. #0.425090.79.3900/.0. %20$.7/70.070881479:3. 920 .24:3941920 $41970.0574794..0/:3 .9.08808 70.79..

..0730970../8-7./08.0/:3 4900730/0.970./$.0/:3 490970.$./945:9 4394./08.-0! 4-..7/0.0/:3 4./947:3309 .3.$.%70.

3 39.997 .7.0/:3! 3.:/089/4  /0130&%#$ 392./99/&%#$( 5970.!970.(  39 5970.:/05970./$. .9979..7.7 ././  3.

997-:908 .:9. 0990/01.

99739 ./. 5970.997  .

0/:3.479294!# $$47$$% . 809908.

997 !%#$ !$$%  .9978098.450 . 5970./.

0/:354.  #% 47 %# . 809908.

997 $ %#  . 5970./.0/54.9978098. .

./8 .70.9090970.

70. 147  &%#$ 5970./.997 7:3307 &  .90 9/( .

0/:3! .!970./$.

970.. 3443430./ .

147  &%#$ 5970./43 9/( &  < .

970./-03.943 .. .439743981:3.

4/ 7:3307 ./3  5970.2.2  57391 . ./09  < .970.4/ 5.7.

0/:3 3:8.2508 $4.93$8902.0/:3 .788.0/:3 3/48!8.507.

78$.0/:3 .$4.

-0 .%.$4.9.7885.

3/48!!747908 .

.0.574.34907574.73..0/:3 %4.088.80/431.39 94.3/8947 #0.:78  03.08808.70/9 .4803  03.3/70. 920  !48 -.08892489..088.8808  $..90/03920739077:594.0/:0/309  70/98:-97.70/9888.80/ 574.94783.87:381789 .70/934. 920  $41970..:78  .70/9 70.3/##  08957479574. 920 %20 8.70/9 -.425.3:$.47928920 8...:/357479.73  !74790/.

3/%20 .3/%20 8.0039 %0#0.9438509003!747908.%0#0.9438509003!747908.

883/00/.47/394!747908 ..8941%.

:.3//01308905071472..47921479.7570/0907230/474.9474.08..24/03 9.79.943 09072389.5.4792.0410./ ":0:0324/08 2502039..3.:.943 ./ .

  .

  .

3   3 .

3   3 .

3   3 .

903.. .85.9.

.0/:34792  ":0:08&80/1%07070:950%70../8990$.0 !7479 ./$.!700259.%70.0/:3 '&808.80/$.20!7479 ..

0/4749 ./$.90 490 90'40849$50.-0$9.439 '$./3907890#:33./94#:303   %0:77039#:333%70..%70.0/:3 .70%20 $.90 07!7479%70.0/:08./9890#:33..10907%70./8..%70.-0$9.

%20 %20 $.3 900/ 094/ .090'4083 938:70%20 $.0&80/ 0 97:0  .3 $3.

.

09.!7479 ./416:.8   %70.5071472!& 39038./ 0/  < %80/8439749434907%70.

%70./!7479 .0$09&83809!7479 2094/ 809!7479 %70./  #*!# #%   ./!7479 !747908./!7479 01.2:2%70./  #*!# #% 422039 32:2%70./ *!# #% %70.:9%70./!747908 !7479 %70./ *!# #% %70.

Sign up to vote on this title
UsefulNot useful