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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«QNX/UNIX: Анатомия ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 2

Автор Π¦ΠΈΠ»ΡŽΡ€ΠΈΠΊ ОлСг Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡

На основС Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ послСдних Π»Π΅Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² QNX ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ POSIX Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… систСм, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈ Π² срСдС Π΄Ρ€ΡƒΠ³ΠΈΡ… ОБ проводится активная Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡŽ ΠΈΡ… API Π² Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ соотвСтствиС с POSIX. Один ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ Π² ОБ Linux ΠΌΡ‹ рассматриваСм Π² тСкстС; Π² срСдС ОБ NetBSD заявлСно ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΡŽ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ POSIX Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ синхронизации. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π² тСкстС, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ пСрСнСсСна (ΠΈΠ½ΠΎΠ³Π΄Π° с Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ измСнСниями) Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ систСмы: Linux, FreeBSD, NetBSD ΠΈ ΠΏΡ€ΠΎΡ‡. ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ ΠΆΠ΅ Π² дСталях Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ рассматриваСмых ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π² Ρ€Π°Π·Π½Ρ‹Ρ… систСмах, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΏΡ€ΠΎΡΡΠ½ΠΈΡ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ происходящСго. ИмСнно поэтому эта Π΄Π²ΠΎΠΉΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ Π±Ρ‹Π»Π° вынСсСна Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΊΠ½ΠΈΠ³ΠΈ: Β«QNX/UNIXΒ».

Π’Π΅ΠΏΠ΅Ρ€ΡŒ нСсколько слов ΠΎ многочислСнных ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² тСкстС. Π’Π°ΠΊ ΡƒΠΆ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ тСкстом ΠΌΡ‹ постСпСнно стали Π½Π°Ρ†Π΅Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠ΄ тСстированиС возмоТностСй ΠΈ эффСктивности ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ². Однако такая ориСнтация, ΠΏΠΎΠΏΡƒΡ‚Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ количСствСнныС ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Ρ‹ ΠΏΠΎ ОБ, Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°Ρ‚ΡƒΠΌΠ°Π½ΠΈΠ²Π°Ρ‚ΡŒ Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠ΄Π°: Π² Π½ΠΈΡ… ΠΌΡ‹ стараСмся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ срСдствами API, с Ρ‚Π΅ΠΌ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ этого ΠΊΠΎΠ΄Π° ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹Ρ‚ΡŒ нСпосрСдствСнно заимствованы читатСлями для своих Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ Π΄Π°Π»Π΅Π΅ Ρ€Π°Π·Π²ΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ‚Π°ΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π² ΠΊΠΎΠ΄Π΅, Β«ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒΒ» (ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ спСцифичСский ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ), Π½ΠΎ это вовсС Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Β«Ρ‚Π°ΠΊ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒΒ» ΠΈΠ· сообраТСний ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, пСрСносимости ΠΈ Ρ‚.Π΄. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ всСх ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для ΠΈΡ… сборки, исполнСния ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ находятся Π² составС Ρ„Π°ΠΉΠ»ΠΎΠ² Π°Ρ€Ρ…ΠΈΠ²Π°, доступного ΠΏΠΎ адрСсу http://www.symbol.ru/library/qnx-unix/pthread.tgz.

Π§Π΅Π³ΠΎ Π½Π΅Ρ‚ Π² этой книгС…

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

β€’Β ΠžΠ±Ρ‰ΠΈΠ΅ UNIX-ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ IPC (Inter Process Communication). Из всСх ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ относимых ΠΊ IPC, ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ - сигналы. Π”Ρ€ΡƒΠ³ΠΈΠ΅, ΠΊΡ€Π°ΠΉΠ½Π΅ интСрСсныС Π² примСнСниях ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎ прСдставлСнныС Π² API QNX, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ (pipe) ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ (FIFO) ΠΊΠ°Π½Π°Π»Ρ‹, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ сообщСний POSIX (

mq_*
), Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ записСй ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² (
fcntl()
) ΠΈ ряд Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΡΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΠΎΠΉΠ΄Π΅Π½Ρ‹ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ: Π°) Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этих ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΌΠ°Π»ΠΎ Ρ‡Ρ‚ΠΎ привносит ΠΈΠΌΠ΅Π½Π½ΠΎ «потоковая» (thread) ориСнтация, полоТСнная Π²ΠΎ Π³Π»Π°Π²Ρƒ ΡƒΠ³Π»Π° нашСго рассмотрСния; Π±) эти ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰Π΅ описаны Π£. БтивСнсом [2], Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ; Π²) Π½Π°ΠΌ ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Ρ€Π°Π·Π΄ΡƒΠ²Π°Ρ‚ΡŒ объСм тСкста свСрх Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎΠΉ ΠΌΠ΅Ρ€Ρ‹ Π±Π΅Π· ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ Π½Π° Ρ‚ΠΎ нСобходимости.

‒ БовмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ (раздСляСмая) ΠΏΠ°ΠΌΡΡ‚ΡŒ (shared memory). Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ относимый ΠΊ подмноТСству IPC, Π½ΠΎ ΠΌΡ‹ Π΅Π³ΠΎ выдСляСм особо. Π­Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ описан ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ QNX самым Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, но… Π‘Π°ΠΌΡ‹Π΅ повСрхностныС экспСримСнты наводят Π½Π° ΠΌΡ‹ΡΠ»ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² QNX Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² раздСляСмой памяти Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ достаточно Β«Ρ€ΡƒΠ΄ΠΈΠΌΠ΅Π½Ρ‚Π°Ρ€Π½ΠΎΒ»: ряд возмоТностСй, рассматриваСмых POSIX ΠΊΠ°ΠΊ стандартныС, Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ раздСляСмой памяти Π² QNX Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ изучСния ΠΈ тСстирования. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, это Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ сдСлано Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΈ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

β€’Β Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π² систСмС. Π’Π°ΠΉΠΌΠ΅Ρ€Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π² QNX Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅, Ρ‡Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для ОБ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π½Π° «встраиваСмыС» (embedded) примСнСния. Однако Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π°) ΠΈΠΌΠ΅ΡŽΡ‚ всС ΠΆΠ΅ косвСнноС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ вопросам ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΈ синхронизации ΠΈ Π±) блСстящС ΠΈ ΠΏΠΎΠ»Π½ΠΎ описаны Π . ΠšΠ΅Ρ€Ρ‚Π΅Π½ΠΎΠΌ [1].

Π’ΠΎΠΎΠ±Ρ‰Π΅, ΠΏΡ€ΠΈ ΠΎΡ‚Π±ΠΎΡ€Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° для ΠΊΠ½ΠΈΠ³ΠΈ ΠΌΡ‹ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ максимально ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°: Ρ‡Π΅ΠΌ ΡˆΠΈΡ€Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ освСщСн Π² Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π΅ (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ОБ, ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ Π΅Π³ΠΎ использования ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅), ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π² извСстной Π½Π°ΠΌ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π΅, Ρ‚Π΅ΠΌ мСньшС внимания ΠΌΡ‹ удСляли Π΅ΠΌΡƒ Π² своСм тСкстС.

Благодарности

ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΊΠ½ΠΈΠ³ΠΈ Π±Ρ‹Π» вынСсСн Π½Π° обсуТдСниС ΡˆΠΈΡ€ΠΎΠΊΠΎΠΉ QNX-общСствСнности (Π΄Π° ΠΈ UNIX/Linux) Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅ http://qnxclub.net. Π‘Ρ‹Π»ΠΎ высказано ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ, ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΠΉ ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст, ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΡƒΡ‡Ρ‚Π΅Π½Ρ‹, стал Ρ€Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ исходной Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ. НСвозмоТно ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ всСх Ρ‡Π»Π΅Π½ΠΎΠ² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-сообщСства (Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, http://qnx.org.ruΠΈ http://qnxclub.net), ΠΊΡ‚ΠΎ внСс свой Π²ΠΊΠ»Π°Π΄ Π² это ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Β β€” ΠΌΡ‹ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹ всСм Π±Π΅Π· ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Но ΠΎΡΠΎΠ±ΡƒΡŽ ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΡ‹ Π²Ρ‹Ρ€Π°ΠΆΠ°Π΅ΠΌ:

β€’Β Π’Π»Π°Π΄ΠΈΠΌΠΈΡ€Ρƒ Π—Π°ΠΉΡ†Π΅Π²Ρƒ ΠΈΠ· Π³.Β Π₯Π°Ρ€ΡŒΠΊΠΎΠ²Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ прСдоставил свой авторский ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», ΡΠΎΡΡ‚Π°Π²ΠΈΠ²ΡˆΠΈΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅, самоцСнноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, дополнившСС ΠΊΠ½ΠΈΠ³Ρƒ, Π½ΠΎ ΠΈ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π» вСсь ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ тСкст, Π° Ρ‚Π°ΠΊΠΆΠ΅ внСс ряд вСсьма Ρ†Π΅Π½Π½Ρ‹Ρ… ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠΉ.

β€’Β Π•Π²Π³Π΅Π½ΠΈΡŽ Π’ΠΈΠ΄Ρ€Π΅Π²ΠΈΡ‡Ρƒ ΠΈΠ· Π³. ΠœΠΎΠ½Ρ€Π΅Π°Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π» вСсь тСкст с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΡƒΠΊΠ°Π·Π°Π» Π½Π° ряд ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… мСст, Π° вмСсто Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°ΡˆΠΈΡ… ΠΏΡƒΡ‚Π°Π½Ρ‹Ρ… ΠΈ Π½Π΅ совсСм внятных Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» свои — ясныС ΠΈ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Π΅.

β€’Β Π•Π²Π³Π΅Π½ΠΈΡŽ Варнавскому ΠΈΠ· Π³. Π₯Π°Ρ€ΡŒΠΊΠΎΠ²Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ высказал ряд ΠΎΡ‡Π΅Π½ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΈ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ, Π½Π°ΡˆΠ΅Π΄ΡˆΠΈΡ… своС ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ тСкста.

ВипографскиС соглашСния

Π’ тСкстС содСрТится мноТСство ссылок Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ конструкции: Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°, ΠΈΠΌΠ΅Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ API, символичСскиС константы ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ ΠΈΡ… использовании Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π² Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ (ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ написании) Β«ΠΏΠ΅Ρ€Π΅ΠΊΠΎΡ‡Π΅Π²Ρ‹Π²Π°Ρ‚ΡŒΒ» Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. Π’Π°ΠΊΠΈΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹, конструкции ΠΈ лСксСмы Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ ΠΌΠΎΠ½ΠΎΡˆΠΈΡ€ΠΈΠ½Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

pthread_create()
.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ тСкста, Ρ†ΠΈΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… источников, Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ курсивом. Π’Π°ΠΊΠΈΡ… мСст ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ: прямоС Ρ†ΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°Π»ΠΎΡΡŒ Π½Π°ΠΌΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… (Π² Π΄Π²Π΅-Ρ‚Ρ€ΠΈ строки) Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΠ΄Π°, листинги ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΈ обсуТдаСмых Π² тСкстС, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΡΡŽΡ‚ΡΡ ΠΎΡ‚Ρ‡Π΅Ρ‚Π»ΠΈΠ²ΠΎ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ. Π­Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π°Ρ€Ρ…ΠΈΠ²Π΅ ΠΏΠΎ адрСсу http://www.symbol.ru/library/qnx-unix/pthread.tgz. Помимо ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚Π°ΠΌ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°, обсуТдаСмыС Π² тСкстС. Для удобства поиска названия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², содСрТащихся Π² Π°Ρ€Ρ…ΠΈΠ²Π΅, приводятся Π² тСкстС ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² скобках, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ( Ρ„Π°ΠΉΠ» s2.cc). [3]

1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ

Π€Π΅Π½ΠΎΠΌΠ΅Π½ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎ своСй ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π΄Π°ΠΆΠ΅ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΎΠ½ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΡ‚Ρ‡Π΅Ρ‚Π»ΠΈΠ²ΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½Ρ‹Ρ… ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм:

β€’Β ΠšΠΎΠ΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, ΡΠ²Π»ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ асинхронными, Π² самых ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ОБ выполняСтся ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π΅ΠΌΠΎΠΌΡƒ ΠΈΠΌΠΈ ΠΊΠΎΠ΄Ρƒ.

‒ Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ½ΠΎΠ³ΠΈΡ… систСмных слуТб Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

НапримСр, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ΄Π½ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС MS-DOS историчСски ΠΏΠ΅Ρ€Π²ΠΎΠΉ слуТбой, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ выполнСния, Π±Ρ‹Π»Π° подсистСма спулинга ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ. Но Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π΅Π΅ Π² систСму ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Β«ΠΏΠΎ ΠΆΠΈΠ²ΠΎΠΌΡƒΒ», ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ основная структура систСмы ΡƒΠΆΠ΅ слоТилась ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ (ΠΊ вСрсии 2.x), Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° Π² этой структурС Π±Ρ‹Π»ΠΈ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ€Π³Π½ΡƒΡ‚Ρ‹ Π½Π° ΠΊΠΎΡ€Π½ΡŽ. И с этого Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ начинаСтся Π·Π°Ρ‚ΡΠ½ΡƒΠ²ΡˆΠ°ΡΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ история развития ΡƒΡ€ΠΎΠ΄Π»ΠΈΠ²ΠΎΠΉ надстройки Π½Π°Π΄ MS-DOS β€” Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ создания TSR-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (terminate and stay resident), ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΎΡ€Π° INT 2F ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ….