Unix Man (Ñïðàâî÷íîå ðóêîâîäñòâî)



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âèé:

[ENOENT] [ENOTDIR] [EACCES] [EACCES] [EACCES] [ENOEXEC] [ETXTBSY] [ENOMEM] [E2BIG] [EFAULT] [EFAULT]
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 :

PRHUGEX PRNORMX
Ï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.




Ñîäåðæàíèå  Íàçàä  Âïåðåä