Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 553 posts.
Faster Mac dev tools with custom allocators
Introduction
Static Executables with SBCL v2
It's taken me much longer than I hoped, but I finally have a second version of my patches to build static executables tested and ready to go! This set of patches vastly improves upon the first by reducing the amount of compilation needed at the cost of sacrificing a little purity. Additionally I have created a system…
Seagate Barracuda Ramp Weakness (2016)
During a recent RAID 5 recovery attempt, John made an interesting discovery inside the two failed disks. The plastic ramp that the heads park onto when idle had snapped in the same position on both drives. We don’t know if the heads got damaged first, and then broke the ramps during parking, or if the […]
PipeWire Under the Hood
The PipeWire project is slowly getting popular as it matures. Its documentation is still relatively sparse but is gradually growing. However, it's always a good idea to have people from outside the project try to grasp and explain it to others in their own words, reiterating ideas, seeing them from their own…
Tar is an ill-specified format (2015)
http://invisible-island.net/ autoconf/ Copyright © 2014–2015,2016 by Thomas E. Dickey
Docker in Production: A History of Failure (2016)
Introduction My first encounter with docker goes back to early 2015. Docker was experimented with to find out whether it could benefit us. At the time it wasn’t possible to run a container [i…
Switching to the i3 window manager
After using the awesome window manager for 10 years, I have switched to i3, another tiling window manager with a different philosophy.
The surprising subtleties of zeroing a register (2012)
Zeroing out a CPU register seems like the simplest and most basic operation imaginable, but in fact x86 CPUs contain a surprising amount of special logic to make this operation run smoothly. The mo…
LibreELEC 10.0
The final version of LibreELEC 10.0.0 has been released, bringing Kodi (Matrix) v19.1 to LibreELEC users. Users of LibreELEC 10 Beta or RC1 get an automatic ...
The school for sysadmins who can’t timesync good
(With apologies to Derek Zoolander and Justin Steven. And to whoever had to touch the HP-UX NTP setup at Queensland Police after I...
Étoilé on Gnustep
Étoilé is an innovative GNUstep based user environment built from the ground up on highly modular and light components with project and document orientation in mind.
Mini-ITX Seaberry Adds 11 PCIe Slots to a Raspberry Pi
Since the Compute Module 4 came along last year, there have been a few projects that use it that make me do a double-take: They did what with a Pi? Alftel's Seaberry is a carrier board for the CM4 in the Mini ITX form factor that adds on eleven PCI Express slots: 1 x16 slot (with x1 lane) in the standard ITX location…
Why Specifications Don't Compose
Recently my friend Lars Hupel and I had a discussion on why formal methods don’t compose well. You can read the conversation here. We focused mostly on composing formally-verified code. I want to talk a little more about the difficulties in composing specifications. This is half because it’s difficult for interesting…
Isolating Xwayland in a VM
In my last post, Qubes-lite with KVM and Wayland, I described setting up a Qubes-inspired Linux system that runs applications in virtual machines. A …
The effect of switching to TCMalloc on RocksDB memory use
Memory allocator is an important part of the system, so choosing the right allocator for a workload can give huge benefits. Here is a story of how we decreased service memory usage by almost three times.
Reading NFS at 25GB/s using FIO and libnfs
My current employer does a lot of really cool systems work that’s covered by NDAs. I recently did some work to integrate a cool open source tool into our workflow. Felt it deserved a blog post. NFS Testing Requires Parallelism. I work for Pure Storage. One of the products we make is a scale-out NFS1 (and…
On Cache Invalidation: Why Is It Hard? (2018)
Many people must have heard this quote (by Phil Karlton) many times: There are only two hard things in Computer Science: cache invalidation and naming things. Two days ago, Nick Tierney mentioned it …
PostgreSQL Subtransactions Considered Harmful
PostgreSQL subtransactions (nested transactions) may cause multiple performance and scalability issues: higher rates of XID growth and higher risks of transaction ID wraparound, performance degradation when more than PGPROC_MAX_CACHED_SUBXIDS (64) are used in a session, drastic performance slowdowns when…
Netflix Cloud Packaging in the Terabyte Era
By Xiaomei Liu, Rosanna Lee, Cyril Concolato
Just Say No to Paxos Overhead: Replacing Consensus with Network Ordering (2016)
Jialin Li, Ellis Michael, Naveen Kr. Sharma, Adriana Szekeres, and Dan R. K. Ports, University of Washington
A Review of “Kill It with Fire: Manage Aging Computer Systems”
There are many books available that deal with modernising legacy codebases. These books generally focus on how to go about understanding the legacy system, improving test coverage, introducing build automation, as well as strategies for refactoring or rearchitecting the codebase. However, Marianne Bellotti’s Kill It…
Which is not Posix
I learn a non-trivial number of things, because there’s Debian drama about them. The fact that the which command is not part of any standard just joined the flock.
The wrong way to switch operating systems on your server
world wide web benji-style
Living with single-tenant and multi-tenant architectures
Lessons learned, observations and reflections
On ELF, Part 2 (2018)
Kestrel : A completely open computer design.
What scientists must know about hardware to write fast code (2020)
Socolive là địa chỉ được nhiều người hâm mộ bóng đá tìm đến khi muốn cập nhật và theo dõi trực tiếp bóng đá trên nền tảng trực tuyến. Nội dung tại Socolive được xây dựng xoay quanh nhiều giải đấu và cuộc đối đầu đáng chú ý, giúp người xem dễ dàng tìm thấy trận đấu đang được quan tâm. Cách phân loại thông tin theo từng…