An approach to solving the dining philosophers problem

The Dining Philosophers Problem is a computer science problem formulated in 1965 by Edsger Dijkstra. It involves dealing with concurrent programming, synchronization issues, threads, deadlocks, and race conditions.
Understanding the stack data structure

Stack is an ADT (Abstract Data Structure) which follows the LIFO (Last In First Out) order. It might be easier to understand this concept by imagining an actual stack of books.
Understanding signals in Linux

A process ID a.k.a. PID is literally what the name says, it is a number to uniquely identify a running process. You can print your program’s PID in C using the getpid() function included on the header file unistd.h.
Introduction to Vim

Vim is one of the most powerful text editors you can think of. In this article, I will introduce you some basic and useful Vim commands.
How to enable image preview on Ranger using Kitty

First, create a config file for Ranger in ~/.config/ranger called rc.conf