Middleware, development tools, realtime operating system
software and services for superior embedded design


Home
QNX Community Resources
QNX Documentation Library
QNX Community Resources

QNX Community Resources

QNX Software Systems
Developer Resources
Blogs
Board support packages
Foundry27 projects
Forums
Hardware support listing
Online video tutorials
Product documentation
Technical Articles

[Previous] [Contents] [Next]

emu87

Start 80x87 floating-point emulator (QNX)

Syntax:

emu87 [-f] &

Options:

-f
Force the emulator to remain, even if floating-point hardware is present.

Description:

The emu87 starts the floating-point emulator which traps 80287 and 80387 floating-point instructions and emulates them through software. By default, the emulator will quietly terminate if you attempt to start it on a machine equipped with floating-point hardware. You can force the emulator to remain active by using the -f option.

The floating-point emulator is required if you wish to run programs that need floating-point support on a computer that doesn't have an 80X87 floating-point coprocessor.

The emu87 utility is not the emulator itself. Instead, it starts the following emulators:

emu387
an 80387 emulator for 32-bit programs
emu87_32 or emu87_16
an 80287 emulator for 16-bit programs. When a 32-bit process manager (Proc) is running, emu87_32 will be started. If an older 16-bit version of Proc is running (QNX 4.21 or earlier), emu87_16 will be started.

To remove an emulator, use the slay utility,

If you are running on a processor without hardware floating-point, and do wish to be able to run 16-bit floating-point programs, you may invoke emu387 directly thus avoiding unnecessarily starting emu87_32.


Note:

Never attempt to start or stop the emulator while processes are actively using floating-point, or those processes will fault on their next use of floating-point.


Examples:

Start the floating-point emulator:

    emu87 &

Files:

The emu87 utility may use several 80x87 emulators which are found in /bin:


[Previous] [Contents] [Next]