Both processes and threads are independent sequences of execution. The typical difference is that threads (of the same process) run in a shared memory space, while processes run in separate memory spaces.
I’m not sure what “hardware” vs “software” threads you might be referring to. Threads are an operating environment feature, rather than a CPU feature (though the CPU typically has operations that make threads efficient).
Erlang uses the term “process” because it does not expose a shared-memory multiprogramming model. Calling them “threads” would imply that they have shared memory.
Related Posts:
- Difference between user-level and kernel-supported threads?
- What is a “thread” (really)?
- What’s a Pthread?
- What are atomic operations for newbies?
- What is a mutex?
- What is a race condition?
- What’s the difference between deadlock and livelock?
- What is the meaning of the term “thread-safe”?
- How to use multiprocessing queue in Python?
- Multiprocessing vs Threading Python
- Android “Only the original thread that created a view hierarchy can touch its views.”
- Proper use of mutexes in Python
- How to pause / sleep thread or process in Android?
- How to make parent wait for all child processes to finish?
- What does threadsafe mean?
- How to avoid Not on FX application thread; currentThread = JavaFX Application Thread error?
- Java Wait for thread to finish
- Semaphore vs. Monitors – what’s the difference?
- Why PTHREAD_COND_INITIALIZER may be used to initialize a condition variable only when it is declared?
- Difference between volatile and synchronized in Java
- software threads vs hardware threads
- pthread_join() and pthread_exit()
- Python time.sleep() vs event.wait()
- How can I safely create a nested directory in Python?
- What are file descriptors, explained in simple terms?
- Undefined reference to pthread_create in Linux
- Mutex example / tutorial? [closed]
- What is the meaning of *nix?
- Difference between binary semaphore and mutex
- How to view / open a calculator in mac OS X?
- How can I safely create a nested directory in Python?
- Why is Windows 32-bit called Windows x86 and not Windows x32?
- Is there a Python equivalent to the ‘which’ command
- What exactly is std::atomic?
- What languages are Windows, Mac OS X and Linux written in?
- C++ terminate called without an active exception
- Thread pooling in C++11
- Find (and kill) process locking port 3000 on Mac
- What are the difference between macOS and iOS?
- No enclosing instance of type is accessible.
- Timeout on a function call
- Efficient way to find task_struct by pid
- Cross-thread operation not valid: Control accessed from a thread other than the thread it was created on
- The calling thread cannot access this object because a different thread owns it
- Difference between word addressable and byte addressable
- What does java.lang.Thread.interrupt() do?
- pthread sleep linux
- Is there any way to kill a Thread?
- Why does PyQt crashes without information? (exit code 0xC0000409)
- Why does PyQt crashes without information? (exit code 0xC0000409)
- PyQt is thread-safe to the same extent that Qt is thread-safe. The Qt docs will tell you which parts of their API are guaranteed to be so, and under what circumstances.
- local variables referenced from an inner class must be final or effectively final
- Why doesn’t JavaScript support multithreading?
- Taskkill /f doesn’t kill a process
- What are the differences between virtual memory and physical memory?
- Why should we check WIFEXITED after wait in order to kill child processes in Linux system call?
- java.lang.IllegalMonitorStateException: object not locked by thread before wait()?
- WSACancelBlockingCall exception
- The application may be doing too much work on its main thread
- Task vs Thread differences
- CreateProcess error=2, The system cannot find the file specified
- How can I know if a process is running?
- How to use WPF Background Worker
- How can I wait for a thread to finish with .NET?
- What is the difference between Trap and Interrupt?
- OpenMP set_num_threads() is not working
- How to “wait” a Thread in Android
- java.lang.IllegalThreadStateException
- What is the difference between a Process’ pid, ppid, uid, euid, gid and egid?
- What is `S_ISREG()`, and what does it do?
- Service vs IntentService in the Android platform
- When should you use multithreading? And would multi threading be beneficial if the different threads execute mutually independent tasks?
- Difference between exec, execvp, execl, execv?
- Difference between volatile and synchronized in Java
- Can I get Unix’s pthread.h to compile in Windows?
- Environment variables of a running process on Unix?
- Keeping a linux process running after I logout
- Show full process name in top
- Best practice: Should I always install a fresh OS for new employees?
- How to get pid of just started process
- How do you free up a port being held open by dead process?
- How to sort ps output by process start time?
- Dump a linux process’s memory to file