eolas/zk/Threads.md

29 lines
844 B
Markdown
Raw Normal View History

2024-06-26 06:00:04 +01:00
---
id: zadl
title: Threads
2024-06-26 06:15:05 +01:00
tags: [operating-systems]
2024-06-26 06:00:04 +01:00
created: Wednesday, June 26, 2024
---
# Threads
2024-06-26 06:15:05 +01:00
A ![process](Processes.md) is a running instance of a given program. A program
runs sequentially handling one task at a time, however we may need to run
certain tasks in parallel.
2024-06-26 06:00:04 +01:00
2024-06-26 06:15:05 +01:00
Think of a program that is downloading a resource from the internet and wants to
update the UI at the same time to show the download process.
If the program is strictly sequential, once the program starts the download, the
UI is neglected since the CPU time dedicated to the process must be focused
elsewhere.
We need the updating of the UI and the download to execute in parallel. This is
achieved via operating system **threads of execution**.
> A thread is a schedulable unit of execution within a process.
2024-06-26 06:00:04 +01:00
## Related notes
![Processes](Processes.md)