Server for Information Technologies óÅÒ×ÅÒ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ
ãÅÎÔÒÏÍ éÎÆÏÒÍÁÃÉÏÎÎÙÈ ôÅÈÎÏÌÏÇÉÊ
(095) 932-9212, 932-9213, 939-0783
E-mail: info@citforum.ru
óÅÒ×ÅÒ ÓÏÄÅÒÖÉÔ ÍÏÒÅ(!) ÁÎÁÌÉÔÉÞÅÓËÏÊ ÉÎÆÏÒÍÁÃÉÉ CIT Forum CD-ROM

SBRK(3)
XENIX System V (21 ÉÀÎÑ 1987)

îáú÷áîéå
sbrk, brk - pacÐpeÄeÌÑeÔ ÐaÍÑÔØ × ceÇÍeÎÔe ÄaÎÎÙx

óéîôáëóéó

          char *sbrk (incr)
          int incr;

          int brk (addr)
          char *addr;

ïðéóáîéå
Sbrk É brk ÉcÐoÌØÚyÀÔcÑ ÄÌÑ ÄÉÎaÍÉÞecËoÇo ÉÚÍeÎeÎÉÑ paÚÍepa ceÇÍeÎÔa ÄaÎÎÙx ÔeËyÝeÇo ÐpoÃecca; cÍ. exec(3). éÚÍeÎeÎÉe paÚÍepa ÄeÌaeÔcÑ ÐyÔeÍ ycÔaÎo×ËÉ ÄÌÑ ÔeËyÝeÇo ÐpoÃecca ÇpaÎÉÃÙ ceÇÍeÎÔa ÄaÎÎÙx, Ô.e. aÄpeca Ðep×oÊ ÑÞeÊËÉ ÐaÍÑÔÉ, ÎaxoÄÑÝeÊcÑ Úa ËoÎÃoÍ ceÇÍeÎÔa ÄaÎÎÙx ÐpoÃecca. PaÚÍep ceÇÍeÎÔa y×eÌÉÞÉ×aeÔcÑ, ecÌÉ ÇpaÎÉÃa ×oÚpacÔaeÔ.

Sbrk ÄoÂa×ÌÑeÔ incr ÂaÊÔo× Ë ÚÎaÞeÎÉÀ ÇpaÎÉÃÙ ceÇÍeÎÔa É cooÔ×eÔcÔ×yÀÝÉÍ oÂpaÚoÍ ÉÚÍeÎÑeÔ ×ÙÄeÌeÎÎoe ceÇÍeÎÔy ÍecÔo. Incr ÍoÖeÔ ÂÙÔØ oÔpÉÃaÔeÌeÎ, ÞÔo yÍeÎØÛaeÔ ÚÎaÞeÎÉe ÇpaÎÉÃÙ É paÚÍep ceÇÍeÎÔa.

B cÌyÞae ÂoÌØÛoÊ ÍoÄeÌÉ ÐaÍÑÔÉ ÄÌÑ 286 ÐpoÃeccopa, ecÌÉ incr ÂoÌØÛe ÞÉcÌa ÂaÊÔo×, ocÔa×ÛÉxcÑ Äo ËoÎÃa ceÇÍeÎÔa, sbrk a×ÔoÍaÔÉÞecËÉ paÚÍeÝaeÔ ÔpeÂyeÍÙe ÂaÊÔÙ × Îo×oÍ ceÇÍeÎÔe ÄaÎÎÙx. TeÍ caÍÙÍ ÇapaÎÔÉpyeÔcÑ ÐpÉÎaÄÌeÖÎocÔØ ÚaÐpoÛeÎÎÙx ÂaÊÔo× oÄÎoÍy ceÇÍeÎÔy. EcÌÉ incr oÔpÉÃaÔeÌeÎ É eÇo aÂcoÌÀÔÎoe ÚÎaÞeÎÉe pa×Îo ÄÌÉÎe ÔeËyÝeÇo ceÇÍeÎÔa ÄaÎÎÙx, ceÇÍeÎÔ a×ÔoÍaÔÉÞecËÉ oc×oÂoÖÄaeÔcÑ. EcÌÉ incr oÔpÉÃaÔeÌeÎ É eÇo aÂcoÌÀÔÎoe ÚÎaÞeÎÉe ÂoÌØÛe ÄÌÉÎÙ ÔeËyÝeÇo ceÇÍeÎÔa, ceÇÍeÎÔ oc×oÂoÖÄaeÔcÑ É ÄoÐoÌÎÉÔeÌØÎÙe ÂaÊÔÙ yÄaÌÑÀÔcÑ ÉÚ ÐpeÄÙÄyÝeÇo ceÇÍeÎÔa ÄaÎÎÙx. ðpeÄÙÄyÝÉÍ Ñ×ÌÑeÔcÑ ceÇÍeÎÔ, coÄepÖaÝÉÊ ÄaÎÎÙe, ×ÙÄeÌeÎÎÙe ÐocÌeÄÎÉÍ ×ÙÚo×oÍ sbrk, Îe oÔÎocÑÝÉÍcÑ Ë ÄaÎÎoÍy ceÇÍeÎÔy.

Sbrk a×apÉÊÎo Úa×epÛaeÔcÑ É paÚÍep ceÇÍeÎÔa Îe ÉÚÍeÎÑeÔcÑ, ecÌÉ ×ÙÐoÌÎÑeÔcÑ xoÔÑ ÂÙ oÄÎo ÉÚ cÌeÄyÀÝÉx ycÌo×ÉÊ:

[ENOMEM]
úaÐpoÛeÎo ÂoÌØÛe ÐaÍÑÔÉ, ÞeÍ ÄoÐycËaeÔ cÉcÔeÍa (cÍ. ulimit(3)).

ðoÐÙÔËa oc×oÂoÄÉÔØ ÐaÍÑÔÉ ÂoÌØÛe, ÞeÍ ee ÂÙÌo y ÐpoÃecca.

ðoÐÙÔËa ycÔaÎo×ÉÔØ ÇpaÎÉÃy ceÇÍeÎÔa ÍeÎØÛe Ðep×oÎaÞaÌØÎoÊ. ðep×oÎaÞaÌØÎaÑ ÇpaÎÉÃa ÜÔo ÇpaÎÉÃa × ÍoÍeÎÔ cÔapÔa ÐpoÃecca ÐÌÀc ÄÌÉÎa paÚÄeÌÑeÍÙx ÄaÎÎÙx, ËoÔopÙe ÂÙÌÉ ×ÙÄeÌeÎÙ ÐocÌe ÜÔoÇo.

Brk ycÔaÎa×ÌÉ×aeÔ ÇpaÎÉÃy ceÇÍeÎÔa pa×ÎoÊ ÚÎaÞeÎÉÀ addr É cooÔ×eÔcÔ×yÀÝÉÍ oÂpaÚoÍ ÉÚÍeÎÑeÔ ×ÙÄeÌeÎÎoe ceÇÍeÎÔy ÍecÔo. Brk Úa×epÛaeÔcÑ c oÛÉÂËoÊ, ecÌÉ yËaÚaÎÎÙÊ aÄpec ÚaÄaeÔ ÎecyÝecÔ×yÀÝÉÊ ceÇÍeÎÔ ÉÌÉ Ðpe×ÙÛaeÔ ÄoÐycÔÉÍÙÊ cÉcÔeÍoÊ ÐpeÄeÌ.

BOú÷PAýAEíOE úîAþEîéE
B cÌyÞae ycÐeÛÎoÇo Úa×epÛeÎÉÑ sbrk ×oÚ×paÝaeÔ yËaÚaÔeÌØ Îa ÎaÞaÌo ×ÙÄeÌeÎÎoÇo ÍecÔa, a brk ×oÚ×paÝaeÔ 0. éÎaÞe ×oÚ×paÝaeÔcÑ ÚÎaÞeÎÉe -1 É × errno ÚaÎocÉÔcÑ ËoÄ oÛÉÂËÉ. B cÌyÞae ÂoÌØÛoÊ ÍoÄeÌÉ ÐaÍÑÔÉ sbrk coÚÄaeÔ Îo×ÙÊ ceÇÍeÎÔ ÄaÎÎÙx É ×oÚ×paÝaeÔ eÇo cÔapÔo×ÙÊ aÄpec.

óí. ôáëöå
exec(3)

úAíEþAîéñ
B cÌyÞae ÂoÌØÛoÊ ÍoÄeÌÉ ÐaÍÑÔÉ ÄÌÑ 286 ÐpoÃeccopa ×ÙÚo× "sbrk(0)" Îe oÂÑÚaÔeÌØÎo ×oÚ×paÝaeÔ cÔapÔo×ÙÊ aÄpec cÌeÄyÀÝeÇo ×ÙÚo×a sbrk. B ÞacÔÎocÔÉ, ÔaË ÂyÄeÔ, ecÌÉ cÌeÄyÀÝÉÊ ×ÙÚo× coÚÄaeÔ Îo×ÙÊ ceÇÍeÎÔ ÄaÎÎÙx. BoÚ×paÝaeÍoe ×ÙÚo×oÍ "sbrk(0)" ÚÎaÞeÎÉe cÌeÄyeÔ ÉcÐoÌØÚo×aÔØ ÄÌÑ oÐpeÄeÌÎÉÑ ÉcxoÄÎoÊ ÇpaÎÉÃÙ ceÇÍeÎÔa ÄaÎÎÙx.
Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT