sun's longitude:242 43 45.78 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  
알파문서
자주 잊어먹거나, 메모해 둘 필요성이 있는 팁이나 문서, 기타 등등
[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
140 번 글: [kernel] max open file and FD
글쓴이: 산이 [홈페이지] 글쓴날: 2006년 01월 01일 03:38:50 일(새벽) 조회: 3615
[max open file and file descriptor]

-- san2@2005.10.28

process limits  <=  user limits  <=  kernel limits


1. process limits

 linux-2.4.x/include/linux/limits.h
 {
	NR_OPEN  // max open files per a process
	OPEN_MAX // max open FD number per a process, refer FD_SETSIZE
 }

 /usr/include/bits/types.h or /usr/include/bits/typesizes.h
 {
	__FD_SETSIZE
 }


2. user limits

 linux-2.4.x/include/linux/fs.h
 {
	INR_OPEN  // max open files per a user, same as `ulimit -n'
 }

 ulimit
 {
	ulimit -n // max open files, same as INR_OPEN
	ulimit -u // refer NR_OPEN
 }


3. kernel limits

 linux-2.4.x/include/linux/fs.h
 {
	NR_FILE  // max open files at same time
 }

 /proc/sys/fs/file-max
 {
	file-max  // max open files
 }


4. tuning

 1) /proc/sys/fs/file-max or fs.file-max in /etc/sysctl.conf file

    - file-max: phycical memory(KB) / 8KB 
    - file-max: physical memory(KB) * 10% (recommand)
    - fs.file-max setting
      512M =>  65536
        1G => 102400
        2G => 204800
        4G => 409600

 2) The size of `fd_set' becomes about 8KB of memory.

 3) if `process limits == user limits', then

	FD=16384




 4) compile application

    bash: export CPPFLAGS="-DFD_SETSIZE=16384"
    csh: setenv CPPFLAGS "-DFD_SETSIZE=16384"

 
이전글 : [tip] 주석(#), 공백 라인을 제외하고 출력해보기
다음글 : make -- FD_SETSIZE  
 from 58.231.28.56
JS(Redhands)Board 0.4 +@

|글쓰기| |답장쓰기| |수정| |삭제|
|이전글| |다음글| |목록보기|
인쇄용 

apache lighttpd linuxchannel.net 
Copyright 1997-2024. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds