select中文件描述符上限为什么是1024?
一、两个1024
select中存放文件描述符的数组大小FD_SETSIZE为1024
进程的文件描述符上限默认是1024,正是因为这个原因,select设计时才把数组大小设计为1024
二、问题来了
进程的文件描述符上限是可以手动修改的
# 查看进程的文件描述符上限
ulimit -n# 修改进程的文件描述符上限为2048,临时修改,只对当前shell有效
ulimit -SHn 2048# 永久修改:编辑/etc/security/limits.conf
vi /etc/security/limits.conf
* hard nofile 65536
* soft nofile 65536
但是select的数组大小改不了 (╯‵□′)╯︵┻━┻,要改只能重新编译内核
三、扩展一下
除了每个进程的文件描述符有上限以外,系统还有一个总的上限,默认是100262
# 查看系统的文件描述符上限,方法一
sysctl -a | grep file-max# 查看系统的文件描述符上限,方法二
cat /proc/sys/fs/file-max
# 修改系统的文件描述符上限
sysctl -w fs.file-max=2048
# 使修改生效
sysctl -p
select中文件描述符上限为什么是1024?相关推荐
- select、poll、epoll的文件描述符上限问题
select.poll.epoll是三个常用的I/O复用,之前使用过程中一直没很深入思考,只知道①select有文件描述符上限 ②poll是select的改进,去掉了文件描述符上限 ③epoll是前两 ...
- python中文件描述符_Python中的描述符
python中文件描述符 In Python, a class that implements a get, set or delete methods for an object is called ...
- linux 文件指针,Linux中文件描述符fd与文件指针FILE*互相转换实例解析
本文研究的主要是Linux中文件描述符fd与文件指针FILE*互相转换的相关内容,具体介绍如下. 1.文件描述符fd的定义:文件描述符在形式上是一个非负整数.实际上,它是一个索引值,指向内核为每一个进 ...
- linux中文件描述符fd和文件指针flip的理解
整理自:http://www.cnblogs.com/Jezze/archive/2011/12/23/2299861.html 简单归纳:fd(file descriptor)只是一个整数,在ope ...
- UNIX中文件描述符和文件指针
文件描述符 在C程序中,文件由文件指针或者文件描述符表示.ISO C的标准I/0库函数(fopen, fclose, fread, fwrite, fscanf, fprintf等)使用文件指针,UN ...
- Linux中文件描述符1,linux内核中的文件描述符(一)--基础知识简介
原标题:linux内核中的文件描述符(一)--基础知识简介 Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blo ...
- 在c语言中文件的指针是什么,C语言中文件描述符和文件指针的本质区别
1,首先了解进程运行时默认打开的文件指针以及打开的文件 /* Standard streams. / extern struct _IO_FILE stdin; / Standard input st ...
- k8s中文件描述符与线程限制
背景 linux中为了防止进程恶意使用资源,系统使用ulimit来限制进程的资源使用情况(包括文件描述符,线程数,内存大小等).同样地在容器化场景中,需要限制其系统资源的使用量. 限制方法 ulimi ...
- Select()系统调用及文件描述符集fd_set的应用
在网络程序中,一个进程同时处理多个文件描述符是很常见的情况.select()系统调用可以使进程检测同时等待的多个I/O设备,当没有设备准备好时,select()阻塞,其中任一设备准备好时,select ...
最新文章
- 半导体与智能汽车行业解决方案
- python的官方网站地址是什么-规范化Django/Python中的街道地址
- tkinter python 句柄_微云收藏 python tkinter.after
- getresourceasstream方法_【设计模式】第三篇:一篇搞定工厂模式【简单工厂、工厂方法模式、抽象工厂模式】...
- Awesome Bioinformatics:假期了,收藏学习吧!
- mysql function 事务_MySQL 事务
- HTTP请求时常见的请求方式与状态码
- BZOJ4602: [Sdoi2016]齿轮(并查集 启发式合并)
- ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
- redis lpush WRONGTYPE Operation against a key holding the wrong kind of value
- 程序员30+后的困惑焦虑,出路在哪里?
- nuc977 linux i9341 2.8寸lcd配置
- 计算机网络:学习笔记(持续更新)
- 大众点评评论抓取-CSS加密破解
- Android常用adb命令总结
- 最笨的办法处理wos国家字段
- Blender学习记录
- 9款高质量学习软件,原来学霸都是这么炼成的!
- [架构之路-202]- 常见的需求获取技术=》输出=》用户需求、客户需求(As...., I want.....)、用例图
- 普天发布新一代配线架,终结争论?
热门文章
- 《程序员生存定律》读后感
- Fedora 18安装google输入法和云拼音
- 【TWVRP】模拟退火算法求解带时间窗的多车型路径规划问题【含Matlab源码 913期】
- 数据库查询中 where 和group by 能否一起使用?
- Transformer 实现 Kaggle 房价预测竞赛
- 当你也遇到VirtualBox报错:NS_ERROR_FAILURE (0x80004005)
- Vector在Java编程中的应用
- 猿创征文|OpenCV编程——计算机视觉的登堂入室
- 单细胞专题(二)| 我们的生老病死,被“它”看得透透的
- 思维导图带你走进春的世界