%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:05:39 1996 %%Pages: (atend) %%DocumentFonts: (atend) /devps 180 dict def devps begin /res 10.000000 def /y_offset 843 def /X{exch}bind def /mm {transform round X round X itransform} bind def /r{rmoveto}bind def /m{moveto}bind def /l{lineto}bind def /rl{rlineto}bind def /st{stroke}bind def /gs{gsave}bind def /gr{grestore}bind def /cp{currentpoint}bind def /np{newpath}bind def /ct{curveto}bind def systemdict /setpacking known { /savepacking currentpacking def true setpacking } if /m0{0 0 moveto}bind def /xc{//res div}bind def /yc{//res neg div //y_offset add}bind def /lc{yc X xc X l st}bind def /mc{yc X xc X m}bind def /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def /V{//res neg div //y_offset add currentpoint pop X m}bind def /H{//res div 0 transform X round X itransform pop currentpoint X pop moveto}bind def /h{//res div 0 r}bind def /v{//res neg div 0 X r}bind def /S{X H show}bind def /A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def /psize 10 def /height 0 def /cheight { height 0 ne { height } { psize } ifelse } bind def /slant 0 def /FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def [psize 0 cheight slant sin slant cos div mul cheight 0 0] makefont setfont}bind def /shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fill gr}bind def 1 setlinecap /resolution res 72 mul def /startFig { /SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /ury exch def /urx exch def /lly exch def /llx exch def /y exch 72 mul resolution div def /x exch 72 mul resolution div def currentpoint /cy exch def /cx exch def /sx x urx llx sub div def /sy y ury lly sub div def sx sy scale cx sx div llx sub cy sy div ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def }bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto }bind def /doclip { llx lly urx ury clipFig } def /endFig { end SavedState restore }bind def /globalstart { fontnum psize slant height resolution currentpoint pagesave restore gsave }bind def /globalend { grestore moveto /resolution exch def /height exch def /slant exch def /psize exch def /fontnum exch def F /pagesave save def }bind def /fontnum 1 def systemdict /setpacking known { savepacking setpacking} if end /BP{ save mark devps begin m0 /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def }bind def /EP{ end cleartomark restore showpage}def /Encoding-1 256 array def 0 1 255 {Encoding-1 exch /.notdef put} for Encoding-1 8#301 StandardEncoding 8#101 26 getinterval putinterval %A-B Encoding-1 8#341 StandardEncoding 8#141 26 getinterval putinterval %a-b Encoding-1 8#241 StandardEncoding 8#301 16 getinterval putinterval %accents Encoding-1 8#373 StandardEncoding 8#365 1 getinterval putinterval %dotlessi Encoding-1 dup 8#41 /copyright put dup 8#42 /registered put dup 8#43 /trademark put dup 8#44 /logicalnot put dup 8#45 /Eth put dup 8#46 /eth put dup 8#47 /Thorn put dup 8#50 /thorn put dup 8#51 /brokenbar put dup 8#52 /degree put dup 8#53 /divide put dup 8#54 /multiply put dup 8#55 /minus put dup 8#56 /onehalf put dup 8#57 /onequarter put dup 8#60 /threequarters put dup 8#101 /Aacute put dup 8#102 /Acircumflex put dup 8#103 /Adieresis put dup 8#104 /Agrave put dup 8#105 /Aring put dup 8#106 /Atilde put dup 8#107 /Ccedilla put dup 8#110 /Eacute put dup 8#111 /Ecircumflex put dup 8#112 /Edieresis put dup 8#113 /Egrave put dup 8#114 /Iacute put dup 8#115 /Icircumflex put dup 8#116 /Idieresis put dup 8#117 /Igrave put dup 8#120 /Ntilde put dup 8#121 /Oacute put dup 8#122 /Ocircumflex put dup 8#123 /Odieresis put dup 8#124 /Ograve put dup 8#125 /Otilde put dup 8#126 /Scaron put dup 8#127 /Uacute put dup 8#130 /Ucircumflex put dup 8#131 /Udieresis put dup 8#132 /Ugrave put dup 8#133 /Ydieresis put dup 8#134 /Zcaron put dup 8#135 /aacute put dup 8#136 /acircumflex put dup 8#137 /adieresis put dup 8#140 /agrave put dup 8#141 /aring put dup 8#142 /atilde put dup 8#143 /ccedilla put dup 8#144 /eacute put dup 8#145 /ecircumflex put dup 8#146 /edieresis put dup 8#147 /egrave put dup 8#150 /iacute put dup 8#151 /icircumflex put dup 8#152 /idieresis put dup 8#153 /igrave put dup 8#154 /ntilde put dup 8#155 /oacute put dup 8#156 /ocircumflex put dup 8#157 /odieresis put dup 8#160 /ograve put dup 8#161 /otilde put dup 8#162 /scaron put dup 8#163 /uacute put dup 8#164 /ucircumflex put dup 8#165 /udieresis put dup 8#166 /ugrave put dup 8#167 /ydieresis put dup 8#170 /zcaron put pop /Enc-dict 30 dict def Enc-dict /tmpstr1 50 string put Enc-dict /tmpstr2 50 string put Enc-dict /tmpstr3 50 string dup (Encoding-) exch cvs pop put /AEnc-def { % arguments: the original font's name, encoding nr Enc-dict begin tmpstr2 cvs /Enc-no exch def % Remember the number in a string dup /OrigName exch def % remember the name findfont dup maxlength dict /newdict exch def % get dictionary for new font { exch dup /FID ne { exch newdict 3 1 roll put } { pop pop } % Ignore FID ifelse } forall newdict begin /Encoding tmpstr3 9 Enc-no putinterval tmpstr3 0 9 Enc-no length add getinterval cvn load def % Replace encoding currentdict /UniqueID known { /UniqueID UniqueID Enc-no cvi 49999 mul add def } if % Derive New UniqueID end % newdict /FNlength OrigName tmpstr1 cvs length def % convert name, remember length FNlength 1 add Enc-no length add string dup 0 OrigName tmpstr1 cvs putinterval dup FNlength (-) putinterval dup FNlength 1 add Enc-no putinterval dup 0 tmpstr1 0 FNlength getinterval putinterval % Add old name cvn dup newdict /FontName 3 2 roll put newdict definefont end % Enc-dict } def /Times-Roman 1 AEnc-def pop /R-1{/Times-Roman-1 FF}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def /I{/Times-Italic FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(EXECVE)S 1127(\()S 1169(2)S 1227(\))S 2696(Eighth)S (Edition)296 2989 A 4720(EXECVE)S 5127(\()S 5169(2)S 5227(\))S 960 V 9 R 720(N)S 722(NA)S 790(AM)S 858(ME)S 940(E)S 1080 V 10 R 1080(execve)S 10 R-1 1385(-)S 10 R 1467(execute)S 1800(a)S 1870(\256le)S 1248 V 9 R 720(S)S 722(SY)S 774(YN)S 842(NO)S 910(OP)S 978(PS)S 1030(SI)S 1082(IS)S 1115(S)S 1368 V 10 B 1080(#include)S 1482()S 1608 V 1080(int)S 1236(execve\(const)S 1812(char)S 2046(*)S 10 I 2096(name)S 10 B 2314(,)S 2377(char)S 2611(*const)S 10 I 2923(argv)S 10 B 3107([],)S 3238(char)S 3472(*const)S 10 I 3784(envp)S 10 B ([]\))102 3974 A 1776 V 9 R 720(D)S 722(DE)S 790(ES)S 848(SC)S 900(CR)S 962(RI)S 1024(IP)S 1057(PT)S 1109(TI)S 1167(IO)S 1200(ON)S 1268(N)S 1896 V 10 B 1080(Execve)S 10 R 1420(transforms)S 1889(the)S (calling)274 2050 A 2362(process)S 2702(into)S 2896(a)S 2980(new)S 3187(process.)S 3578(The)S 3774(new)S 3981(process)S 4322(is)S 4428(constructed)S 4931(from)S 5166(an)S 2016 V 1080(ordinary)S 1449(\256le)S 1606(called)S 1875(the)S 10 I 2026(new)S 2216(process)S 2551(\256le)S 10 R 2674(.)S 2751(This)S 2957(\256le)S 3113(is)S 3207(either)S 3464(an)S 3586(executable)S 4044(object)S 4317(\256le,)S 4498(or)S 4609(a)S 4681(\256le)S 4837(of)S 4948(data)S 5143(for)S 2136 V 1080(an)S 1209(interpreter.)S 1714(An)S 1871(executable)S 2336(object)S 2616(\256le)S 2779(consists)S 3131(of)S 3249(an)S 3378(identifying)S 3853(header,)S 4182(followed)S 4575(by)S 4710(pages)S 4974(of)S 5093(data)S 2256 V 1080(representing)S 1606(the)S (initial)235 1757 A 2020(program)S 2389(\(text\))S 2636(and)S (initialized)403 2809 A 3240(data)S 3435(pages.)S (Additional)430 3741 A 4198(pages)S 4454(may)S 4654(be)S 4776(speci\256ed)S 5161(by)S 2376 V 1080(the)S 1228(header)S 1522(to)S 1625(be)S (initialized)403 1745 A 2173(with)S 2377(zero)S 2576(data.)S 2819(See)S 10 B 2990(a.out)S 10 R 3205(\(5\).)S 2544 V 1080(An)S 1231(interpreter)S 1680(\256le)S 1837(begins)S 2127(with)S 2334(a)S 2407(line)S 2586(of)S 2698(the)S 2849(form)S 3074(``#!)S 10 I 3255(interpreter)S 10 R 3691(''.)S 3838(\(Minix-vmd)S 4358(only.\))S 4649(When)S 4918(an)S 5042(inter-)S 2664 V 1080(preter)S 1351(\256le)S 1515(is)S 10 B 1617(execve)S 10 R 1913('d,)S 2056(the)S 2213(system)S 10 B 2526(execve)S 10 R 2822('s)S 2929(the)S 3086(speci\256ed)S 10 I 3478(interpreter)S 10 R 3914(,)S 3973(giving)S 4263(it)S 4353(the)S 4510(name)S 4762(of)S 4880(the)S 5037(origi-)S 2784 V 1080(nally)S 1306(exec'd)S 1600(\256le)S 1754(as)S 1863(an)S 1983(argument)S 2388(and)S 2558(shifting)S 2890(over)S 3094(the)S 3242(rest)S 3413(of)S 3522(the)S 3670(original)S 4008(arguments.)S 2952 V 1080(There)S 1353(can)S 1530(be)S 1662(no)S 1799(return)S 2077(from)S 2310(a)S (successful)414 2392 A 10 B 2843(execve)S 10 R (because)319 3160 A 3516(the)S (calling)274 3676 A 3987(core)S 4198(image)S 4481(is)S 4585(lost.)S 4817(This)S 5033(is)S 5138(the)S 3072 V 1080(mechanism)S 1563(whereby)S 1935(different)S 2308(process)S 2635(images)S 2945(become)S 3283(active.)S 3240 V 1080(The)S 1266(argument)S 10 I 1675(argv)S 10 R 1888(is)S 1984(a)S 2058(null-terminated)S 2708(array)S 2945(of)S 3058(character)S 3458(pointers)S 3811(to)S 3918(null-terminated)S 4568(character)S 4968(strings.)S 3360 V 1080(These)S 1354(strings)S (constitute)391 1655 A 2079(the)S 2235(argument)S 2648(list)S 2804(to)S 2914(be)S 3041(made)S 3291(available)S 3687(to)S 3797(the)S 3952(new)S 4152(process.)S 4536(By)S (convention,)471 4685 A 5188(at)S 3480 V 1080(least)S 1293(one)S 1467(argument)S 1876(must)S 2100(be)S 2224(present)S 2544(in)S 2651(this)S 2825(array,)S 3087(and)S 3261(the)S 3413(\256rst)S 3599(element)S 3947(of)S 4060(this)S 4234(array)S (should)267 4471 A 4767(be)S 4891(the)S 5043(name)S 3600 V 1080(of)S 1189(the)S 1337(executed)S 1720(program)S 2086(\(i.e.,)S 2293(the)S 2441(last)S (component)446 2606 A 3077(of)S 10 I 3186(name)S 10 R 3404(\).)S 3768 V 1080(The)S 1281(argument)S 10 I 1705(envp)S 10 R 1939(is)S 2050(also)S 2256(a)S 2346(null-terminated)S 3012(array)S 3265(of)S 3394(character)S 3810(pointers)S 4179(to)S 4302(null-terminated)S 4968(strings.)S 3888 V 1080(These)S 1349(strings)S 1645(pass)S 1846(information)S 2349(to)S 2455(the)S 2605(new)S 2800(process)S 3129(that)S 3307(is)S 3401(not)S 3556(directly)S 3891(an)S 4013(argument)S 4420(to)S 4525(the)S 4675(command)S 5098(\(see)S 4008 V 10 B 1080(environ)S 10 R 1410(\(7\)\).)S 4176 V 1080(Descriptors)S 1574(open)S 1798(in)S 1905(the)S (calling)274 2057 A 2360(process)S 2691(remain)S 3000(open)S 3224(in)S 3331(the)S 3483(new)S 3680(process,)S 4036(except)S 4328(for)S 4475(those)S 4716(for)S 4863(which)S 5138(the)S 4296 V 1080(close-on-exec)S 1665(\257ag)S 1841(is)S 1933(set)S 2070(\(see)S 10 B 2258(close)S 10 R 2465(\(2\)\).)S 2692(Descriptors)S 3182(that)S 3358(remain)S 3663(open)S 3883(are)S 4032(unaffected)S 4483(by)S 10 B 4608(execve)S 10 R 4888(.)S 4464 V (Ignored)313 1080 A 1426(signals)S 1738(remain)S (ignored)307 2052 A 2393(across)S 2679(an)S 10 B 2808(execve)S 10 R 3088(,)S 3147(but)S 3309(signals)S 3622(that)S 3807(are)S (caught)268 3965 A 4267(are)S 4425(reset)S 4650(to)S 4762(their)S 4981(default)S 4584 V 1080(values.)S 1417(Blocked)S 1782(signals)S 2090(remain)S 2399(blocked)S 2746(regardless)S 3184(of)S 3297(changes)S 3650(to)S 3757(the)S 3909(signal)S 4178(action.)S 4503(The)S 4689(signal)S 4958(stack)S 5194(is)S 4704 V 1080(reset)S 1296(to)S 1399(be)S (unde\256ned)396 1519 A 1940(\(see)S 10 B 2128(sigaction)S 10 R 2508(\(2\))S 2651(for)S 2794(more)S 3026(information\).)S 4872 V 1080(Each)S 1313(process)S 1646(has)S 10 I 1811(real)S 10 R 2005(user)S 2205(and)S (group)234 2382 A 2648(IDs)S 2826(and)S 3003(an)S 10 I 3130(effective)S 10 R 3499(user)S 3699(and)S (group)234 3876 A 4142(IDs.)S 4370(The)S 10 I 4559(real)S 10 R 4753(ID)S 4892(identi\256es)S 4992 V 1080(the)S 1244(person)S 1553(using)S 1811(the)S 1974(system;)S 2321(the)S 10 I 2484(effective)S 10 R 2861(ID)S 3008(determines)S 3490(his)S (access)258 3647 A 3945(privileges.)S 10 B 4432(Execve)S 10 R 4774(changes)S 5138(the)S 5112 V 1080(effective)S 1474(user)S 1682(and)S (group)234 1867 A 2141(ID)S 2288(to)S 2406(the)S 2569(owner)S 2861(of)S 2985(the)S 3149(executed)S 3548(\256le)S 3718(if)S 3821(the)S 3985(\256le)S 4155(has)S 4330(the)S (set-user-ID)455 4494 A 4990(or)S 5115(set-)S 5232 V (group-ID)375 1080 A 1480(modes.)S 1817(The)S 10 I 1999(real)S 10 R 2186(user)S 2379(ID)S 2511(is)S 2603(not)S 2756(affected.)S 5400 V 1080(The)S 1262(new)S 1455(process)S 1782(also)S 1969(inherits)S 2296(the)S 2444(following)S 2860(attributes)S 3260(from)S 3481(the)S (calling)274 3629 A 3928(process:)S 5568 V 1330(process)S 1657(ID)S 2770(see)S 10 B 2924(getpid)S 10 R 3209(\(2\))S 5688 V 1330(parent)S 1607(process)S 1934(ID)S 2770(see)S 10 B 2924(getppid)S 10 R 3265(\(2\))S 5808 V 1330(process)S (group)234 1657 A 1916(ID)S 2770(see)S 10 B 2924(getpgrp)S 10 R 3276(\(2\))S 5928 V (access)258 1330 A (groups)273 1613 A 2770(see)S 10 B 2924(getgroups)S 10 R 3365(\(2\))S 6048 V 1330(working)S 1690(directory)S 2770(see)S 10 B 2924(chdir)S 10 R 3170(\(2\))S 6168 V 1330(root)S 1517(directory)S 2770(see)S 10 B 2924(chroot)S 10 R 3220(\(2\))S 6288 V 1330(control)S 1640(terminal)S 2770(see)S 10 B 2924(tty)S 10 R 3058(\(4\))S 6408 V 1330(alarm)S 1585(timer)S 2770(see)S 10 B 2924(alarm)S 10 R 3197(\(2\))S 6528 V 1330(\256le)S 1484(mode)S 1732(mask)S 2770(see)S 10 B 2924(umask)S 10 R 3225(\(2\))S 6648 V 1330(signal)S 1595(mask)S 2770(see)S 10 B 2924(sigaction)S 10 R 3320(\(2\),)S 10 B 3488(sigprocmask)S 10 R 4046(\(2\))S 6816 V 1080(When)S 1345(the)S 1493(executed)S 1876(program)S 2242(begins,)S 2554(it)S 2635(is)S 2727(called)S 2993(as)S 3102(follows:)S 6984 V 10 B 1440(int)S 1583(main\(int)S 10 I 1978(argc)S 10 B 2162(,)S 2212(char)S 2433(*const)S 10 I 2732(argv)S 10 B 2916([],)S 3034(char)S 3255(*const)S 10 I 3554(envp)S 10 B ([]\);)136 3744 A 7224 V 1440(exit\(main\()S 10 I 1883(argc)S 10 B 2067(,)S 10 I 2117(argv)S 10 B 2301(,)S 10 I 2351(envp)S 10 B (\)\);)102 2541 A 7392 V 10 R 1080(where)S 10 I 1365(argc)S 10 R 1587(is)S 1692(the)S 1853(number)S 2198(of)S 2320(elements)S 2716(in)S 10 I 2832(argv)S 10 R 3054(\(the)S 3249(``arg)S (count''\))325 3484 A 3847(and)S 10 I 4030(argv)S 10 R 4252(is)S 4358(the)S 4520(array)S 4767(of)S 4890(character)S 7512 V 1080(pointers)S 1429(to)S 1532(the)S 1680(arguments)S 2124(themselves.)S 7903 V 720(Page)S 941(1)S 2669(\()S 2711(May)S 2920(22,)S (1986)200 3070 A 3278(\))S 4455(September)S 4911(13,)S (1996)200 5061 A 8143 V EP %%Page: 2 2 BP /slant 0 def /height 0 def 480 V 10 R 720(EXECVE)S 1127(\()S 1169(2)S 1227(\))S 2696(Eighth)S (Edition)296 2989 A 4720(EXECVE)S 5127(\()S 5169(2)S 5227(\))S 960 V 10 I 1080(Envp)S 10 R 1315(is)S 1410(a)S 1483(pointer)S 1796(to)S 1902(an)S 2025(array)S 2261(of)S 2373(strings)S 2669(that)S (constitute)391 2848 A 3267(the)S 10 I 3418(environment)S 10 R 3949(of)S 4061(the)S 4212(process.)S 4593(A)S 4695(pointer)S 5009(to)S 5116(this)S 1080 V 1080(array)S 1317(is)S 1413(also)S 1604(stored)S 1879(in)S 1986(the)S 2138(global)S 2418(variable)S 2772(``environ''.)S 3294(Each)S 3525(string)S 3783(consists)S 4130(of)S 4243(a)S 4317(name,)S 4589(an)S 4713(=,)S 4824(and)S 4998(a)S 5071(null-)S 1200 V 1080(terminated)S 1552(value.)S 1861(The)S 2059(array)S 2308(of)S 2433(pointers)S 2798(is)S 2906(terminated)S 3378(by)S 3519(a)S 3606(null)S 3804(pointer.)S 4181(The)S 4380(shell)S 10 B 4612(sh)S 10 R 4707(\(1\))S 4867(passes)S 5166(an)S 1320 V 1080(environment)S 1622(entry)S 1863(for)S (each)185 2015 A 2234(global)S 2519(shell)S 2742(variable)S 3100(de\256ned)S 3429(when)S 3680(the)S 3836(program)S 4210(is)S 4310(called.)S 4634(See)S 10 B 4813(environ)S 10 R 5143(\(7\))S 1440 V 1080(for)S 1223(some)S (conventionally)597 1460 A 2082(used)S 2291(names.)S 1608 V 9 R 720(R)S 722(RE)S 784(ET)S 842(TU)S 900(UR)S 968(RN)S 1030(N)S 1121(V)S 1123(VA)S 1191(AL)S 1259(LU)S 1317(UE)S 1385(E)S 1728 V 10 R 1080(If)S 10 B 1174(execve)S 10 R 1480(returns)S 1786(to)S 1890(the)S (calling)274 2040 A 2341(process)S 2670(an)S 2792(error)S 3016(has)S 3177(occurred;)S 3585(the)S 3735(return)S 4003(value)S (will)157 4248 A 4432(be)S 10 R-1 4554(-)S 10 R 4611(1)S 4688(and)S 4860(the)S 5010(global)S 1848 V 1080(variable)S 10 B (errno)241 1430 A 10 R (will)157 1696 A 1878(contain)S 2199(an)S 2319(error)S 2541(code.)S 2016 V 9 R 720(E)S 722(ER)S 780(RR)S 842(RO)S 904(OR)S 972(RS)S 1034(S)S 2136 V 10 B 1080(Execve)S 10 R (will)157 1407 A 1589(fail)S 1749(and)S 1919(return)S 2185(to)S 2288(the)S (calling)274 2436 A 2735(process)S 3062(if)S 3149(one)S 3319(or)S 3428(more)S 3660(of)S 3769(the)S 3917(following)S 4333(are)S 4482(true:)S 2304 V 1080([ENOTDIR])S 1830(A)S (component)446 1928 A 2399(of)S 2508(the)S 2656(path)S 2854(pre\256x)S 3114(is)S 3206(not)S 3359(a)S 3429(directory.)S 2472 V ([ENAMETOOLONG])916 1080 A 2592 V 1830(The)S 2012(path)S 2210(name)S (exceeds)319 2453 A 2797(PATH_MAX)S 3371(characters.)S 2760 V 1080([ENOENT])S 1830(The)S 2012(new)S 2205(process)S 2532(\256le)S 2686(does)S 2895(not)S 3048(exist.)S 2928 V 1080([ELOOP])S 1830(Too)S 2033(many)S 2297(symbolic)S 2706(links)S 2942(were)S (encountered)492 3180 A 3713(in)S 3833(translating)S 4300(the)S 4465(pathname.)S 4948(\(Minix-)S 3048 V 1830(vmd\))S 3216 V 1080([EACCES])S 1830(Search)S 2130(permission)S 2596(is)S 2688(denied)S 2981(for)S 3124(a)S (component)446 3194 A 3665(of)S 3774(the)S 3922(path)S 4120(pre\256x.)S 3384 V 1080([EACCES])S 1830(The)S 2012(new)S 2205(process)S 2532(\256le)S 2686(is)S 2778(not)S 2931(an)S 3051(ordinary)S 3417(\256le.)S 3552 V 1080([EACCES])S 1830(The)S 2012(new)S 2205(process)S 2532(\256le)S 2686(mode)S 2934(denies)S 3216(execute)S 3549(permission.)S 3720 V 1080([ENOEXEC])S 1830(The)S 2014(new)S 2209(process)S 2538(\256le)S 2694(has)S 2855(the)S 3005(appropriate)S (access)258 3491 A 3776(permission,)S 4269(but)S 4424(has)S 4585(an)S 4708(invalid)S 5015(magic)S 3840 V 1830(number)S 2162(in)S 2265(its)S 2385(header.)S 4008 V 1080([ENOMEM])S 1830(The)S 2012(new)S 2205(process)S 2532(requires)S 2882(more)S 3114(\(virtual\))S 3470(memory)S 3830(than)S 4028(is)S 4120(currently)S 4509(available.)S 4176 V 1080([E2BIG])S 1830(The)S 2023(number)S 2366(of)S 2486(bytes)S 2734(in)S 2848(the)S 3007(new)S 3212(process's)S 3624(argument)S 4041(list)S 4201(is)S 4305(larger)S 4578(than)S 4788(the)S 4948(system-)S 4296 V 1830(imposed)S 2210(limit)S 2440(ARG_MAX.)S 3028(The)S 3225(limit)S 3455(in)S 3573(the)S 3736(system)S 4054(as)S 4177(released)S 4547(is)S (4096)200 4653 A 4892(bytes)S 5143(for)S 4416 V 1830(16-bit)S 2095(Minix,)S (16384)250 2390 A 2665(bytes)S 2902(for)S 3045(32-bit)S 3310(Minix,)S 3605(and)S 3775(unlimited)S 4185(for)S 4328(Minix-vmd.)S 4584 V 1080([EFAULT])S 10 I 1830(Path)S 10 R 2036(,)S 10 I 2086(argv)S 10 R 2286(,)S 2336(or)S 10 I 2445(envp)S 10 R 2660(point)S 2891(to)S 2994(an)S (illegal)252 3114 A 3391(address.)S 4752 V 1080([EIO])S 1830(An)S 1978(I/O)S 2138(error)S 2360(occurred)S 2738(while)S 2987(reading)S 3314(from)S 3535(the)S 3683(\256le)S 3837(system.)S 4920 V 9 R 720(C)S 722(CA)S 784(AV)S 852(VE)S 920(EA)S 978(AT)S 1046(TS)S 1104(S)S 5040 V 10 R 1080(If)S 1181(a)S 1259(program)S 1633(is)S 10 I 1733(setuid)S 10 R 2006(to)S 2117(a)S (non-super-user,)629 2195 A 2857(but)S 3018(is)S 3118(executed)S 3509(when)S 3760(the)S 3916(real)S 10 B 4101(uid)S 10 R 4274(is)S (``root'',)323 4374 A 4730(then)S 4936(the)S 5093(pro-)S 5160 V 1080(gram)S 1312(has)S 1471(some)S 1708(of)S 1817(the)S 1965(powers)S 2281(of)S 2390(a)S 2460(super-user)S 2905(as)S 3014(well.)S 5328 V 9 R 720(S)S 722(SE)S 774(EE)S 832(E)S 913(A)S 915(AL)S 983(LS)S 1041(SO)S 1093(O)S 5448 V 10 B 1080(exit)S 10 R 1237(\(2\),)S 10 B 1405(fork)S 10 R 1590(\(2\),)S 10 B 1758(execl)S 10 R 1971(\(3\),)S 10 B 2139(environ)S 10 R 2469(\(7\).)S 7903 V 720(September)S 1176(13,)S (1996)200 1326 A 2669(\()S 2711(May)S 2920(22,)S (1986)200 3070 A 3278(\))S 4990(Page)S 5211(2)S 8143 V EP %%Trailer %%DocumentFonts: Times-Roman Times-Bold Times-Italic %%Pages: 2