Blog

Udev tutorial 1

11 minute read

Published:

udev rule for my USB driver on Raspberry Pi 4

Udev tutorial 2

6 minute read

Published:

Automating USB Kernel Module Loading with Udev and MODALIAS in Linux

Articles to Read

less than 1 minute read

Published:

Articles I read and will read in the future. Most recent update: 2025-02-04

Linking process

7 minute read

Published:

Linking Terminology

My explanation to all the details of linking process and their terms

Linux Trick

13 minute read

Published:

Useful Linux commands and tricks to solve common problems

Relocation Tutorial 2

1 minute read

Published:

This post is about PIC and GOT of shared libraries’ global variables and functions. Original post here

VLSIDesignChain: 1 - Synthesis by Yosys

4 minute read

Published:

Synthesis by Yosys

This is the first post in the VLSIDesignChain series using free open source VLSI design tools as well as proprietary tools interleaved.

Bitcoin double spending

9 minute read

Published:

Bitcoin double spending

Here’s what I’ve learned about double spending in Bitcoin, particularly from the perspective of an attacker — what they expect to happen and how they might attempt to succeed.

Modular division proof

less than 1 minute read

Published:

Proof of Modular division uniqueness and non uniqueness.

Proof by contradiction

10 minute read

Published:

My explanation and thoughts on proof by contradiction.

Performance counter 1

16 minute read

Published:

In this post series, We will explore the hardware performance counter in X86 architectures.

Commands to set up TSEL

3 minute read

Published:

How to set up Docker image on TSEL(Flatcar Container Linux)

Performance counter 3

8 minute read

Published:

In this post, We will explore three monitor modes supported by perf_event_open() to monitor events.

GCC FunctionInstrumentation

16 minute read

Published:

In this post, we explore how the -finstrument-functions flag and a custom GCC plugin can be used to intercept function entry and exit at compile time. We then examine a less obvious case: what happens when the function we want to instrument is not defined in the main binary, but instead lives in a shared library.

If a function is ever called

13 minute read

Published:

Given a large C project and I want to know if a vulnerable function is ever being used by the test cases, how to find it?

The Pointer Mistake

9 minute read

Published:

pointer pointing to a value vs pointer pointing to a pointer

Performance counter 4

25 minute read

Published:

In this post we will learn what is max sampling rate parameters, sample overflow interrupts between kernel ticks and how linux kernel dynamically adjusts the max sample rate when it detects that an interrupt from sample overflow is taking too long.