进程编程:
进程的定义:在操作系统中正在执行的程序;
进程与程序的区别:进程是活的,程序是死的;
如何查看操作系统当前用户的进程
ps //静态
pa -aux //查看所有进程
top //动态显示,每隔5s刷新一次
fork()函数
完全拷贝父亲内存与数据,互不干扰,当返回值为0时,为子进程,否则返回子进程的PID。
一次调用两次返回,地址空间相同,PID不同,并发执行,执行顺序不确定,文件共享。
exe系列函数
生成替代进程,替代私有数据空间和代码及堆栈,但是其PID不变;并且该函数调用完了之后不返回原函数。
execv() v:传参接数组
execvp() p:第一个参数是文件名,不以p开头传路径
execve() e:最后一个参数是环境变量
execl() l:变参,最后一个参数填0表示变参结束,变参即无限制个数传入参数
execlp()
execle()
进程的状态:
阻塞 运行 就绪
进程的定义:在操作系统中正在执行的程序;
进程与程序的区别:进程是活的,程序是死的;
如何查看操作系统当前用户的进程
ps //静态
pa -aux //查看所有进程
top //动态显示,每隔5s刷新一次
fork()函数
完全拷贝父亲内存与数据,互不干扰,当返回值为0时,为子进程,否则返回子进程的PID。
一次调用两次返回,地址空间相同,PID不同,并发执行,执行顺序不确定,文件共享。
exe系列函数
生成替代进程,替代私有数据空间和代码及堆栈,但是其PID不变;并且该函数调用完了之后不返回原函数。
execv() v:传参接数组
execvp() p:第一个参数是文件名,不以p开头传路径
execve() e:最后一个参数是环境变量
execl() l:变参,最后一个参数填0表示变参结束,变参即无限制个数传入参数
execlp()
execle()
进程的状态:
阻塞 运行 就绪