Skip to main content

Posts

Showing posts from October, 2020

Soldering with a flux pen

 I have to confess, I'm a lousy solderer, my hands tremble, and I'm often too anxious to get the job done and leave bad joints. To make the job easier, I used on my latest project some external flux (sigh... I know, should have used it always).  A 1 to 4 MIDI splitter. Soldering pen on the left I decided to try out a flux pen. It seemed to be less messy than rosin. I was unsure would it be as effective, though. Well, it was pretty good. It is easy to apply, and I could smear it on the PCB rather accurately. After administering the stuff, I learned that one must be relatively quick to do the actual soldering; it seems to vaporize quickly and lose some effectiveness.

Tracing syscalls with trace-cmd and bpftrace

In my ongoing quest to understand more how GNU Linux works under the hood, I took upon myself a courageous assignment to figure out what a simple go program does from a kernel's point of view - which syscalls are called and what data is passed down there Here is the program So a simple hello world, which prints out the famous words and creates an empty file. To figure out which syscalls are triggered, I decided to use trace-cmd package. It is a frontend to ftrace which helps for example in filtering out the syscalls related to a single binary or a PID. After some intense googling, watching a couple of youtube videos , and fiddling around, I ran this command. sudo trace-cmd record -p function_graph --max-graph-depth 3 -e syscalls -g do_syscall_64 -F ./gohello It records a list of kernel functions practically in the order they are called with max depth and some filtering. It shows only syscalls and not, for example, system interrupts that clutter the output and are not in this exer