Incorporating and accessing binary data into a C program
Blog about Ubuntu from a kernel engineer
The latest blog posts to take off on Hacker News. 165 posts.
Blog about Ubuntu from a kernel engineer
The folks that build the NSIS Installer have released updates to mitigate a serious security bug related to DLL loading. (v2.5 and v3.0b3 include the fixes). To make a long and complicate…
Software optimization resources | E-mail subscription to this blog | www.agner.org
Two months ago I have published a detailed survey of varioussecurity-related problems plaguing the Intel x86 platforms. While the picturepainted in the paper...
I haven't used a desktop email client in years. None of them could handle the volume of email I get without at least occasionally corrupting my mailbox. Pine, Eudora, and outlook have all corrupted my inbox, forcing me to restore from backup. How is it that desktop mail clients are less reliable than gmail, even…
Everytime you download a tar.gz, Zod kills a kitten. Everytime you generate a tar.gz, well, let's keep this family-safe. In 2015, there s...
For quite some time now I’ve been trying to learn about distributed systems, and it’s appropriate to say that once you start digging, there seems to be no end to it, the rabbit hole goes on and on. The literature in distributed systems is quite extensive, with lots of papers coming from different universities, plus…
DeLorean DMC-12
The next person that says “Linux Containers will solve all our problems” is going to get taken out back and shot. This is a surefire way to…
The Go runtime, in addition to providing the usual services of garbage collection, goroutine scheduling, timers, network polling and so forth, contains facilities to enable extra debugging output and even alter the behaviour of the runtime itself.
Learn what unikernels are, how they remove OS bloat between hardware and applications, and why they're gaining traction in cloud and microservices.
Yesterday I was curious about how git push works over SSH. I’m getting more used to using strace to figure this kind of thing out, so I gave it a shot. If I strace pushing to this site’s repository, this shows up:
Why you should understand (a little) about TCP
On one of my visits to the Computer History Museum – and by the way this is an absolute must-visit place if you are ever in the San Francisco bay area – I saw an early Google server rack circa 1999 in the exhibits. Not too fancy, right? Maybe even… a
This comes up far too often, so rather than continuing to explain it over and over again, I’m going to try to do a really good job of it once and link to it here.
I previously suggested that we might be able to get parallel sequential scan committed to PostgreSQL 9.5. That did not happen. However, I...
Random code snippets, projects and musings about software from Eric Kidd, a developer and occasional entrepreneur.
First, no, I don't do every thing in assembly. I use other languages too. Assembly language does have its place though. Second, a few of my points may not apply to highly complex processors; for example, self-modifying code may not work on a processor with an instruction cache .
Hardware performance “obviously” affects software performance and affects how software is optimized. For example, the fact that caches are multiple orders of magnitude faster than RAM means that blocked array accesses give better performance than repeatedly striding through an array.