ReactOS gets USB Stack, with Help from Us

News posted on Mon, 2012-02-20 23:22

The ReactOS and Haiku projects have had a friendly working relationship for several years now, with each group helping the other whenever possible. These range from helping each other with conference attendance at SCALE and FOSDEM to development related matters. Haiku was especially helpful during ReactOS’ successful application to Google Summer of Code 2011, providing advice and feedback on ReactOS’ application efforts, and the ReactOS project remains grateful for the assistance.

The current ReactOS USB stack was started by Michael Martin, with Johannes Anderwald quickly joining in the development effort. Recently Johannes made significant progress in completing its USB stack, thanks to the reference Haiku's USB stack provided.

Many of the definitions and data structures that represent USB protocols were borrowed directly from Haiku, though the differing operating system design necessitated a great deal of glue to be written to make use of the code. Johannes also referenced Haiku’s USB stack to better understand the behavior of USB devices and subtleties that might not be entirely clear in the USB specifications, and also provided feedback to Haiku as he worked through the code.

ReactOS installed into an USB stick
ReactOS installed into an USB stick

Due to the similar goals and constraints both projects have worked under for much of our histories, we have a fair understanding of the difficulties the other faces. Both the ReactOS and Haiku projects hope that this is merely another chapter in a long line of collaborations yet to come.


Re: ReactOS gets USB Stack, with Help from Us

Wonder if ReactOS could play a part in having Windows apps running in Haiku?
Envision a ReactOS_Translator..

Re: ReactOS gets USB Stack, with Help from Us

I have a question this is collaboration between this two OS in the end so different a result of Rosetta Project?

I do remember for the distracted reader that the idea of Rosetta was in part this: if Haiku has USB Stack and, for example, ReactOs no... well it could use the Haiku USB source as base and differently from that [that] is normal Haiku dev collaborates actively to help the React OS developer to have USB stack... we can do this example ion the contrary if Haiku has no driver for a particular LAN card it copies BSD drivers and they works after a simple compilation as Haiku as a (Free) BSD network stack wrapper if I understand well...

Rosetta was a more advanced concept: that this the idea was to have an way to have drivers that worked seamlessly on a plethora or Free OSes:

  • Haiku
  • Free BSD
  • React OS
  • React OS
  • (Linux?)Fedora(?)

The ideal it could be if we had some sort of unified ABI/API and drivers loadable as plugins... but recompiling in the end will be no problem: the important thing is that the driver source(s) has NOT to be modified to be used between Rosetta Foundation members...

What you do think?

We could (we shall) continue to collaborate in this way?
In a more, more, more legated way? (I think yeah we shall do! More follows)

It will be very, very important that we little OSes joins the forces not for development only but to have a unified voice against Win/Mac OS, obviously, but against Linux, too... in some sense: to have a way to impose our better positions in the FOSS/FSF world (yes I'm being arrogant here but "our" positions are better!), Haiku or React OS or Free BSD cannot, but Rosetta could, right?

I suppose shall be a new Foundation or whatever (if Rosetta it's not) with a developer donated from all foundation members to occupy to create this Driver ABI/API and to create this "Unified Drivers"... I don't know if Haiku has so much devs to thinks to this... Free BSD could (I suppose they're more, right?) but I don't knows React OS and the others...

Rosetta Foundation has to continue to exist after the "foundation" of the Rosetta Unified Drivel Model (RUDM? What the f*ck we have already the name :-) ) to develop other drivers as the peripheral market don't stop obviously... so me (or you, or them) can create a new OS(es) based on the UDM drivel ABI and I could use our drivers and I shall collaborate in I could, right? Creating a new OS would more simple having a lot of drivers ready to use....

React OS Translator? Interesting... I don't know if it would be so different to a BeWine (HaikuWine?) but... if it could be more fast to do that BeWine, well go for it, obviously!

Think 10 years form now we could expand the Rosetta ABI to Apps too, an App generic written using the better ABI (the Haiku one, obviously) eventually augmented with BSD, React OS (Win32 in trhe end).... I know exist already that's Qt but I've the convinction (wrong maybe?) Haiku API is better... it needs a lot work to make it portable obviously but... we've the Rosetta Foundation to do this, right? (No we have not )-: )

Well here some info but that page needs some more "love" the work continue (I know) but it's not very updated as you can see:

Ahh if I was (were? It seem to me I've to use were for the Be past conjunctive...) bilionare... I promise I'll create this "Foundation" and I'd pay you all to make my dream possible :-)

Re: ReactOS gets USB Stack, with Help from Us

Not really.
The Rosetta OS project is still relevant however, just not very alive yet.

Re: ReactOS gets USB Stack, with Help from Us

When I say ReactOS_Translator I mean something like BeWine/HaikuWine but in a true BeOS way like a Translator or Server as opposed to DLL hell and clutter. Wine is for the most part open source DLL's. I'm not a programmer (yet) so technically I probably dont know what I'm talking about ;-) But given the fact that the entire ReactOS system is only around 40 meg (and we wouldn't need it all), it would seem to me that there is room to package it up into a few nice little servers/Translator objects.

While I'm on the subject, the beauty of BeOS is that the OS does it all- contains all the functionality, not the app, not external libraries. This keeps apps small (and development fast), keeps the system cohesive and clutter free.

Re: ReactOS gets USB Stack, with Help from Us

Why would you suggest going against Linux? GNU/Linux has done very much for the FSF, and the resistance against proprietary monopolistic software and their companies. I think maybe you should quit thinking of this in terms of some kind of demented war of the OSes, and just start using them for what you need them for, rather than worry about which one is going to come out on top? I have been following Haiku for the past couple of years, and if I'm not mistaken it's been in development for 9 years. Obviously Haiku, ReactOS, Linux, BSD, and some of the others can learn from each other. There is no reason to try and black ball one or the other, because you use one and not the other. They are all part of the same cause, and as a collective, we should all co-operate, and help each other prosper. Not treat this as some kind of weird twisted competition, or however you are looking at it.

Re: ReactOS gets USB Stack, with Help from Us

If you note I've used the "" I don't intend really the war... I've not the word in English to express the concept... how to say better: in the FSS community, we've to admit, Linux is the bigger, right?

I would not that Haiku, Free BSD, Minix, React OS and so on to be constricted to follow choose of others (aka Linux)... I do want we (all not Haiku only... the "Rosetta Foundation") have one only one VOICE in this way we become more important in the FSS world... we only are nothing together we are marvelous :-)

So we, togheter, could in some case advocate our ideas and being a "Foundation of Foundation" (it's a word?) and they could be accepted... in some way force the FOSS the go in our direction... that is the right one, for which concern us...

* Beautiful API
* API code comprehensible
* Kernel code comprehensible
* Hybrid/Micro Kernel
* Rosetta Unified Driver Model (RUDM (R))
* Rosetta Unified ABI or API (RUA (R))
* A real co-operation between different OS developer as in this case... React OS has USB using Haiku Code (the Rosetta Unified Workgroup Model)
* ...

What do you think?
A dream? Could become true?

What we can do to make this true?

Re: ReactOS gets USB Stack, with Help from Us

Nice! Makes me feel all warm and fuzzy when there's interaction between development efforts I follow.