sun's longitude:242 49 12.92 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/delete.php:소스보기  
알파문서
자주 잊어먹거나, 메모해 둘 필요성이 있는 팁이나 문서, 기타 등등
[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
 ★ 글 지우기 항목입니다. 한번 더 생각하시고 결정하십시오.!!!
제목 140 : [kernel] max open file and FD
 이름  산이 [홈]http://linuxchannel.net/
[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"
2006년 01월 01일 03:38:50 일(새벽)  from 58.231.28.56
0
암호: 공용 보안 SSL 서버가 준비되기 전까지는 off 합니다

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

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