}
child(n)
int n;
{
int i;
struct tms cb1, cb2;
long t1, t2;
t1 = times(&cb1);
for (i = 0; i βΉ 10000; i++);
t2 = times(&cb2);
printf("ΠΏΠΎΡΠΎΠΌΠΎΠΊ %d: ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ %u Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°Π΄Π°ΡΠΈ %u Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΄ΡΠ° %u\n",
n, t2 - t1, cb2.tms_utime - cb1.tms_utime, cb2.tms_stime - cb1.tms_stime);
exit();
}
Π ΠΈΡΡΠ½ΠΎΠΊ 8.7. ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΡ times
ΠΠ° Π ΠΈΡΡΠ½ΠΊΠ΅ 8.7 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΎΡΠ΅ΡΡ-ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΡΠΎΠ·Π΄Π°Π΅Ρ 10 ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ 10000 ΡΠ°Π· Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΡΡΠΎΠΉ ΡΠΈΠΊΠ». ΠΡΠΎΡΠ΅ΡΡ-ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ times ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ² ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΈΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΏΠΎΡΠΎΠΌΠΊΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΡΠΈΠΊΠ»Π° ΠΈ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ. ΠΡΠΎ-ΡΠΎ ΠΏΠΎ Π½Π°ΠΈΠ²Π½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ, ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡΠ° Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΡΠ΄ΡΠ° ΡΠ°Π²Π½ΠΎ ΡΡΠΌΠΌΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΌΠΊΠ°, Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°-ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΌΠΌΠΎΠΉ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΅Π³ΠΎ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ, Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ² Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π²ΡΠ΅ΠΌΡ, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ fork ΠΈ exit, ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΎ Π·Π° ΡΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ alarm ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΌΠΎΠ³ΡΡ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠ»ΠΊΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΡΡΠ΅Π²ΠΎΠ³ΠΈ ("Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°") ΡΠ΅ΡΠ΅Π· ΠΊΡΠ°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° Π ΠΈΡΡΠ½ΠΊΠ΅ 8.8 ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈ, Π΅ΡΠ»ΠΈ ΠΊ ΡΠ°ΠΉΠ»Ρ Π±ΡΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΡΠΈΠΊΠ»Π΅, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ stat, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π»ΠΎ ΠΌΠ΅ΡΡΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΌΠΈΠ½ΡΡΡ, Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ signal Π΄Π΅Π»Π°Π΅Ρ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΡΠ΅Π²ΠΎΠ³ΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ alarm Π·Π°Π΄Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΠ³Π½Π°Π»Π°ΠΌΠΈ Π² 60 ΡΠ΅ΠΊΡΠ½Π΄ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ pause ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ²ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»Π°. Π§Π΅ΡΠ΅Π· 60 ΡΠ΅ΠΊΡΠ½Π΄ ΡΠΈΠ³Π½Π°Π» ΠΏΠΎΡΡΡΠΏΠ°Π΅Ρ, ΡΠ΄ΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠ΅ΠΊ Π·Π°Π΄Π°ΡΠΈ ΠΊ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠ³Π½Π°Π»Π° wakeup, ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π° Π²ΡΠ·ΠΎΠ²ΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ pause, ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΈΠΊΠ» Π²Π½ΠΎΠ²Ρ.
ΠΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΡΠΎΡΠ΅ΠΊΠ°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ°ΡΠΎΠ² (ΡΠ°ΠΉΠΌΠ΅ΡΠ°). ΠΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ, ΡΠ΄ΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠ°ΠΉΠΌΠ΅ΡΠ½ΡΠΌ ΡΡΠ΅ΡΡΠΈΠΊΠ°ΠΌ ΠΈ ΠΈΠ½ΠΈΡΠΈΠΈΡΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅.
8.3 Π’ΠΠΠΠΠ
Π ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ Π²Ρ ΠΎΠ΄ΠΈΡ:
β’ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΡΠ°ΡΠΎΠ²,
β’ Π²ΡΠ·ΠΎΠ² Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ΄ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠ°ΡΡ,
β’ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ ΡΠ΄ΡΠ° ΠΈ Π·Π°Π΄Π°ΡΠΈ;
β’ ΡΠ±ΠΎΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΡΠΎΡΠ΅ΠΊΠ°ΡΡΠΈΡ Π² Π½Π΅ΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ ,
β’ ΡΠ»Π΅ΠΆΠ΅Π½ΠΈΠ΅ Π·Π° Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ,
β’ ΠΏΠΎΡΡΠ»ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² "Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°" ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ,
β’ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠ΄ΠΊΠ°ΡΠΊΠΈ (ΡΠΌ. ΡΠ»Π΅Π΄ΡΡΡΡΡ Π³Π»Π°Π²Ρ),
β’ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ, Π΄ΡΡΠ³ΠΈΠ΅ β ΠΏΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ²ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠΌΠ΅ΡΠ½ΡΡ ΡΠΈΠΊΠΎΠ². ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Ρ Π²ΡΡΠΎΠΊΠΈΠΌ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠΌ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ, Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠΉ (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΎΡ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΠΉΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²). ΠΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ, Π·Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ-ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ±Π΅Π³Π°Ρ ΡΠ²ΠΎΠΈ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΡΠ΅Π·ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±Π΅Π· ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π½Π° Π ΠΈΡΡΠ½ΠΊΠ΅ 8.9.
#include βΉsys/types.hβΊ
#include βΉsys/stat.hβΊ
#include βΉsys/signal.hβΊ
main(argc, argv)
int argc;
char *argv[];
{
extern unsigned alarm();
extern wakeup();
struct stat statbuf;
time_t axtime;
if (argc != 2) {
printf("ΡΠΎΠ»ΡΠΊΠΎ 1 Π°ΡΠ³ΡΠΌΠ΅Π½Ρ\n");
exit();
}
axtime = (time_t) 0;
for (;;) {
/* ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΉΠ»Ρ */
if (stat(argv[1], &statbuf) == -1) {
printf("ΡΠ°ΠΉΠ»Π° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ %s Π½Π΅Ρ\n", argv[1]);
exit();
}
if (axtime != statbuf.st_atime) {
printf("ΠΊ ΡΠ°ΠΉΠ»Ρ %s Π±ΡΠ»ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅\n", argv[1]);
axtime = statbuf.st_atime;
}
signal(SIGALRM, wakeup); /* ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΠΏΡΠΈΠ΅ΠΌΡ ΡΠΈΠ³Π½Π°Π»Π° */
alarm(60);
pause(); /* ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ² Π΄ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»Π° */
}
}
wakeup() {}
Π ΠΈΡΡΠ½ΠΎΠΊ 8.8. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ alarm
Π°Π»Π³ΠΎΡΠΈΡΠΌ clock
Π²Ρ ΠΎΠ΄Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ
Π²ΡΡ ΠΎΠ΄Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ
{
ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ°ΡΡ; /* ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΡΠ½ΠΎΠ²Π° ΠΏΠΎΡΡΠ»Π°Π»ΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ */
if (ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² Π½Π΅ ΠΏΡΡΡΠ°) {
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²;
Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ callout, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ ΠΈΡΡΠ΅ΠΊΠ»ΠΎ;
}
if (ΠΏΡΠΎΡΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΄ΡΠ°)
Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ;
if (ΠΏΡΠΎΡΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°Π΄Π°ΡΠΈ)
Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ;
ΡΠΎΠ±ΡΠ°ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΎ ΡΠ°ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅;
ΡΠΎΠ±ΡΠ°ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΎ ΠΏΡΠΎΡΠ΅ΠΊΠ°ΡΡΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ ;
Π²ΡΠ²Π΅ΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΠ¦Π ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ;
if (ΠΏΡΠΎΡΠ»Π° 1 ΡΠ΅ΠΊΡΠ½Π΄Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΡΡΠ΅Π·ΠΎΠΊ, Π½Π΅ ΡΠ²Π»ΡΡΡΠΈΠΉΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ) {
for (Π²ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π² ΡΠΈΡΡΠ΅ΠΌΠ΅) {
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ "Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊ", Π΅ΡΠ»ΠΈ ΠΎΠ½ Π°ΠΊΡΠΈΠ²Π΅Π½;
Π²ΡΠ²Π΅ΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΠ¦Π;
if (ΠΏΡΠΎΡΠ΅ΡΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°Π΄Π°ΡΠΈ) Π²ΡΠ²Π΅ΡΠΈΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°;
}
Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠ΄ΠΊΠ°ΡΠΊΠΈ;
}
}
Π ΠΈΡΡΠ½ΠΎΠΊ 8.9. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ
8.3.1 ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΡΠ°ΡΠΎΠ²
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΌΠ°ΡΠΈΠ½ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΡΠ°ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΏΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ²ΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Π½ΠΎΠ²Ρ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. Π’Π°ΠΊΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ²Π»ΡΡΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ-Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌΠΈ ΠΈ ΠΌΡ ΠΈΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ.
8.3.2 ΠΠ½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ°ΠΉΠΌ-Π°ΡΡΡ
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠΌ ΠΈΠ· ΠΏΡΠΎΡΠ΅Π΄ΡΡ ΡΠ΄ΡΠ°, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°ΠΌ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ΄ΡΠ° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Π² ΡΠ΅ΠΆΠΈΠΌ Π²Π²ΠΎΠ΄Π° Π±Π΅Π· ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΄ΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΡΠ΅ΡΠ΅Π· ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π½Π΅ Π΄ΠΎΠΆΠΈΠ΄Π°ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΌΠ΅Ρ ΠΊΠ»Π°Π²ΠΈΡΡ "Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΠΊΠ°ΡΠ΅ΡΠΊΠΈ" (ΡΠΌ.ΡΠ°Π·Π΄Π΅Π» 10.3.3). Π―Π΄ΡΠΎ Ρ ΡΠ°Π½ΠΈΡ Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² (Π ΠΈΡΡΠ½ΠΎΠΊ 8.9), Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΠΎΠΉ ΠΏΠΎ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠΉ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° (Π² ΡΠ°ΠΉΠΌΠ΅ΡΠ½ΡΡ ΡΠΈΠΊΠ°Ρ ) Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°ΠΏΡΡΠΌΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²; Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ. Π―Π΄ΡΠΎ ΡΠΎΡΡΠΈΡΡΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²Π΅Π»ΠΈΡΠΈΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ. Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ Π½Π΅ ΠΎΠ±ΡΠ°Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π·Π°ΠΏΡΡΠΊΠ° Π΄Π°Π½Π½ΠΎΠΉ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ±ΡΠ°Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ· ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΎΠ² Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π·Π°ΠΏΡΡΠΊΠ° Π²ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΠΉ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΈ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ.
Π ΠΈΡΡΠ½ΠΎΠΊ 8.10. ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²
ΠΠ° Π ΠΈΡΡΠ½ΠΊΠ΅ 8.10 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ². (Π ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Ρ "Π²ΡΠ΅ΠΌΡ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ°" Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΈ a ΠΌΡ Π²Π΅ΡΠ½Π΅ΠΌΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ·ΠΆΠ΅). Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΠΈΡΡ, ΡΠ΄ΡΠΎ ΠΎΡΠ²ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½Π΅Π΅ Π½Π°Π΄Π»Π΅ΠΆΠ°ΡΠ΅Π΅ ΠΌΠ΅ΡΡΠΎ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ "Π²ΡΠ΅ΠΌΡ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ°" Π² Π·Π°ΠΏΠΈΡΠΈ, ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΠΎΠΉ. Π‘ΡΠ΄Ρ ΠΏΠΎ ΡΠΈΡΡΠ½ΠΊΡ, ΡΠ΄ΡΠΎ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ f ΡΠ΅ΡΠ΅Π· 5 ΡΠ°ΠΉΠΌΠ΅ΡΠ½ΡΡ ΡΠΈΠΊΠΎΠ²: ΠΎΠ½ΠΎ ΠΎΡΠ²ΠΎΠ΄ΠΈΡ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Π½Π΅Π΅ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ b ΠΈ Π·Π°Π½ΠΎΡΠΈΡ Π² ΠΏΠΎΠ»Π΅ "Π²ΡΠ΅ΠΌΡ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ°" Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π²Π½ΠΎΠ΅ 2 (ΡΠΎΠ³Π΄Π° ΡΡΠΌΠΌΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ b ΠΈ f ΡΠΎΡΡΠ°Π²ΠΈΡ 5), ΠΈ ΠΌΠ΅Π½ΡΠ΅Ρ "Π²ΡΠ΅ΠΌΡ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ°" ΡΡΠ½ΠΊΡΠΈΠΈ c Π½Π° 8 (ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΡ c Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· 13 ΡΠ°ΠΉΠΌΠ΅ΡΠ½ΡΡ ΡΠΈΠΊΠΎΠ²). Π ΠΎΠ΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΡΠ΄ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ²ΡΠ·Π½ΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΠΈΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ², Π² Π΄ΡΡΠ³ΠΈΡ ΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΡΠΈ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²ΠΊΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠΈΡ ΠΈΠ·Π΄Π΅ΡΠΆΠ΅ΠΊ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ ΡΠ΄ΡΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅.