screen terminal multiplexers are popular for this. It is possible to see several windows at the same time by splitting vertically/horizontally; for example, Ctrl-B " in tmux. There is even possibility to copy&paste text between windows.
emacs editor allows running interactive shells in its multiple buffers – again, with multiple buffers on screen, and with copy/paste between them.
A simpler alternative to tmux/screen is
dtach, which does not perform full terminal emulation but only allows detaching/reattaching, so the previous output remains. (However, this also means that detaching inside a full-screen program will not work well.)
The Heirloom toolchest appears to provide a version of
shl, "shell layers" which were present in Unix SVR3 (and died soon after, but still linger in
stty swtch). I can't get the toolchest to build at all, however, and I'm not sure the modern Linux kernels have the necessary support for
shl. If it worked, though, it would be almost exactly like in your example.
Finally, you can have multiple shell processes running as jobs:
- Stopped bash
+ Stopped bash