September 23, 2023 |
Tags:
elf
self-reference
readelf
is a powerful tool that can be leveraged to dissect and understand ELF files. It can further help to understand how the linker and loader make use of the information present in it to load the executable into the memory. In this cheatsheet kind of self-reference post, the most important functions of this tool are described.
April 3, 2023 |
Tags:
emulation
arm
self-reference
Qemu is an emulator that supports various architectures. In this self-reference post, I will describe how Qemu can be used in user-level programs, all the essential commands and steps that are needed.
June 29, 2020 |
Tags:
C++
Allocators
Allocators provides a handle to override the memory management done by the operating systems. In this blog, I will incrementally write about the details of allocators.
April 12, 2020 |
Tags:
C
ARM
microcontroller
April 11, 2020 |
Tags:
gdb
C++
C
linux
Used to stop execution whenever the value of an expression changes, without having to predict a particular place where this might happen. The expression may be as simple as the value of a single variable or complex as a combination.
March 28, 2020 |
Tags:
networking
rpi
This post describes how to setup a static IP address on a Raspberry Pi, in fact this can be used on any Linux machine. This post is meant mainly for my reference, while also giving the actual reference.
March 27, 2020 |
Tags:
rpi
booting
tricks
This post describes how to connect the raspberry pi (with a interface by Raspberry Pi foundations) to the internet and enable the ssh, all on the first boot. This post is meant mainly for my reference, while also giving the actual reference.
March 4, 2020 |
Tags:
C++
optional
C++17
Introduced in C++17, it is used to represent a type whose content is not always present.
February 2, 2020 |
Tags:
January 23, 2020 |
Tags:
C++
Datastructures
C++ offers a wide range of data structures. From a performance perspective, the right data structure has to be chosen. This post briefly outline the main feature of every data structure available in C++.
January 23, 2020 |
Tags:
C++
Algorithms
December 2, 2019 |
Tags:
libraries
C++
C
linux
In this short post, I briefly describe how to create and use static and dynamic shared libraries. It should be noted that this post is created purely for my quick reference. The original references would be cited.
August 17, 2019 |
Tags:
debugging
ARM
August 8, 2019 |
Tags:
C
There might be place where there has to be a check that has to be done at the compile time. In C, one can use _Static_assert(<bool-expr>, <str-literal>)
. When the bool-expr
is 0
, it throws a compile time error with the message specified in str-literal
.
July 20, 2019 |
Tags:
hexfile
C++
C
microcontroller
I have been programming microcontroller for the past 6 years and I was always curious what is happening at the lowest level. They are ofcourse they hold some of binary content in them and modern IDEs takes care them. I honestly never really bothered to look into their significance. But recently I had to dissect the hex file and look for some important information.
July 13, 2019 |
Tags:
C++
C
libraries
July 8, 2019 |
Tags:
destructor
C++
RAII is one of the important concepts of C++ and destructor plays a very crucial role. One of the talks in CppCon explains how the destructor can be used.
December 2, 2018 |
Tags:
C
C++
pointers
The whole concept of pass-by-value in C seemed so simple in the beginning and could also be one of the reason why many beginners might take it for granted and I was one of them when I got started with the language four years ago. I am writing this post after spending hours debugging some code that I wrote for one of my assignment, without realizing that I was making a fundamental mistake.
March 23, 2018 |
Tags:
C
C++
volatile
microcontroller
This short article describes how volatile variable can benefit the development on both desktop and embedded applications.
March 18, 2018 |
Tags:
unittest
C++
In my recent past at my office place I have heard a lot about unit testing methodology. The amount of emphasis put on unit testing in software engineering was beyond my expectation when I first heard about it. However, very soon I have understood the importance of it, more so for automated testing. Unit testing the code written in C# is quite straight forward, mainly because of the framework provided by Visual Studio. However, things get little complicated when working on unit tests for C++, even more complicated when working on Linux. Well, the above statement was thought when I was just starting with unit testing.
January 1, 2018 |
Tags:
networking
Over the past year, I learnt a lot about networking. Yet, there has been a hunch that I have barely scratched the surface of networking concepts. But having done something today (which I’ll brief out) gave me some amount of satisfaction.
February 14, 2016 |
Tags:
experience
microcontroller
It all started when I was in my first year of engineering and had participated in a robotics workshop conducted at our college. My days were so boring until then. But after attending the workshop with a gust of anxiety, I was truly impressed and final found what I would love. Still pristine are those memories of those days when the mentor had explained us about microcontrollers and their capabilities. I was so fascinated that I even started doing my own experiments with electronics. I was very desperately waiting for the day to come on which I would be formally acquainted to microcontrollers. But I couldn’t be patient enough and bought some books after doing a small research on where to start from. Meanwhile I also bought an Arduino Uno. With it, I witnessed the capabilities with my own eyes. I was very passionate about electronics and computer programming since before. And the time I was waiting for has finally arrived.