EXEC(3) - ÷àñòü 3
execle (file, arg0, arg1, ..., argn, 0, environ); execve (file, argv, environ);
execlp è execvp âûçûâaþòcÿ c òeìè æe apãyìeíòaìè, ÷òo execl è execv, ío èùyò èìÿ ôaéëa, ïpocìaòpèâaÿ êaòaëoãè òaê æe, êaê . Cïècoê êaòaëoãoâ áepeòcÿ èç êoìaíäíoé cpeäû.
exec aâapèéío çaâepøaeòcÿ è âoçâpaùaeò yïpaâëeíèe â còapûé oápaç ïpoöecca, ecëè âûïoëíÿeòcÿ xoòÿ áû oäío èç cëeäyþùèx ycëoâèé:
Koìïoíeíò èìeíè ôaéëa oápaça ïpoöecca íe cyùecòâyeò. |
Koìïoíeíò ïpeôèêca èìeíè ôaéëa oápaça ïpoöecca íe ÿâëÿeòcÿ êaòaëoãoì. |
Ëèáo íeò paçpeøeíèÿ ía ïoècê â êaòaëoãe èç ïpeôèêca èìeíè ôaéëa oápaça ïpoöecca. |
Ôaéë oápaça ïpoöecca íe ÿâëÿeòcÿ oáû÷íûì. |
Heò paçpeøeíèÿ ía âûïoëíeíèe ôaéëa oápaça ïpoöecca. |
Ôaéë oápaça ïpoöecca èìeeò paçpeøeíèe ía âûïoëíeíèe, ío eão ôopìaò íe coâïaäaeò c ôopìaòoì oáúeêòíoão ôaéëa. |
Hoâûé ôaéë oápaça ïpoöecca ÿâëÿeòcÿ ÷ècòoé ïpoöeäypoé (paçäeëÿeìûì ceãìeíòoì èícòpyêöèé), êoòopûé â äaííûé ìoìeíò oòêpûò ía çaïècü äpyãèì ïpoöeccoì. |
Hoâûé oápaç ïpoöecca òpeáyeò ïaìÿòè áoëüøe, ÷eì eìy ìoæeò áûòü âûäeëeío â oïepaòèâíoé ïaìÿòè èëè â oáëacòè câoïèíãa. |
×ècëo áaéòoâ â cïècêe apãyìeíòâ, ïepeäaâaeìûx íoâoìy oápaçy, ïpeâûøaeò ïpeäycìoòpeííûé cècòeìoé ëèìèò â 512 áaéòoâ. |
Äëèía íoâoão ôaéëa oápaça íe coâïaäaeò c yêaçaííoé â çaãoëoâêe. |
Aäpec, çaäaííûé path, argv èëè envp, âûxoäèò ça ïpeäeëû ïoëüçoâaòeëücêoão aäpecíoão ïpocòpaícòâa ïpoöecca. |
BOÇÂPAÙAEÌOE ÇÍA×EÍÈE
B cëy÷ae ycïeøíoão çaâepøeíèÿ íe ïpoècxoäèò âoçâpaòa yïpaâëeíèÿ è çía÷eíèÿ â còapûé oápaç ïpoöecca. Èía÷e yïpaâëeíèe âoçâpaùaeòcÿ â còapûé oápaç, âoçâpaùaeòcÿ çía÷eíèe -1 è â errno çaíocèòcÿ êoä oøèáêè.
ÑÌ. ÒÀÊÆÅ
, fork(3), , semop(3)
ÇÀÌÅ×ÀÍÈß
exec ìoæeò aâapèéío çaâepøèòücÿ, ecëè oáúeì oïepaòèâíoé ïaìÿòè ïpeâûøaeò paçìep oáëacòè câoïèíãa (cì. âûøe êoä oøèáêè ENOMEM). Oäíaêo, ýòo oãpaíè÷eíèe cíèìaeòcÿ ècïoëüçoâaíèeì cëeäyþùèx âapèaíòoâ âûçoâa :
Ïoçâoëÿeò âûïoëíÿòü ïpoãpaììy äaæe, ecëè ee paçìep ïpeâûøaeò paçìep oáëacòè câoïèíãa. Taêèe ïpoãpaììû äoëæíû ïoìeùaòücÿ â äocòyïíyþ ÷acòü oïepaòèâíoé ïaìÿòè è ýôôeêòèâíûé ïoëüçoâaòeëücêèé ID ïpoöecca äoëæeí áûòü ïpèâèëeãèpoâaííûì. Ïpoöecc, âûïoëíÿþùèé ïpoãpaììy òaêoão paçìepa, áëoêèpyeòcÿ cècòeìoé oò âûãpyçêè â oáëacòü câoïèíãa. |
Çaïpeùaeò ïpoöeccy âûïoëíÿòü ïpoãpaììy ïoäoáíoão paçìepa. Ýòoò âûçoâ ìoæeò cäeëaòü ëþáoé ïpoöecc. |