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

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

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

Частично ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ языки ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π² Π³Ρ€ΡƒΠΏΠΏΡƒ "языков сцСнариСв" являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ всС ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΠ½Ρ‚ΠΎΠ³Π΅Π½Π΅Π·. НаличиС динамичСской срСды для ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ управлСния динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Автоматизация управлСния динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ использования ссылок (Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹Ρ… для понимания адрСсов памяти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ Π² состоянии Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ) вмСсто распространСния ΠΊΠΎΠΏΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ явных ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. ИспользованиС ссылок Π΄Π΅Π»Π°Π΅Ρ‚ динамичСский ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ ΠΈ ОО-ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ простым этапом.

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

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ рассматриваСтся язык Π‘ ΠΈ Π΅Π³ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹, ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΠΈΡ… ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ слабыС стороны, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΈΠ΄Ρ‹ Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ½ΠΈ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚. НиТС ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ языки Π‘, Π‘++, shell, Perl, Tcl, Python, Java ΠΈ Emacs Lisp. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€Π½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, написанных с использованиСм Π΄Π°Π½Π½Ρ‹Ρ… языков, Π° Ρ‚Π°ΠΊΠΆΠ΅ ссылки Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹. ВысококачСствСнныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ всСх Π΄Π°Π½Π½Ρ‹Ρ… языков доступны Π² Internet Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ исходного ΠΊΠΎΠ΄Π°.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π²Ρ‹Π±ΠΎΡ€ языка ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· основных идСологичСских вопросов Π² сообщСствС Internet/Unix. Π›ΡŽΠ΄ΠΈ сильно ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ срСдствам ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‚ ΠΈΡ… Π²ΠΎΠΏΡ€Π΅ΠΊΠΈ Π·Π΄Ρ€Π°Π²ΠΎΠΌΡƒ смыслу. Если Π³Π»Π°Π²Π° достигнСт своСй Ρ†Π΅Π»ΠΈ, Ρ‚ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΠΊΠΎΡ€Π±ΠΈΡ‚ΡŒ Ρ„Π°Π½Π°Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Π΅Ρ€ΠΆΠ΅Π½Ρ†Π΅Π² всСх языков, ΠΎΠ΄Π½Π°ΠΊΠΎ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΡ‡Π΅Ρ€ΠΏΠ½ΡƒΡ‚ ΠΈΠ· Π½Π΅Π΅ Π½Π΅ΠΌΠ°Π»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ.

14.2. Π”ΠΎΠ²ΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π‘

Π‘ β€” СстСствСнный язык ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Unix. Π‘ Π½Π°Ρ‡Π°Π»Π° 1980-Ρ… Π³ΠΎΠ΄ΠΎΠ² ΠΎΠ½ стал Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² систСмном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ повсСмСстно Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ индустрии. Π—Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΡΠΎΠΊΡ€Π°Ρ‰Π°ΡŽΡ‰Π΅ΠΉΡΡ ниши Fortran Π² Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹Ρ… вычислСниях, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ массу финансовых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° языкС COBOL Π² Π±Π°Π½ΠΊΠ°Ρ… ΠΈ страховых компаниях, Π‘ ΠΈ Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΠΎΠΊ Π‘++ ΡƒΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ дСсяти Π»Π΅Ρ‚ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‚ Π² ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

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

ПадСниС Ρ†Π΅Π½ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎ экономику программирования. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π² ΡƒΠΆΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысла Ρ‚Π°ΠΊ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ рСсурсы, ΠΊΠ°ΠΊ это позволяСт Π‘. Напротив, экономичСски ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ состоит Π² ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ максимизации возмоТности долгосрочного сопровоТдСния ΠΊΠΎΠ΄Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π²ΠΈΠ΄ΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ созданиС ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ) Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹ΠΌ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языков ΠΈ языков сцСнариСв. Π­Ρ‚Π° трансформация Ρ‚ΠΎΡ‡Π½ΠΎ соотвСтствуСт Ρ‚Π΅ΠΌ условиям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Π²ΠΈΡ‚ΠΊΠ΅ историчСской спирали ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Π²ΠΎΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ C/C++ ΠΈ снизили Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ программирования Π½Π° ассСмблСрС.

Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π‘ ΠΈ Π‘++ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‚ программистов ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ β€” ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, явно ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ связными списками, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΈ Π²Ρ‹ΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ. НСкоторыС ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΏΡƒΡ‚Π΅ΠΌ искусствСнных дСйствий, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π‘ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ сборки мусора, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, рСализация Boehm-Weiser, ΠΎΠ΄Π½Π°ΠΊΠΎ конструкция Π‘ Ρ‚Π°ΠΊΠΎΠ²Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΌ.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² Π‘ β€” ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹ΠΉ источник трудностСй ΠΈ ошибок. По ΠΎΡ†Π΅Π½ΠΊΠ°ΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ исслСдования (Ρ†ΠΈΡ‚Π°Ρ‚Π° ΠΈΠ· [9]), 30 ΠΈΠ»ΠΈ 40% Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ отводится Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ слоТными структурами Π΄Π°Π½Π½Ρ‹Ρ…. Π’ это число Π΄Π°ΠΆΠ΅ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ. НСсмотря Π½Π° отсутствиС Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ ошибки управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΡΠ²Π»ΡΡŽΡ‚ΡΡ СдинствСнным ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΠΌ источником постоянных ошибок Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅[119]. ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡƒΡ„Π΅Ρ€Π° являСтся ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Π°Π²Π°Ρ€ΠΈΠΉ ΠΈ Π±Ρ€Π΅ΡˆΠ΅ΠΉ Π² систСмС бСзопасности. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ особСнно Ρ‡Ρ€Π΅Π²Π°Ρ‚ΠΎ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ²Π°Ρ€Π½Ρ‹Ρ… ΠΈ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ отслСТиваСмых ошибок, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ памяти ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ указатСля.

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

Π’ Π½Π΅Π΄Π°Π²Π½Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ [63] собран Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»ΡΡŽΡ‰ΠΈΠΉ массив статистичСских Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ заявлСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты сочтут вСсьма ΠΏΡ€Π°Π²Π΄ΠΎΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ: ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ программистов ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с языками сцСнариСв ΠΏΠΎΡ‡Ρ‚ΠΈ Π² Π΄Π²Π° Ρ€Π°Π·Π° большС продуктивности ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π‘ ΠΈΠ»ΠΈ Π‘++. Π”Π°Π½Π½ΠΎΠ΅ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ согласуСтся с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ ΠΎΡ†Π΅Π½ΠΊΠΎΠΉ Π·Π°Ρ‚Ρ€Π°Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (30-40%), Π° вСдь Π΅Ρ‰Π΅ слСдуСт ΡƒΡ‡Π΅ΡΡ‚ΡŒ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ΠŸΠΎΡ‚Π΅Ρ€ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ использовании ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ языка сцСнариСв ΠΎΡ‡Π΅Π½ΡŒ часто Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ для Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ склонны ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ΠΌ I/O-событий, сСтСвой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ кэша, Π° Π½Π΅ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒΡŽ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сам процСссор.

Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, сообщСство Unix ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ приблиТаСтся ΠΊ Π΄Π°Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ зрСния, особСнно с 1990 Π³ΠΎΠ΄Π°, это Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°ΡŽΡ‰Π΅ΠΉ популярности Perl ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков сцСнариСв. Однако Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Π΅Ρ‰Π΅ (ΠΊ сСрСдинС 2003 Π³ΠΎΠ΄Π°) Π½Π΅ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π°ΠΌ. МногиС Unix-программисты Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΎΡΠΌΡ‹ΡΠ»ΠΈΠ²Π°ΡŽΡ‚ ΡƒΡ€ΠΎΠΊ, ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ языками Perl ΠΈ Python.

Π’Π° ΠΆΠ΅ тСндСнция, хотя ΠΈ выраТСнная Π½Π΅ Ρ‚Π°ΠΊ ярко, Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΌΠΈΡ€Π° Unix, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰Π΅ΠΌΡΡ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΎΡ‚ Π‘++ ΠΊ Visual BASIC, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ проявляСтся Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Microsoft Windows ΠΈ NT, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΊ Java Π² ΠΌΠΈΡ€Π΅ мэйнфрСймов.

АргумСнты ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π‘ ΠΈ Π‘++ Π² Ρ€Π°Π²Π½ΠΎΠΉ стСпСни ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ языкам, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Pascal, Algol, PL/I, FORTRAN ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚Ρ‹ BASIC. НСсмотря Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ "гСроичСскиС усилия", Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ada, отличия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ языками ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ внСшними ΠΏΡ€ΠΈ сопоставлСнии ΠΈΡ… основных конструктивных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ программисту. Π’ Unix Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ созданных языков доступны Π² Π²ΠΈΠ΄Π΅ высококачСствСнных Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. НСсмотря Π½Π° это, Π² ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ использовании Π² Unix ΠΈΠ»ΠΈ Windows Π½Π΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… языков. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΡ‚ΠΊΠ°Π·Π°Π»ΠΈΡΡŒ ΠΎΡ‚ Π½ΠΈΡ… Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π‘ ΠΈΠ»ΠΈ Π‘++. БоотвСтствСнно, Π² Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΎΠ½ΠΈ Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ.

14.3. Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки ΠΈ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅ стратСгии

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

ИспользованиС сцСнариСв β€” нисколько Π½Π΅ новая идСя Π² ΠΌΠΈΡ€Π΅ Unix. Π’ 1970-Ρ… Π³ΠΎΠ΄Π°Ρ…, Π² эпоху Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… машин, Unix shell (ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ для ΠΊΠΎΠΌΠ°Π½Π΄, Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π² Unix-консоль) Π±Ρ‹Π» спроСктирован ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык программирования. Π”Π°ΠΆΠ΅ Ρ‚ΠΎΠ³Π΄Π° Π±Ρ‹Π»ΠΎ распространСно написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π° shell ΠΈΠ»ΠΈ использованиС shell для написания ΡΠ²ΡΠ·ΡƒΡŽΡ‰Π΅ΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ встроСнныС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ нСстандартныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π‘ Π² цСлостныС систСмы, ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»Π° большС, Ρ‡Π΅ΠΌ сумма эффСктивности ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… частСй. Π’ классичСских Π²Π²ΠΎΠ΄Π½Ρ‹Ρ… ΠΊΠ½ΠΈΠ³Π°Ρ… ΠΏΠΎ Unix-срСдС (Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ "The Unix Programming Environment" [39]) ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассматриваСтся данная Ρ‚Π°ΠΊΡ‚ΠΈΠΊΠ°, ΠΈ это Π²ΠΏΠΎΠ»Π½Π΅ обосновано: ΠΎΠ½Π° Π±Ρ‹Π»Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Unix.