Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,947 posts.
Understanding QEMU Devices (2018)
Here are some notes that may help newcomers understand what is actually happening with QEMU devices:
An Ancient Kernel Hole Is Not Closed
The "stack clash" series of vulnerabilities were a prime opportunity to demonstrate the strength of grsecurity's approach to security. Unlike upstream Linux and other OSes, the issues uncovered were unexploitable under grsecurity for many years.
Debugging Network Stalls on Kubernetes
In this deep-dive, we identified and worked through sporadic latency issues with services running on Kubernetes in our environment.
Building a Shell
I built a tiny shell in C to learn what fork, execvp, and dup2 are doing under the hood.
Rqlite 6.0: the evolution of a distributed database design
rqlite is a lightweight, open-source, distributed relational database written in Go, which uses SQLite as its storage engine. v6.0.0 is out now and makes clustering more robust. It also lays the foundation for more important features. What's new in 6.0? 6.0 multiplexes multiple logical connections between rqlite nodes…
Research papers in the .NET source
This post is completely inspired by (or ‘copied from’ depending on your point of view) a recent post titled JAVA PAPERS (also see the HackerNews discussion). However, instead of looking at Java and the JVM, I’ll be looking at references to research papers in the .NET language, runtime and compiler source code.
Understanding the Go Scheduler
Go Scheduler
CPU Introspection: Intel Load Port Snooping
I blog about random things security, everything is broken, nothing scales, shared memory models are flawed.
Computer Networking Fundamentals – Learning Series (2023)
This colorful series walks you through the networking basics in just a few thousand words! It also offers hands-on labs to practice the obtained knowledge.
Linux Context Switching Internals: Process State and Memory
How does the Linux kernel represent processes and their state: A breakdown of task_struct and mm_struct
Operating on a minimal two-core Postgres instance: Query optimization insights
In an era where the costs for cloud services continue to soar, I want to outline how our data team has successfully managed to run the infrastructure of our energy trading company within the first year using only two PostgreSQL database instances - each equipped with just two CPU cores and four GB of RAM. Despite this…
Formal methods: Just good engineering practice?
Earlier this week, I did the keynote at TLA+ conf 2024 ( watch the video or check out the slides ). My message in the keynote was something I have believed to be true for a long time: formal methods are an important part of good software engineering practice. If you’re a software engineer, especially one working on…
macOS has become more reliable
How APFS, the boot volume group, hashes, and Secure Boot all combine to guarantee the integrity of your system, and save you trouble and work.
LibreSSL's PRNG is Unsafe on Linux
The first version of LibreSSL portable, 2.0.0, was released a few days ago (followed soon after by 2.0.1 ). Despite the 2.0.x version numbers, these are only preview releases and shouldn't be used in production yet, but have been released to solicit testing and feedback. After testing and examining the codebase, my…
Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database
It has been almost 9 months since I started my sabbatical work with the Microsoft Azure Cosmos DB team. I knew what I signed up for then...
Making Sense of the Audio Stack on Unix
Audio on Unix is a little zoo, there are so many acronyms for projects and APIs that it's easy to get lost. Let's tackle that issue! Most articles are confusing because they either use audio technical jargon, or because they barely scratch the surface and leave people clueless. A little knowledge can be dangerous.
Gone Full Unikernel
Unikernels, once a niche computing topic, have become a subject of intense interest and exploration. One particular evolution in this domain is “Going Full Unikernel.” Continue readingGone Full Unikernel
Bypassing the Linux kernel for high-performance packet filtering
In two previous posts we've discussed how to receive 1M UDP packets per second and how to reduce the round trip time. We did the experiments on Linux and the performance was very good considering it's a general purpose operating system.
SVDQuant: 4-Bit Quantization Powers 12B Flux on a 16GB 4090 GPU with 3x Speedup
A new post-training training quantization paradigm for diffusion models, which quantize both the weights and activations of FLUX.1 to 4 bits, achieving 3.5× memory and 8.7× latency reduction on a 16GB laptop 4090 GPU. Code: https://www.github.com/mit-han-lab/nunchaku