프로그램

malloc 2G 이상 메모리 할당

고요한하늘... 2013. 11. 15. 10:48

http://linuxtoolkit.blogspot.kr/2011/08/memory-management-preventing-kernel.html?m=1

 

메모리를 2G Bit 이상 한번에 할당 받기 위해서는 아래 옵션을 수정해야 한다.

옵션은

/etc/sysctl.conf 또는

/etc/sysctl.d/myapp.conf

에 위치해 있다.

 

vm.overcommit_memory 은 3가지 타입이 있다.

0 : 조건 없이 최대 할당( 시스템에서 악영향을 줄수 있다. 권장X )

1 :  default 로써 2G까지 할당할수 있다.

2 : vm.overcommit_ratio 와 같이 설정을 하는데 설정된 값 만큼 설정( 40 설정시 의미  = 40 / 100


ex>  

vm.overcommit_memory = 2
vm.overcommit_ratio = 40

 

 

메모리를 위와 같은 방법으로 설정을 할수 있고

2G 이상의 파일에 대해서 handling 할때

file offset 같은 경우 기본이 int 형이기 때문에  큰 파일에 대해서는 제대로 동작하지 않는다.

아래 컴파일 옵션을 추가할 경우

ftell을 ftell64와 같이 사용할수 있도록 지원한다.

 

-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

'프로그램' 카테고리의 다른 글

prefork  (0) 2014.05.14
hadoop to local-server  (0) 2014.01.03
core dump 남기기  (0) 2013.04.29
시스템 명령어 df -h dmesg  (0) 2013.04.08
ssh 권한 관련 StrictModes  (0) 2012.12.12