手上一个小项目,需要获取一个当前Linux操作系统下,一个进程能打开的最大文件数目,在《linux程序设计 第4版》 85页有说:
任何一个运行中的程序能够同时打开的文件数是有限制的,这个限制通常是由limits.h头文件中的常量OPEN_MAX定义的,它的值随系统的不同而不同,但POSIX要求它至少为16!
但我尝试使用该宏时,却已经找不到该宏的定义了,查了一下资料,才知道2.6.24以后的内核,OPEN_MAX不在linux/limits.h里面定义了。传送门
然后我查看了一下本地的头文件,确实没发现OPEN_MAX的定义了!
命令:
grep -rn --col OPEN_MAX /usr/include