New
The latest blog posts to take off on Hacker News. 4,390 posts.
Build your own operating system
Ten years ago (around the year 2001) I wrote a simple x86 protected-mode OS just to find out how operating systems work. That was really gr...
Rapid DHCP: Or, how do Macs get on the network so fast?
One of life's minor annoyances is having to wait on my devices to connect to the network after I wake them from sleep. All too often, I'll open the lid on my …
What every programmer should know about time
This is a trade-off: you can't represent a leap second, and your time is guaranteed to go backwards. On the other hand, every day has exactly 86,400 seconds, and you don't need a table of all previous and future leap seconds in order to format Unix time as human-preferred hours-minutes-seconds.
Things you (probably) didn't know about xargs
If you’ve spent any amount of time at a Unix command line you’ve probably already seen xargs . In case you haven’t, xargs is a command used to execute commands based on arguments from standard input.
How to handle 1000s of concurrent users on a 360MB VPS
There has been some recent confusion about how much memory you need in a web server to handle a huge number of concurrent requests. I also made a performance claim on the STS list that got me an unusual number of private emails.
On HTTP Load Testing
A lot of people seem to be talking about and performing load tests on HTTP servers, perhaps because there’s a lot more choice of servers these days.
JSLinux - Technical Notes
In 2011 I wrote the initial version of JSLinux, the first PC/x86 emulator in Javascript running Linux. I reused parts of another of my emulators ( QEMU ) for the x86 helpers and the devices.
Understanding the code inside Tornado, the asynchronous web server
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
Why linux doesn't have a "wheel" group
The wheel group is, perhaps, not widely used today, or is seen as “archaic” and irrelevant. Nothing could be further from the truth. The wheel group is a group which limits the number o…
Smaller than Bloom filters
I've been looking at what would be needed in order to have a global view of CRLs in browsers. At the moment revocation has three problems: privacy (by asking the CA about the status of a certificate you're revealing to them what you're looking at), performance (OCSP checks take hundreds of milliseconds which adds up…
The Linux perf command rocks
A summary of Linux profiling/monitoring tools
OpenSSL memory use in Node.js
Last Thursday I went to the Joyent office for Node Office Hours — I wanted to talk to Isaac about running a private NPM registry .
How The Kernel Manages Your Memory
After examining the virtual address layout of a process, we turn to the kernel and its mechanisms for managing user memory. Here is gonzo again: Linux processes are implemented in the kernel as insta
OS X Isn't for Developers
Written pieces, talks, and other bits by Zach Holman.
Goliath: Non-blocking, Ruby 1.9 Web Server
There are easily half a dozen of factors you need to consider when picking an app server: the choice of the VM, implementation model, performance and memory usage, driver and library availability, community support, and so forth. In other words, it is a complex set of requirements, and no one solution is likely to…