Scroll to navigation

BRK(2) 리눅스 프로그래머 매뉴얼 BRK(2)

이름

brk, sbrk - 데이터 세그먼트 크기를 변경한다.

사용법

#include <unistd.h>

int brk(void *end_data_segment);

void *sbrk(ptrdiff_t increment);

설명

brk은 데이터 세그먼트의 끝을 end_data_segment으로 지정된 값으로 설정한다. end_datasegment는 텍스트 세그먼트의 끝보다 커야 하며 스택의 끝보다 16kB 앞에 있어야 한다.

sbrkincrement 바이트만큼 프로그램의 데이터 공간을 증가시킨다. sbrk는 시스템 콜이 아니며, 단지 C 라이브러리 레퍼(wrapper) 함수이다.

반환값

성공시, brk는 0을 리턴하며, sbrk는 새로운 영역의 시작을 가리키는 포인터를 리턴한다. 에러시, -1이 리턴되며, errnoENOMEM 으로 설정된다.

호환

BSD 4.3 brksbrk는 C 표준에 정의되어 있지 않으며 POSIX.1 표준에서도 제외되었다. (paragraphs B.1.1.1.3과 B.8.3.3 참조하라)

관련 항목

execve(2), getrlimit(2), malloc(3)

역자

정강훈 <skyeyes@soback.kornet.net>, 2000년 5월 1일

1993년 7월 21일 리눅스 0.99.11