Originally posted by karolherbst
View Post
Announcement
Collapse
No announcement yet.
The Linux Kernel Has Been Forcing Different Behavior For Processes Starting With "X"
Collapse
X
-
-
Originally posted by archkde View Post
I know it's not at all simple to pull this off in practice. I also know that I lack the relevant skills, as I already wrote (in fact, I'm not a professional programmer at all). I can only daydream and write what I think would be possible. I do not demand anyone to implement any of these ideas either.
- Likes 5
Comment
-
Originally posted by bug77 View PostLong ago, you could make that distinction, yes. These days, X11 and X.org are used pretty much interchangeably.
The thing is, this unmaintained pile of poor quality code, not only works where Wayland implementations are still WiP, but it also does things Wayland doesn't because "it's not the compositor's job".
Note I'm not saying Wayland is either better or worse than X11, each have their use cases (for mine, I think Wayland is better). But X.org maintainers tend to complain themselves about its code quality, so I'd rather take their word for it.
- Likes 2
Comment
-
Originally posted by r_a_trip View PostAFAICT, the only succesfull microkernel OS that solved that particular problem is QNX, which tightly integrated message passing with cpu scheduling, thereby reducing unnecessary cpu cycles switching between processes. Pass a message, if the receiving process is waiting for it, give waiting process control over the cpu. Cuts out a lot of back and forth.
Have other microkernel OSes copied this behaviour? The patents should have expired by now, as QNX was initially released in 1982.​
- Likes 2
Comment
-
[QUOTE=sinepgib;n1356177]
If you actually have those ideas you can probably program, it's a matter of time (not that it's easy to find the time really). You may use an existing microkernel as a base.
[/QUODE]
Well, I can program in the sense that given enough time, I can produce a userspace program that solves a(n easy enough) task. Not in the sense that it doesn't devolve into an unmaintainable spaghetti mess past 1000 lines of code. And forget about kernel space. Also I'm not really sure how much starting with an existing microkernel and then ripping out its IPC system would help, since there would not be much left.
This is a bad example IMO. You would need to make sure to reap references to the USB stack from other places. Think your VFS server that thinks there's still a pendrive connected. It's not really trivial to handle I think.
These are much better examples as their functionality is much more self-contained (and there are actual user space implementations able to run on Linux IIRC, check out lwip).
OK, but for this part it doesn't matter whether your design is monolithic or not.
- Likes 1
Comment
-
-
Originally posted by archkde View Post
Somehow, all of you whining about microkernels being "brain dead design" make me want to write my own microkernel-based OS even more. Monolithic kernels only won because the kernels that existed at the right point in time to be successful happened to be monolithic. Sadly, I don't have the extreme amount of skill required to write an OS to prove you wrong, but you probably wouldn't care either way.
- Likes 2
Comment
-
Originally posted by archkde View PostWell, I can program in the sense that given enough time, I can produce a userspace program that solves a(n easy enough) task. Not in the sense that it doesn't devolve into an unmaintainable spaghetti mess past 1000 lines of code. And forget about kernel space. Also I'm not really sure how much starting with an existing microkernel and then ripping out its IPC system would help, since there would not be much left.
Originally posted by archkde View PostIn this case, I think the kernel could post a "sender disconnected" reply to the VFS server, which it would then handle much like "pendrive was ripped out". That's one of the advantages a microkernel OS has over an actual distributed system.
Originally posted by archkde View Post​Right, that was more of an aside. Although I guess there are some languages that are much better suited to userspace than to the kernel, I probably wouldn't want to write drivers in those either way.
- Likes 1
Comment
-
Originally posted by karolherbst View Post
that's not the point. It just ignored actual real world problems, like what if the device can't be reset and all those details. Some issues can only be resolved by rebooting and no software as perfect as it may be will be able to solve this.
Comment
Comment