【发布时间】:2020-08-16 21:15:39
【问题描述】:
我刚刚了解了流程的概念。
本书将进程定义为“正在运行的程序的实例”。
对于这意味着什么,我仍然有些困惑。在我看来,进程是程序正在运行的特定指令?或不?
函数调用和进程有什么区别?例如,假设我们有一个名为 main 的函数,在其中我们调用 printf 函数。 printf 算作一个单独的进程吗?为什么/为什么不?
是什么让某事成为子进程与父进程?我知道创建子进程的一种方法是调用 fork()。然后根据 fork 返回的整数值,我们可以在子进程中还是在父进程中。但是除了有什么东西可以让某个东西成为父进程和子进程吗?
同样基于问题 2 的答案,printf 是否算作子进程?
【问题讨论】:
-
tl;dr: 1. 不。 2. 不,
printf不算作一个单独的进程。 3. 除非您将clone视为与fork不同,否则不会。 4.没有。 -
那么什么是进程?
-
进程只是运行代码所需的程序的执行实体。进程具有运行它们所需的元数据。您可以从阅读任何操作系统书籍开始了解进程的概念。
标签: process operating-system fork parent-child