man7.org > Linux > man-pages| man7.org
Recently, I have been building software without libc to better understand Linux syscalls and internals better. So far, I have built a minimal shell, terminal Snake game, pure ARM64 assembly HTTP server and threads implementation. I have been using strace extensively while debugging. Useful options and flags I use a version of the following command: strace -fintrCDTYyy -o strace.log -v -s128 ./binary This looks like an alphabet soup of options! Here’s what they do and how they are useful: -f...| A Random Walk
Index ·| www.freedesktop.org
In a previous post, I’ve shown how to use the rayon framework in Rust to automatically parallelize a loop computation across multiple CPU cores.Disappointing...| gendignoux.com
man7.org > Linux > man-pages| man7.org
There are two types of troubleshootings: Why something doesn’t work? Why something worked? This post is about the second category. The Problem We have been using kaniko as image builder since a while back, including building a customzied kaniko image with itself like below: FROM alpine:latest COPY --from=gcr.io/kaniko-project/executor:v1.23.2 /kaniko /kaniko Despite of its official documentation clearly suggesting that this is not supported: Running kaniko in any Docker image other than the...| Hi-Been Space
Using ptrace to intercept and modify a process's getrandom syscall.| healeycodes.com
I wanted to explore different ways of communicating between different processes executing on the same machine, and doing so as fast as possible. We're focussing on high speed inter-process communication (IPC), but some of these approaches can be extended across a network. We'll do this exploration in Rust.| 3tilley.github.io
As part of my PhD studies, I’m working on a distributed task runtime called HyperQueue. Its goal is to provide an ergonomic and efficient way to execute task graphs on High-Performance Computing (HPC) distributed clusters, and one of its duties is to be able to spawn a large amount of Linux processes efficiently. HyperQueue is of course written in Rust1, and it uses the standard library’s Command API to spawn processes2. When I was benchmarking how quickly it can spawn processes on an HPC...| Kobzol’s blog
I discovered strace somewhere between my first part time web development part time job in 2005 and my first full time “software engineering” job in 2008, and it seemed like a superpower giving me x-ray vision into running infrastructure. When a process was stuck, or existing after a cryptic error message, instead of grepping around I could get a pretty good timeline of what the process was up to. It has some fatal flaws, the ptrace based technology can cause performance issues so it’s m...| Words from Shane
man7.org > Linux > man-pages| man7.org
man7.org > Linux > man-pages| man7.org
man7.org > Linux > man-pages| man7.org