Linuxの備忘録とか・・・(目次へ)Linuxの備忘録とか・・・(目次へ)プロセスのオープンファイル数fopenではnr=0で、files->fdt[fdt->max_fds]の空きインデックスを走査します。dup2システムコールではnrが任意のインデックスとなりファイルID取得を試みます。ファイルIDがtsk->signal->rlim[RLIMIT_NOFILE].rlim_curを超えてれば取得できません。sysctl_nr_openなら、expand_fdtable()で改めてfiles->fdt[]を拡張し取得します。ACCESS_ONCE(tsk->signal->rlim[limit].rlim_cur);}プロセスのデフォルトのRLIMIT_NOFILEのrlim_curは1024/rlim_maxは4096です。.proc_readコールバックで、0からRLIM_NLIMITSのtask->signal->rlim[]のrlim_cur/rlim_maxを表示しますが、proc_writeコールバックは実装されません。rlimit(RLIMIT_NOFILE)時での、files->fdt[]の拡張最大値。\}子プロセス作成時、copy_process()からcopy_signa()がコールされ、current->signal->rlimが新規プロセスに複写されます。nr;}tsk->signal->rlimにcurrent->signal->rlimを複写します。・CAP_SYS_RESOURCEケーパビリティを有してなければ、setrlimitシステムコールでのcurrent->signal->rlim[RLIMIT_NOFILE]の設定は、元のrlim_max以下でなければなりません。・ファイル数制約は、プロセス毎におけるファイルID以外に、システム(CPU単位)としてファイルその物の制約も実装されています。ノースAdsense広告情報が設定されていません。