≡ Menu

C Arrays Basics Explained with 13 Examples

This article is part of our on-going C programming series.

There are times while writing C code, you may want to store multiple items of same type as contiguous bytes in memory so that searching and sorting of items becomes easy. For example:

  1. Storing a string that contains series of characters. Like storing a name in memory.
  2. Storing multiple strings. Like storing multiple names.

C programming language provides the concept of arrays to help you with these scenarios.
[continue reading…]

Top 25 Best Linux Performance Monitoring and Debugging Tools

I’ve compiled 25 performance monitoring and debugging tools that will be helpful when you are working on Linux environment. This list is not comprehensive or authoritative by any means.

However this list has enough tools for you to play around and pick the one that is suitable your specific debugging and monitoring scenario.
[continue reading…]

C Pointers Fundamentals Explained with Examples – Part I

Anybody who is working on Linux environment (not just developers), should understand the fundamentals of C programming language and write some basic C program.

This article is part of our ongoing series on C programming language.

The concept of pointers is one of the most powerful fundamentals of C/C++ language.
[continue reading…]

How to Setup and Configure YPServ Linux NIS Server and Client

NIS stands for Network Information Service.

NIS is also called as YP. YP stands for Yellow Pages.

NIS is a lookup service for set of databases. The databases in this cases can be a passwd file, group file, hosts file, etc. This is primarily used as a central repository to hold all username and passwords (i.e /etc/passwd), and different servers can authenticate against this server for the username and password.
[continue reading…]

One major aspect of system programming is to handle memory related issues effectively. The more you work close to the system, the more memory related issues you need to face.

Sometimes these issues are very trivial while many times it becomes a nightmare to debug memory related issues. So, as a practice many tools are used for debugging memory related issues.

In this article, we will discuss the most popular open source memory management framework VALGRIND.
[continue reading…]

7 Strace Examples to Debug the Execution of a Program in Linux

Strace is a debugging tool that will help you troubleshoot issues.

Strace monitors the system calls and signals of a specific program. It is helpful when you do not have the source code and would like to debug the execution of a program. strace provides you the execution sequence of a binary from start to end.

This article explains 7 strace examples to get you started.
[continue reading…]

RAID 2, RAID 3, RAID 4, RAID 6 Explained with Diagram

In most critical production servers, you will be using either RAID 5 or RAID 10.

However there are several non-standard raids, which are not used except in some rare situations. It is good to know what they are.

This article explains with a simple diagram how RAID 2, RAID 3, RAID 4, and RAID 6 works.
[continue reading…]

Linux 101 Hacks 2nd Edition – Download Free eBook

I’m happy to announce the updated 2nd Edition of my free eBook — Linux 101 Hacks.

There are total of 101 hacks in this book that will help you build a strong foundation in Linux.

All the hacks in this book are explained with appropriate Linux command examples that are easy to follow.

In the 2nd edition of the book, several small hacks from the 1st edition are consolidated, and several new hacks were added.

This free eBook contains 12 chapters with total of 271 pages.
[continue reading…]