(Graphical) Unix has always had desktop environments
One of the stories that you could tell about the X Window System and by extensiongraphical Unix is that first came (simple) window managers andxterm. Only later did Unix developed desktop environments like GNOMEand KDE. This is certainly more or less the development that happenedon open source PC Unixes and to a certain degree it's the experiencemany people had earlier on workstation Unix machines running X, butit's actually not historically accurate. In reality, Unix has hadfull scale desktop environments of various degrees
The time our Linux systems spend on integer to text and back conversions
Over on the Fediverse, I said something recently :
I sometimes think about all the CPU cycles that are used on Linuxmachines to have the kernel convert integers to text for /proc and/sys files and then your metrics system convert the text back tointegers. (And then sometimes convert the integers back to text whenit sends them to the metrics server, which is at least a differentmachine using CPU cycles to turn text back into integers (or floats).)
It's accidents of history all the
Why I use separate lexers in my recursive descent parsers
I recently read Laurence Tratt's Why Split Lexing and ParsingInto Two Separate Phases? ,which answers the question its title asked. In the introduction,Tratt offhandedly remarks:
[...] Since some parsing approaches such as recursive descent parsingunify these phases, why do lex and yacc split them apart?
As someone who's written a number of recursive descent (RD) parsersover the years, I had a reaction on the Fediverse . You see, when Iwrite recursive descent parsers, I always
The paradox of ZFS ARC non-growth and ARC hit rates
We have one ZFS fileserver thatsometimes spends quite a while (many hours) with a shrunken ARCsize, one tens of gigabytes below its (shrunken) ARC target size.Despite that, its ARC hit rate is still really high. Well, actually,that's not surprising; that's kind of a paradox of ARC growth (forboth actual size and target size). This is because the combinationof two obvious things: the ARC only grows when it needs to , and a high ARC hit
The modern browser experience has some impressive subtle tricks
My current mouse has additional 'rocker' buttons, which Firefox (andprobably other web browsers) map to forward and back one page, just likethe keyboard shortcuts of Alt + Right Arrow and Alt + Left Arrow. Overthe time I've become completely acclimatized to using them and havingthem just work, so it took a while for me to consciously notice asurprising situation where the 'back' rocker button worked.
A common UI for certain sorts of websites today is one where imagesare embedded as thumbnails
I've mostly stopped reading technical mailing lists
Once upon a time, I subscribed to and read a lot of mailing listsfor the software we used, things like Exim, Dovecot, Prometheus,ZFS, OmniOS, and so on. These days I've mostly stopped, which is ashift that makes me a bit sad. Technically I'm still subscribed tosome of these mailing lists, but in practice all their incomingmessages get filed away to a folder and periodically I throw outthe accumulated contents and start again. These days I only readone
Mailing lists versus forums, some thoughts
Once upon a time, the thing for open source projects to have wasone or more mailing lists (a '-user' and a '-devel' split wascommon). These days, an increasingly common option is some form offorum (or sometimes a chat system), to the point where people willsometimes turn up on mailing lists and ask if there's a forumversion. As an old timer I often rolled my eyes at this shift, butit recently occurred to me that there is
Curing my home desktop from locking up in the cold (so far)
I've had a long running mystery where my home desktop would lock upif it got cold , where as time developedit seemed that getting too cold was down not much below 68 F (which ishardly cold, at least for Canadians). Back in December of last year Ihad the idea of 'replacing' the case front panel with just a stand-aloneATX chassis power switch . I hesitated for abit, but the situation was getting more irritating this past winter andstand-alone ATX
When to use drgn instead of eBPF tools like bpftrace, and vice versa
I talked recently about drgn and using itto poke around in the kernel , and yesterdayI followed that up with an example of finding out which NFS clientowns a file lock that used bpftrace (andalso I discussed using drgn for this). As an outsider, you mightreasonably wonder when you'd use one and when you'd use the otheron the kernel. I won't claim that I have a complete answer, buthere's what I know so far.
(Both bpftrace and
Advisory file locks and mandatory file locks are two quite different things
On the surface, it sounds like advisory file locks and mandatoryfile locks are almost the same thing, with only a little change;they're both file locks, you're just changing one word and somesmall behavior. It's my view that this is a linguistic artifact,an effect of the words we're using, and they are actually verydifferent things that are much further apart than their names makethem sound.
Advisory file locks are in effect a form of broadcast interprocesscommunication (IPC