wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Threads

profile
AARON Dsouza
Jul 04, 2024
0 Likes
0 Discussions
51 Reads

A thread is the smallest unit of the code execution in a process

A program may have multiple processes and a process may have multiple threads execution processes occur in the cpu. A thread is a basic utilization of cpu

A thread consists of

• Thread id

• A program counter

• Register set

• Stack

It also shares code section, data section and other operating system resource with the same process, a process is heavy weight if it performs a single thread but multiple threads will allow multiple task execution

Benefits of multithreading

• Responsiveness: eg in a Gui one thread handles frontend Ui and another handles backend process

• Improved performance: significant boost in application as multiple threads run parallelly decreasing the time

• Resource sharing: threads of the same process also share code section, data section and other operating system resource with the same process, making the communication between them easy

• Scalability: multithreads handle increasing workloads significantly by dividing tasks among each other

Multi-threading

Types of threads

• User thread: used by developers and are supported above the kernel and managed without kernel support

• Kernel thread: supported and managed directly by operating system

For a system to exits there should be relationship between user and kernel threads

Types of relationships:

1. One to one

2. Many to one

3. Many to many

One to one: 1 user thread maps to 1 kernel thread, provides more concurrency than many to 1 as it allows a new thread to run when a thread makes blocking call, allows multiple threads to run inn parallel on multiprocessors. But creating a user thread forces to create a kernel thread and overhead of creating kernel thread can cause burden in the application

Many to one: many user threads access 1 kernel thread and the thread management is done by thread library in user space and makes it efficient. But if one of the many user threads makes a blocking system call then the kernel thread will be blocked and entire process will be blocked. Because one thread accesses 1 kernel at a time multiple threads don’t run in parallel on multiprocessors because 1 kernel only runs 1 process.

Many to many: Many user threads are mapped to many kernel threads and number of kernel threads may be specific to an application or machine, developers can create multiple user threads and they run in parallel in a multiprocessor and when a user thread asks for a blocking system call the kernel can execute another thread for execution

DONE BY AARON DSOUZA

53003230005

 

 

 

 

 

 

 

 

 


Comments ()


Sign in

Read Next

The Right way of cooking

Blog banner

?What Children Learn Between Activities: The Hidden Learning Moments in a Preschool Day

Blog banner

Deadlock and Starvation

Blog banner

File management

Blog banner

Tiranga - Abbas Haveliwala

Blog banner

MY MOST THRILLED TREK ..... BHAIRAVGAD

Blog banner

Principles of Concurrency

Blog banner

Deadlock

Blog banner

Knowledge Management in Continual Service improvement (CSI)

Blog banner

6 Digital Marketing Trends You Must Watch Out For In 2022

Blog banner

Uniprocessor Scheduling

Blog banner

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

Blog banner

Efficiency of SQL Injection Method in Preventing E-Mail Hacking

Blog banner

38_Network Sniffing Techniques_SBC

Blog banner

What is E-commerce

Blog banner

OPERATING SYSTEM OBJECTIVES AND FAULT TOLERENCE.

Blog banner

Odoo

Blog banner

Ransomware

Blog banner

Service stratergy principles

Blog banner

Why Festivals Are the Best Classrooms for Young Minds?

Blog banner

LIMITED EDITION

Blog banner

Dove’s Real Beauty Campaign- Case Study

Blog banner

Human factor, a critical weak point in the information security of an organization’s IOT

Blog banner

Top 10 Logos and their meanings

Blog banner

Install Ubuntu Easily

Blog banner

Virtual Memory

Blog banner

Jamming Attacks in Network Security: Disrupting Communication Signals

Blog banner

Virtual Memory

Blog banner

Know your Processors!

Blog banner

Importance Of Yoga.

Blog banner

Memory Management

Blog banner

Memory heirachy (Operating system)

Blog banner

Secure Hypertext transfer protocol

Blog banner

Inventory management software system

Blog banner

Process State

Blog banner

Improving defences Proxy Device(defense in depth)

Blog banner

Direct Memory Access

Blog banner

Memory Management in Operating System

Blog banner

MAHAKAL LOK UJJAIN

Blog banner

Synchronization

Blog banner

Incident management in ITSM

Blog banner

Process and Threading

Blog banner