中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站建設(shè)制作設(shè)計(jì)seo優(yōu)化珠海比較靠譜的電商培訓(xùn)機(jī)構(gòu)

網(wǎng)站建設(shè)制作設(shè)計(jì)seo優(yōu)化珠海,比較靠譜的電商培訓(xùn)機(jī)構(gòu),網(wǎng)絡(luò)營(yíng)銷(xiāo)課程視頻,株洲網(wǎng)站建設(shè)一、前言 一個(gè)進(jìn)程在運(yùn)行時(shí),會(huì)用到各種資源,比如cpu的使用時(shí)間、內(nèi)存空間、文件等等。那么,一個(gè)進(jìn)程能夠占用多少資源呢?cpu使用的時(shí)間有多長(zhǎng)?進(jìn)程空間有多大?能夠創(chuàng)建多少個(gè)文件?這個(gè)就是本文…

一、前言

一個(gè)進(jìn)程在運(yùn)行時(shí),會(huì)用到各種資源,比如cpu的使用時(shí)間、內(nèi)存空間、文件等等。那么,一個(gè)進(jìn)程能夠占用多少資源呢?cpu使用的時(shí)間有多長(zhǎng)?進(jìn)程空間有多大?能夠創(chuàng)建多少個(gè)文件?這個(gè)就是本文需要討論的內(nèi)容。
unix系統(tǒng)提供了兩個(gè)函數(shù)來(lái)查詢和修改進(jìn)程的資源限制:getrlimit、setrlimit
本文將圍繞這兩個(gè)函數(shù)展開(kāi)討論。

二、getrlimit

getrlimit用于查看一個(gè)進(jìn)程的資源限制,其函數(shù)原型如下:

頭文件:#include <sys/resource.h>
函數(shù)原型: int getrlimit(int resource, struct rlimit *rlim);
resource參數(shù)指定要查詢的資源類(lèi)型,比如RLIMIT_CPU(CPU時(shí)間限制)、RLIMIT_FSIZE(文件大小限制)等。
rlim是指向rlimit結(jié)構(gòu)的指針,該結(jié)構(gòu)用于填充查詢到的限制值。 如果調(diào)用成功,getrlimit返回0。
返回值: 如果調(diào)用失敗,返回-1,并且設(shè)置errno以指示錯(cuò)誤類(lèi)型。 常見(jiàn)的錯(cuò)誤可能包括:
EINVAL: 指定的resource參數(shù)無(wú)效。
EPERM: 用戶沒(méi)有權(quán)限獲取指定資源的限制。 ENOMEM: 內(nèi)存不足,無(wú)法完成請(qǐng)求。

rlimit數(shù)據(jù)結(jié)構(gòu)的定義如下:

struct rlimit {
rlim_t rlim_cur; // 軟限制
rlim_t rlim_max; // 硬限制
};
軟限制是當(dāng)前進(jìn)程可以使用的資源限制,而硬限制是一個(gè)上限,進(jìn)程只能借此提升軟限制。

rlim_t是一個(gè)無(wú)符號(hào)整型。
linux中支持查詢的資源限制如下:

  • RLIMIT_AS 地址空間的最大大小。
  • RLIMIT_CORE 生成的核心轉(zhuǎn)儲(chǔ)文件的最大大小。
  • RLIMIT_CPU 進(jìn)程可使用的最大 CPU 時(shí)間(秒)。
  • RLIMIT_DATA 進(jìn)程可使用的最大數(shù)據(jù)段大小。
  • RLIMIT_FSIZE 進(jìn)程可創(chuàng)建的最大文件大小。
  • RLIMIT_MEMLOCK 可以鎖定在內(nèi)存中的最大字節(jié)數(shù)。
  • RLIMIT_MSGQUEUE POSIX 消息隊(duì)列的最大字節(jié)數(shù)。
  • RLIMIT_nice 進(jìn)程的最大“nice”值調(diào)整。
  • RLIMIT_NOFILE 進(jìn)程可以打開(kāi)的最大文件描述符數(shù)。
  • RLIMIT_NPROC 進(jìn)程可創(chuàng)建的最大子進(jìn)程數(shù)。
  • RLIMIT_RSS 進(jìn)程可用的最大常駐集大小。
  • RLIMIT_SBSIZE 套接字緩沖區(qū)的最大大小。
  • RLIMIT_STACK 進(jìn)程的最大棧大小。

參考代碼如下:

/**************************************************************************************> File Name: rlimit.c> Author: Conbiao> Create Time: 2024.9.18 Wednesday*************************************************************************************//***************************************************************************************                                        HEADER*************************************************************************************/
#include <stdio.h>
#include <sys/resource.h>/***************************************************************************************                                        MACRO*************************************************************************************//***************************************************************************************                                 FUNCTION DESCRIPTION*************************************************************************************/ /***************************************************************************************                                        MAIN*************************************************************************************/
int main(int argc, char *argv[])
{int ret = 0;struct rlimit rl;if(!getrlimit(RLIMIT_NICE,&rl)){printf("%s: current nice = %lu, the max nice = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nice failed!\n",__func__);return -1;}if(!getrlimit(RLIMIT_CPU,&rl)){printf("%s: current cpu = %lu, the max cpu = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get cpu failed!\n",__func__);return -1;}if(!getrlimit(RLIMIT_NPROC,&rl)){printf("%s: current nproc = %lu, the max nproc = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nproc failed!\n",__func__);return -1;}return ret;
}

運(yùn)行結(jié)果如下圖所示:
[圖片]

(2-1)
ps:資源限制影響到調(diào)用進(jìn)程并由子進(jìn)程集成。也就是說(shuō)如果一個(gè)進(jìn)程修改了其資源限制,那么其子進(jìn)程也會(huì)集成這些修改后的限制。

三、setrlimit

setrlimit用于設(shè)置進(jìn)程的資源限制。其函數(shù)原型如下:

頭文件:#include <sys/resource.h>
函數(shù)原型: int setrlimit(int resource, const
struct rlimit *rlim); resource: 需要設(shè)置限制的資源類(lèi)型。 rlim:指向 struct rlimit 結(jié)構(gòu)體的指針
返回值: 返回0代表成功設(shè)置了資源限制,返回-1代表設(shè)置失敗。

參考代碼如下:

**/**************************************************************************************> File Name: rlimit.c> Author: Conbiao> Create Time: 2024.9.18 Wednesday*************************************************************************************/
/***************************************************************************************                                        HEADER*************************************************************************************/
#include <stdio.h>
#include <sys/resource.h>
/***************************************************************************************                                        MACRO*************************************************************************************/
/***************************************************************************************                                 FUNCTION DESCRIPTION*************************************************************************************/
/***************************************************************************************                                        MAIN*************************************************************************************/
int main(int argc, char *argv[])
{int ret = 0;struct rlimit rl;if(!getrlimit(RLIMIT_NICE,&rl)){printf("%s: current nice = %lu, the max nice = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nice failed!\n",__func__);return -1;}if(!getrlimit(RLIMIT_CPU,&rl)){printf("%s: current cpu = %lu, the max cpu = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get cpu failed!\n",__func__);return -1;}if(!getrlimit(RLIMIT_NPROC,&rl)){printf("%s: current nproc = %lu, the max nproc = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nproc failed!\n",__func__);return -1;}if(!getrlimit(RLIMIT_NOFILE,&rl)){printf("%s: current nofile = %lu, the max nofile = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nofile failed!\n",__func__);return -1;}rl.rlim_cur = 2048;//rl.rlim_max = 1048577;if(!setrlimit(RLIMIT_NOFILE,&rl)){printf("%s: set rlimit success!\n",__func__);if(!getrlimit(RLIMIT_NOFILE,&rl)){printf("%s: new current nofile = %lu, the max nofile = %lu \n",__func__,rl.rlim_cur,rl.rlim_max);}else{printf("%s: get nofile failed!\n",__func__);return -1;}}else{return -1;}return ret;
}**

運(yùn)行結(jié)果如下所示:
[圖片]

(3-1)
Ps: 一般只能修改軟限制,硬限制需要root權(quán)限才能修改硬限制。

http://www.risenshineclean.com/news/7263.html

相關(guān)文章:

  • 做外貿(mào)需要用什么網(wǎng)站品牌營(yíng)銷(xiāo)策略案例
  • 網(wǎng)站建設(shè)哪家公司安裝百度
  • 黃山家居網(wǎng)站建設(shè)怎么樣濟(jì)南網(wǎng)站建設(shè)
  • 手機(jī)響應(yīng)式網(wǎng)站西安疫情最新數(shù)據(jù)
  • 怎么做pp網(wǎng)站近期熱點(diǎn)新聞事件50個(gè)
  • 做網(wǎng)站打印費(fèi)復(fù)印費(fèi)清單sem廣告投放是做什么的
  • 成都網(wǎng)站建設(shè)哪家公司好廣州番禺發(fā)布
  • 做電商網(wǎng)站的公司百度游戲中心官網(wǎng)
  • 自制軟件生成器泉州seo報(bào)價(jià)
  • 怎么開(kāi)始做網(wǎng)站推廣方案100個(gè)
  • 給個(gè)網(wǎng)址2022年能直接看的seo人才招聘
  • 自己個(gè)人網(wǎng)站后臺(tái)怎么做網(wǎng)絡(luò)營(yíng)銷(xiāo)策略方案
  • 為啥做網(wǎng)站圖片識(shí)別
  • 做百度推廣網(wǎng)站排名愛(ài)站網(wǎng)是什么
  • 運(yùn)城市住房和城鄉(xiāng)建設(shè)局網(wǎng)站免費(fèi)可用的網(wǎng)站源碼
  • 免費(fèi)網(wǎng)站制作軟件有哪些網(wǎng)絡(luò)營(yíng)銷(xiāo)產(chǎn)品
  • 網(wǎng)站建設(shè)明細(xì)報(bào)價(jià)表 服務(wù)器互聯(lián)網(wǎng)推廣有哪些方式
  • 個(gè)人網(wǎng)站備案通過(guò)做淘客百度seo公司報(bào)價(jià)
  • 貴州省銅仁市城鄉(xiāng)建設(shè)局網(wǎng)站下載谷歌瀏覽器并安裝
  • javaweb做視頻網(wǎng)站難嗎廣西南寧做網(wǎng)站的公司
  • 汽車(chē)網(wǎng)站建設(shè)目的全能優(yōu)化大師
  • 2345網(wǎng)址導(dǎo)航主頁(yè)長(zhǎng)沙關(guān)鍵詞優(yōu)化新行情報(bào)價(jià)
  • 備案的域名拿來(lái)做別的網(wǎng)站廣東seo網(wǎng)絡(luò)培訓(xùn)
  • 自己網(wǎng)站做問(wèn)卷調(diào)查網(wǎng)站外鏈有多重要
  • 網(wǎng)站的備案許可號(hào)不存在東莞網(wǎng)絡(luò)推廣平臺(tái)
  • 柳市做網(wǎng)站接推廣怎么收費(fèi)
  • 商務(wù)型網(wǎng)站seo專員招聘
  • 商城的網(wǎng)站建設(shè)公關(guān)服務(wù)
  • 購(gòu)物網(wǎng)站模塊例子洗發(fā)水營(yíng)銷(xiāo)推廣軟文800字
  • 遵義網(wǎng)站設(shè)計(jì)aso關(guān)鍵詞搜索優(yōu)化