Hidden dependencies in Linux binaries
I have recently released an open source tool called sotrace . It maps out the .so dependencies for a binary or library, and presents th...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 569 posts.
I have recently released an open source tool called sotrace . It maps out the .so dependencies for a binary or library, and presents th...
Learn how to measure the impact of Python GIL contention on application latency using eBPF, with real workload examples.
This post guides through decompiling Hyper-V Manager to rebuild it from source, aiming to assess its value for potential open-sourcing. It explores manual and automated decompilation processes, including troubleshooting and enhancing the tool, advocating for community-led improvements to this widely-used but neglected…
Low level software usually has lots of .cc or .rs files. Even lower-level software, like your cryptography library, probably has .S containing assembly, my least favorite language for code review.
This post was made possible through hard work and determination. Do not feel frustrated if this stuff does not click immediately and remember, the source of truth will always be the source code. For us, our source code is raw assembly. That said it’s important you understand these techniques in detail because when…
Almost five years ago I wrote a brief history about .net on non-Windows platforms . I stumbled over that article now and it resurfaced traumatic memories of navigating .net development on Linux and MacOS.
The Internet's architecture is viewed as an hourglass: broad application support at the top, narrow waist (IP), wide choice of links below IP
Cliff L. Biffle blogged a great write-up of a debugging odyssey at Oxide with the title Who killed the network switch? Here’s the bit that jumped out at me: At the time that code was written…
Using a glibc version that is different from the system-provided one shouldn't require the use of containers, as I recently heard someone claim. Let's take a look at how dynamic linking works and what the options are.
Why are streaming joins so tricky? Discover the hidden complexities of real-time data, and learn how to tame the infinite stream!
Why an Intel Mac’s up to 40 Gb/s from Thunderbolt 3 is less than an Apple silicon Mac’s up to 40 Gb/s from USB4, and how you can benefit from it.
ARM64EC (and ARM64X) Explained Probably the most confused looks I get from other developers when I discuss Windows and ARM64 is when I used the term " ARM64EC ". They ask is the same thing as ARM64? Is it a different instruction set than ARM64? How can you tell if an application is or ARM64 ARM64EC?
A follow-up on a previous story, in which we identify another problem, and perhaps confirm a theory through a theorem.
Today’s Speedometer release is more open and challenging than before and is the best tool for driving browser performance improvements.
API Documentation (Chinese) HuggingFace Demo ModelScope Demo Introduction After the release of Qwen2.5, we heard the community’s demand for processing longer contexts. In recent months, we have made many optimizations for the model capabilities and inference performance of extremely long context. Today, we are proud…
Let's blink an LED on Pine64 Ox64 BL808 64-bit RISC-V Single-Board Computer... With Nim Programming Language and Apache NuttX Real-Time Operating System
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
I regularly hear or read statements like this: “X is slow but this is to be expected because it needs to do a lot of work”. It can be said about an application or a component in a larger system, and can refer to other resources that aren’t time. I often find these profoundly unhelpful as they depend much more on the…
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
In my previous post , I mentioned that I found a number of oddities when digging through the details of various Atari 8-bit file systems. I...
In this post, we are going to take a deep dive into pointer tagging, where metadata is encoded into a word-sized pointer. Doing so allows us to keep a compact representation that can be passed around in machine registers. This is very common in implementing dynamic programming languages, but can really be used…
Following my previous post on rate limiting with GCRA, leaky buckets without the buckets , I reviewed my old notes on rate limiting for Exim . I thought I should do a new write-up of the ideas that I hope will be more broadly interesting.
Update: I have created an awesome-minisforum-v3 GitHub repository to list information for Minisforum V3 users, including some workarounds for the issues mentioned in this review. Quest for the Ideal
Last week I noticed some unexpected assembly code in a function calling std::unordered_map::find (yes, I know, friends don’t let friends use STL, but that is a topic for another discussion). I decided to investigate a bit and it turned out to be quite a journey. It was a Clang compiler, ARM-based platform, I will use…
MEGA888 merupakan link alternatif slot gacor tutorial terbaru cara bermain game slot88 server indonesia penuh kesempatan menang maksimal teori konspirasi nyata pasti maxwin.
An extremely thorough explanation of what's contained inside a Linux kernel core dump.
Creating standalone Linux applications with lone.
There are two main aspects to compile times that matter to developers. Cold build times, when building from scratch and warm build times when you’ve already built and you’re rebuilding following an edit. This article focuses on warm build times, which for rapid iteration during development is what generally matters…