Are threads implemented as processes on Linux?
I’m going through this book, Advanced Linux Programming by Mark Mitchell, Jeffrey Oldham, and Alex Samuel. It’s from 2001, so a bit old. But I find it quite good anyhow.
I’m going through this book, Advanced Linux Programming by Mark Mitchell, Jeffrey Oldham, and Alex Samuel. It’s from 2001, so a bit old. But I find it quite good anyhow.
I’ve read in many places that Linux creates a kernel thread for each user thread in a Java VM. (I see the term “kernel thread” used in two different ways:
I am running a docker server on Arch Linux (kernel 4.3.3-2) with several containers. Since my last reboot, both the docker server and random programs within the containers crash with a message about not being able to create a thread, or (less often) to fork. The specific error message is different depending on the program, but most of them seem to mention the specific error Resource temporarily unavailable. See at the end of this post for some example error messages.
Linux doesn’t actually distinguish between processes and threads, and implements both as a data structure task_struct.