wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

THREADS (assignment 1)

profile
Aastha Saraf
Jul 05, 2024
0 Likes
0 Discussions
51 Reads

In operating systems, threads are the basic units of execution that consist simultaneous processing and act as a part of an individual process. Threads unlike traditional processes are independent execution units, each with their own memory space but they share the same address and hence find it easy to communicate between threads and also synchronize. Process vs Thread in Operating SystemsExplination

Meaning: A thread is a light weight process that exists inside of the main process. This thread shares memory, file descriptors, process context with other threads that belongs to the same Process. Normally Threads are less expensive to create and maintain than Processes.

Types of Threads:

1.⁠ ⁠User-Level Threads: This is done at application (or user) level without kernel support - essentially the threads are managed by an application itself, not always suitable as when information needs to be seconded back and forth between a calling thread from different process than receiver one or switchable on irregular bases for example in some I/O cases). Process is treated by the operating system as a single entity.
2.⁠ ⁠Kernel-Level Threads: Explicitly created, supported and managed by the operating system (as opposed to implicit/ application version) OS-managed entities are called KLT. The kernel sees each thread separately, so the threads can be scheduled across multiple cores...

Advantages:

1.⁠ ⁠Responsivity - Threads can be used to keep an application responsive when performing long-running tasks in a background.

2.⁠ ⁠Resource Sharing: Since threads within same process share data and resources like memory with other thread, it is much easier to implement resource sharing between a set of coordinated threads than executing in separate processes.

3.⁠ ⁠Efficiency: Creating and managing threads is cheaper than creating - and context switching between processes.

States of Threads:

The threads in an operating system have multiple states.

1.⁠ ⁠Running: The process is running now on the CPU.

2.⁠ ⁠In the Ready stage, your task is all set to execute whenever it gets a sufficiently large time slice from processor at CPU levels.

3.⁠ ⁠Blocked: Resources are unavailable (typically I/O operation).

Thread Models:

 Different operating systems may implement threads differently:

1.⁠ ⁠Many-to-One Model: Many user-level threads mapped to a single kernel thread.

2.⁠ ⁠One-to-One Model: Each user-level thread corresponds to one kernel thread.

3.⁠ ⁠Many-to-Many Model: Multiple user-level threads mapped to multiple kernel threads, providing a balance between flexibility and efficiency.

Lastly threads are necessary for parallelism and concurrency concepts within a process making use of modern multi-core processors effectively. Knowledge about their management, synchronization and communication techniques is essential for developing efficient programs in an operating system environment. Threads are fundamental; they form the basis of modern operating systems, and are used extensively in server side programming and graphical user interfaces. They are essential for developing efficient, responsive and scalable software systems as they give a powerful mechanism to exploit the parallelism within multi-core processors.


Comments ()


Sign in

Read Next

The Sunny Side of Instagram

Blog banner

Which Smartphone Company Has the Largest Market Share in India?

Blog banner

What is Virtual Memory

Blog banner

All you need to know about Cassandra

Blog banner

Celebrate Diwali the Delicious Way with Meal Maharaj Catering

Blog banner

File System

Blog banner

Cyber Attacks -- Trends Patterns and Security Countermeasures

Blog banner

OS Assignment-3

Blog banner

All you need to know about “On-page SEO”

Blog banner

Expressing and Measuring Risk (Risk Management)

Blog banner

Charcoal, Lemon, and DIY Kits: Which “Viral” Dental Trends Are Actually Dangerous?

Blog banner

The seven-step improvement process

Blog banner

Deadlock

Blog banner

Why Peace River Is Florida’s Most Underrated Outdoor Adventure Destination?

Blog banner

An Overivew Of Cache Memory

Blog banner

The application udemy

Blog banner

Networking 101: How to Build Meaningful Connections in College

Blog banner

Data Warehouse Bus Matrix

Blog banner

MD5 Collisions and the impact on computer forensics

Blog banner

VIRTUAL MACHINE

Blog banner

Satellite Based Positioning

Blog banner

The Importance of Eating on Time: How Meal Timing Affects Your Health

Blog banner

Pooja Silver

Blog banner

Operating Systems

Blog banner

How Social Media Algorithms Will Work in 2026?

Blog banner

File sharing

Blog banner

Why Data Privacy Is Changing Online Advertising

Blog banner

My Favorite Country

Blog banner

Ubiquitous Computing

Blog banner

Deadlock and starvation in operating system

Blog banner

Linux Threads:

Blog banner

Video games

Blog banner

USES OF WHATSAPP

Blog banner

Deadlock and Starvation

Blog banner

Healthy Indian Dinner Ideas for Better Digestion and Sleep

Blog banner

Objectives and Functions of Operating System

Blog banner

Dental Problems That Start Small But Should Never Be Ignored

Blog banner

RAID

Blog banner

STARVATION

Blog banner

OPERATING SYSTEM

Blog banner

Anomaly Detection in Behavioral Data Using Machine Learning

Blog banner

Lifestyle of a photographer

Blog banner