[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Maybe a stupid question

On Mon, Oct 18, 2004 at 11:00:31PM +0200, Nicolas Sergent wrote:
> Hello,
> I have a laptop (Acer Aspire 1511LMi) with a broadcom wlan card which 
> has no driver for linux, and ndiswrapper does not work in pure64 as 
> there is no 64 driver for MS Windows... I think many of us have the same 
> problem!
> As far as I can understand it, the only way to get this card working 
> (until Broadcom release the specs) is to run a 32 bits kernel, but in 
> that case, what would be the point in having a AMD64?

 It's a fast CPU (significantly faster than Athlon), with SSE2, and with
good power-saving when idle.  (Down to 22W max at 1GHz, from 89W max at max
speed.)  It's not like it's crippled in 32bit mode.

> Isn't it possible 
> to run a minimal 32 bits kernel in user-mode (in a kind of virtual 
> machine), just to run ndiswrapper on?

 Hmm, you mean route all your net traffic through vmware?  That's so crazy
it just might work.  (I wrote the paragraph below about the kernel-userspace
boundary before I read this carefully...)  Maybe vmware even wouldn't be
needed if UML can talk to hardware.  Anyone care to comment on getting Linux
under vmware to talk to hardware?

> If this is totaly stupid

 I'd say having to use ndiswrapper is totally stupid, but I guess there's
not much choice in AMD64 laptops at this point :(

> and couldn't work, can please someone tell me 
> why (for my own culture)? Is this can be done, how can I help?

 the kernel-user boundary is well definined and has a limited number of
system calls.  The in-kernel stuff is constantly changing with new kernel
releases, and probably would be harder to wrap in an emulation layer.
(Besides, in-kernel function calls don't go through a context switch
normally, and you'd have to introduce that, or put an x86 emulator like
bochs in the kernel if you wanted to actually run 32bit code.)  Perhaps
pre-translating the ia32 code to amd64 code, like what gcj can do for java
binaries -> machine code, would be better.

 It all boils down to open souce: good and flexible, closed source: bad and
limiting.  Depending on binary-only drivers from anyone puts you at their
mercy.  But you probably already knew that and didn't need me to lecture

#define X(x,y) x##y
Peter Cordes ;  e-mail: X(peter@cor , des.ca)

"The gods confound the man who first found out how to distinguish the hours!
 Confound him, too, who in this place set up a sundial, to cut and hack
 my day so wretchedly into small pieces!" -- Plautus, 200 BC

Reply to: