Tutorialspoint

Celebrating 11 Years of Learning Excellence! Use: TP11

Operating system concepts-2

person icon Aditya Mishra

4.7

Operating system concepts-2

Master the basics of multithreading, Pthreads, synchronization, locks, semaphores, concurrency, deadlocks from scratch.

updated on icon Updated on Jun, 2025

language icon Language - English

person icon Aditya Mishra

English [CC]

category icon IT and Software ,Operating Systems and Servers,Operating Systems

Lectures -72

Resources -2

Duration -4 hours

Lifetime Access

4.7

price-loader

Lifetime Access

30-days Money-Back Guarantee

Training 5 or more people ?

Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.

Course Description

Ace multithreading, Pthreads, synchronization, locks, semaphores, concurrency, deadlocks questions in competitive exams, job interviews, and OS course exams.

Do you know: A single-threaded process can only execute on one core, even if the machine has eight cores? A multithreaded process can exploit the true hardware parallelism! What are data races? What is process synchronization? What are atomic operations? How to implement correct multithreaded programs without data races? What are locks and semaphores? How do we use locks and semaphores to implement correct synchronization solutions? What are deadlocks? What are the necessary conditions for deadlocks? How do operating systems deal with deadlocks? How do operating systems implement threads? How do operating systems implement locks to ensure correct mutual exclusion and synchronization? Learn the explanations to these and many more intriguing questions in this course!

Who this course is for:

  • Anyone interested in learning about operating systems in modern computers could benefit from this course.
  • Computer science undergraduate students taking an operating systems course could benefit from the course.
  • You may (optionally) wish to print some of the material.

Goals

What will you learn?

  • Why use threads in programs?

  • What are the overheads of using processes?

  • What is the key idea behind threads?

  • Difference between single vs multithreaded processes

  • Benefits of using threads.

  • Pthread basics.

  • How do I create a thread using Pthread?

  • How do I pass parameters to a thread?

  • How to use Pthread_self, Pthread_equal?

  • How do I terminate a thread?

  • How do I use Pthread_join to wait for a thread to terminate?

  • How do I return values from thread functions?

  • How to wait for threads?

  • How to detach a thread using Pthread_detach?

  • What are global variables in threads?

  • What is concurrency in programs?

  • What are race conditions and atomic operations?

  • What is synchronization?

  • What are the correctness properties for synchronization solutions?

  • How to enforce mutual exclusion?

  • What are locks?

  • How to use locks in Pthreads?

  • How to avoid deadlock with locks?

  • What are semaphores?

  • What are synchronization patterns--bounded concurrent access, signaling?

  • How to employ semaphores to avoid busy waiting?

  • How does multithreading interact with multicores?

  • What are the challenges of multicore programming?

  • How do I design multithreaded programs?

  • What are thread pools?

  • What is the readers-writers problem?

  • How to solve the readers-writers problem?

  • What is the dining philosophers problem?

  • How to solve the dining philosophers problem?

  • What are the 4 necessary conditions for deadlocks?

  • How do you prevent deadlocks?

  • What is a resource allocation graph?

  • How to handle deadlocks?

  • How do I implement threads?

  • What are user threads and kernel threads?

  • How are threads implemented in Linux?

  • How are locks implemented?

  • What is the TestAndSet atomic instruction?

  • What are spin locks?

  • How do locks influence performance?

Prerequisites

  • No previous knowledge about operating systems is needed. Everything you need to know about the topics will be covered.


Operating system concepts-2

Curriculum

Check out the detailed breakdown of what’s inside the course

Introduction

5 Lectures
  • play icon Why use threads? 03:09 03:09
  • play icon Overheads of using processes 03:19 03:19
  • play icon Key idea behind threads 02:46 02:46
  • play icon Single vs multithreaded processes 07:07 07:07
  • play icon Benefits of threads 03:09 03:09

Pthreads--POSIX threads

11 Lectures
Tutorialspoint

Concurrency in programs

10 Lectures
Tutorialspoint

Locks

6 Lectures
Tutorialspoint

Semaphores

4 Lectures
Tutorialspoint

Multithreaded programs

8 Lectures
Tutorialspoint

Classical synchronization problems--readers-writers problem

7 Lectures
Tutorialspoint

Dining philosophers problem

4 Lectures
Tutorialspoint

Deadlocks

8 Lectures
Tutorialspoint

Thread implementation

4 Lectures
Tutorialspoint

Lock implementation

5 Lectures
Tutorialspoint

Instructor Details

Aditya Mishra

Aditya Mishra

Hi, my name is Dr. Aditya Mishra--the founding director of Wisdom Academy. I hold a Master's degree from the Indian Institute of Technology Bombay and a Ph.D. from the University of Massachusetts, Amherst. I have a unique blend of experience working in both industry and academia.

As a scientist, I am fascinated by the ability of computer systems to make this world a better place. I have extensively researched smart grids and cyber-physical systems to achieve sustainability. Over the last decade, I have published dozens of research papers and have been cited in thousands of peer-reviewed research articles.

At the core, I am a teacher who wants to simplify Computer Science and Professional formation for aspirants like you. I have 7+ years of extensive experience teaching technical courses to undergraduate and graduate students in science and engineering disciplines. I have advised hundreds of students in their curriculum planning during this time. I have led many research and engineering projects focusing on students' technical and professional development.

And here I am! Wisdom Academy is here to help professionals, academics, and executives like you who believe it's the right time to turn their dreams into real life. This is no coincidence. I have thoroughly researched computer science, professional formation, and eastern philosophy for years before putting it all together into these courses. I invite you to join me on this journey.

Wisdom scholarships. If you are interested in taking one of our courses but cannot purchase it, you can apply for a scholarship to enroll. Learn more about the application process at my website.

May the force be with you!

Course Certificate

Use your certificate to make a career change or to advance in your current career.

sample Tutorialspoint certificate

Our students work
with the Best

Related Video Courses

View More

Annual Membership

Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses

Subscribe now
Annual Membership

Online Certifications

Master prominent technologies at full length and become a valued certified professional.

Explore Now
Online Certifications

Talk to us

1800-202-0515