On Thu, 21 Jul 2011, Chad Perrin wrote:

On Thu, Jul 21, 2011 at 10:52:28AM +0200, C. P. Ghost wrote:

I'm not familiar with Windows, but I don't think a typical windows
driver as written by a hardware vendor would manipulate the windows
kernel internals (data structures) directly, right? If that's correct,
we "merely" need to catch the ABI up- and down-calls from and to the
windows driver, and translate them into regular FreeBSD syscalls (maybe
augmented by a compat helper library?).

Since this is exactly the approach taken by the Linuxulator, I fail to
see why a similar method hasn't been tried for those windows kernel
driver (binary blobs). Maybe some artificial restrictions like, say,
patents are standing in the way? Or a technical restriction like such
binary blobs being encrypted with a public key, and only usable from
Windows kernel with their own secret key?

It may not be anything so exotic.  On a per-release basis, the MS Windows
ABIs and APIs change far more dramatically than the Linux kernel, and are
far less transparent to developers; they must in many cases be discovered
by experimentation, being closed source software.  Over a given period of
time, the changes to Linux may be greater in number and magnitude (I'm
not a kernel hacker, so I wouldn't know for sure), but they're spread out
over time rather than bundled in a major collection of changes with a new
marketing campaign.  This might make it much more difficult to target the
MS Windows ABIs and APIs.

I'm just speculating, though.  As I said, I'm not a kernel hacker.

Doesn't the NDIS specification offer a reasonably stable ABI for wireless drivers?

I have often thought that supporting NDIS would offer manufacturers a sort of "halfway house" to ease them into proper support for FreeBSD and Linux. While it is inferior to open source drivers, it would attract users, and with users manufacturers would feel pressure to have better support, which would best be achieved with open-source drivers.

Daniel Feenberg


--
Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to