π *Π£ΡΠΊΠΎΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ Π² Linux β ΠΏΡΠΎΡΡΡΠ΅ Π»Π°ΠΉΡΡ
Π°ΠΊΠΈ!* ΠΡΡΠ·ΡΡ, Π·Π½Π°Π΅ΡΠ΅ Π»ΠΈ Π²Ρ, ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ? ΠΠ΅ Ρ
ΠΎΡΠ΅ΡΡΡ Π·Π°ΡΡΡΡΡΡ Π² ΠΌΡΡΠΎΡΠ½ΡΡ
Π·Π°Π΄Π°ΡΠ°Ρ
β Π»ΡΡΡΠ΅ ΠΎΠ²Π»Π°Π΄Π΅ΡΡ ΠΏΠ°ΡΠΎΠΉ ΡΠ΅ΠΊΡΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ. - ΠΠ½Π°Π΅ΡΠ΅ Π»ΠΈ Π²Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ² Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ? ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ°ΡΡ CPU ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ulimit. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π»ΠΈΠΌΠΈΡ Π½Π° ΡΠΈΡΠ»ΠΎ ΠΎΡΠΊΡΡΡΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ²: ulimit -n 1024 - Π Π²Π΅Π΄Ρ Π΅ΡΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· taskset__. Π’ΠΎΠ³Π΄Π° Π²Ρ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ ΡΠ΄ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. ΠΡΠΎΡΡΠΎ: taskset -c 0,2 ./my_app - ΠΡΠ΅ Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°ΡΡ, ΡΡΠΎ nice ΠΈ renice ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΡΡΠΎΠ±Ρ Π²Π°ΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π΅ ΡΠΎΡΠΌΠΎΠ·ΠΈΠ»ΠΈ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
: nice -n 10 ./background_task ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΎΠ² β ΡΡΠΎ ΠΊΠ»ΡΡ ΠΊ Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎΠΌΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ. ΠΠΎΡΠΎΠ²Ρ Π»ΠΈ Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΡ
π *Π£ΡΠΊΠΎΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ Π² Linux β ΠΏΡΠΎΡΡΡΠ΅ Π»Π°ΠΉΡΡ Π°ΠΊΠΈ
18Β Π°Π²Π³ΡΡΡΠ°Β 202518Β Π°Π²Π³Β 2025
~1 ΠΌΠΈΠ½