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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π˜ΡΠΊΡƒΡΡΡ‚Π²ΠΎ программирования для UnixΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 58

Автор Π­Ρ€ΠΈΠΊ Π Π΅ΠΉΠΌΠΎΠ½Π΄

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ срСдства STREAMS[74] являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ трансляции ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ внСсти Π² ΠΏΡƒΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ядра, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ устройства, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ процСссом, проходя Ρ‡Π΅Ρ€Π΅Π· дуплСксный ΠΊΠ°Π½Π°Π», фактичСски Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΡŽΡ‚ΡΡ. Π”Π°Π½Π½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° построчного рСдактирования для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ устройства. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹, ΠΊΠ°ΠΊ IP ΠΈΠ»ΠΈ TCP, Π½Π΅ встраивая ΠΈΡ… нСпосрСдствСнно Π² ядро.

ΠŸΠΎΡ‚ΠΎΠΊΠΈ стали ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΡ‚ΡŒ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ядра, которая Π½Π°Π·Ρ‹Π²Π°Π»Π°ΡΡŒ "ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ Π»ΠΈΠ½ΠΈΠΉ" (line disciplines) β€” Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΠΆΠΈΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΡ… ΠΎΡ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² ΠΈ Ρ€Π°Π½Π½ΠΈΡ… Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй. Однако ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ исчСзали ΠΈΠ· Π²ΠΈΠ΄Π°, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ сСти Ethernet ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°Π»ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС, Π° TCP/IP вытСснял Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ ΠΌΠΈΠ³Ρ€ΠΈΡ€ΠΎΠ²Π°Π» Π² ядра Unix, чрСзвычайная Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, прСдоставляСмая срСдством STREAMS, практичСски Π±Ρ‹Π»Π° утСряна. Π’ 2003 Π³ΠΎΠ΄Ρƒ срСдство STREAMS ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΎΡΡŒ Π² System V Unix, ΠΊΠ°ΠΊ ΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π³ΠΈΠ±Ρ€ΠΈΠ΄Π°Ρ… System V/BSD, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Digital Unix ΠΈ Solaris производства Sun Microsystems.

Linux ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Unix-систСмы с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ исходными ΠΊΠΎΠ΄Π°ΠΌΠΈ фактичСски ΠΎΡ‚ΠΊΠ°Π·Π°Π»ΠΈΡΡŒ ΠΎΡ‚ STREAMS. ΠœΠΎΠ΄ΡƒΠ»ΠΈ ядра ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Linux доступны Π½Π° сайтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° LiS <http://www.gcom.com/home/linux/lis/>, Π½ΠΎ (ΠΊ сСрСдинС 2003 Π³ΠΎΠ΄Π°) Π½Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² основноС ядро Linux. Они Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Unix ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах.

7.3.2. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€

НСсмотря нСмногочислСнныС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ NFS (Network File System) ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ GNOME, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π·Π°ΠΈΠΌΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ CORBA, ASN.1 ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ интСрфСйса ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π² основном ΠΏΡ€ΠΎΠ²Π°Π»ΠΈΠ»ΠΈΡΡŒ. Π”Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π΅ ΠΏΡ€ΠΈΠΆΠΈΠ»ΠΈΡΡŒ Π² Unix-ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Π΅.

Π’ основС этого, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π»Π΅ΠΆΠΈΡ‚ нСсколько ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. ΠŸΠ΅Ρ€Π²Π°Ρ β€” RPC-интСрфСйсы Π½Π΅ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ, Ρ‚.Π΅. ΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ интСрфСйсы ΠΎΠ± ΠΈΡ… возмоТностях ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΈΡ… ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π²ΠΎ врСмя ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π΅Π· создания срСдств ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ³ΠΎ примСнСния Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅ слоТных, насколько слоТна ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ (Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π±Ρ‹Π»ΠΈ рассмотрСны Π² Π³Π»Π°Π²Π΅ 6). Они ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅ ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ пСрСкоса вСрсий, Ρ‡Ρ‚ΠΎ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ интСрфСйсов Π³ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ распрСдСлСны ΠΈ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ Π½Π° этапС ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ.

БущСствуСт Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°: интСрфСйсы, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹Π΅ сигнатуры Ρ‚ΠΈΠΏΠΎΠ², Ρ‚Π°ΠΊΠΆΠ΅ стрСмятся ΠΊ большСй слоТности, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ нСустойчивыми. Π‘ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ происходит Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ ΠΈΡ… ΠΎΠ½Ρ‚ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ассортимСнт Ρ‚ΠΈΠΏΠΎΠ², проходящих Ρ‡Π΅Ρ€Π΅Π· интСрфСйсы, Π½Π΅ΡƒΠΊΠ»ΠΎΠ½Π½ΠΎ растСт, Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ становятся Π±ΠΎΠ»Π΅Π΅ слоТными. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ½Ρ‚ΠΎΠ»ΠΎΠ³ΠΈΠΈ становится ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ структур Π±ΠΎΠ»Π΅Π΅ вСроятна, Ρ‡Π΅ΠΌ Π½Π΅ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ строк. Если онтология ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ стороны Π½Π΅ совпадаСт, Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ затрудняСтся взаимодСйствиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ устранСниС ошибок. НаиболСС ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΌΠΈ RPC-прилоТСниями (Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Network File System) ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… прикладная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСсколько простых Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

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

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

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ COM ΠΈ DCOM Π² Windows ΡΠ²Π»ΡΡŽΡ‚ΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, основными ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ‚ΠΎΠ³ΠΎ, насколько это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ»ΠΎΡ…ΠΎ, Π½ΠΎ сущСствуСт мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ². Компания Apple ΠΎΡ‚ΠΊΠ°Π·Π°Π»Π°ΡΡŒ ΠΎΡ‚ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ OpenDoc, a CORBA ΠΈ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ ΡˆΠΈΡ€ΠΎΠΊΠΎ разрСкламированная ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Java RMI исчСзли с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π° Unix, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ люди ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π»ΠΈ практичСский ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ. Π­Ρ‚ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ фактичСски Ρ€Π΅ΡˆΠ°ΡŽΡ‚ Π½Π΅ большС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Ρ‡Π΅ΠΌ ΡΠΎΠ·Π΄Π°ΡŽΡ‚.

Π­Π½Π΄Ρ€ΡŽ Π‘. Π’Π°Π½Π΅Π½Π±Π°ΡƒΠΌ (Andrew S. Tanenbaum) ΠΈ Π ΠΎΠ±Π΅Ρ€Ρ‚ Π²Π°Π½ РСнСсс (Robbert van Renesse) ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ ΠΎΠ±Ρ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ "A Critique of the Remote Procedure Call Paradigm" [83], которая Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ строгим прСдостСрСТСниСм для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ рассматриваСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, основанной Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ°Ρ… RPC.

ВсС описанныС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΡƒΡΠ»ΠΎΠ²ΠΈΡ‚ΡŒ долгосрочныС трудности для ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшого числа Unix-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ RPC-ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Π‘Ρ€Π΅Π΄ΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстным, вСроятно, являСтся GNOME[75]. Π”Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ вносят свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΠ΅Ρ‡Π°Π»ΡŒΠ½ΠΎ извСстныС уязвимости Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… NFS-сСрвСров.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π² ΠΌΠΈΡ€Π΅ Unix строго ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Ρ… ΠΈ воспринимаСмых интСрфСйсов. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· сил Π² основС нСпрСходящСй прСданности Unix-ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Ρ‹ IPC-ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌ Π½Π° основС тСкстовых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². Часто ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° тСкстовых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌΠΈ RPC-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ, Π½ΠΎ RPC-интСрфСйсы склонны ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ…ΡƒΠ΄ΡˆΠΈΠΌΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ (Π°) Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· усилий Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ количСство ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³Π° ΠΈ Π΄Π΅ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ задСйствовано ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ, ΠΈ (b) RPC-модСль поощряСт программистов Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ сСтСвыС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ бСсплатныС. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°ΠΆΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄Π° Π² интСрфСйс Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, добавляСт ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΡƒΡŽ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π²Ρ‹ΡΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ, связанныС с синтаксичСским Π°Π½Π°Π»ΠΈΠ·ΠΎΠΌ ΠΈΠ»ΠΈ ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³ΠΎΠΌ.

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

Π’ настоящСС врСмя Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ (XML-RPC ΠΈ SOAP) ΡΠ²Π»ΡΡŽΡ‚ΡΡ интСрСсным способом слияния RPC-ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ тСкстовых ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² Unix. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ XML-RPC ΠΈ SOAP, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ тСкстовыми ΠΈ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌΠΈ, Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ для Unix-программистов, Ρ‡Π΅ΠΌ нСбСзопасныС ΠΈ тяТСловСсныС Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ сСриализации, Π½Π° смСну ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ½ΠΈ приходят. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ всСх Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π’Π°Π½Π½Π΅Π½Π±Π°ΡƒΠΌΠΎΠΌ ΠΈ Π²Π°Π½ РСнСссом, ΠΎΠ½ΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отчасти ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‚ прСимущСства тСкстовых ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ RPC-ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

7.3.3. ΠžΠΏΠ°ΡΠ½Ρ‹ Π»ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы?

Π₯отя Unix-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄Π°Π²Π½ΠΎ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΊ вычислСниям с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… процСссов, срСди Π½ΠΈΡ… Π½Π΅Ρ‚ собствСнной Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΈ использования ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… процСссов (процСссов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ всС Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΠΌ адрСсноС пространство). ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π½Π΅Π΄Π°Π²Π½Π΅Π΅ заимствованиС ΠΈΠ·Π²Π½Π΅, ΠΈ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Unix-программисты ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΡ‹Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΊ Π½ΠΈΠΌ Π½Π΅ΠΏΡ€ΠΈΡΠ·Π½ΡŒ, Π½Π΅ являСтся просто ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ»ΠΈ историчСски Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚ΠΎΠΌ событий.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния управлСния ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ»ΠΎΡ…ΠΎΠΉ Π·Π°ΠΌΠ΅Π½ΠΎΠΉ лСгковСсным процСссам с собствСнными адрСсными пространствами. ИдСя ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… процСссов СстСствСнна для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм с Π΄ΠΎΡ€ΠΎΠ³ΠΈΠΌ созданиСм подпроцСссов ΠΈ слабыми IPC-срСдствами.

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

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы ΡΠ²Π»ΡΡŽΡ‚ΡΡ источником ошибок, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎ просто ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ слишком ΠΌΠ½ΠΎΠ³ΠΎ свСдСний ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… состояниях Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. НС сущСствуСт автоматичСской инкапсуляции, ΠΊΠ°ΠΊ это Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ процСссами с обособлСнными адрСсными пространствами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ явно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ IPC-ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы, ΡΡ‚Ρ€Π°Π΄Π°ΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, связанных с ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌΠΈ, Π½ΠΎ ΠΈ ΠΎΡ‚ Ρ†Π΅Π»Ρ‹Ρ… Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ ошибок, зависимых ΠΎΡ‚ синхронизации, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΡ€Π°ΠΉΠ½Π΅ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ Π΄Π°ΠΆΠ΅ для воспроизвСдСния, Π½Π΅ говоря ΠΎΠ± ΠΈΡ… устранСнии.