Ito ang command na cset-proc na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
cset-proc - pamahalaan ang mga prosesong tumatakbo sa mga cpuset
SINOPSIS
cset [mga pagpipilian sa cset] proc [proc options] [args]
cset proc --tulong
cset proc
cset proc my_set my_other_set
cset proc --list --set my_set
cset proc --exec my_set /opt/software/my_code --my_opt_1
cset proc --set my_set --exec /opt/software/my_code --my_opt_1
cset proc --move 2442,3000-3200 my_set
cset proc --move --pid=2442,3000-3200 --toset=my_set
cset proc --move --fromset=my_set_1 --toset=my_set_2
cset proc --move --pid=42 --fromset=/group1/myset --toset=/group2/yourset
Opsyon
-h, --tulong
nagpi-print ng listahan ng mga opsyon para sa command na ito
-l, --listahan
listahan ng mga proseso sa tinukoy na cpuset
-e, --exec
magsagawa ng mga argumento sa tinukoy na cpuset
-u USER, --user=USER
gamitin ang USER na ito sa --exec (id o pangalan)
-g GROUP, --group=GROUP
gamitin ang GROUP na ito sa --exec (id o pangalan)
-m, --ilipat
ilipat ang mga tinukoy na gawain sa tinukoy na cpuset; upang ilipat ang isang PIDSPEC sa isang cpuset, gamitin ang -m
PIDSPEC cpuset; upang ilipat ang lahat ng mga gawain tukuyin --fromset at --toset
-p PIDSPEC, --pid=PIDSPEC
tukuyin ang detalye ng pid o tid
--mga thread
kung tinukoy, ang anumang mga proseso na makikita sa PIDSPEC upang magkaroon ng maramihang mga thread ay gagawin
awtomatikong naidagdag ang lahat ng kanilang mga thread sa PIDSPEC (gamitin upang ilipat ang lahat ng nauugnay
mga thread sa isang cpuset)
-s CPUSET, --set=CPUSET
tukuyin ang pangalan ng agarang cpuset
-t TOSET, --toset=TOSET
tukuyin ang pangalan ng patutunguhang cpuset
-f FROMSET, --fromset=FROMSET
tukuyin ang pangalan ng pinagmulan na cpuset
-k, --kthread
ilipat, o isama ang paglipat, hindi nakatali na mga kernel thread
--puwersa
pilitin ang lahat ng proseso at thread na ilipat
-v, --verbose
nagpi-print ng mas detalyadong output, additive
DESCRIPTION
Ang utos na ito ay ginagamit upang patakbuhin at pamahalaan ang mga arbitrary na proseso sa mga tinukoy na cpuset. Ito ay
ginagamit din para ilipat ang mga dati nang proseso at thread sa mga tinukoy na cpuset. Maaari mong tandaan
walang opsyon na "kill" o "destroy" — gamitin ang karaniwang OS ^C o kill command para diyan.
Upang ilista kung aling mga gawain ang tumatakbo sa isang partikular na cpuset, gamitin ang --list command.
Halimbawa:
# cset proc --listahan --itakda myset
Ililista ng command na ito ang lahat ng mga gawain na tumatakbo sa cpuset na tinatawag na "myset".
Ang mga proseso ay nilikha sa pamamagitan ng pagtukoy sa landas patungo sa maipapatupad at pagtukoy sa cpuset
na ang proseso ay gagawin sa.
Halimbawa:
# cset proc --set=blazing_cpuset --exec /usr/bin/fast_code
Ipapatupad ng command na ito ang /usr/bin/fast_code program sa "blazing_cpuset" cpuset.
Tandaan na kung ang iyong command ay kukuha ng mga opsyon, pagkatapos ay gamitin ang tradisyonal na "--" na marker upang paghiwalayin
mga opsyon ng cset mula sa mga opsyon ng iyong command.
Halimbawa:
# cset proc --itakda myset --exec - ls -l
Ipapatupad ng command na ito ang "ls -l" sa cpuset na tinatawag na "myset".
Ang PIDSPEC argument na kinuha para sa move command ay isang comma separated list ng mga PID o TID.
Ang listahan ay maaari ding magsama ng mga bracket ng PID o TID (ibig sabihin, mga gawain) na kasama ng
mga endpoint
Halimbawa:
1,2,5 ay nangangahulugan ng mga proseso 1, 2 at 5
1,2,600-700 Nangangahulugan ng mga proseso 1, 2 at mula 600 hanggang 700
nota
Ang hanay ng mga PID o TID ay hindi kailangang ma-populate ang bawat posisyon. Sa iba
mga salita, para sa halimbawa sa itaas, kung mayroon lamang isang proseso, sabihin ang PID 57, sa hanay
ng 50-65, pagkatapos ay ang prosesong iyon lamang ang ililipat.
Upang ilipat ang isang PIDSPEC sa isang partikular na cpuset, maaari mong tukuyin ang PIDSPEC gamit ang --pid at
ang patutunguhang cpuset na may --toset, o gamitin ang maikling kamay at ilista ang pangalan ng cpuset pagkatapos
ang PIDSPEC para sa --move arguments.
Ang utos ng paglipat ay tumatanggap ng maraming karaniwang paraan ng pagtawag. Halimbawa, ang mga sumusunod
ang mga utos ay katumbas:
# cset proc --ilipat 2442,3000-3200 reserved_set
# cset proc --ilipat --pid=2442,3000-3200 --toset=reserved_set
Ang mga utos na ito ay naglilipat ng mga gawaing tinukoy bilang 2442 at anumang tumatakbong gawain sa pagitan ng 3000 at 3200
kasama ang mga dulo sa cpuset na tinatawag na "reserved_set".
Ang pagtukoy sa --fromset ay hindi kinakailangan dahil ang mga gawain ay ililipat sa patutunguhan
cpuset kahit saang cpuset sila kasalukuyang tumatakbo.
nota
Gayunpaman, kung tutukuyin mo ang isang cpuset na may opsyong --fromset, ang mga gawaing iyon lang
na parehong nasa PIDSPEC at ay tumatakbo sa cpuset na tinukoy ng --fromset will
magagalaw. Ibig sabihin, kung mayroong isang gawain na tumatakbo sa system ngunit hindi sa --fromset iyon ay
sa PIDSPEC, hindi magagalaw.
Kung ang --threads switch ay ginamit, ang proc command ay magtitipon ng anumang mga thread ng
kabilang sa anumang proseso o thread na tinukoy sa PIDSPEC at ilipat ang mga ito.
Nagbibigay ito ng madaling paraan para ilipat ang lahat ng nauugnay na thread: pumili lang ng isang TID mula sa set at
gamitin ang --threads na opsyon.
Upang ilipat ang lahat ng mga gawain ng userspace mula sa isang cpuset patungo sa isa pa, kailangan mong tukuyin ang pinagmulan at
destination cpuset ayon sa pangalan.
Halimbawa:
# cset proc --ilipat --fromset=comp1 --toset=comp42
Tinutukoy ng command na ito na ang lahat ng proseso at thread na tumatakbo sa cpuset "comp1" ay ililipat
sa cpuset "comp42".
nota
Ang move command na ito ay hindi maglilipat ng mga kernel thread maliban kung ang -k/--kthread switch ay
tinukoy. Kung oo, ang lahat ng hindi nakatali na kernel thread ay idadagdag sa paglipat.
Ang mga hindi nakatali na kernel thread ay ang mga maaaring tumakbo sa anumang CPU. kung ikaw Rin tukuyin ang
--force switch, pagkatapos lahat ng mga gawain, kernel o hindi, nakatali o hindi, ay ililipat.
Ingat
Mangyaring maging maingat sa --force switch, dahil sa paglipat ng kernel thread na nakatali
sa isang partikular na CPU sa isang cpuset na hindi kasama ang CPU na iyon ay maaaring magdulot ng pag-hang ng system.
Dapat mong tukuyin ang mga natatanging pangalan ng cpuset para sa parehong exec at move command. Kung simpleng pangalan
na ipinasa sa --fromset, --toset at --set na mga parameter ay natatangi sa system pagkatapos noon
ipinatupad ang utos. Gayunpaman, kung mayroong maraming cpuset sa pangalang iyon, kakailanganin mo
upang tukuyin kung alin ang ibig mong sabihin na may buong landas na naka-root sa base cpuset tree.
Halimbawa, ipagpalagay na mayroon kang sumusunod na puno ng cpuset:
/cpusets
/pangkat1
/myset
/iyong set
/pangkat2
/myset
/iyong set
Pagkatapos, upang ilipat ang isang proseso mula sa myset sa group1 patungo sa iyong set sa group2, kailangan mong mag-isyu
ang sumusunod na utos:
# cset proc --move --pid=50 --fromset=/group1/myset --toset=/group2/yourset
Hindi mo kailangang mag-alala kung nasaan sa Linux filesystem ang cpuset filesystem
naka-mount. Ang utos ng cset ang nag-aalaga nito. Anumang mga cpuset na tinukoy ng landas (tulad ng
tulad ng nasa itaas), ay ginagawa na may paggalang sa ugat ng cpuset filesystem.
Gumamit ng cset-proc online gamit ang mga serbisyo ng onworks.net