#include <stdio.h>
#include <sys/time.h>
#include <sys/resource.h> int main(int argc, char *argv[])
{
struct rlimit nofile_rlmt;
if (getrlimit(RLIMIT_NOFILE, &nofile_rlmt) != -1) {
printf("获取进程最大能打开的文件描写叙述符个数信息:\n"
"rlim_cur(Soft limit):%d"
"\nrlim_max(Hard limit (ceiling for rlim_cur)): %d\n",
nofile_rlmt.rlim_cur, nofile_rlmt.rlim_max);
}
}

getrlimit与setlimit函数具体解释能够參照:

http://www.cnblogs.com/niocai/archive/2012/04/01/2428128.html

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h> //sysconf #define ONE_MB (1024 * 1024) int main(int argc, char **argv[])
{
long num_cpu = sysconf(_SC_NPROCESSORS_ONLN);
printf("CUP的个数:%ld\n", num_cpu); long page_size = sysconf(_SC_PAGESIZE);
printf("系统页面的大小:%ld K\n", page_size);
long num_pages = sysconf(_SC_PHYS_PAGES);
printf("系统中物理页面个数:%ld 个\n", num_pages);
long free_pages = sysconf(_SC_AVPHYS_PAGES);
printf("系统中可用的页面个数:%ld 个\n", free_pages);
long long mem = (long long)((long long)num_pages * (long long)page_size);
mem /= ONE_MB;
long long free_mem = (long long)((long long)free_pages * (long long)page_size);
free_mem /= ONE_MB;
printf("总共同拥有 %lld MB的物理内存,空暇的物理内存有 %lld MB\n", mem, free_mem); long open_max = sysconf(_SC_OPEN_MAX);
printf("每一个进程最大打开的文件个数:%ld\n", open_max); return 0;
}

sysconf、pathconf、fpathconf函数具体解释參照:

http://xingyunbaijunwei.blog.163.com/blog/static/7653806720119122344450/

linux下getrlimit与sysconf函数的更多相关文章

  1. Linux下精确控制时间的函数

    Linux下精确控制时间的函数 在测试程序接口运行时间的时候,常用time,gettimeofday等函数,但是这些函数在程序执行的时候是耗费时间的,如果仅仅测试时间还行,但是如果程序中用到时间控制类 ...

  2. Linux Linux下特殊的printf函数和fputs函数

    Linux下,printf函数必须以'\n'结尾才会立刻输出到屏幕,如果没有'\n'直到输出缓冲区满了以后才会打印到屏幕上(敲击换行也算),如果需要不换行的输出,一般可以使用write函数代替.'\n ...

  3. linux下时间有关的函数和结构体

    1.时间类型.Linux下常用的时间类型有6个:time_t,struct timeb, struct timeval,struct timespec,clock_t, struct tm. (1) ...

  4. (转)linux下execl和system函数

    linux下,system函数和execl函数都是用于执行一条系统命令.今天仔细看了system函数的实现,想找出和execl函数的差别. 这里先进行一些背景知识补充: fork(创建一个新的进程): ...

  5. Linux系统调用--getrlimit()与setrlimit()函数详解

    http://www.cnblogs.com/niocai/archive/2012/04/01/2428128.html 功能描述:获取或设定资源使用限制.每种资源都有相关的软硬限制,软限制是内核强 ...

  6. Linux系统调用--getrlimit()与setrlimit()函数详解【转】

    转自:http://www.cnblogs.com/niocai/archive/2012/04/01/2428128.html 功能描述:获取或设定资源使用限制.每种资源都有相关的软硬限制,软限制是 ...

  7. ubuntu Linux下C语言open函数打开或创建文件与read,write函数详细讲解

    open(打开文件) 相关函数 read,write,fcntl,close,link,stat,umask,unlink,fopen 表头文件 #include<sys/types.h> ...

  8. linux下confstr与uname函数_获取C库与内核信息

    #include <stdio.h> #include <sys/utsname.h> //uname int main(int argc, char **argv[]) { ...

  9. Linux 下的静态(函数)库、动态(函数)库

    0. 基本 在命名上,静态库的名字一般是 libxxx.a,动态库的名字一般是 libxxx.so,有时 libxxx.so.major.minor,xxx 是该 lib 的名字,major 是主版本 ...

随机推荐

  1. vsftp限制FTP用户只能访问自己的目录

    修改配置文件/etc/vsftpd/vsftpd.conf chroot_local_user=YESallow_writeable_chroot=YESchroot_list_enable=YESc ...

  2. IT忍者神龟之 oracle行转列、列转行

    一.行转列 须要将例如以下格式 转换为: 这就是最常见的行转列,主要原理是利用decode函数.聚集函数(sum).结合group by分组实现的 create table test( id varc ...

  3. js hasChildNodes()指针对元素节点子节点多个的话 true

    <select multiple size="2"> <option value="bj">北京</option> < ...

  4. Swift3.0生成二维码、扫描二维码、相册读取二维码,兼容iOS7(结合ZXingObjC)

    二维码生成 //MARK: 传进去字符串,生成二维码图片(>=iOS7) text:要生成的二维码内容 WH:二维码高宽 private func creatQRCodeImage(text: ...

  5. YACC、LEX、JAVACC-------常用的编译工具

    CC(Compiler Compiler) CC的意思就是"编译器的编译器". 你可以定义一种上下文无关文法(CFG),然后针对这个特定的CFG你可以写出一个C程序来解释这种CFG ...

  6. js访问url和cookie

    function QueryString() { var data = []; this.Read = function() { var aPairs, aTmp; var queryString = ...

  7. CoreData 增删改查

    #pragma mark - Core Data Methods - (void)insertObjectWithFileName:(NSString *)fileName { /** SQL新增记录 ...

  8. eclipse的tasks使用说明

    http://blog.csdn.net/limb99/article/details/8881891tasks可以在代码里增加标识,通过tasks view可以快速的找到这些标识的地方,有助于提高开 ...

  9. 史上最简单的ButterKnife配置教程

    网上的教程感觉都是抄来抄去,没一个靠谱的 还是自己丰衣足食搞一个ButterKnife配置教程吧.. 我的Android Studio版本是3.3. 1.dependencies中添加依赖 imple ...

  10. OpenGL核心之SSAO技术解说(一)

    笔者介绍:姜雪伟,IT公司技术合伙人.IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D ...