6 ms·
The issue with such an OS is that there aren't won't be any libraries and tools. So the OS vendor might need a custom shell, custom utilities, custom libraries
by johannes1234321 8y ago
The issue with such an OS is that there aren't won't be any libraries and tools. So the OS vendor might need a custom shell, custom utilities, custom libraries for everything ... or they offer POSIX-like APIs.
One area where one can see this is IncludeOS - they had their custom APIs for a long time to leverage their architecture, but are now focussed on providing POSIX compatibility ... and that's only for single purpose unikernel systems. If the OS should also be universal this is even more of a problem. (Especially if you also want a graphical desktop ...)
- nixpulvis 8y agoDon't even need to implement POSIX if you just emulate another OS inside, this seems to be a pretty viable solution for some of the cases. I'm more concerned with drivers/firmware, which could be handled the same way, but seems less appropriate.
- adamnemecek 8y ago> The issue with such an OS is that there aren't won't be any libraries and tools. This might not be as big of a deal. Rust increases your productivity quite a bit and I'm really impressed with the pace of progress in the community. I can imagine that new, better & more integrated tools will be made.
- AnIdiotOnTheNet 8y agoWith that attitude you'll never be able to ditch legacy cruft, and there's quite a lot of it in POSIX. I agree with the other poster that a compatibility layer in the form of virtualization and/or emulation should be sufficient, as long as your new OS brings something to the table that's desirable. Shunt the legacy crap off into its own contained environment and build a nice new clean one for new stuff to use.
- nixpulvis 8y agoI still think there are a plenty of reasons to support POSIX in many places. As someone who's been running fish for a while, I can appreciate the common ground it provides across the current UNIX ecosystem, but it's not like translating a bash script to fish is impossible. There should always be a supported standard, but there should be nothing forcing you too it. This is the freedom we need to demand of our OSes.
- johannes1234321 8y agoYeas, in a imaginary world replacing POSIX would be great. But that's not an easy endeavor. 30 years of legacy tied to it. As long as you don't have POSIX only special interest users will use your system. I believe the only way forward is to start on POSIX and then move on step by step and deprecating part by part.
- AnIdiotOnTheNet 8y agoIn the same imaginary world, creating a new POSIX OS that isn't Linux is a giant waste of time just from gap in drivers alone. If you're going to ditch all that hardware support then you may as well ditch POSIX and its crap while you're at it.
- yjftsjthsd-h 8y agoUnless you have some portable standard to target, you just tied the entire universe to exactly 1 OS implementation. I would like to not do that.
- AnIdiotOnTheNet 8y agoBull. People developed software for multiple completely different computer architectures throughout the 80s and 90s. People do it today between different game console platforms in addition to operating systems. Even if you try and target something like SDL or a web browser your abstraction won't save you from a platform's quirks once you reach a certain level of complexity and then you'll have to work around it anyway. Hell, even between supposedly POSIX systems there's a lot of #ifdef going on to make things work.
- pjmlp 8y agoWhich is a reason why despite disliking what Google did to Sun and how hard they make to use the NDK, in the end I appreciate their Android design. No POSIX for userspace as official API, rather ISO C and C++ APIs plus Android native APIs.
- ansible 8y ago
- karr0n 8y agoVirtualization/Emulation seems to be in the making. Let's see how it goes
- nerdponx 8y agoAs a user, I personally wouldn't mind a "fresh start" when it comes to userspace. Just look at Haiku -- yes, it's technically not a new design, but it sure ain't Unix.
- waddlesplash 8y ago> yes, it's technically not a new design, but it sure ain't Unix. Except we are? We are pretty POSIX compliant all the way into the kernel, we have "/dev", filemodes, etc. We don't have X11 or other UNIX staples, sure, but we are pretty UNIXy.
- nerdponx 8y agoI didn't know that. Thanks for clarifying. By "userspace" I was more talking about "the programs and interfaces that a normal user interacts with". Haiku is pretty unique in that regard.
- waddlesplash 8y ago> By "userspace" I was more talking about "the programs and interfaces that a normal user interacts with". Haiku is pretty unique in that regard. In terms of GUI apps... sorta? We use extended attributes and IPC messaging more than most Linux desktops do, that's true, and our UI/UX is often different. But if you're talking CLI, then, also no. Bash is the default shell, coreutils are installed by default, sshd is activated by default, etc.
- pjmlp 8y agoI don't recall BeOS being that POSIX friendly though. Haiku own extensions to the original design?
- ptman 8y agoBeOS supported enough posix to use gcc.
- pjmlp 8y agoDitching POSIX is all a matter of money and willingness, as proven by iOS, Android and ChromeOS.