[linux操作系统实验]进程的控制(execl()第二个传参为什么是可执行程序名)

/ 1,584评论 / 6457阅读 / 1点赞

问题

实验示例代码中,调用execl()时,第二个传参为什么会是可执行程序名:

execl("/bin/ls", "ls", "-l", "-color", NULL)

#include <iostream>
using namespace std;

int main(int aNum, char** aStr)
{
        cout << "hello,coolight" << endl;
        cout << "main参数列表:" << endl;
        for(int i = 0; i < aNum; ++i)
                cout << i + 1 << " : " << aStr[i] << endl;

        return 0;
}

实验具体内容

实验内容

涉及的系统调用

在Linux中fork()是一个非常有用的系统调用,但在Linux中建立进程除了fork()之外,也可用与fork() 配合使用的exec()。

exec()系列

exec()fork()联合使用

int status;
     ............
if (fork() == 0)
{
     ............
     execl(...);
     ............
}
wait(&status);

wait()

exit()

源代码

#include <iostream>
#include <unistd.h>
#include "sys/wait.h"
#include "sys/types.h"
using namespace std;
int main()
{
        cout << "<< coolgiht" << endl;
        int status, renum_fork = fork();
        if(renum_fork == -1){
                cout << "<< fork error!" << endl;
        }else if(renum_fork == 0){ //子进程
                execl("./hello", "hello", "-1", "-2", NULL);
                cout << "execl error!" << endl;
        }else{  //父进程
                wait(NULL);
                cout << "<< 完成!" << endl;
        }
        return 0;
}
#include <iostream>
using namespace std;
int main(int aNum, char** aStr)
{
        cout << "hello,coolight" << endl;
        cout << "main参数列表:" << endl;
        for(int i = 0; i < aNum; ++i)

                cout << i + 1 << " : " << aStr[i] << endl;

        return 0;
}

运行结果截图

思考

  1. Walteronerb说道:

    https://casinvietnam.com/# casino tr?c tuy?n vi?t nam

  2. Bernardordib说道:

    casino tr?c tuy?n vi?t nam: dánh bài tr?c tuy?n – casino tr?c tuy?n vi?t nam

  3. Walteronerb说道:

    https://casinvietnam.com/# casino tr?c tuy?n uy tin

  4. Bernardordib说道:

    casino online uy tín: casino tr?c tuy?n uy tín – casino online uy tín

  5. Walteronerb说道:

    https://casinvietnam.shop/# casino tr?c tuy?n

  6. Bernardordib说道:

    dánh bài tr?c tuy?n: dánh bài tr?c tuy?n – casino online uy tín

  7. Walteronerb说道:

    http://casinvietnam.com/# choi casino tr?c tuy?n tren di?n tho?i

  8. Bernardordib说道:

    casino tr?c tuy?n uy tín: casino tr?c tuy?n uy tín – casino tr?c tuy?n uy tín

  9. Walteronerb说道:

    https://casinvietnam.shop/# game c? b?c online uy tin

  10. Bernardordib说道:

    casino tr?c tuy?n uy tín: casino online uy tín – choi casino tr?c tuy?n trên di?n tho?i

  11. Walteronerb说道:

    https://casinvietnam.shop/# game c? b?c online uy tin

  12. Bernardordib说道:

    dánh bài tr?c tuy?n: choi casino tr?c tuy?n trên di?n tho?i – casino tr?c tuy?n uy tín

  13. JamesAnirm说道:

    http://casinvietnam.shop/# casino tr?c tuy?n

  14. MichaelFah说道:

    casino tr?c tuy?n casino online uy tin casino online uy tin

  15. Chrisror说道:

    casino tr?c tuy?n casino tr?c tuy?n uy tin casino tr?c tuy?n

  16. Jesseelell说道:

    http://casinvietnam.com/# casino tr?c tuy?n

  17. Walteronerb说道:

    http://casinvietnam.com/# choi casino tr?c tuy?n tren di?n tho?i

  18. JoshuaPreri说道:

    casino tr?c tuy?n uy tín: casino tr?c tuy?n vi?t nam – casino tr?c tuy?n uy tín

  19. Jesseelell说道:

    https://casinvietnam.com/# danh bai tr?c tuy?n

  20. JoshuaPreri说道:

    web c? b?c online uy tín: casino tr?c tuy?n vi?t nam – casino online uy tín

  21. MatthewDoolo说道:

    online pharmacy no prescription: canadian pharmacy world coupon code – online pharmacy discount code

  22. AustinWhoto说道:

    pharmacy online 365 discount code: cheapest pharmacy to fill prescriptions without insurance – canadian pharmacies not requiring prescription

  23. Armandosed说道:

    https://edpill.top/# buy ed meds online

  24. bookmarked!!, I like your website!

  25. MatthewDoolo说道:

    online erectile dysfunction: best online ed treatment – buy erectile dysfunction treatment

  26. PhilipBup说道:

    canadian pharmacy no prescription needed online pharmacies without prescription online drugstore no prescription

  27. HarveyBeemi说道:

    http://onlinepharmacyworld.shop/# no prescription required pharmacy

  28. Armandosed说道:

    https://edpill.top/# ed pills for sale

  29. MatthewDoolo说道:

    get ed prescription online: cheapest ed treatment – ed pills for sale

  30. Armandosed说道:

    https://medicationnoprescription.pro/# online pharmacies no prescription usa

  31. PhilipBup说道:

    buy ed meds online ed medication online buying ed pills online

  32. Armandosed说道:

    http://onlinepharmacyworld.shop/# reputable online pharmacy no prescription

  33. AustinWhoto说道:

    canada prescriptions by mail: pharmacy no prescription – canadian mail order prescriptions

  34. HarveyBox说道:

    http://onlinepharmacyworld.shop/# canada drugs coupon code

回复 grenuenah 取消回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注