---
title: "Process versus thread differences"
subject: "Embedded System"
chapter: 6
key: "semester_6/embedded_system:process-vs-thread"
source: https://www.bctengineer.com/q/semester_6/embedded_system/process-vs-thread
site: BCT Engineering
---

# Process versus thread differences

Embedded System · Chapter 6: RTOS

- Asked in: 2071 Bhadra, 3 marks; 2073 Magh, 4 marks; 2074 Bhadra, 2 marks; 2079 Asoj, 4 marks (asked 4 times)
- Video: [L-1.11: Process Vs Threads in Operating System](https://www.youtube.com/watch?v=ITc09gOrqZk) — Gate Smashers
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_6/embedded_system/process-vs-thread
- Whole chapter: https://www.bctengineer.com/md/semester_6/embedded_system/chapter-6

## Question

Differentiate between process and thread (give at least 4 to 6 differences).

## Short answer

A process holds its own memory space and resources; a thread is a lightweight unit sharing its parent process’s address space. Process creation and IPC are heavier; thread communication is direct via shared variables, and context switch is faster but isolation is weaker.

## Answer

A **process** is a program in execution with its own address space and resources. A **thread** is a lightweight unit of execution within a process; threads of one process share its code, data and resources.

| Point | Process | Thread |
|---|---|---|
| Definition | Independent program in execution | Lightweight path of execution within a process |
| Address space | Own separate memory space | Shares the memory (code, data, heap) of the process |
| Own resources | Own code, data, files, registers, stack | Own stack, registers and program counter only |
| Creation / termination | Slow, costly | Fast, cheap |
| Context switch | Slow (memory maps must be switched) | Fast (same address space) |
| Communication | Needs IPC (pipes, message queues, shared memory) | Direct, through shared variables |
| Isolation | Strong; one process crash does not affect others | Weak; one thread error can crash the whole process |
| Dependence | Independent | Depends on its parent process |
| Overhead | High | Low |

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. How do process and thread differ in memory?
   A. Both have separate spaces
   B. A thread has its own address space
   C. Both share spaces with all processes
   D. A process has its own address space; threads share the process's code, data and heap
   Answer: D. Threads of a process share its resources and keep only their own stack, registers and PC. (Key point: Address space)

2. Which context switch is faster and why?
   A. Process, as memory maps are not switched
   B. Thread, as the address space is the same
   C. Both equal
   D. Process, as it is independent
   Answer: B. Process switches need memory maps to be switched; thread switches do not. (Key point: Context switch)

3. How do processes and threads communicate?
   A. Threads need IPC; processes use shared variables
   B. Processes need IPC (pipes, queues, shared memory); threads use shared variables directly
   C. Neither can communicate
   D. Both need pipes
   Answer: B. Threads share memory so communication is direct. (Key point: Communication)

4. What happens if a thread has a fatal error?
   A. It can crash the whole process
   B. Only that thread is affected, always
   C. Nothing
   D. Other processes crash
   Answer: A. Isolation between threads is weak, unlike between processes. (Key point: Isolation)

## Related in Embedded System

- [Process vs thread and task states](https://www.bctengineer.com/question.md?key=semester_6%2Fembedded_system%3Aprocess-thread-and-task-states) — Embedded System, chapter 6

## Related in other subjects

- [Process vs thread; multithreading advantages](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aprocess-thread-multithreading) — Operating System, chapter 2
- [What is process; process vs thread](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aprocess-vs-thread-define) — Operating System, chapter 2
- [Instruction, thread, process level parallelism](https://www.bctengineer.com/question.md?key=semester_4%2Fmicroprocessor%3Ainstruction-thread-process-parallelism) — Microprocessor, chapter 6
- [Process vs thread; context switching](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Athread-context-switching) — Operating System, chapter 2
