执行环境和子shell环境是否有相同的意思?

执行环境和子shell环境是否有相同的意思?

When a simple command other than a builtin or shell function is to be executed,it is invoked in a separate execution environment that consists of the following.

Command substitution and asynchronous commands are invoked in a subshell environment that is duplicate of the shell environment except that traps caught by the shell are reset to the values that the shell inherited from its parent at invocation.

这里的执行环境和子shell环境是否有相同的意思?      
实际上是不同的. 前面的 simple command 强调的是外部命令, bash 执行外部命令时先 fork() 然后再 execve(). subshell 时 bash 也要 fork() 来生成当前 shell 的一个 copy, 然后在这个新的 shell 中执行命令.      
具体的细节需要看 bash 的 code 了       
+-konsole
  |   +-bash
  |       +-bash
  |           +-find /

确实 fork