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. -- Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]
pgpMoc83iHAR2.pgp
Description: PGP signature