linux下,pipe的容量的讨论与查看(转)

原文:https://blog.51cto.com/momo462/1825852

1、pipe的容量

2.6标准版本的linux内核,pipe缓冲区是64KB,尽管命令ulimit -a看到管道大小8块,缓冲区的大小不是4 k,因为内核动态分配最大16“缓冲条目”,乘64 k。这些限制是硬编码的

2、如何查看自己pc上的pipe多大

1)通过ulimit -a查看到 pipe size 一次原子写入为:512Bytes*8=4096Bytes

 

查看缓冲条目个数:cat /usr/src/kernels/3.10.0-327.el7.x86_64/include/linux/pipe_fs_i.h文件

所以我的pc下得pipe缓冲大小为:16*4096=65536Bytes

也就验证了man 7 pipe下的pipe capacity

 

posted @ 2022-12-28 11:10  奋斗终生  Views(349)  Comments(0Edit  收藏  举报