Client server in C using socket in Linux
The example below demonstrates ongoing communication between a client and server on a Linux system, using a Raspberry Pi board for illustration. Embedded Linux systems are commonly utilized due to their adaptability in sockets, enabling communication between two or more programs regardless of whether they are written in the same programming language. In this tutorial, I will be using the C language.
Published on: March 22, 2024
Read MoreGPIO Driver in Linux in C
This article explores the GPIO Driver implementation in C for Linux. I'm utilizing a Raspberry Pi board for project development and compilation. Unlike conventional methods involving delays, this GPIO Driver employs a kernel timer to accurately calculate the desired frequency.
Published on: April 17, 2024
Read MoreLinux System Calls
This article explores system calls in Linux that can be utilized in C to interact with the Linux kernel. Since Linux itself is written in C, and its system commands are executables programmed in C, they can be invoked directly from a C program.
Published on: March 29, 2024
Read MoreLinux peripherals in C
In this piece, I'll delve into Linux peripherals and the ways to control them via system calls in C. Throughout this guide, I will present numerous examples to aid in grasping the configuration and communication processes for UART and I2C ports.
Published on: March 27, 2024
Read MoreInter-process communication IPC
In this guide, we'll explore various facets of interprocess communication (IPC) in Linux. I'll offer numerous examples, detailed explanations, and PlantUML diagrams for each C program we discuss. The IPC mechanisms we'll delve into include pipes, queues, shared memory, and semaphores.
Published on: March 25, 2024
Read MoreLinux Process in C
This tutorial introduces Linux processes, showcasing how to create, manage, and synchronize them using C. Examples cover `fork()`, `wait()`, and `exec()` for process handling, including creation, synchronization, and executing new programs, providing a foundation for developing efficient Linux applications.
Published on: March 22, 2024
Read MoreThreads
The tutorial provided gives you a foundational understanding of how to work with threads in Linux using the C programming language. It introduces you to the concept of threads — essentially separate paths of execution within the same process, allowing for parallel processing and more efficient use of resources.
Published on: March 22, 2024
Read More