青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Onway

我是一只菜菜菜菜鳥...
posts - 61, comments - 56, trackbacks - 0, articles - 34

Linux進程資源在fork和execve前后的變化

Posted on 2013-05-10 20:21 Onway 閱讀(2574) 評論(2)  編輯 收藏 引用 所屬分類: 碼兒快跑
使用getrusage得到的資源統計的類型較多,測試代碼是僅針對ru_utime, ru_stime, ru_minflt三種類型的資源。
測試環境:Linux kubuntu 3.2.0-38-generic-pae #61-Ubuntu SMP Tue Feb 19 12:39:51 UTC 2013 i686 i686 i386 GNU/Linux
結論:父進程fork得到的子進程的資源使用被重置,子進程使用execve之后的資源使用不變。
parent.c:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/time.h>
#include <sys/resource.h>

void
print_rusage(const char * where)
{
    struct rusage used;
    getrusage(RUSAGE_SELF, &used);

    printf("In %s:\n", where);
    printf("user cpu time: %ld(ms)\n",
            used.ru_utime.tv_sec * 1000 + used.ru_utime.tv_usec / 1000);
    printf("sys cpu time: %ld(ms)\n",
            used.ru_stime.tv_sec * 1000 + used.ru_stime.tv_usec / 1000);
    printf("soft page faults: %ld\n", used.ru_minflt);
    printf("\n");
}

void
consume_rusage()
{
    int i, j, k;
    char * s = NULL;

    /* about 3 seconds user cpu time */
    for (i = 0; i < 1000; ++i)
        for (j = 0; j < 1000; ++j)
            for (k = 0; k < 1000; ++k)
                i / (j + 1) * k;
    
    /* 1000 soft page faults */
    k = 4096 * 1000;
    s = (char *)malloc(k);
    for (i = 0; i < k; ++i)
        s[i] = 'a';
}

int
main(int argc, char *argv[])
{
    consume_rusage();
    print_rusage("parent process");

    if (fork() == 0) {
        print_rusage("child process, after fork");
        printf("consuming resource \n\n");
        consume_rusage();
        print_rusage("child process, before execve");
        printf("excl child program now \n\n");
        execl("./child", "./child", (void *)0);
    }

    wait(NULL);
    return 0;
}

child.c:
#include <stdio.h>
#include <sys/time.h>
#include <sys/resource.h>

void
print_rusage(const char * where)
{
    struct rusage used;
    getrusage(RUSAGE_SELF, &used);

    printf("In %s:\n", where);
    printf("user cpu time: %ld(ms)\n",
            used.ru_utime.tv_sec * 1000 + used.ru_utime.tv_usec / 1000);
    printf("sys cpu time: %ld(ms)\n",
            used.ru_stime.tv_sec * 1000 + used.ru_stime.tv_usec / 1000);
    printf("soft page faults: %ld\n", used.ru_minflt);
    printf("\n");
}

int
main(int argc, char *argv[])
{
    print_rusage("child program");
    return 0;
}   

好久沒寫博客了,密碼都快忘記了。寫給自己的記憶。

Feedback

# re: Linux進程資源在fork和execve前后的變化  回復  更多評論   

2013-05-23 16:15 by lugesot
您好,能否簡單解釋下soft page faults?
child.c 運行本身不耗什么資源,所有,它還有說服力嗎?謝謝

# re: Linux進程資源在fork和execve前后的變化  回復  更多評論   

2013-06-05 12:10 by Onway
@lugesot
soft page faults,我的理解是內存缺頁次數,即需要從虛擬內存載入到實際內存的頁數。
正是由于child.c本身不耗費什么資源,而其資源使用輸出卻很大,這說明了子進程在fork之后的資源使用會被execve繼承。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国外视频精品毛片| 国产精品一区二区久久| 欧美大片免费久久精品三p | 久久激情综合网| 99riav1国产精品视频| 美女久久一区| 一区二区亚洲| 美女视频黄免费的久久| 欧美在线播放高清精品| 国产片一区二区| 亚洲欧美综合精品久久成人| 99精品国产热久久91蜜凸| 欧美日韩精品是欧美日韩精品| 亚洲国产黄色片| 欧美ed2k| 欧美高清视频| 一本一本久久a久久精品牛牛影视| 欧美电影专区| 模特精品在线| 亚洲精品一二区| 亚洲美女免费视频| 欧美日韩一区在线视频| 亚洲午夜久久久| 亚洲欧美国产三级| 国产一区二区三区四区| 猫咪成人在线观看| 欧美在线视频一区二区| 亚洲综合国产激情另类一区| 一区二区免费看| 国产亚洲成年网址在线观看| 欧美a级大片| 欧美xxx成人| 久久精品欧美| 欧美视频福利| 亚洲精品极品| 国产亚洲福利一区| 欧美激情国产日韩| 国产麻豆精品久久一二三| 女女同性精品视频| 国产精品v日韩精品| 久久精品免费观看| 伊人夜夜躁av伊人久久| 西西裸体人体做爰大胆久久久| 男人插女人欧美| 久久狠狠亚洲综合| 性一交一乱一区二区洋洋av| 久热精品视频在线观看| 久久国产精品色婷婷| 美女视频黄a大片欧美| 久久成人羞羞网站| 欧美性大战久久久久久久| 亚洲视频在线观看| 久久大综合网| 一区二区欧美在线| 午夜一区不卡| 91久久夜色精品国产网站| 日韩视频国产视频| 韩国精品一区二区三区| 亚洲精品免费在线播放| 国产精品视频免费| 亚洲欧洲中文日韩久久av乱码| 国产精品久久看| 欧美第十八页| 国产夜色精品一区二区av| 亚洲精品系列| 亚洲福利在线观看| 亚洲欧美一区二区三区极速播放| 亚洲激情不卡| 久久久精品五月天| 亚洲欧美日韩国产综合精品二区 | 久久久精彩视频| 国产精品99久久久久久有的能看| 久久嫩草精品久久久久| 欧美制服丝袜第一页| 性做久久久久久免费观看欧美| 国产精品影音先锋| 国产精品wwwwww| 午夜久久福利| 亚洲毛片在线看| 久久综合色天天久久综合图片| 亚洲国产成人在线播放| 国产精品爱久久久久久久| 暖暖成人免费视频| 欧美暴力喷水在线| 久久久视频精品| 欧美日韩国产综合一区二区| 久久噜噜噜精品国产亚洲综合| 欧美视频在线免费看| 欧美国产视频一区二区| 狠狠久久亚洲欧美专区| 亚洲一区国产| 亚洲激情在线激情| 久久国产精品一区二区三区四区 | 亚洲国产高清一区二区三区| 午夜国产欧美理论在线播放 | 亚洲高清视频一区| 在线免费观看日本一区| 久久久精品国产一区二区三区 | 午夜精品久久久久久久99黑人| 一区二区三区四区精品| 欧美激情二区三区| 亚洲精品久久久久久久久久久久| 亚洲欧洲日本国产| 欧美成人中文| 日韩视频在线一区二区| 一本久道久久综合中文字幕| 欧美日韩一视频区二区| 亚洲天堂成人在线视频| 亚洲欧美日韩在线不卡| 国产日韩欧美二区| 久久精品亚洲| 亚洲激情精品| 亚洲一区日本| 国产欧美va欧美va香蕉在| 欧美在线视频观看| 免费在线视频一区| 国产网站欧美日韩免费精品在线观看 | 亚洲精品在线观看免费| 蜜臀久久久99精品久久久久久| 欧美刺激午夜性久久久久久久| 欧美国产日本在线| 欧美一区二区三区四区在线观看| 欧美视频精品一区| 先锋影音久久久| 男人的天堂亚洲在线| 99精品国产在热久久婷婷| 欧美日韩直播| 欧美一区不卡| 亚洲国产精品国自产拍av秋霞 | 免费在线一区二区| 亚洲午夜未删减在线观看| 国产丝袜美腿一区二区三区| 久久久噜久噜久久综合| 日韩亚洲一区二区| 久久久久久久综合色一本| 亚洲精品一区二区三区四区高清 | 欧美黄在线观看| 亚洲欧美综合网| 最新亚洲激情| 久久久久久久久久久一区 | 麻豆国产精品777777在线| 99国产一区二区三精品乱码| 国产女主播一区二区| 欧美精品自拍| 久久精品一区二区三区四区| 亚洲久久一区| 欧美激情欧美狂野欧美精品| 亚洲女人小视频在线观看| 亚洲国产天堂久久综合| 国产精品一区二区久久久久| 欧美高清视频一区二区三区在线观看| 午夜精品久久久久久| 日韩午夜av电影| 久久精品一二三区| 蜜臀a∨国产成人精品| 亚洲精品欧美| 亚洲精品偷拍| 国产视频一区三区| 欧美高清一区| 亚洲一区二区网站| 国内精品久久久久影院色| 欧美gay视频激情| 欧美日本中文| 亚洲肉体裸体xxxx137| 最新国产乱人伦偷精品免费网站| 亚洲欧美激情精品一区二区| 精东粉嫩av免费一区二区三区| 欧美日韩成人在线播放| 久久亚洲精品欧美| 久久精品日产第一区二区| 亚洲欧美日韩综合一区| 亚洲欧美国产高清va在线播| 一本久道综合久久精品| 亚洲美女精品一区| 亚洲精品久久久久久久久久久久久| 欧美va亚洲va日韩∨a综合色| 久久色中文字幕| 久久午夜电影网| 葵司免费一区二区三区四区五区| 久久亚洲国产精品一区二区 | 欧美激情第五页| 欧美激情一区二区| 亚洲国产精品久久久久秋霞蜜臀| 欧美黑人在线播放| 亚洲高清视频一区| 亚洲精品欧洲精品| 一区二区欧美日韩视频| 亚洲一区日韩在线| 香蕉成人伊视频在线观看| 欧美一区二区三区免费观看| 久久久91精品国产| 美女图片一区二区| 欧美日本精品一区二区三区| 欧美午夜精品伦理| 国产亚洲精品美女| 亚洲精品一二三| 欧美一区二区黄| 蘑菇福利视频一区播放| 亚洲福利av| 亚洲一区二区免费看|