`

确定文件描述符数

 
阅读更多
#include "apue.h"
#include <errno.h>
#include <limits.h>

#ifdef OPEN_MAX
static long openmax = OPEN_MAX;
#else
static long openmax = 0;
#endif

#define OPEN_MAX_GUESS 256

long open_max(void)
{
	if(openmax == 0){
		errno = 0;
		if((openmax= sysconf(_SC_OPEN_MAX)) < 0){
			if(errno == 0)
				openmax=OPEN_MAX_GUESS;
			else
				err_sys("sysconf error for _SC_OPEN_MAX");
		}
	}

	return openmax;
}

 

分享到:
评论

相关推荐

    USB描述符生成工具

    2. **dt2_4**:这个文件名没有提供足够的信息来确定其具体用途,但根据上下文,它可能是一个与USB描述符相关的文件,比如一个生成的描述符模板或者配置文件。可能需要解压缩并查看才能了解其内容。 在开发USB设备时...

    Linux内核中的文件描述符.docx

    在Linux内核中,文件描述符是操作系统用来标识和跟踪进程打开文件的一种机制。它是一个非负整数,用于区分进程中的不同打开文件。当进程通过`open`系统调用打开一个文件时,内核会创建一个`file`结构实例,这个实例...

    进程间传递描述符

    3. 描述符在传递过程中会有一个“在飞行中”的状态,即发送进程尝试关闭描述符时,内核会保证为接收进程保持该描述符打开状态,直到接收进程确认接收完毕。 4. 描述符通过辅助数据的方式发送,这意味着在使用sendmsg...

    unix domain socket传递描述符

    在标题中提到的"Unix domain socket传递描述符"是指一种高级特性,允许通过Unix域套接字在两个进程间传递文件描述符(file descriptor)。文件描述符是操作系统用来标识打开文件或资源的唯一数字。这种传递允许一个...

    80x86 的进程管理与切换、描述符

    描述符表则是存储描述符的集合,可以是全局描述符表(GDT)或局部描述符表(LDT)。 在实际的进程管理中,CPU通过加载选择符到段寄存器中来访问特定的段。当段寄存器被加载时,CPU会同时检查描述符表,获取对应的...

    SHOT特征描述符提取.rar

    在给定的“SHOT特征描述符提取.rar”压缩包中,包含的资源显然是为了演示如何使用PCL(Point Cloud Library)这个开源库来提取SHOT特征,并将结果存储为TXT文本文件。现在,我们将详细讨论SHOT特征、PCL库以及如何...

    易语言源码数据段描述符属性查看易语言源码.rar

    本压缩包文件“易语言源码数据段描述符属性查看易语言源码.rar”包含了与易语言源码相关的数据段描述符属性查看的源代码。数据段描述符是计算机系统中处理内存管理和访问权限的关键部分,特别是在保护模式下运行的...

    EBADFD(解决方案).md

    如果已经确定某个文件描述符无效,可以采取关闭该文件描述符并重新打开文件的方法来获取一个新的有效文件描述符。以下是一个使用C语言实现的示例代码: ```c #include #include #include #include int main() ...

    深入理解socket中的select模型

    之后,程序需要遍历文件描述符集合,使用FD_ISSET()来确定是哪些文件描述符发生了变化。 select模型的优势在于可以同时处理多个网络连接,而不需要为每一个socket创建一个单独的线程或进程。它极大地提高了资源的...

    ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 解决方法.txt

    ### ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 解决方法 #### 错误概述 ORA-12514 是一个常见的 Oracle 数据库错误,当客户端尝试连接到数据库服务器时,可能会遇到这个问题。此错误通常发生在 ...

    matlab开发-FDGFDBWM通用Fourier描述符的最小实现

    1. `gfd.m`:这是一个MATLAB函数文件,很可能包含了实现Fourier描述符的主要算法。用户可以通过调用这个函数并传入相应的参数,如图像数据或形状轮廓,来计算Fourier描述符。 2. `gfd_example.m`:这是演示或测试`...

    26_如何选择合适的分区数 - 2(csdn)————程序.pdf

    - 通过`jps`命令获取Kafka进程的PID,然后使用`lsof -p &lt;PID&gt;`可以查看进程占用的文件描述符数量,确认问题是否由文件描述符限制引起。 - 要解决这个问题,可以尝试提高系统的文件描述符限制,例如使用`ulimit -n ...

    用lsof恢复删除的文件

    lsof,全称为"List Open Files",是一个在Unix-like操作系统中广泛使用的命令行工具,用于列出系统中所有当前被打开的文件,包括由哪些进程打开,以及相关的文件描述符信息。这个工具在系统管理和故障排查中非常有用...

    Linux中select函数使用详解.zip_Linux中select函数使用详解

    当`select`返回时,可以通过检查`readfds`、`writefds`和`exceptfds`中的哪些位被置1,来确定哪些文件描述符满足条件。 在实际应用中,`select`函数常用于网络编程,例如在服务器端处理多个客户端的连接请求。然而...

    UNIXLinux环境高级编程.pptx

    - **dup() & dup2()**: 复制一个文件描述符,dup2()还可以用来将一个文件描述符替换另一个。 - **fcntl()**: 控制文件描述符,如设置文件状态标志、获取文件锁等。 - **lockf() & flock()**: 提供文件锁定功能,...

    多路IO复用1

    检测满足条件的文件描述符通常意味着确定哪些文件描述符已经准备就绪,可以进行读写操作。这通常涉及到对文件描述符集合的操作,比如使用`select`、`poll`或`epoll`等机制。开发者需要编写相应的业务逻辑代码来处理...

    C语言中对文件最基本的读取和写入函数

    在成功打开文件后,open()函数会返回一个文件描述符。 - `buf`:指向内存缓冲区的指针,读取的数据将存储在这里。 - `count`:欲读取的字节数。 当read()函数成功执行时,它会将文件中的数据复制到指定的缓冲区,并...

    select模型

    当`select`返回后,我们可以通过检查返回值和修改后的文件描述符集来确定哪些描述符已经准备就绪。 6. **事件驱动(Event-Driven)**: `select`模型属于事件驱动编程的一部分,因为它会根据文件描述符的状态变化...

    Android Selcet模型

    它不支持水平触发(Level Triggered),这意味着即使一个文件描述符已经就绪,`select()`返回后,还需要再次调用`select()`来确认该文件描述符是否仍然就绪。此外,`select()`在处理大量文件描述符时效率较低,因为...

Global site tag (gtag.js) - Google Analytics