First-thing-first: CPU multitasking, also known as multitasking or multiprogramming, is the ability of a computer's central processing unit (CPU) to execute multiple tasks concurrently. Instead of completing one task at a time, a multitasking system allows for the interleaved execution of multiple tasks, seemingly simultaneously.
Threads and Processes:
A thread is a single sequence stream within a process. Because of some properties of processes, they are called lightweight processes. In a process, threads allow multiple executions of the streams. The CPU switches rapidly back and forth among the threads giving illusions that the threads are running in parallel. Like, a traditional process i.e., a process with one thread, a thread can be in any of several states(running, blocked, ready, or terminated). Each thread has its stack. since threads generally call different procedures and thus a different execution. This is why the thread needs its stack.
In an operating system that has a thread facility, the basic unit of CPU utilization is a thread. Threads are executed one after another thread has different states. It has a program counter, register set stack space. Threads are not independent of each other as they share the code, data, OS resources, etc.
In a thread-based operating system, a process consists of an address space and one or more threads. Each thread of a process has its program counter, register states, and stack. But all threads of a single process share the same address space.
Now let's explore each concept:
Threads | Processes |
---|---|
A thread is the smallest unit of execution within a process. | A process is an independent program in execution. It has its own memory space, resources, and a unique process identifier (PID). |
In a multi-threaded environment, a process can have multiple threads, each running concurrently. | Each process typically runs in its own address space, isolated from other processes, providing memory protection. |
Threads within a process share the same resources, such as memory space, but have their own program counter, register set, and stack. | Processes can contain one or multiple threads. A single-threaded process has only one thread of execution, while a multi-threaded process has multiple threads working together. |
Multi-threading allows for parallel execution of tasks within a process, potentially improving performance on multi-core processors. | Processes are managed by the operating system's process scheduler, which allocates CPU time and resources to each process. |
In summary, a process is a self-contained unit of execution with its own memory and resources, while a thread is the smallest unit of execution within a process. Multiple threads within a process can run concurrently and share resources, allowing for parallelism and improved performance on multi-core processors.
• Here's a simple analogy: Think of a process as a program, and threads as individual tasks within that program. If you have a word processing application running, the process is the application itself, and each thread might handle different tasks like user interface responsiveness, spell checking, and document printing.
Note: The distinction between processes and threads is crucial for understanding how modern operating systems manage and execute tasks efficiently, especially in environments with multiple processor cores.
Category: Hardware
on: 16 Dec 2020
on: 18 Feb 2022
Featured posts
You may like these posts.What is 5G Network? It's time to upgrade your mobile?
5G is a next-generation high-speed Mobile network connection, that replaces our 4G LTE network connections. Samsung Galaxy S10 5G, first 5G supported mobile.
Crime through the Internet, Reasons & Prevention:
Any criminal activity that uses a computer either as an instrument, target or a means for perpetuating further comes within the ambit of cyber crime.
Network Security & It's Protection Methods:
Networking offers endless possibilities and opportunities, along with convenience. But this convenience and endless benefits are not free from risks.
What's Next?
We've now entered the finance section on this platform, where you can enhance your financial literacy.