百度
360搜索
搜狗搜索

linux进程由什么函数创建详细介绍

在 Linux 系统里,创建进程通常会用到fork()vfork()函数,之后往往配合exec()系列函数来执行新的程序。以下为你详细介绍:

1.
fork()函数

fork()是用来创建新进程的基础函数。调用fork()之后,会生成一个新的子进程,这个子进程是父进程的副本。fork()会返回两次:在父进程里返回子进程的进程 ID(PID);在子进程里返回 0;若创建失败则返回 -1。

下面是一个简单的示例代码:
python

main

pid_t pid fork

pid

进程创建失败

perror

pid

子进程

printf getpid

父进程

printf pid

2.
vfork()函数

vfork()也是用于创建新进程的函数,它和fork()的主要区别在于:vfork()创建的子进程会和父进程共享地址空间,并且在子进程调用exec()系列函数或者_exit()之前,父进程会被阻塞。

下面是一个简单的示例代码:
python

main

pid_t pid vfork

pid

进程创建失败

perror

pid

子进程

printf getpid

_exit

父进程

printf pid

3.
exec()系列函数

exec()系列函数通常和fork()vfork()配合使用,其作用是在新进程中执行新的程序。exec()系列函数有多个变体,像execl()execv()execle()execve()execlp()execvp()等。

下面是一个结合fork()execlp()的示例代码:
python

main

pid_t pid fork

pid

进程创建失败

perror

pid

子进程

printf

execlp NULL

perror

_exit

父进程

printf

waitNULL

printf

这些函数在 Linux 系统编程里十分常用,能够帮助你创建和管理进程。

阅读更多 >>>  linux如何停止sh进程

网站数据信息

"linux进程由什么函数创建"浏览人数已经达到20次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux进程由什么函数创建的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!