fork()创建了一个子进程,父进程继续执行并等待子进程结束。waitpid()等待子进程pid的终止,并通过status获取子进程的退出状态。waitpid(pid, &status, 0)用于等待某个子进程的退出。如果pid为 -1,表示等待任何子进程。status用于存储子进程的退出状态.execve()是一个系统调用,用于在当前进程中加载并执行一个新的程序。(==所以结合 fork 创建子进程后,就使用这个来执行别的程序==).execve(path, argv, envp)用于执行路径为path的程序。argv是传递给程序的参数,envp是环境变量。sleep():在进程中调用sleep()来模拟一些延迟操作。sleep(seconds)会让进程暂停seconds秒