Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«4.Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство Windows (Π³Π». 12-14)Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 27

Автор ΠœΠ°Ρ€ΠΊ Руссинович

РСализация Winsock прСдставлСна Π½Π° рис. 13-4. Π•Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс поддСрТиваСтся Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Ws2_32.dll (\Windows\System32\Ws2_32.dll), которая обСспСчиваСт прилоТСниям доступ ΠΊ функциям Winsock. Для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ сообщСниями Ws2_32.dll Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ сСрвисы TSP ΠΈ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ² пространств ΠΈΠΌΠ΅Π½. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Mswsock.dll выступаСт Π² Ρ€ΠΎΠ»ΠΈ TSP для ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Microsoft Π² Winsock. Она взаимодСйствуСт с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Ρ€Π΅ΠΆΠΈΠΌΠ° ядра с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Winsock (Winsock Helpers), спСцифичных для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. НапримСр, Wshtcpip.dll β€” Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° TCP/IP. B Mswsock.dll (\Windows\System32\Mswsock.dll) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Winsock, ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ TransmitEile,AcceptEx ΠΈ WSARecvEx. Windows поставляСтся со Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ для TCP/IP, TCP/IP с IPv6, AppleTalk, IPX/SPX, ATM ΠΈ IrDA (Infrared Data Association), Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌΠΈ пространств ΠΈΠΌΠ΅Π½ для DNS (TCP/IP), Active Directory ΠΈ IPX/SPX.

Рис. 13-4. РСализация Winsock

Подобно API ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹Ρ… ящиков Winsock интСгрируСтся с Windows-модСлью Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ для прСдставлСния co-ΠΊΠ΅Ρ‚ΠΎΠ² описатСли Ρ„Π°ΠΉΠ»ΠΎΠ². Для этого Π½ΡƒΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ со стороны Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Ρ€Π΅ΠΆΠΈΠΌΠ° ядра, поэтому, рСализуя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° основС сокСтов, Msafd.dll ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сСрвисы AFD (Ancillary Function Driver) (\Windows\System32\Drivers\Afd.sys). AFD являСтся ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ TDI ΠΈ выполняСт сСтСвыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с использованиСм сокСтов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ посылаСт ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ сообщСния, отправляя TDI IRP-ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. AFD Π½Π΅ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° использованиС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² β€” вмСсто этого Msafd.dll увСдомляСт AFD ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌ для сокСта, ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ AFD ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ «устройство», ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ этот ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».


Windows Sockets Direct

Windows Sockets Direct (WSD) β€” это интСрфСйс, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π² Winsock-прилоТСниях Π±Π΅Π· всякой ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСимущСства сСтСй устройств хранСния Π΄Π°Π½Π½Ρ‹Ρ… (System Area Networks, SAN). Π’Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ SAN ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ для самых Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ β€” ΠΎΡ‚ распрСдСлСнных вычислСний Π΄ΠΎ Ρ‚Ρ€Π΅Ρ…ΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ элСктронной ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ†ΠΈΠΈ Π²Ρ€ΠΎΠ΄Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π° рис. 13-5. B Π΄Π°Π½Π½ΠΎΠΉ систСмС сСти SAN ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ Web-сСрвСры (ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Web-ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ) с сСрвСрами бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈ с сСрвСрами Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ обСспСчиваСт Π²Ρ‹ΡΠΎΠΊΠΎΡΠΊΠΎΡ€ΠΎΡΡ‚Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ уровнями ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° WSD имССтся Π² Windows 2003 ΠΈ Windows 2000 Data Center Server, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Windows 2000 Advanced Server c Service Pack (SP) 2 ΠΈ Π²Ρ‹ΡˆΠ΅.


SAN-соСдинСния

Высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ SAN ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ достигаСтся Π·Π° счСт спСциализированных сСтСвых соСдинСний ΠΈ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ оборудования. K Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнным Ρ‚ΠΈΠΏΠ°ΠΌ SAN-соСдинСний относятся InfiniBand, Gigabit Ethernet, FiberChannel ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΠΈΡ€ΠΌΠ΅Π½Π½Ρ‹Π΅ (Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅) Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ЀизичСская ΠΏΠ°ΠΌΡΡ‚ΡŒ, раздСляСмая двумя ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ, Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ SAN-соСдинСниСм.

ΠšΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ SAN Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π½Π΅ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ TCP-эквивалСнтныС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ, Π² частности Π½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ доставку сообщСний Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ порядкС. Π­Ρ‚ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ срСдства Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ SAN, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ прямым доступом ΠΊ памяти (Remote Direct Memory Access, RDMA); этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ позволяСт Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ сообщСния ΠΈΠ· физичСской памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°-источника Π² Ρ„ΠΈΠ·ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°-получатСля Π±Π΅Π· ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ копирования, которая ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выполняСтся Π½Π° сторонС, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ сообщСния. Благодаря этому RDMA освобоТдаСт процСссор ΠΈ ΡˆΠΈΠ½Ρƒ памяти ΠΎΡ‚ лишнСй Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, связанной с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ копирования.

Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ SAN Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π±Π΅Π· ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ° ядра, посылая ΠΈ принимая Π΄Π°Π½Π½Ρ‹Π΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ прилоТСниями. Π­Ρ‚ΠΎ сокращаСт число систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ², ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… прилоТСниями, ΠΈ соотвСтствСнно ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ врСмя, Π·Π°Ρ‚Ρ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ систСмного ΠΊΠΎΠ΄Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ сСтСй.


АрхитСктура WSD

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ SAN Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для взаимодСйствия с сСтСвыми ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ SAN ΠΈ использования прСимущСств Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² SAN Π²Ρ€ΠΎΠ΄Π΅ RDMA, Π½ΠΎ WSD позволяСт Π»ΡŽΠ±ΠΎΠΌΡƒ Winsock-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΌΡƒ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ TCP, Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ возмоТности SAN Π±Π΅Π· Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π‘Π°ΠΌΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ WSD ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ обСспСчиваСт прилоТСниям прямой доступ ΠΊ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ SAN, Π² ΠΎΠ±Ρ…ΠΎΠ΄ стСка TCP/IP. A сокращСниС ΠΏΡƒΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² 2–2,5 Ρ€Π°Π·Π°.

Π’Π°ΠΊΠΎΠ΅ сокращСниС достигаСтся Π·Π° счСт использования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ‚ΠΎΡ€Π°, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ Π½Π° ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π½ΠΈΠΆΠ΅ Winsock DLL, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 13-6. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ‚ΠΎΡ€ пСрСадрСсуСт сСтСвыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ SAN ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρƒ сСрвисов Winsock (Winsock service provider, WSP), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ SAN. WSP слуТит эквивалСнтом NDIS-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ рСгистры SAN Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±Π΅Π· участия ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π΅ΠΆΠΈΠΌΠ° ядра. Однако Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ всС ΠΆΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ со стороны Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для проСцирования содСрТимого Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… рСгистров Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°; эта ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚ΠΎΠΆΠ΅ прСдоставляСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ оборудования SAN. НаконСц, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ SAN прСдоставляСт ΠΌΠΈΠ½ΠΈΠΏΠΎΡ€Ρ‚-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ NDIS, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΉ Π² Ρ€ΠΎΠ»ΠΈ интСрфСйса ΠΌΠ΅ΠΆΠ΄Ρƒ стСком TCP/IP ΠΈ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SAN для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСтСвыС срСдства Winsock, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… SAN Π½Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅.


Remote Procedure CaII (RPC)

RPC β€” стандарт сСтСвого программирования, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² Π½Π°Ρ‡Π°Π»Π΅ 80-x. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Open Software Foundation (Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ β€” The Open Group) сдСлала RPC Ρ‡Π°ΡΡ‚ΡŒΡŽ стандарта OSF DCE (Distributed Computing Environment). НСсмотря Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ стандарта RPC, SunRPC, рСализация RPC ΠΎΡ‚ Microsoft совмСстима со стандартом OSF DCE. RPC, ΠΎΠΏΠΈΡ€Π°ΡΡΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ сСтСвыС API (ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠ°Π½Π°Π»Ρ‹ ΠΈΠ»ΠΈ Winsock), прСдоставляСт Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ модСль программирования, Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠ΅Ρ€Π΅ ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π΄Π΅Ρ‚Π°Π»ΠΈ сСтСвого программирования ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.


Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ RPC

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ RPC позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния, состоящиС ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ числа ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… выполняСтся локально, Π° Ρ‡Π°ΡΡ‚ΡŒ β€” Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… (Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ‚ΡŒ). RPC прСдоставляСт модСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡΠ΅Ρ‚ΡŒΡŽ, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π½Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Π° Π½Π΅ Π½Π° транспорты, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ распрСдСлСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π‘Π΅Ρ‚Π΅Π²ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ базируСтся Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°. B Windows, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сСтСвая опСрация начинаСтся с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Π΄Π°Π΅Ρ‚ запрос Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ запрос, пСрСдавая Π΅Π³ΠΎ Ρ€Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ дСйствуСт Π² качСствС ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы, обСспСчивая ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠ΅ взаимодСйствиС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой. Π Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ запрос ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС, Π° послС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ удалСнная систСма Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ запрос ΠΈ Π²Π΅Ρ€Π½Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, локальная сСтСвая ΠΏΠ»Π°Ρ‚Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅. Π―Π΄Ρ€ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ это ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, ΠΈ исходная опСрация Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ, возвращая Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

RPC ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ RPC ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ структурированныС прилоТСния: Ρƒ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ основная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая для выполнСния спСцифичСских Π·Π°Π΄Π°Ρ‡ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ RPC ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π² прилоТСниях RPC Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ…, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ β€” Π½Π° локальном (рис. 13-7).

Для прилоТСния RPC всС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ каТутся Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ. Π˜Π½Π°Ρ‡Π΅ говоря, вмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ программиста ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ запросов Π½Π° вычислСния ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎ сСти, Ρ€Π°Π±ΠΎΡ‚Ρ‹ с сСтСвыми ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСтСвых ошибок, оТидания Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈ Ρ‚. Π΄., ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС RPC выполняСт всС эти Π·Π°Π΄Π°Ρ‡ΠΈ автоматичСски. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ RPC Π² Windows Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π»ΡŽΠ±Ρ‹ΠΌΠΈ транспортами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π² систСмС.

Боздавая ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ RPC, программист Ρ€Π΅ΡˆΠ°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ локально, Π° ΠΊΠ°ΠΊΠΈΠ΅ β€” ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎ. Допустим, обычная рабочая станция ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎ сСти ΠΊ ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Cray ΠΈΠ»ΠΈ ΠΊ спСциализированной машинС, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΉ для быстрого выполнСния Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Ρ… вычислСний. Если программист ΠΏΠΈΡˆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΡƒΡŽ с большими ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ, Ρ‚ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠΌΠ΅Π»ΠΎ Π±Ρ‹ смысл ΠΏΠ΅Ρ€Π΅Π»ΠΎΠΆΠΈΡ‚ΡŒ матСматичСскиС вычислСния Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, написав ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Π²ΠΈΠ΄Π΅ прилоТСния RPC.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ RPC ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. B процСссС своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π° локальной машинС. Для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ послСднСго случая ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ связываСтся с локальной DLL, которая содСрТит интСрфСйсныС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ (stub procedures) для всСх ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. B простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ интСрфСйсныС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ статичСски ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π½ΠΎ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ большСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠ½ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ DLL. B DCOM ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ примСняСтся послСдний ΠΌΠ΅Ρ‚ΠΎΠ΄. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ½Π°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ имя ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ интСрфСйс, Ρ‡Ρ‚ΠΎ ΠΈ удалСнная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, Π½ΠΎ вмСсто выполнСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ½Π° просто ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Π΅ Π΅ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠΎ сСти β€” Ρ‚Π°ΠΊΠΎΠΉ процСсс называСтся ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³ΠΎΠΌ (marshaling). ΠœΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² упорядочСнии ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ ΠΈΡ… ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.