Add a const here, delete a const there
Update, February 2019: Two years later the VC++ bug I reported here still exists, even in VS 2019 preview. However Chromium no longer builds with VC++ so I’m reverting the changes where I del…
Topics /
The most popular blog posts about systems & performance on Hacker News. 263 posts.
Update, February 2019: Two years later the VC++ bug I reported here still exists, even in VS 2019 preview. However Chromium no longer builds with VC++ so I’m reverting the changes where I del…
The roadmap for latency profiling in Go
Troy Hunt recently published a blog post titled “Authentication guidance for the modern era”. It has a big pile of solid advice on what…
Let's take a look at the state of netbooting for Raspberry Pis including how and why you'd build a cluster and how well containers play with network booting
Posts and writings by Lennart Poettering
Recently I was doing an assessment in a locked down and restricted environment. One of the first actions you tend to do when landing a shell on a [linux] box is to do some reconnaissance. This is both on host and network, as you want to determine what new access this host has given you. Normally you would run netstat…
Benchmarks & Tips for Big Data, Hadoop, AWS, Google Cloud, PostgreSQL, Spark, Python & More...
I've been chipping away at bringing up 802.11ac on FreeBSD. I've been meaning to write this post for a while, but you know, life got in the ...
Yes, that familiar little PC peripheral. The one that toggles a single keyboard/mouse/display ensemble between two or more connected machines.
In this post, I’m going to show benchmark results of the recently released PostgreSQL 10.1. I’ve benchmarked the DB on these OSes (all are 64-bit):
In the original version of this post, I claimed that gryadka , which claims to be built on top of a Paxos-backed CAS register, was incorrect by providing a “counter-example”.
As part of a never-ending quest to explore the CoreCLR source code I stumbled across the intriguing titled ‘HillClimbing.cpp’ source file. This post explains what it does and why.
Because the CLR is a managed environment there are several components within the runtime that need to be initialised before any of your code can be executed. This post will take a look at the EE (Execution Engine) start-up routine and examine the initialisation process in detail.
Dirty COW (CVE-2016-5195) is one of the most publicised local privilege escalation vulnerabilities in 2016, courtesy to its catchy name, cute logo, potential damages, and the fact that it was discovered in the wild by a researcher Phil Oester, meaning it was already under active use at the time of discovery.
Introduction Back in 2014, while at Project Zero, I exploited a buffer overflow of a single NUL byte in glibc . Tavis Ormandy had found th...
Linux uses an LPC-trie for looking up routes. It provides good performance with low memory use even with millions of routes.
This post is about an obscure corner of TCP network programming, a corner where almost everybody doesn’t quite get what is going on. I used to think I understood it, but found out last week that I didn’t.
This is the first post in a series about JIT compilers. The plan is to take a simple input language and develop some interpreters and JITs for it, in roughtly increasing degree of complexity. It's my hope that by the end of the series readers will have a good understanding of what it takes to develop a JIT compiler…
If you've noticed a disruption in the time-space continuum recently, it is likely because I have finally been able to compile and install ...
The 1600 LoC patch allows userspace to pass the kernel the encryption keys for an established connection, making encryption happen transparently inside the kernel.
In many information systems, we work with arrays of integers. For example, maybe you need to keep track of which records in a database contain a given value. This sort of mapping can be expressed as an array of integers. These arrays can end up taking up a large fraction of your memory or disk … Continue reading…
You’re walking at $HOME, minding your own business. $ whoami > user $ pwd > /home/user But something is bothering your feet. It’s like if a little rock has fallen into your shoe. You take it off, to see what’s going on. $ ls -lah ./left-shoe ---------- 1 root root 4 May 30 13:20 little-rock That’s odd. It’s there, but…
Yesterday, I discovered an experimental Big Data processing framework written in C++ called Thrill. As most of you surely know, the well-known frameworks of this kind are mostly based on JVM, like …