Port-i386 archive

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

Re: kvm86 kernel option



Le 08/05/12 11:36, David Laight a écrit :
Does anyone use (or have used in the last n years) the i386
kernel VM86, KVM86 or KVM86DEBUG options that (I think) allows
16bit user programs to run within a 32bit kernel?

Yes. It allows a program to make 16 bits calls, for example to BIOS.

My suspicions are that, if it ever worked, it will have bitrotted
out of existance!

What makes you think that?

Deleting it seems to be a good idea.

I am all for dumping 16 bits compat code, but please remember that bioscalls may be needed by programs like X (setting video mode comes to mind).

It injects also a few problematic features, like allowing code to be mapped at NULL (0x0) (required for v8086 to work properly).

I would suggest commenting out the option from GENERIC, and see if X still works ok with different cards, or old drivers (vesa(4)). NetBSD does not implement all the latest and greatest DRI2/GEM/KMS, so better keep code that can still be used by old systems like VESA.

Possibly wine uses it for 16bit windows code?

Dunno if wine uses it. For DOS and 16 bits mode, dosbox emulates it just fine.

In any case anything written in 16bit code can probably be emulated
fast enough to be useful.

True, I would expect it to run faster than decades ago.

However, note that what you get here is an /emulation/. If the purpose is to run a legacy application, this is fine. If the purpose is to run legacy commands to setup the machine (example: video mode setting), you are out of luck.

--
Jean-Yves Migeon
jeanyves.migeon%free.fr@localhost


Home | Main Index | Thread Index | Old Index