什么是进程?用fork()创建一个子进程时,系统会做什么工作。
时间: 2023-06-25 14:06:17 浏览: 167
进程的创建编写一段程序,使用系统调用fork()创建两个子进程。当此程序运行时,
5星 · 资源好评率100%
进程是计算机中的一个基本概念,它是正在运行的程序的实例。每个进程都有自己的内存空间、寄存器和上下文,它们在操作系统的管理下运行,并相互独立地执行它们的任务。
fork()是一个系统调用,它用于创建一个新的进程,这个新的进程被称为子进程,而调用fork()的进程被称为父进程。当调用fork()时,操作系统会复制父进程的所有内存空间、寄存器和上下文,并创建一个新的进程来运行子进程。这个新的进程是原始进程的副本,两个进程在此时的状态是相同的。
接下来,操作系统会在新进程中设置一个新的进程ID,以便在将来可以识别它。父进程会得到一个返回值,该返回值是子进程的进程ID。这样,父进程和子进程就可以通过它们各自的进程ID来互相通信和协作。
在子进程中,fork()将返回0。这样子进程就可以根据它的返回值来判断自己是子进程还是父进程。在父进程中,fork()将返回子进程的进程ID。
阅读全文