Доп. часть - Скворцов(СП) - 85

Embed Size (px)

DESCRIPTION

Подготовка к ГОСам ВМК МГУ

Citation preview

  • 1. . . A ( P2),

    A.

    . A P2. A , A. : [A]. : A = [A].

    : 0 { (0, ,0) = 0 }; 1{ (1, ,1) = 1}; {(1, , ) = 0 11 }; {(1, , ) =

    (1, , ) = (1, , )}; { => () ()} . A = {f1, f2, ...} P2 , : T0, T1, S, L, M.

    . . A , N T0, T1, S, L, M

    A N. [A] [N] = N P2 [A] P2. .

    . 0, 1, , , . A 0 0, 1 1, , , . , [] [0, 1, , , ] = 2. : , .

    a) . 0(1, . . . , ) 0 0() =0 (, , . . . , ). f0 , 0 (0) = f (0, 0, ..., 0) = 1. : 0 () = , 0 (x) 1. 1 (1, . . . , ) 1 1() =1 (, , . . . , ). f1 , 1 (1) = f (1, 1, ..., 1) = 0. : 1(x)= , 1 (x) 0. , . , , , . .

    b) 0 1. . , fS ( a) , : [, ] [0, 1]. .

    c) x y. . , ( ), , . , ,

    : [ , 0, 1, ] [, ]. .

    , [0, 1, , , ] [x, xy] = P2.

  • 2. , , ; . . 1. V E V. : G = (V, E). 2. E , , . E , , . 3. (a, a) , (a, b) E , ( ). 4. ( ), , , . 5. , . 6. , , . 7. (deg v) ,

    . . 25 1. ()

    deg

    =1

    = 2, ,

    . , , . , , , ( ). . .

    1. . 2. G1 = (V1, E1) G = (V, E),

    G = (V, E), G1 = (V1, E1) V1 = V.

    1. G = (V, E) (a, b) G, G (a, b) . . , G (a, b) a b , a b . .

    1. . . G , G . G , G - , . G1. 1 G1 . G1

    , G1 , .

    , E . .

  • 2. , .

    . G = (V, E). , , (, ) . G , v u. G C v u. C, (u, v), v. . 3. G = (V, E) p q . G p q . G , G p q . . H, u v, (u, v). u v H, 1. u, v H, . , 1. , q q. G G1 = (V, ) q , G

    p q . G , G G1 (u, v). u, v

    , G, 2, . , u, v (u, v) 1. G p q . .

    1. , , , .

    2. 1) , , , . 2) D1, D2, ..., Dm v1, v2, ..., vm, Di =

    (Vi, Ei), Vi Vj = (i j). D = (V, E),

    :

    = 1 2 {}( , ), = 1 2 {(, 1), (, 2), . . . , (, )}

    v, . 3) , 1) 2). 3. , 1) 2) Di .

    . 3. q

    4q

    . . ,

  • . : 1) . : 2) , . 3) . 2 : , . , , , , , . 0 1 2q, . , , . , q , 0 1 2q,

    22q

    = 4q

    . . , , : . . . q

    q 4q

    .

    . , . , . q q , , , q . . .

    1. , . 2. , , ( , ). . G = (V, E) p , q r : p q + r = 2.

    . p q. G , q p 1. a) : q=p1. G q=p1, 3 2 G , , G . r = 1. p q + r = = p (p 1) + 1 = 2.

  • b) q: p 1 q < q0 . , q = q0

    . G p q0

    r . q0 > p 1, G .

    , G . e . . e G. , G1 .

    G1 p q0 1 r 1 . q0

    1 < q0, , , G1 ,

    p (q0 1) + (r 1) = 2, p q0 + r = 2. .

  • 3. 1- . . . , , ( ).

    ()(1, . . . , ) () , 1, , , .

    =< , , , >

    , ,

    n- f

    : |=

    I . | = (1, , )[1, , ], .. I 1, ,

    1) (1, , ) = (1, , ), (1[1, , ], , [1, , ]) =

    2) & 3) 4) , . 5)

    , , . , . , , . , . , . : .

    1) : ,

    2) () Q1x1Q2x2 ...Qnxn (D1&D2&...&DN)

    3) () xi1xi2 ...xik (D1&D2&...&DN)

    4) S = {D1, D2, ...,DN} 5) ,

    . :

    :1 = 1

    , 2 = 2

    0 = 1 2

  • 4. . ; . . = Const,Func,Pred , . ::= ::= | , ::= ; ::= ; ::= | ::= | ::= | ?

    A0 A1,A2,...,An;

    A1,A2,...,An,

    A0.

    A0 ,

    A1,A2,...,An.

    A0;

    A0

    . A0 .

    ?C1,C2,...,Cm

    C1, C2, . . . , Cm? C1,C2,...,Cm.

    ,

    D G ,

    P ( ),

    (), . . , . . , . . , . , G = ? C1,...,Ci,...,Cm ,

    Ci ,

  • D = A

    0 A

    1,A

    2,...,A

    n ,

    VarG VarD = ,

    (Ci , A0) Ci

    A0. G =

    ?(C1,...,Ci1,A1,A

    2,...,A

    n,Ci+1,...,Cm) SLD-

    D G Ci

    . G0 = ? C1,C2,...,Cm , P={D1,D2,...,DN}

    . () SLD- , G0 P ( ) (Dj1,1,G1),(Dj2,2,G2),...,(Djn,n,Gn),...,

    i, i 1,

    > Dji P, i Subst, Gi ();

    > Gi SLD- Dji

    Gi1 i.

    SLD- comp = (Dj1,1,G1),(Dj2,2,G2),...,(Djk ,n,Gn)

    (SLD- ), Gn = ;

    , comp ; , comp , Gn SLD-.

    () SLD- TG0,P

    G0 P

    , G0 P

    () G0 P

    , () i- , (i 1)- ; , . , , . , , .

  • 5. . . , ACID (Atomicy, Consistency, Isolation Durability). , .

    (Atomicy). , , , , .

    (Consistency). , , , .. , . , .

    (Isolation). , ( ) .

    (Durability). , , , . :

    T1 , T2 . T1 , . .

    T1 , T2 , T1 . T2 , . , .

    T1 , T2 . T1 . .

    , , , . S = {T1, T2, , Tn}. () S , (T i1, Ti2, , Tin). . , . , , .

  • , . . , . , , . T1 T2 :

    W/W T2 , T1 ( );

    R/W T2 , T1 ( );

    W/R T2 , T1 ( ). .

  • 6. - , , . , , : -, (.. ), -, ( ), , , -, ( , ). . (), . , ( ) . , , , . , , . , , , - . , . , . , .. . , , (.. , ), . : ( ), . , ( ), , . , , (.. ). , , ,

  • ( ) , . . , , , . , , , . - . : ( , ) ( ). , . , ( , ). , , , , , . , , ( , ; ). , , , , , , - . . (.. ) , , , . , , , . . -, , , . , . -, , , - . , -,

  • ( , .. ) . , , , , , . , , , : . : . , . . , , , , , . , , (, ) . , , : ,

    , , , . , : .. , , , .. , . . , , . , . : , , , .

  • 7. . . , , . , , . , , , , . . , .. , , . , . , . , , ( , , ). , , , . , , , . , , , .. . , . , , , , , . . , , , . , . , deadlock, , - . , , . . .

  • : down(S) ( P(S)) up(S) ( V(S)). P V, , proberen verhogen . down(S) S, , 1. , , down . up(S) 1. , , down , down, .. . . up down (), .. . , 1. . , down up , . , . , , , . ( , ), (). , , , . :

    ;

    , ( ) , ;

    , , , . . , ( , ). . . . : send ( ) receive ( ). : , .

  • . / . . send: - , . receive: - , . , , , . , send receive, 4 . , , , , . , / (, , ), . ; , (FIFO, LIFO ..). (FIFO) , . , , : . .

    . . , : . , , . : , . . , , , . , , , , , , - ( , ).

    . , , , . : , , , . (TakeForks).

  • mutex, . ( ). ( Test). Test , i- , (.. ), ( EATING), (, ). TakeForks, ( mutex), . Test , , down , . Test , , down , . PutForks mutex, . ( THINKING), : - , i- , , . mutex.

    , ( mutex) , , , , , Test (, , ). , , - Test, . , if-. , . Test, , if-. . . . , . . , , . , , . , -, - , ( , ) . : , . .. - , - . - ( mutex),

  • , , 1. , (.. ), db, , , . db , , , , . (, , mutex.) ( mutex), . , . , , , db, ( ). , . , , db. - , , (, ) . , db. , , , , , .. . , . . , . , N , , . , . , . - . . - customers, 1. , , , . , , barbers, , . . . , , . , ( , mutex). customers.

  • , . ( barbers). , , , , . (GetHaircut).

  • 8. . . , , . ? , (, , ). . , . . , , ( ) , , , . . (A..). , , (A..= A..). , ( ) 0, . , , .. , . , 0 A1, , K, . A.. , K A... , (.. K). , A..= A..+. , . , , . . . . : , , 2k. (, ..). , (! .): k ,

  • . .

    , , . , . ( , ..). , . , (.. ) . : , , .

    . . . N . , N . i- i, . i >= 0, , i- . i < 0, ,

    0

    1

    0 k-1 k

    :

    0 k-1 k

    k-1 k A..

    A..

  • , , . . -, , i- , . -, , , (), .. i- , . , . , , . ( ), ( ). , . , ( ). , : , ( ) , .. , . , , . , . , , , : . . . -, , () : , (.., .. , , ). : , ( , ). , . , . ,

  • . , , , , .. . . , , , : ? , .

  • 9. - . . . , -. . , . , , . . , - . LR n . L nl , R nr .

    nl = nr, L nl

    (n+1)- . nr(= nl)

    R. , n + nl + 1. nl > nr, L nl .

    R nr < nl ,

    n + nl . nl < nr, L

    (, (n + 1)-) nr R. n + nr + 1 .

    ( ). , , , - , "" , . , , , , , ,

  • . , , , . .

    1) , 1, , 0

    2) l1 l2,

    l1 l2 l1 + 1, l1 = l2

    . 1) 2) ,

    , , ( R), . , ,

    , , ( R) .

    1) 1, MOVE X, R

    R , , X ,

    2) 0,

    Op X, R

    R , , X ,

    , Op , 3)

    ,

    Op R+1, R

    R , , Op, ,

    4) ,

    Op R, R+1 MOVE R+1, R

  • 10. - . "". , , , , . . . , . , . . . . , . - () :

    . 1) , , , , . . . ( ), . 2) , ( ) (, ). , , . - , , . , . 3) , . : .

  • () . , , . ( ), ( ) ( ) . . , , , . , . .

  • 11. ( , , , ..) , , . , , . : , , , . (, , ), . (, ). () ( , , ).

    . , , . LL(1)- ( ), LR(1)- (LR(0), SLR(1), LALR(1) ). , LR(1) . . , , .

    , - . , , "- ", , , , , . () . , , . . , . , . . / . . ( )

  • -. , , , . . - -, . - . , . , . , , , . , . , ( ) . , , , . , , , , . , , . , , .

  • 12. .

    . T

    :

    1) ( ) T;

    2) {e} T (e );

    3) {a} T ;

    4) P Q T,

    a. b. {| , } c. = =0 5) T.

    (). T T :

    1) () , ();

    2) {e} , {e};

    3) {a} , {a};

    4) p q , P Q ,

    a. (p|q) ,

    b. (pq) , PQ,

    c. (p*) , P*; 5) T.

    (). () M = (Q, T, D, q0, F),

    1) Q ,

    2) T ( ),

    3) D ( ( {}) Q), ,

    4) 0 ,

    5) . ().

    M = (Q, T, D, q0, F) . M

    (), : 1. D(q,e) = (), 2. D(q, a) . : > , . ->

  • . , , . -> . r T. . M = (Q, T, D, q0, F), L(M) = L(r).

    . . Q D . 1-6: (1) (r)#.

    (2) , nullable, firstpos, lastpos followpos. (3) q0 = firstpos(root), root .

    (4) q0 Q .

    (5) : while ( Q R){ R

    for ( , R , . a){ ( . 1, , , = ()1 ) if ( ){ if ( )

    ( S Q )

    (, ) = }

    }

    }

    (6) F Q, , #.

  • 13. LR(1) LR(1) .

    . G = (N, T, P, S) -. . , , . S => u , u .

    . D ( ) w - G = (N, T, P, S), : (1) D S;

    (2) , e; (3) ; (4) X , X1, ... , Xn , X -> X1 ... Xk

    P; (5) , , w. , , , , , . ( , ) , . .

    , , . (-) M = (Q, T, , D, q0,

    Z0, F),

    1) Q , ;

    2) T ; 3) ; 4) D Q x (T {e}) x

    Q x *, ;

    5) ; 6) 0 , (

    );

    7) - (q, w, u),

    (1) ; (2) ; w ; w = e, , ;

    (3) ; u ; u = e, .

  • - M = (Q, T, , D, q0, Z0, F)

    , :

    (1) D(q, a, u) , {}, , (2) D(q, a, u), D(q, a, v) u v, x , u=vx v=ux,

    (3) D(q, a, u), D(q, e, v), x , u = vx v = ux.

    LR(1) L , -, R , , , 1 , . LR(1)- :

    LR(1) ;

    LR(1) ;

    LR(1) ;

    , LR(1), , ( LL(1)). , , , (LR(1)-), (Action) (Goto). LR(1)-, . . , S0X1S1X2S2 ...

    XmSm (Sm ). Xi

    ( ), Si . ,

    ( ) . , LR-. Action[Sm; ai] Sm

    { } :

    shift S (), S , reduce A -> ( A -> ), accept (), error ().

    Goto[Sm; A] Sm

    :

    S, S , error ().

    LR(1)- , , :

  • (S0X1S1X2S2 ... XmSm, aiai+1 ... an$)

    . , , . . , , . :

    1) Action[Sm, ai] = shift S, ,

    (01122 , +1 $)

    , ai S,

    Action[Sm, ai]. ai+1.

    2) Action[Sm, ai] = reduce A -> , ,

    (01122 , +1 $)

    S = Goto[Smr; A] r , .

    2r (r r

    ), Smr.

    A , S ,

    Goto[Smr, A].

    . LR(1) Xm

    r+1 ... Xm, ,

    , .

    LR(1), , , , , , . , Goto , G, , G.

    3) Action[Sm, ai] = accept, .

    4) Action[Sm, ai] = error, ,

    . LR(1) .

    LR(1)- [A->(?)., a], A-> , a $. . , LR(1)- [A ., a]

    +, , + = a

    w, w = e a = $. LR(1)-. . - G = (N, T, P, S).

  • . C LR(1)- G. . G' items, closure goto. function closure(I){ /* I */

    do{

    for ( [A .B, a] I,

    B G', b

    FIRST(a),

    , [B ., b] I)

    [B ., b] I; }

    while ( I );

    return I; }

    function goto(I,X){ /* I ;

    X */

    J={[A X.;a]|[A .X,a]\inI};

    return closure(J);

    }

    procedure items(G'){ /* G'

    */

    I' = closure({[S' .S, $]}); C = {I0};do{ for ( I

    C, X

    , goto(I, X)

    C)

    goto(I, X) C;

    }

    while ( C

    );

    . C = {I0, I1, ... , In} LR(1)-

    G. . Action Goto, LR(1)- G. . i Action[i, a] Goto[i, X] Ii:

    (Action) i :

    o [ . , ] (a ) goto(Ii, a)= Ij , Action[i, a] =

    shift j;

    o [ ; . , ] , A->S', Action[i, a] = reduce A ; o [ . , $] , Action[i, $] = accept. i :

    goto(Ii, A) = Ij , Goto[i, A] = j ( A ). Action Goto, 2 3,

    error.

    , [S' .S, $].

  • Action Goto, , LR(1)-. LR(1)-, LR(1)- .

    LR(1), - , , , , ( /), , ( /).

  • 14. . . . x A

    x ( ).

    CAT

    (x), CAS

    (x)

    A. A

    () = max=n

    () , () = max

    =n

    ()

    ( n TA(n) SA(n)

    ). .

    CAT

    (x)

    - , , , 1. TA(n)

    . CAS

    (x) ,

    , SA(n)

    . . .

    . f (n) g(n) ( f (n) = (g(n))) , c1, c2, N ,

    c1|g(n)| | f(n)| c2|g(n)| n > N.

    f (n) = (g(n)) , c,N , n>N |f(n)| c|g(n)|.

    . f (n) = O(g(n)), , {nk} , (k) = f (nk), (k) = g(nk)

    (k) = ((k)).

    () = max

    21

  • () () = () () = (log2 + 1 (log2 + 1)

    . . g(x) .

    (i) TA(n) g(n), TA

    (m) g(2m

    ),

    (ii) TA(n) g(n), TA

    (m) g(2m1

    ).

    . m n , 2m1

    n < 2m

    , ,

    2m1 < 2m

    () = ()

    g(x): (i)

    () = () () (2)

    (ii) () = () () (2

    1)

    . . f(x) .

    TA

    (m)=O(f(m)), TA(n)=O(f(log2 n+1)); , f(x + 1) =

    O(f (x)) TA(n) = O(f(log2 n)).

    . . g(x) .

    (i) TA(n) = O(g(n)), TA

    (m) = O(g(2m

    ))

    (ii) TA(n)=(g(n)), TA

    (m)=(g(2m1

    )); , (

    2)= (g(x))

    TA

    (m) = (g(2m

    )).

  • 15. . . . s Xs

    s ,

    A x (. . CAT

    (x) CAS

    (x))

    s Xs.

    .

    ()()

    ()()

    . A

    Xs, s ,

    .

    :

    () =

    ()()

    (max

    ()) ()

    = ()()

    = ()

    . f(m), , , P(m)

    , f (m) P(m) m N+. (,

    , , P(m) ;

    : f (m) = O(md

    ) d N f (m) = mO(1).)

    . , , . : n, n X,

    . , X, . , T(n) . , f(n) ( X n)

    , , X , f(n)T(n).

  • 16. . . , ARP, DHCP. IP, TCP, ICMP. . OSI . : , , , , , . TCP/IP 3 :

    . TCP/IP , . Internet , , TCP/IP, . Internet . , . , , ( ). , -, , , , , . .

    :

    ( ).

    ( ), .

    .

    ISP -.

    . . . . . IP , . , , . , . , , . . .

  • (_, , 0) (_, _, ). , , , . . . , , .

    Address Resolution Protocol . Ethernet . 48 . 32- IP. 32- IP , , Ethernet . IP Ethernet , IP . . , ARP . Internet . , , proxy ARP. . , . , . DHCP (. Dynamic Host Configuration Protocol ) , IP- , TCP/IP. -. - DHCP, . , . . DHCP TCP/IP. DHCP IP-:

    . ( Ethernet MAC-) IP-. , , ( DHCP), .

    . IP- .

    . , , , . . IP- , (, , ). ,

  • . DHCP DNS, , . DNS, RFC 2136. DHCP -, DHCP DHCP. UDP, 67 68.

    IP Internet Protocol ( ) TCP/IP. IP , . . IP , (). OSI. IP , , , ( ), ( ) . OSI, , TCP, IP . IP , IPv4. IP IP- 4 (4 ). . , , ( A, B, C; , ).

    ;

    ;

    , ;

    : IPv4 32 IPv6 128 ;

    ;

    IP ;

    ;

    IP ;

    .

    TCP TCP- . IP- 16- , . , . TSAP TCP. , .

  • . . 256 , . , FTP- 21- , FTP-, TELNET 23- . RFC 1700. - , .. . TCP- . - . TCP- , . , , . , - , , TCP- - . TCP-, , . TCP-. , , . TCP- PUSH, , - , . , TPDU- URGENT, TCP- . , .

    ICMP ICMP (Internet Control Message Protocol), RFC 792. , IP-, . , . . ICMP IP-. . destination unreachable , , , , , , , , . time exceeded , . , IP- . ( , IP-, , - .) IP- parameter problem. source quench . - -, . , . ,

  • , - . , , - . redirect IP- . echo request echo reply : echo request echo reply, , echo request. time-stamp request time-stamp reply . , , .

    ICMP . ICMP IP . ping traceroute ICMP.

  • 17. . Ethernet WiFi. , , . . , :

    .

    .

    .

    .

    .

    .

    .

    .

    .

    . IEEE 802.3. Ethernet(10Base5). 2.5 , , . , . , . , , , . 10 /, 500(10Base5). 10Base2. BNC-, - . 200 30 . , . . 10Base-. 10Base5 , 50. . , , . AUI. , , .

  • , , . 10Base2 , . 10Base-T . , 100. . IEEE 802.3 10Base-F, , . , , . 2.5 , .

    . 802.11 (Direct Sequence Spread Spectrum DSSS). DSSS 1 2 /c. . . . , , . , , () . , . . wifi . , . - . , , , , . 90 150. , , . . , (SSID), . , , . -, . -, SSID, . , .

  • . wifi 3 : , . IEEE802.3, : 1500 , 2346 . . , , :

    1) . N (, , - . .). , . , , , , . , , , .

    2) . . . . , .

    3) . , . , , , . .

    4) . : a. . .

    , . , , ;

    b. . , , , , , , , .

    5) . : a. .

    , . , , , , ;

    b. . , . , .. , , , . , , - . , , . ALOHA. ,

  • . , . ALOHA: , , . , , .. , - , . . , . , , . , , . , , . , , . , , . , . t. , N t. , , n t, :

    [] =

    !

    [] =

    !, =

    N > 1 , , 0 < N < 1. , , , - , G. ,

    , . ( 0) , , , , G N. G > N. (S) , , . 0 , = 0.

    , , . 0

    t, . , , , ( ALOHA. , ), , 0 + 2.

    , 0

  • ,

    . 2G,

    0 = 2

    , = 0 = 2

    .

    G = 0,5 =1

    2,

    18% .

    ALOHA. ALOHA, . . , . -, , . , , . =

    .

    ALOHA G = 1,

    S = =1

    , .. 37% , ,

    ALOHA. G . k .

    , , k , =(1 )1 : =

    =1 =

    (1 =1)1 , G , . . , , , CSMA (Carrier Sensitive Multiple Access).

    CSMA-. , , , . , . CSM- 1- CSMA-, , , 1, , . . , , , . , , . . , . . , . ,

  • , . , ALOHA, , . CSMA- CSM-. , . , . , , , . , . , , CSMA- . . , . , q = 1 . , . , . , , .

    CSM- . . . 0

    , , , . , , , . , , . , CSMA/CD : , ( ). . , , , , . t . 1 t = 5 . 2t. , , , , 2t . ALOHA 2t . , . , , , .

  • 18. , . (switch). (, ). . , , . FIFO, , , , , - . , , . : , . , . . (. Weighted fair queuing, WFQ) . . . (. Fair Queuing) (FQ). FIFO- . , R N , R/N . . N , 1, ..., , i- :

    =1

    FIFO , .

    : . , .

    Waited Fair Queuing (WFQ) , bit-by-bit finishing time.

    : :

    .

    FIFO . , . , + ., , = , = 1 , ( ).

  • . , . , , . , , . , , , . , . , . , . . .

    + = , =

    ,

    , /, /, . , , 2 . :

    1) . 2)

    .

    2 , = (

    +

    + ())

    , .

    , , WFQ, .

    . .

    , 2 . , , - , , . , , . ; , , . .

    1. . . (, ) , XOFF . ,

  • . . XOFF, , , XON .

    : 1) , .

    , , , , .

    2) , .

    3) , .

    4) , . . . : , , . , , , , , .

    2. . . K NACK. ACK , NACK . , , , , . () , , . , . . , . .

  • . , D. Z, K NACK. . Z . :

    1) ( ) - .

    423, 23, . 2 .

    2 23, / .

    2) 2 , . = 01 = 10, = 00, = 11.

    3. . XON XOFF .

  • 19. : . , , BGP. . : AIMD . . . , .. , : . , , . , , .. . , .. , , , . ( ) : , , , , .

    1) , , , . . , .

    2) , : , , .

    3) - , , ( , ..). , .

    4) . , - , . , , , .

    5) , , , , , .. , - . , .

  • , , . ( , ). . . , , . . , (hop). , , . : . . . . , , . ( ), ( T , ) , (, , ..).

    . , . , J I K, J K . , J K , I K, I K. , , . : , , , .. , , , , , , , . , , . , , . , , .

  • IP-. , , IP-. , . DNS, . , , . , . , , , , . - , . , , , . , URL (Universal Resource Locator). URL :

    , .. (http, gopher, WAIS, ftp, file, telnet .);

    ( - );

    . , : , , , . . , . (gateway) , . Web- . (AS) IP- , , . BGP . BGP :

    Inter-autonomous system routing , .

    Intra-autonomous system routing , , BGP.

  • Pass-through autonomous system , , BGP. BGP . BGP TCP. BGP :

    (Open).

    (Keep Alive).

    (Update).

    (Notification). BGP. BGP :

    MARKER

    MARKER

    MARKER

    MARKER

    LENGTH TYPE

    LENGTH ( ), . TYPE :

    TYPE

    1 OPEN

    2 UPDATE

    3 NOTIFICATION

    4 KEEPALIVE

    , . , 1. OPEN , BGP TCP. UPDATE BGP. , .

    , . . , , , . , . - . ( , ..), . , . ,

  • . . , . . : . , , , . , , , , .. , . , , . :

    , .

    , .

    . . :

    , - .

    .

    , time_out .

    . , - , . , , , . , , , . . , , - , , ( Frame Relay). , : , , , , . , , - , , . , . , , .

  • , , . , , , :

    timeout

    vs.

    : 1) ( )

    . 2) , :

    ; ; .

    3) . , , .

    4) , , . Additive-increase/multiplicative-decrease (AIMD) . AIMD , . W , :

    , : = +1

    , : =

    2

    AIMD : 1) , AIMD,

    . 2)

    .

    3) : =

    . (RTT Round-trip time),

    (R * RTT > W).

    AIMD :

  • 1) , AIMD. 2) . 3) .

    :

    =1

    , =

    3

    8

    2 , =

    2

    .

    = 3

    2

    1

    4) AIMD . 5) AIMD RTT.

  • 20. . . ISO 9126 , . , , ; , ; , . , . , . , , , . , , .. , , . , , . . , . . , . , , , , , , . .

    1) , . , , , , , , .

    2) . (model checking), (), .

    3) , , . , ,

  • , , .

    4) . , , . , , . . . , , . , , , . , . , , , , . , . , , . , , A B, , , A, , , B . , . , , . , , , . , , . , . , , , . (conformance testing). , . , ( ) , . , , . ,

  • . (, , ). , . , . , . , , (smoke testing), , , , . , , , . , . , . , .

    1) (unit testing) , . , , , . , , , , , , , . , .

    2) (integration testing) . , , , , . , .

    3) (system testing) , . ( ), . (Graphical User Interface, GUI) Web- (WebUI).

  • , (Application Programming Interface, API), , API . , , . , ( ) , . , , XP. (model checking) , ( ) . , . , . , . (safety properties) , . (liveness properties) , , . (deadlocks). , , , , .. , , , ( ) ( ). . - . , , - , , . , - . . , , , . ,

  • , , , , , . , , . , , , . , , .

  • 21. , . . : , , . , . , , : . . , . , , , , . N 1000/N . . . , ? , , , , .. "" , , . , . , , , , . . , , . , 100 500 . ( ) , , 5+99=104 ( ). , . 1. - . . , , , .. A=B+C , . - CRAY , , CRAY EL,

  • CRAY J90, CRAY T90 ( 2000 TERA CRAY Silicon Graphics, Inc.). 2. - . : , , . : , , , .. "", "" . , , . , . Intel Paragon, IBM SP1, Parsytec, - IBM SP2 CRAY T3D/T3E, . , . 3. . . , , , . SMP- , , HP Exemplar Sun StarFire. 4. , , , . ( -) . , . , CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, IBM SP2 . . . , , , . ? : . . . , . , . - .

  • , , . Send() , . , , . MPI , , , . , . . . , , 2% , 50- . . , , /, - . , 1000 . , , , . , . . . , , . . , , , . , . , , . . -, . . Cray T3E: , - 1- , - 2- , , . . - .

  • , 3.2. , , . , , . , . . . , .

  • 22. , . . , - . . , , , f, 0
  • , . , - , - . , . , . ? ! , - ... ... ... , - , , ,

    . . , , 2 , 2 . , , , . 4 : (), (), (), (). . . , , . , , . . . . . , . , -. , - . . "" , , . . , - . ( ) . , . . , .

  • . , . : , , , . . . - . - . , . . . . , , , . , v. , , , , v. . , . , , . , , . . . , , , . , . . , . , , . .

    4.1 , n . s < n, 1, 2, ..., s, i j, i

  • , 1 . , , s, , , , s . , 4.1, . k, , , , . , , k, k-1. 1 . , , 1. . . , , , . , . .

    , . , , , , , . , . , , ? , , , , , . , , . .

  • , ? . , . . , " ". , . ? , , . , , , , . . . , , . , ? . "" . . , , (, , ), . . , , . ? , . . , . , . . , , 100 . . , , , . : "... MPI, ...". , . . , . , . , , . , , , , . ,

  • : " ?" . , , . , . . , , . , . , . . , . , , , . , , - , . .

  • 23. MPI OpenMP. MPI. , . Message Passing Interface. MPI , MPI , . MPI 1.1. 19971998 MPI-2.0, . MPI . , , 1.1. MPI Fortran. . , MPI . 120 . MIMD, . SPMD-, . MPI . : , , . ., MPI, MPI_. , MPi_Send. , MPI . MPI mpi.h, MPI- #include . MPI- . , . MPI- . , MPI . . , . . , . , , MPI_COMM_WORLD. MPI-.

  • MPI- , . . , . , . : . , 0 1. . , . , . . MPI , MPI , . . . , , -, -, . . , , , , . , 0 32 767. MPistatus, . , . , , , . , MPI, , , . -, . , , , , . -, . Fortran , . , , , . , MPI (derived datatypes). , , MPI.

  • , .

    MPI: . int MPI_Send(void* buf, int count, MPI_Datatype datatype, int dest, int msgtag,

    MPI_Comm comm)

    buf count datatype dest - msgtag comm msgtag, count datatype, dest. buf. count . datatype . . . : dest,

    MPI. , MPI_Send , dest, , , , MPI_Send. int MPI_Recv(void* buf, int count, MPI_Datatype datatype, int source, int msgtag,

    MPI_Comm comm, MPI_Status *status)

    OUT buf count datatype source - msgtag comm OUT status msgtag source . count. count, , buf , . , MPI_Probe. , buf. - MPI_ANY_SOURCE , . MPI_ANY_TAG , . MPI_Recv, , .

  • int MPI_Get_count( MPI_Status *status, MPI_Datatype datatype, int *count) status datatype OUT count status ( MPI_Recv) ( MPI_Probe MPI_Iprobe) datatype. int MPI_Probe( int source, int msgtag, MPI_Comm comm, MPI_Status *status) source

    - MPI_ANY_SOURCE msgtag MPI_ANY_TAG comm OUT status . , - . status. , , .

    / int MPI_Isend(void *buf, int count, MPI_Datatype datatype, int dest, int msgtag,

    MPI_Comm comm, MPI_Request *request)

    buf count datatype dest - msgtag comm OUT request , MPI_Send, , buf. , . (.. , buf ) request MPI_Wait MPI_Test. , MPI_Send MPI_Isend, MPI_Recv MPI_Irecv. int MPI_Irecv(void *buf, int count, MPI_Datatype datatype, int source, int msgtag,

    MPI_Comm comm, MPI_Request *request)

    OUT buf count datatype source - msgtag comm OUT request , MPI_Recv, buf. request MPI_Wait MPI_Test. int MPI_Wait( MPI_Request *request, MPI_Status *status) request OUT status

  • MPI_Isend MPI_Irecv,

    request. , status. int MPI_Waitall( int count, MPI_Request *requests, MPI_Status *statuses) count requests OUT statuses , , , . , statuses . int MPI_Waitany( int count, MPI_Request *requests, int *index, MPI_Status *status)

    count , requests OUT index OUT status , - , , . , . index requests, . int MPI_Waitsome( int incount, MPI_Request *requests, int *outcount, int *indexes,

    MPI_Status *statuses)

    incount requests . OUT outcount OUT indexes OUT statuses . , , , . outcount , outcount indexes requests . outcount statuses . int MPI_Test( MPI_Request *request, int *flag, MPI_Status *status) request OUT flag OUT status MPI_Isend MPI_Irecv, request. flag 1, , 0 . , status. int MPI_Testall( int count, MPI_Request *requests, int *flag, MPI_Status *statuses)

    count , requests OUT flag OUT statuses . flag 1, , , ( statuses). 0, statuses .

  • int MPI_Testany(int count, MPI_Request *requests, int *index, int *flag, MPI_Status

    *status) count requests OUT index OUT flag OUT status , flag 1, index requests, status . int MPI_Testsome( int incount, MPI_Request *requests, int *outcount, int *indexes,

    MPI_Status *statuses)

    incount requests OUT outcount OUT indexes OUT statuses , MPI_Waitsome, , . , outcount . int MPI_Iprobe( int source, int msgtag, MPI_Comm comm, int *flag, MPI_Status

    *status) source - MPI_ANY_SOURCE msgtag MPI_ANY_TAG comm OUT flag OUT status . flag 1, ( MPI_Probe), 0, .

    MPI: Send. int MPI_Send(void* buf, int count, MPI_Datatype datatype, int dest, int msgtag,

    MPI_Comm comm)

    buf count datatype dest - msgtag comm msgtag, count datatype, dest. buf. count . datatype . . . : dest, MPI. , MPI_Send , dest,

  • , , , MPI_Send. int MPI_Isend(void *buf, int count, MPI_Datatype datatype, int dest, int msgtag,

    MPI_Comm comm, MPI_Request *request)

    buf count datatype dest - msgtag , comm OUT request , MPI_Send, , buf. , . (.. , buf ) request MPI_Wait MPI_Test. , MPI_Send MPI_Isend, MPI_Recv MPI_Irecv. int MPI_Send_init( void *buf, int count, MPI_Datatype datatype, int dest, int msgtag,

    MPI_Comm comm, MPI_Request *request)

    buf count datatype dest - msgtag comm OUT request . , MPI_Isend, MPI_Startall. int MPI_Sendrecv( void *sbuf, int scount, MPI_Datatype stype, int dest, int stag, void

    *rbuf, int rcount, MPI_Datatype rtype, int source, MPI_Datatype rtag, MPI_Comm

    comm, MPI_Status *status)

    sbuf scount stype dest - stag OUT rbuf rcount rtype source - rtag comm OUT status . . , MPI_Sendrecv, , MPI_Sendrecv ,

  • MPI_Send. . MPI: . . , , . , . , , , , , , ( ). int MPI_Bcast(void *buf, int count, MPI_Datatype datatype, int source, MPI_Comm

    comm)

    OUT buf count datatype source comm source , . buf source . count, datatype source . int MPI_Gather( void *sbuf, int scount, MPI_Datatype stype, void *rbuf, int rcount,

    MPI_Datatype rtype, int dest, MPI_Comm comm)

    sbuf scount stype OUT rbuf rcount rtype dest , comm OUT ierror rbuf dest. , dest, sbuf dest. rbuf, . rbuf , count, datatype dest . int MPI_Allreduce( void *sbuf, void *rbuf, int count, MPI_Datatype datatype, MPI_Op

    op, MPI_Comm comm)

    sbuf OUT rbuf count datatype op comm count op count rbuf. . count datatype . , op . int MPI_Reduce( void *sbuf, void *rbuf, int count, MPI_Datatype datatype, MPI_Op

    op, int root, MPI_Comm comm)

  • sbuf OUT rbuf count datatype op root - comm , rbuf root. int MPI_Barrier( MPI_Comm comm) comm , , , comm .

    MPI: , . int MPI_Comm_split( MPI_Comm comm, int color, int key, MPI_Comm *newcomm)

    comm color key , OUT newcomm , comm, color ( ). . color MPI_UNDEFINED, newcomm MPI_COMM_NULL. int MPI_Comm_free( MPI_Comm comm) OUT comm , comm, MPI_COMM_NULL.