Topics /
Systems & Performance
The most popular blog posts about systems & performance on Hacker News. 6,942 posts.
The cult of dd (2017)
You'll often see instructions for creating and using disk images on Unix systems making use of the dd command. This is a strange program of [obscure provenance](https://en.wikipedia.org/wiki/Dd_(Unix)) that somehow, still manages to survive in the 21st century.
Desktop Linux Hardening (2022)
Linux is not a secure desktop operating system. However, there are steps you can take to harden it, reduce its attack surface, and improve its privacy. Before we start… Some of the sections will include mentions of unofficial builds of packages like linux‑hardened, akmod, hardened_malloc, and so on. These are not…
Composable multi-threaded parallelism in Julia
Software performance depends more and more on exploiting multiple processor cores....
Apple has stopped providing standalone installers for macOS updates
Apple released macOS Big Sur 11.1 on 14 December. Although yesterday it finally posted standalone installers for the two concomitant security updates to Catalina and Mojave, no standalone updaters …
My experience with NixOS
In a nutshell, NixOS is a operating system based on Linux that provides a declarative package and configuration management.
Io uring
Introduced in 2019 (kernel 5.1) by Jens Axboe, io_uring (henceforth uring) is a system for providing the kernel with a schedule of system calls, and receiving the results as they're generated. Whereas epoll and kqueue support multiplexing, where you're told when you can usefully perform a system call using some set of…
Putting Linux on my RTX Spark laptop because I don't have a Microsoft account
Arch Linux ARM on the ASUS ProArt P16, with a bootable installer, published Windows comparisons, and local Qwen inference.
PSA: Firefox Nightly now with experimental Wayland support
As of last nightly (20181115100051), Firefox now supports Wayland on Linux, thanks to the work from Martin Stransky and Jan Horak, mostly.
Don't tug on that, you never know what it might be attached to
From the highly eclectic blog of Mark Dominus
Arena allocator tips and tricks
Over the past year I’ve refined my approach to arena allocation . With practice, it’s effective, simple, and fast; typically as easy to use as garbage collection but without the costs. Depending on need, an allocator can weigh just 7–25 lines of code — perfect when lacking a runtime . With the core details of my own…
Containers and Distributed Systems: Where They Came from and Where They’re Going
Tips from experts, thoughts from leaders, news from the front line. Join the conversation beyond hyperconverged infrastructure to the enterprise cloud.
RISC-V OS Using Rust: Memory Management Unit
From the operating system's point of view, we have a large pool of memory from some starting address to some ending address. We can use our linker script (the virt.lds file) to provide us symbols representing the address of the starting and ending points.
Linux Problems on the Desktop (2018)
In this regularly but rarely updated article, which is without doubt the most comprehensive list of Linux distributions' problems on the entire Internet, we only discuss their main problems and shortcomings (which may be the reason why some people say Linux distros are not ready for the desktop) while everyone should…
Rust compiler performance
Perhaps the most often repeated complaint about Rust is its slow feedback loop and long compilation times. I hear about it all the time; in Rust podcasts, blog posts, surveys, conference talks or offline discussions. I also regularly complain about it, being a Rust user myself!
Distributed systems programming has stalled
Over the last decade, we’ve seen great advancements in distributed systems, but the way we program them has seen few fundamental improvements. While we can sometimes abstract away distribution (Spark, Redis, etc.), developers still struggle with challenges like concurrency, fault tolerance, and versioning. There are…
Sieve is simpler than LRU
SIEVE is Simpler than LRU: an Efficient Turn-Key Eviction Algorithm for Web Caches
Building a highly-available web service without a database
In this viral post, we explain a new paradigm of building simple clean apps: from prototyping to scaling up.
Baby Steps: Slowly Porting Musl to Rust
ramblings by Adam Perry
Unix’s file durability problem
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 have come to bury the BIOS, not to open it [video]
Historically, proprietary systems created the need for binary machine interfaces. This extended to the deepest layers of the system, where the PC BIOS was…
Lanai, the mystery CPU architecture in LLVM
Disclaimer: I have had access to some confidential information about some of the matter discussed in this page. However, everything written here is derived form publicly available sources, and references to these sources are also provided.
Fedora 27 released
The Fedora Project proudly announces the release of Fedora 27, its latest leading-edge operating system. Download it free and experience it today.
Running three hours of Ruby tests in under three minutes
Stripe uses Sorbet to type check our 15 million lines of Ruby code, making engineers more productive. Here's why we love Sorbet.
Keeping Figma Fast: perf-testing the WASM editor
When a laptop crashed in an empty office, we knew it was time to overhaul our performance testing framework.