“Everything is a file” is what made me start understanding linux few years ago and from there it got easier to use with each new concept.

Still this was really revolutionary to me when I first heard it. Made a bunch of things just click.

  • drosophila@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    22
    ·
    edit-2
    4 hours ago

    Anyone interested in this concept should take a look at plan9. Everything is even more of a file there.

    Taking a screenshot, for example, can be done with:

    cat /dev/screen | topng > screenshot.png

    That combined with the way that parent processes can alter their children’s view of the filesystem namespace allows for extremely elegant abstractions. For example, every program just tries to write directly to screen or audio, but the desktop environment redirects their writes to the relevant servers. Which means that, in the absence of those servers, those same programs can run just fine and don’t care whether they’re being multiplexed or not. That also means that the plan9 userspace can be nested inside itself just using the normal mechanisms of how the OS works (that is, without a special tool like Docker).