Originally posted by Eirikr1848
View Post
Announcement
Collapse
No announcement yet.
Rust-Written Redox OS Gets USB Keyboards & Mice Working
Collapse
X
-
Originally posted by Old Grouch View Post
GNU Hurd is essentially a research platform / technology demonstrator. I'm glad that people spend time on it, but I have no expectations of it being a 'drop-in replacement' for the Linux kernel any time soon, or if ever.
I'm afraid you don't understand that project. It can be summarized very shortly: Stallman's ego.
- Likes 7
Comment
-
Originally posted by Eirikr1848 View Post
Poor Hurd. Is it inherently complex? Does it lack developer enthusiasm? Does it lack funding which also equates to enthusiasm?
Redox is Rust which is popular, so fast gainz expected?
It’s a little boggling that this just seems to come out of nowhere and start being successfully successful, dang.
It's a bit of everything. Linux was finished before HURD was, then everyone went to Linux, so nobody was around to really be a "keeper" of the codebase and help people learn it and contribute to it, so then even less people helped with it. Now times are changing and Linux is moving from being an exciting experimental platform to a solid, standard platform where people can't afford to break things anymore for the sake of innovation, so now people are looking at new OSes nobody depends on to see what kind of exciting things they can work on it since they can break things.
And this leads on to Rust, because another feature is, what I hinted to before, how easy it is to actually start working on an unfamiliar codebase. People seem to have a misconception that Rust is popular because it's popular. No, it's popular because its extremely easy to use (despite cargo cultists insisting on mindlessly echoing the opposite because they were told that by people who tried it for five minutes and gave up trying to learn the lifetime system which is no different from just being a fancy linter in any other language) and invaluable for managing a codebase. With C, nothing is documented, everything is a bare function taking a void pointer and if you don't know absolutely everything about the codebase then you're going to leak memory. With C++, you need to know their coding standard and what parts of it's absolutely gargantuan feature set you are and aren't allowed to use, and even then it usually ends up being as bad as using C anyway (I've only really seen Andreas Kling care enough to try and make his OS's codebase as readable and easy to maintain as possible, he's an absolute wiz at C++, and even then he's trying to replace it with his own language. Not an OS, but, same for Johnathan Blow and his software, ditching C++ for his own language). No other language is even close to being a good fit for making a popular OS because they all make sacrifices in performance and usability (Haskell is too esoteric and opinionated, Java relies too much on a runtime and is agonizing to write in, etc.) Not that those languages are bad, just not a good fit for writing an entire OS in. Rust is legitimately the first properly supported low-level language with extremely high-level features (the highest of any language since nothing else has lifetimes), it's not exactly a master of one trade but it definitely is a jack of all, which no language has ever been before (Java, C#, Python, C++ are okay for applications but awful for low level, and C is good for low-level but abysmal for applications). Rust is perfect for an OS because it unifies everything, you have easy, performant codebases in every level from the kernel to the desktop, the language fits every gap. Redox is especially exciting because it's embracing this new capability we as an industry have now where everything can be written in one language, for real, not the fake promises Java gave us (and the many, many failed Java OSes).
Originally posted by Brananarchy View PostThis basically means redox was unusable on actual hardware without PS2 ports until now? Yikes.
Even my toy OS had a USB stack well before I started thinking about a GUI, because all my potential target hardware is old laptops with weird graphics setups, and a USB serial dongle is an easy debug print target.
And they still don't have USB interrupts working right, so it's _polling_? That's a major WTF. USB has been the single standard peripheral interface for nearly two decades.
I am a total Rustacean. I want to see more rust in OSes. But clearly Redox is not focused on enabling real usage in any way and instead is focused on looking pretty in an emulated 2001 machine. That's not a viable project.
Pardon me? You make writing a USB stack sound like a walk in the park. The only USB stacks I know of in the wild are in Linux and Haiku, even ReactOS doesn't have one yet. USB support in hobby OSes is unheard of, most of it is just booting off USB or emulating PS/2 through USB explicitly for mouse/keyboard support, all stuff the BIOS itself mostly handles, instead of having to make an actual USB stack. I'm guessing you know this, but the USB spec is absolutely massive and extremely complex, it's probably the second hardest thing to do in an OS next to accelerated graphics support. If you mean what you're saying then, man, you should really contribute to Redox, because there are not a lot of USB experts in the world.
Originally posted by schmidtbag View PostOther than being written in Rust, is there anything fundamentally better/interesting about Redox as opposed to any other OS?
- Likes 7
Comment
-
-
Originally posted by Brananarchy View PostThis basically means redox was unusable on actual hardware without PS2 ports until now? Yikes.
Even my toy OS had a USB stack well before I started thinking about a GUI, because all my potential target hardware is old laptops with weird graphics setups, and a USB serial dongle is an easy debug print target.
And they still don't have USB interrupts working right, so it's _polling_? That's a major WTF. USB has been the single standard peripheral interface for nearly two decades.
I am a total Rustacean. I want to see more rust in OSes. But clearly Redox is not focused on enabling real usage in any way and instead is focused on looking pretty in an emulated 2001 machine. That's not a viable project.
- Likes 2
Comment
-
Originally posted by Brananarchy View PostEven my toy OS had a USB stack well before I started thinking about a GUI, because all my potential target hardware is old laptops with weird graphics setups, and a USB serial dongle is an easy debug print target.
I am a total Rustacean. I want to see more rust in OSes.
- Likes 2
Comment
-
Originally posted by FireBurn View Post
Why though?
Gobolinux's setup is not quite as good, but it still gives the benefits of dynamic linking, while still having great application compatibility. Static applications have great compatibility but they can be a bit of a pain.
- Likes 1
Comment
Comment