Alt text: meme with the ‘Always has been’ format Linux, MacOS, OpenBSD and ChromeOS logos on top of the Earth The first astronaut says ‘Wait, it’s all Unix?’ A Windows logo, on top of the second astronaut. The second astronaut says ‘Always has been’ and points a gun to the first astronaut.
Linux is unix-like, and not from the same family really. ChromeOS is based on linux, so similarly unix-like. Mac is Darwin, which is actually unix. Also all BSDs are unix
BSD is also unix-like. Quoting OpenBSD, “[OpenBSD] produces a FREE , multi-platform 4.4BSD-based UNIX-like operating system.”
The OG Berkeley Software Distribution (BSD) is a direct descendant of Unix. I personally wouldn’t qualify this particular version as a “Unix-like”.
Yeah, reading these comments, it looks like they are not legally able to call it unix, despite having direct lineage. Linux however is a complete re-write, making it more obviously not proper unix by most definitions.
That’s because UNIX is a trademark and OS vendors will have to pay fees to opengroup.org in order to call their OS Unix.
Nice to know, I’ve always thought BSD is actually UNIX.
UNIX™ is a trademark name (Think of e.g. IBM AIX, HP-UX, SunOS). Linux and BSD are Unix alike. I believe that Apple has made an effort to be entitled to call an OS of theirs UNIX, not sure whether it’s Darwin or something else.
UNIX is trademarked by ‘The Open Group’, Unix is not. 🙃
To make things more confusing, according to German Wikipedia, Unix is used for Unix-like OSes which are not officially UNIX-certified. 😵💫
The weird thing about macOS is, that while it is certified UNIX, its XNU kernel literally stands for “X is Not Unix”
deleted by creator
everything is a file, except when it’s not.
Everything is represented by a file, doesn’t mean you can open it with a text editor.
More like file descriptor. File path is like address system, but it’s not how you get all file descriptors. For example: sockets (there is bash’s fake /dev/{tcp,udp}), epoll, timer, event, inotify.
In UNIX systems event systems have a list of filedescriptors with a callback for each. You could have your event loop an epoll fd itself and nest it in another.