Setting Up a Simple Distributed File Service on AWS

In this blog, we’ll build a simple distributed file service on AWS. The setup will have two file servers — Server 1 and Server 2.…

Continue reading → Setting Up a Simple Distributed File Service on AWS

Introduction to Multi-Threaded Programming: Key Concepts

This blog post discusses how multi-tasking enables efficient CPU time-sharing among programs, allowing them to seemingly run simultaneously on a single-core processor. The OS scheduler manages task switching, allowing programs like a music player and a word processor to share CPU time effectively. Context switching is a rapid process that gives the appearance of parallel execution. However, distinct processes have isolated memory spaces, complicating data sharing. Threads within a process, on the other hand, share address space, simplifying communication and resource management. This post also introduces the pthread library for creating threads in C, showcasing the practicality of multi-threading.

Building a Multi-Threaded Task Queue with Pthreads

Question 4 You are tasked with developing a multi-threaded system using Pthreads to manage a dynamic task queue. The program should start with a user-specified…

Continue reading → Building a Multi-Threaded Task Queue with Pthreads