1 |
.\" $Id: gxemul.1,v 1.96 2007/06/15 21:43:53 debug Exp $ |
.\" $Id: gxemul.1,v 1.101 2007/06/30 13:55:02 debug Exp $ |
2 |
.\" |
.\" |
3 |
.\" Copyright (C) 2004-2007 Anders Gavare. All rights reserved. |
.\" Copyright (C) 2004-2007 Anders Gavare. All rights reserved. |
4 |
.\" |
.\" |
29 |
.\" This is a minimal man page for GXemul. Process this file with |
.\" This is a minimal man page for GXemul. Process this file with |
30 |
.\" groff -man -Tascii gxemul.1 or nroff -man gxemul.1 |
.\" groff -man -Tascii gxemul.1 or nroff -man gxemul.1 |
31 |
.\" |
.\" |
32 |
.Dd JUNE 2007 |
.Dd JULY 2007 |
33 |
.Dt GXEMUL 1 |
.Dt GXEMUL 1 |
34 |
.Os |
.Os |
35 |
.Sh NAME |
.Sh NAME |
36 |
.Nm gxemul |
.Nm gxemul |
37 |
.Nd an experimental machine emulator |
.Nd an experimental framework for full-system machine emulation |
38 |
.Sh SYNOPSIS |
.Sh SYNOPSIS |
39 |
.Nm |
.Nm |
40 |
.Op machine, other, and general options |
.Op machine, other, and general options |
47 |
.Ar file Op Ar args ... |
.Ar file Op Ar args ... |
48 |
.Sh DESCRIPTION |
.Sh DESCRIPTION |
49 |
.Nm |
.Nm |
50 |
is an experimental instruction-level machine emulator. Several |
is a framework for full-system computer architecture emulation. |
51 |
emulation modes are available. In some modes, processors and surrounding |
Several processor architectures and machine types have been implemented. |
52 |
hardware components are emulated well enough to let unmodified operating |
It is working well enough to allow unmodified "guest" operating |
53 |
systems (e.g. NetBSD) run inside the emulator as if they were running on a |
systems (e.g. NetBSD) to run inside the emulator, as if they were running |
54 |
real machine. |
on real hardware. |
55 |
.Pp |
.Pp |
56 |
Processors (ARM, MIPS, PowerPC, and SuperH) are emulated using dynamic |
The emulator emulates (networks of) real machines. The machines may |
57 |
translation. However, unlike some other dynamically translating emulators, |
consist of ARM, MIPS, PowerPC, and SuperH processors, and various |
58 |
GXemul does not need to generate native code, only a "runnable |
surrounding hardware components such as framebuffers, busses, interrupt |
59 |
intermediate representation", and will thus run on any host architecture, |
controllers, ethernet controllers, disk controllers, and serial port |
60 |
without the need to implement per-architecture backends. |
controllers. |
61 |
.Pp |
.Pp |
62 |
The emulator can be invoked in the following ways: |
The emulator can be invoked in the following ways: |
63 |
.Pp |
.Pp |
322 |
.Pp |
.Pp |
323 |
When gathering instruction statistics using the |
When gathering instruction statistics using the |
324 |
.Fl s |
.Fl s |
325 |
option, instruction combinations and native code generation |
option, instruction combinations are always disabled (i.e. an implicit |
|
are always disabled (i.e. implicit |
|
326 |
.Fl J |
.Fl J |
327 |
and |
flag is added to the command line). |
|
.Fl B |
|
|
flags are added to the command line). |
|
328 |
.It Fl T |
.It Fl T |
329 |
Halt if the emulated program attempts to access non-existing memory. |
Halt if the emulated program attempts to access non-existing memory. |
330 |
.It Fl t |
.It Fl t |
383 |
.Pp |
.Pp |
384 |
General options: |
General options: |
385 |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
|
.It Fl b |
|
|
Enable native code generation at runtime. This is not really implemented |
|
|
yet. Don't use it unless you know what you are doing. It will most |
|
|
likely not work. |
|
|
.It Fl B |
|
|
Disable native code generation at runtime. This is the default in this |
|
|
release of GXemul. |
|
386 |
.It Fl c Ar cmd |
.It Fl c Ar cmd |
387 |
Add |
Add |
388 |
.Ar cmd |
.Ar cmd |