If you’ve ever found yourself in a house so old that it smells like the last century and emits random creaks, you may have wondered if it had non-corporeal inhabitants, like the spirits in “Poltergeist” or "Ghostbusters."
You may not immediately envision such disembodied gremlins inhabiting our computers. And yet, since the inception of the Multics computing platform in the mid-1960’s, demons (or at least daemons) have also been an explicit part of the computing world.
Of course, anyone who has ever had to deal with an intractable bug may sympathize with this concept, but unlike the potentially mischievous ghostly life forms that Hollywood has shown us, the type of daemons that have found their ways into modern computing have their roots in medieval literature, and before that in classical Greek thinking.
Ghosts, Demons, and Spirits — Oh My!
In order to keep in good spirits about this investigation, just in time for National Ghost Hunting Day (Sept. 30), it’s useful to dig into the origins of this word and its cousins. There are four main words at play here: spirit, ghost, daemon, and demon. The essential difference between a "daemon" and a "demon" is that a daemon is any spirit, good or bad, including the spirit of a living human, while a demon is exclusively a bad spirit. A ghost is generally any spirit, the same as a daemon, but sometimes has more negative connotations, such as malevolent or mischievous spirits of the deceased.
Aristotle taught about a life of activity governed by reason — that is one of good spirits — which we consequently call “eudaemonia.” That “eu-” prefix means “good,” and the “daemon” refers to the spirit that is positively disposed. That same concept of spirit is what the classical Greeks associated with the persistent consciousness in a person that survived their body. Popular culture depicts those spirits that stick around as ghosts.
Fast forward nearly two millennia, and Dante Alighieri wrote his famous trilogy, the “Divine Comedy,” in which the Roman poet Virgil gave him a tour of hell, purgatory, and heaven. Interestingly, the least desirable of these places seems to have the most euphemisms, so Dante’s volume on the topic was titled (as translated into English) the “Inferno,” but another interesting word for this is “pandemonium” — where the prefix “pan-“ means “everywhere,” followed by “demon” which is what you would find everywhere you might go in that place.
How “Daemons” Ended Up in a Computing Platform
But what does this have to do with IT? Well, it turns out that in the 1960s a number of important computing platforms were developed, and IBM’s Systems/360 wasn’t the only one to have a lasting impact. The Multics project is one such platform, and it was intended to have multi-level security inherent in its design.
The problem back then was, there was no pre-existing vocabulary to allow everyone to use the same words to mean the same thing. So, a careful assessment was done of the essential features of the platform, and then a search was done through classical literature to find something that had similar characteristics and a usable vocabulary.
As it turned out, one essential feature of Multics was concentric rings of security, such that the outermost ring had the least important objects (e.g., files) that people could safely look at, while the innermost ring was reserved for the most sensitive data and most trusted users.
The selected paradigm (as any Dan Brown fans have likely already guessed) was implicit in Dante’s “Inferno,” which represented pandemonium as being made of concentric circles, with the outermost ring containing the merely annoying, while the devil himself resided, frozen into a lake of ice, within the innermost ring. (That’s right: it’s already frozen over! Just in case that means someone owes you something…)
Consequently, whenever a new concept emerged, the analogous term would be put into service. And, sure enough, the need arose, when persistent operating system processes that were capable of going back-and-forth across the rings were needed (for things like printing and storage management). So, who in the Inferno could move back-and-forth? Well, there was a concern that the term “demons” might cause some folks discomfort, so the gentler term, “daemons,” was chosen to apply to these persistent processes.
Which would be just a footnote from history, except that a couple of folks who had worked on the Multics project ended up writing their own operating system based on what they’d learned there (lots more to be said about that, but not in this limited space), and kept the terminology where appropriate. So, UNIX was born, complete with its own daemons!
But UNIX had a close sibling that grew up alongside it: TCP/IP, the set of protocols that define the internet. Consequently, they inherited the “UNIX way” of doing things, including referring to their various persistent operating system processes needed to keep the network running as daemons too.
A Mainframe Connection
What does that have to do with the mainframe? Well, since before the turn of the millennium, IBM’s mainframe and any other platform that could host TCP/IP activity inherited the same nomenclature for their network-related persistent processes: daemons! And, of course, today you can also run Linux on the mainframe, and being a deliberately “UNIX-like” operating system, it likewise has a pervasion of daemons.
So, when you communicate with the mainframe or any other platform on the internet, the ghosts of Aristotle and Dante are part of the pandemonium on a bad day, and the eudaemonia when all is going well!
Reg Harbeck is the Chief Strategist at Mainframe Analytics, with a B.Sc. in Computer Science and an M.A. in Interdisciplinary Humanities (focused on the humanity of the IBM mainframe). He has worked with operating systems, networks, security and applications on mainframes, UNIX, Linux, Windows and other platforms. He has also traveled to every continent where there are mainframes and met with and presented to IT management and technical audiences, including at SHARE, Gartner, IBM zSeries, CMG, GSE, CA World and ManageTech user conferences. He has had many roles at SHARE, from speaker and volunteer to the SHARE Board of Directors. He has published many articles and blog entries and podcasts (available online) and taught many mainframe courses. Since 2020, Reg has also been recognized as an IBM Champion for Z.