RSSAmplifier

Blog

East River Village

eastrivervillage.comRSS feed ↗20 posts

Latest posts

Virtual memory to Physical memory

We all know that processes running in Linux acts only in virtual address space. So whenever a process wants to access a data (okay datum) it requests CPU f...

Add swap space to Ubuntu

WARNING: Adding a swap space in your Digitalocean droplet or any other cloud ...

About me

Balakumaran Kannan works as a System software engineer mail me at [kumaran.4353@gmail.com](mailto:kum...

Auto deploy from Bitbucket or any other git repository

Update aptitude first sh $ sudo apt-get update Install expect sh $ sudo apt-get install expect Create a directory named trigger in your hom...

Configure Vim

The above picture is from my favorite serial Mr.Robot . Elliot Alderson is writing a script to hack Evil Corp. I have three development environments * One...

VNC setup in Digitalocean

Install xfce desktop environment sh $ sudo apt-get install xfce4 xfce4-goodies Install TightVNC for VNC server ```sh $ sudo apt-get install tight...

Github from Facebook

There are multiple J.A.R.V.I.S projects available in GitHub. All are based on some chat frameworks like api.ai, Alexa, etc. This is yet another rather vaguel...

The Linux COW

In our last post we have seen how to get the physical memory address using a virtual memory address. In th...

Raspberry Pi dishes from Yocto cuisine

Recently I got some board bring-up work where I come across Yocto project. To complete that project, I had to understand a little more than the basics of Yoc...

KGDBoE on RaspberryPi - building out of the kernel tree module with yocto

WARNING: KGDBoE cannot be used in Raspberry Pi due to lack of polling support in its network...

KGDB/KDB over serial with Raspberry Pi

Hardware setup We need a USB to serial converter to connect Raspberry Pi to the PC serially. [This](https://www.amazon.in/PL2303-Converter-Adapter-Aurdin...

Debugging application with cross-GDB in Yocto environment

GDB is a very useful tool when debugging applications. Embedded devices lack sophisticated features that Development machines enjoy like better processor spe...

Anatomy of Linux system call in ARM64

Architecture of Linux system call. Explains ARM64 exception levels and privilege of each level. Walks through Linux code path related to interrupt vectors and instructions that handle the system call. Bit of assembly code understanding is necessary. Explains every single instruction between `printf` and `sys_write`.

The Volatile keyword

A detailed discussion about volatile keyword.

64-bit Mainline kernel on Raspberry Pi 3

Raspberry Pi foundation maintains customized Linux kernel for Raspberry Pi devices. Cross-compiling vanilla kernel to Raspberry Pi is bit challenging. But its worth giving a try as we can test latest kernel on it. This article is a step-by-step guide to build vanilla kernel for Raspberry Pi 3. It explains necessary device-tree files and kernel configurations related to Raspberry Pi.

Custom build kernel for Raspberry Pi

How to build your own customized kernel for Raspberry Pi using yocto.

Variadic functions with unknown argument count

Variadic function is function that accepts varying number arguments. But often times we've to pass the number of arguments as the first argument. But once we faced a peculiar problem where the number of arguments can't be passed. And we solved it in a peculiar ;) way.

kexec - A travel to the purgatory

A story about how I fixed the boot delay in an ARM64 system. This article walks through Linux reboot / kexec code path, a bit of kexec-tools source and importantly how kexec-tools injects its code in your boot path.

perf kvm to profile vm_exit

Profiling VM_EXIT reasons with `perf kvm` tool

Quick kernel upgrade with kexec

Upgrade kernel of a virtual machine in seconds. Normally kernel upgrade will require a reboot. As reboot will take minutes to complete, service downtime will be more. Here we'll see how upgrade kernel of a VM running Debian-9 in seconds.