Files
amILearningEnough/docs/resources/operatingSystem/processAndThreads.md
2024-12-21 01:23:20 +05:30

69 lines
3.5 KiB
Markdown

# Processes and Threads
## Processes
### What is a Process?
- **Definition and Explanation:**
- [Wikipedia: Process (computing)](https://en.wikipedia.org/wiki/Process_(computing))
- [GeeksforGeeks: Process in Operating System](https://www.geeksforgeeks.org/process-in-operating-system/)
- **Process vs. Program:**
- [What is the difference between a process and a program?](https://stackoverflow.com/questions/2002717/what-is-the-difference-between-a-process-and-a-program) (Stack Overflow)
### Process Management
- **Process Lifecycle and States:**
- [Wikipedia: Process state](https://en.wikipedia.org/wiki/Process_state)
- [GeeksforGeeks: Process States in Operating System](https://www.geeksforgeeks.org/process-states-in-operating-system/)
- **Process Control Block (PCB):**
- [Wikipedia: Process control block](https://en.wikipedia.org/wiki/Process_control_block)
- [Tutorialspoint: Process Control Block](https://www.tutorialspoint.com/operating-system/os_process_control_block.htm)
- **Process Scheduling:**
- [Tutorialspoint: CPU Scheduling](https://www.tutorialspoint.com/operating-system/os_process_scheduling.htm)
- [GeeksforGeeks: CPU Scheduling Algorithms](https://www.geeksforgeeks.org/cpu-scheduling-algorithms/)
- **Inter-process Communication (IPC):**
- [Wikipedia: Inter-process communication](https://en.wikipedia.org/wiki/Inter-process_communication)
- [Tutorialspoint: Inter Process Communication](https://www.tutorialspoint.com/inter_process_communication/index.htm)
## Threads
### What is a Thread?
- **Definition and Explanation:**
- [Wikipedia: Thread (computing)](https://en.wikipedia.org/wiki/Thread_(computing))
- [GeeksforGeeks: Threads in Operating System](https://www.geeksforgeeks.org/threads-processes-in-operating-system/)
- **Threads vs. Processes:**
- [Programiz: Difference Between Process and Thread](https://www.programiz.com/operating-system/process-vs-thread)
- [Stack Overflow: What is the difference between a thread and a process?](https://stackoverflow.com/questions/2002717/what-is-the-difference-between-a-process-and-a-program)
### Thread Management
- **Thread Creation and Management:**
- [Java Threads - Tutorialspoint](https://www.tutorialspoint.com/java/java_multithreading.htm) (Example for Java)
- [POSIX Threads - Tutorialspoint](https://www.tutorialspoint.com/operating_system/os_multi_threading.htm) (Example for C/C++)
- **Thread Synchronization:**
- [Wikipedia: Thread synchronization](https://en.wikipedia.org/wiki/Thread_synchronization)
- [Tutorialspoint: Thread Synchronization](https://www.tutorialspoint.com/operating-system/os_thread_synchronization.htm)
- **Types of Threads (Kernel-level, User-level):**
- [GeeksforGeeks: Types of Threads](https://www.geeksforgeeks.org/types-of-threads/)
- **Thread Pools:**
- [Oracle Java Documentation: Thread Pools](https://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html)
## Concurrency and Parallelism
- **Concurrency (computer science):**
- [Wikipedia: Concurrency (computer science)](https://en.wikipedia.org/wiki/Concurrency_(computer_science))
- **Parallel Computing:**
- [Wikipedia: Parallel computing](https://en.wikipedia.org/wiki/Parallel_computing)
## Books
- **Operating System Concepts by Silberschatz, Galvin, and Gagne:** (**ISBN:** 978-1292400451)
- Excellent coverage of processes, threads, and concurrency.
- **Modern Operating Systems by Andrew S. Tanenbaum:** (**ISBN:** 978-0133591620)
- In-depth explanations of operating system concepts, including process and thread management.