On Sat, Nov 5, 2016, 3:33 AM Alexander Bisogianis alexixor@gmail.com wrote:
On 05/11/16 05:45, Liam wrote:
They're less concerned about people writing portable code than having to implement, arguably, poor crossplatform standards (YAYS! everyone get the to enjoy the same, suboptimal experience!). So, like the above blog mentions, they have a rather neglected poll and instead, simliar to NT, want people to use "their" event monitors (kqueue,iocp,epoll). Now, iocp is quite different, and harder to support, but even then we have helpers like libevent or libuv. I'm thinking about iokit (on the very lowest level) and the various core services that allow mac to have such fantastic apps (and happy devs).
The issue is more fundamental than just implementing "kits".
I probably should've capitalized Core to make it clear that I'm speaking of the, well, some of it is middleware, some strides from userspace to the drivers, but the exact implementation isn't the point, imho, but that they provide an coherent interface for developers to do their work. Some of those things just aren't possible with a generic kernel, but, again, that's not the whole story.
An operating system has to decide if it is made to be a desktop, a server, a mobile device OS etc.
This is an excellent point. I happened to be reading something from the architect of coreaudio and he related, basically, the point you just did. To paraphrase: if you want glitch-free audio [they did, because they wanted to keep the media creators by designing the best audio stack] you have to design the entire os within that in mind. This happened with osx, and led to some interesting design decisions, but the point was that they knew what they wanted to achieve. If we want a desktop system like osx we need to look at this from the kernel up, and no, it's not an easy thing to do or as fun as some other exercises (creating another calculator/ToDo/web browser/whatever, and i completely realize those aren't necessary areas of overlap, but there are apps, and APIs, that Fedora could helping to create that would move us in the direction of being more desktop appropriate), but we've been cribbing off osx for awhile (no bad thing, btw) and not in a way that takes the whole into consideration. The systemd folks are doing fantastic work, and "we" should be working with them to hammer out the minimum set of functionality and interfaces that would be required of a MODERN desktop. Iow, a new shell isn't adequate. You can do as much work with GNOME shell as fvwm, so I care less about how these things look (within reason) than what possibilities they open for developers, and thus users. but if developers aren't
Most of the server oriented software is available in all *NIX platforms, because portability and choice is more valuable than leveraging specific OS features. The way that server software-houses do business, forces then to use "standards", most de facto, but standards nonetheless.
Fedora, and by extension RHEL, have to decide if they want to be a desktop OS, a server OS or say a mobile OS. (not a distro,
this is a bailout IMO). Pretending to be both server and desktop does not lead anywhere.
In my (really) humble opinion. :)
We don't need to decide because there's a separate Fedora image for servers, and one for the cloud (and, possible, one did IoT). The issue is that except for a bit of a package delta a with server, Workstation hasn't really taken advantage of the freedom we've been given.