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

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

Автор ОлСг Π¦ΠΈΠ»ΡŽΡ€ΠΈΠΊ

QNX home 6.2.1 2003/01/08-14.50:46est Ρ…86рс x86

# ptid

pid 671779, tid 2

pid 671779, tid 3

pid 671779, tid 4

pid 671779, tid 5

pid 671779, tid 6

pid 671779, tid 7

pid 671779, tid 8

pid 671779, tid 9

pid 671779, tid 10

pid 671779, tid 11

БпорадичСская диспСтчСризация

БистСмы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ систСм ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ для Ρ‚Π°ΠΊΠΈΡ… систСм Π²Π°ΠΆΠ½Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ выполнСния Π²ΠΎΠ·Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π½Π° Π½ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½ΠΎ ΠΈ врСмя, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ. МоТно Π΄Π°ΠΆΠ΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ для Π·Π°Π΄Π°Ρ‡ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΠΏΠΎΠ·Π΄Π°Π½ΠΈΠ΅ с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ практичСски эквивалСнтно Π½Π΅Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ: трСбуСмая рСакция ΠΈΠ»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ воздСйствиС Π½Π΅ поступили Π² срок. ΠŸΡ€Π΅Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ срок, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π΄Π°Ρ‡Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ критичСским сроком обслуТивания (deadline).

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

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

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ слСдуСм «классичСской» ΠΌΠΎΠ΄Π΅Π»ΠΈ обсуТдСния ΠΈΠ· области систСм Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, хотя умСстнСС Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π΅ Π½Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прилоТСния, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ обязано Β«ΡƒΠ»ΠΎΠΆΠΈΡ‚ΡŒΡΡΒ» Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ критичСский ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (см. Π²Ρ‹ΡˆΠ΅). Π’Π΅Π»ΠΈΡ‡ΠΈΠ½Π° ΠΆΠ΅ Ρ‚ΠΎΠ³ΠΎ, насколько быстро ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ свои критичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Ссли ΠΎΠ½ΠΎ укладываСтся Π² критичСский ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π») ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «мСньшС β€” большС», практичСски ΡƒΠΆΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ значСния. Из этого Π½Π΅ совсСм Ρ‡Π΅Ρ‚ΠΊΠΎΠ³ΠΎ толкования слоТился ΠΎΠ±Ρ‰ΠΈΠΉ стСрСотип, состоящий Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ систСмы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π² частности, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ) принято ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ «быстрыми» (Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ быстрСС, Ρ‡Π΅ΠΌ систСмы ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния). Π­Ρ‚ΠΎΡ‚ взгляд Π² ΠΊΠΎΡ€Π½Π΅ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π΅Π½: систСмы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС, скорСС, Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π°ΠΆΠ΅ Β«ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅Β», Ρ‡Π΅ΠΌ систСмы ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, Π·Π° счСт Π±ΠΎΠ»Π΅Π΅ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ диспСтчСризации ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ контСкстов. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ участка ΠΊΠΎΠ΄Π° срСдняя Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΅Π³ΠΎ выполнСния Π² ОБ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΈΠΆΠ΅, Π½ΠΎ Π²ΠΎΡ‚ диспСрсия этой срСднСй Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅ Π² систСмах Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

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

Одна ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстных систСм матСматичСского Π°Π½Π°Π»ΠΈΠ·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… характСристик систСм Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с пСриодичСским поступлСниСм запросов Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ называСтся «Частотно-ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·Β» (ЧМА β€” Rate Monotonic Analyzing) [13]. Π‘Π²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ эта систСма ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° ΠΎΡ‚ Π΅Π΅ основного ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°: Β«Π§Π΅ΠΌ ΠΊΠΎΡ€ΠΎΡ‡Π΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ поступлСния (Π²Ρ‹ΡˆΠ΅ частота) Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ‚Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Β». Как ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ, ЧМА ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π°Π½Π°Π»ΠΈΠ·Π° систСм Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… каТдая Π·Π°Π΄Π°Ρ‡Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ обрабатываСтся со своим ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ЧМА являСтся условиС, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ поступлСния Π·Π°Π΄Π°Ρ‡ΠΈ являСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Π΅Π΅ критичСским сроком обслуТивания. Π’ настоящСС врСмя появился ряд Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π°Π½Π°Π»ΠΈΠ·Π° характСристик систСм Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для случаСв критичСских сроков обслуТивания, Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ»ΠΈ ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° поступлСния, Π½ΠΎ здСсь ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π½Π° Π½ΠΈΡ… ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ.

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

ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ обслуТивания Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠΆΠ½ΠΎ свСсти ΠΊ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ пСриодичСских Π·Π°Π΄Π°Ρ‡ ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, провСсти для Π½ΠΈΡ… Π°Π½Π°Π»ΠΈΠ· диспСтчСризуСмости. Для этого тСория ЧМА ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ пСриодичСской Π·Π°Π΄Π°Ρ‡ΠΈ (Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ спорадичСский сСрвСр), которая ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ обслуТиваниС нСпСриодичСских (спорадичСских) Π·Π°Π΄Π°Ρ‡.

Алгоритм Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ сСрвСра [13] ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

β€’ Π¨Π°Π³ 1. Если спорадичСский запрос ΠΏΡ€ΠΈΠ±Ρ‹Π²Π°Π΅Ρ‚ ΠΈ сСрвСр Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ занят ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ свободного рСсурса вычислСний, запрос Π±ΡƒΠ΄Π΅Ρ‚ поставлСн Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

β€’ Π¨Π°Π³ 2. Если ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ спорадичСский запрос ΠΈ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

β€’ Π¨Π°Π³ 2Π°. ВыполняСтся Π΄ΠΎ слуТСбного Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ истощСния рСсурса вычислСния.

β€’ Π¨Π°Π³ 2с. Π£ΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ рСсурс вычислСния Π½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ количСство ΠΈ Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π΅Π³ΠΎ рСсурс вычислСния Π² Ρ‚ΠΎΡ‡ΠΊΠ΅ пополнСния.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ тСорСтичСски ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ спорадичСского сСрвСра Π² качСствС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ эту модСль, Π² QNX 6.2.1 Π±Ρ‹Π»Π° Π²Π²Π΅Π΄Π΅Π½Π° спСциализированная дисциплина диспСтчСризации β€” спорадичСская.

Π‘ΡƒΡ‚ΡŒΡŽ спорадичСской диспСтчСризации Π² QNX являСтся установка для ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄Π²ΡƒΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°: основного (normal) ΠΈ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ (foreground). Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚ запуска ΠΏΠΎΡ‚ΠΎΠΊΠ°, ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‰Π΅Π³ΠΎΡΡ спорадичСской диспСтчСризации (ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ 0), ΠΏΠΎΡ‚ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ запас Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π‘), Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΌ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ΠΎΠΌ (initial budget) ΠΏΠΎΡ‚ΠΎΠΊΠ°, Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊ выполняСтся со своим основным ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ (N). Когда ΠΆΠ΅ запас Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исчСрпываСтся, Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ пониТаСтся Π΄ΠΎ уровня Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ (L). Π§Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ T происходит ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (replenishment) запаса Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄ΠΎ значСния Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚Π°, ΠΈ ΠΎΠ½ снова ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ с основным ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ.

Рассмотрим порядок выполнСния Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅. Π’ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ послС запуска ΠΏΠΎΡ‚ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ N ΠΈ врСмя Π‘ для выполнСния с этим ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ. Если ΠΏΠΎΡ‚ΠΎΠΊ блокируСтся Π½Π° врСмя R, Ρ‚ΠΎ запас Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ всС Ρ€Π°Π²Π½ΠΎ расходуСтся ΠΈ ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого запаса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ T послС Π½Π°Ρ‡Π°Π»Π° выполнСния ΠΏΠΎΡ‚ΠΎΠΊΠ°. Если ΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΊ вытСсняСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌ, Ρ‚ΠΎ расход Π΅Π³ΠΎ запаса Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прСкращаСтся. Когда ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ возвращаСтся ΠΊ ΠΏΠΎΡ‚ΠΎΠΊΡƒ, ΠΎΠ½ вновь Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π΅ΡΡ количСство Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° основном ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅. Однако с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ Π½Π°Ρ‡Π°Π»Π° выполнСния ΠΏΠΎΡ‚ΠΎΠΊΠ° начинаСтся отсчСт Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° пополнСния.

На рис. 2.6 ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° спорадичСского ΠΏΠΎΡ‚ΠΎΠΊΠ°. ПослС запуска (ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ 0) ΠΏΠΎΡ‚ΠΎΠΊ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ состояниС Π½Π° врСмя R (10 мс), Π½ΠΎ Π΅Π³ΠΎ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ всС Ρ€Π°Π²Π½ΠΎ расходуСтся. ΠŸΠΎΡ‚ΠΎΠΊ становится Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ, Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 3 мс (13 мс ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° выполнСния) вытСсняСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ. Π€Π°ΠΊΡ‚ вытСснСния ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ пополнСния T (40 мс) Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ Π½Π° ΠΈΠ·Ρ€Π°ΡΡ…ΠΎΠ΄ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ (13 мс). Π•Ρ‰Π΅ Ρ‡Π΅Ρ€Π΅Π· 3 мс Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ возвращаСтся Π½Π°Π·Π°Π΄. ΠžΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° Π‘ (20 мс) ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Π΅Ρ‰Π΅ 7 мс, ΠΈ ΠΏΠΎΡ‚ΠΎΠΊ выполняСтся это врСмя с основным ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ. ΠŸΡ€ΠΈ этом ΠΎΡ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ Π½Π°Ρ‡Π°Π»Π° Π΅Π³ΠΎ выполнСния (16 мс) отсчитываСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ пополнСния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· 56 мс Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ Π½Π° 7 мс. ПослС ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ исчСрпания Π±ΡŽΠ΄ΠΆΠ΅Ρ‚Π° ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° пониТаСтся Π΄ΠΎ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ (L) ΠΈ ΠΏΠΎΡ‚ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Ρ‚Π΅ΡΠ½ΡΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ Π² зависимости ΠΎΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠ² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² систСмС. ПослС наступлСния ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ пополнСния Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° восстанавливаСтся Π½Π° ΠΈΠ·Ρ€Π°ΡΡ…ΠΎΠ΄ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π² этом ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ ΠΈ Ρ‚.Π΄.

Рис. 2.6. ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ спорадичСской Π·Π°Π΄Π°Ρ‡ΠΈ

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

Как ΡƒΠΆΠ΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, структура shed_param содСрТит Π² своСм составС, Π² частности, Π΅Ρ‰Π΅ ΠΈ структуру ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² для спорадичСской диспСтчСризации (ΠΏΡ€ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠ°Ρ… диспСтчСризации эта Ρ‡Π°ΡΡ‚ΡŒ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ):