Welcome to SoftPrayog.in

What's new
Raspberry Pi 4B display
Connecting display to Raspberry Pi 4B
How to connect a 7" touchscreen display to Raspberry Pi 4B and boot the system.
First screen after booting Raspberry Pi
Getting started with Raspberry Pi
How to connect various peripherals to Raspberry Pi 4B and power it on the first time is explained.
Server and clients
Socket programming using the select system call
Socket programming calls using the Client Server paradigm and example programs are given.
Signals in Linux
Signals are software interrupts delivered to a process by the kernel. A signal indicates that an event has occurred and the process must act on it.
systemd – System and service manager in Linux
systemd is the newer init system used in most Linux distributions since 2015.
IPTC metadata in photographs
How to add the IPTC metadata in photographs using exiv2 in Linux.
Syslog concepts and calls for recording messages to Syslog are explained.
POSIX message queues
POSIX message queues in Linux
POSIX message queues provide a fast and easy mechanism for interprocess communication (IPC) in Linux.
POSIX shared memory
POSIX Shared Memory in Linux
Shared memory is the fastest method of interprocess communication in Linux systems.
POSIX semaphores
POSIX Semaphores in Linux
POSIX Semaphores are used for process synchronization.
fork and exec in Linux
fork and exec in Linux
Fork creates a new process and exec makes the new process run the concerned program.
D-Bus Tutorial
D-Bus is a mechanism for interprocess communication under Linux and other Unix-like systems.
htop command in Linux
htop is a ncurses based program for viewing processes in a system running Linux.
Queue implementation in C using linked list
Queue is a first-in first-out data structure.
In a nutshell
Bash Scripting Tutorial
How to write bash scripts for repetitive tasks.
Sed command in Linux
sed applies the commands on each line of input and writes the resulting lines on standard output.
Awk Tutorial
awk takes the input and gives output after matching desired patterns and doing processing linked to matched patterns.
Software Configuration Management
Git Tutorial
Git is a software source code control system.
iptables command in Linux
The iptables command is for defining rules for packet filtering for establishing and configuring firewalls in Linux.
rsync is a one-way file synchronization tool used in Linux and other Unix-like systems.
logrotate: manage log files
logrotate is a utility for rotation, compression, removal and mailing of log files.
Two processes connected with a pipe
Pipes in Linux
Pipes can be used to connect standard output of a process to the standard input of a related process.
Interprocess communication using fifo
FIFOs in Linux
FIFOs are named pipes. Any two processes can communicate using a FIFO.
Message queue
System V message queues in Linux
System V message queues provide a mechanism for inter process communication (IPC) in Linux and other Unix-like systems.
System V Semaphores in Linux
System V semaphores are kernel managed objects that help in synchronization of processes.
Server and clients using shared memory
Interprocess communication using System V Shared Memory in Linux
System V shared memory is a fast inter process communication (IPC) mechanism available in Linux and other Unix-like systems.
POSIX Threads Synchronization in C
POSIX Threads provide multiple flows of execution within a process.
Client server system
Socket Programming using TCP in C
A socket is a network communication end point at a host. Processes communicate over sockets.