Emulators: Difference between revisions

From OSDev.wiki
Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content added Content deleted
(New page: '''NOTE: THIS PAGE IS UNDER CONSTRUCTION''' An emulator is a device, computer program, or system that accepts the same inputs and produces the same outputs of another device, computer pro...)
 
m (Bot: Replace deprecated source tag with syntaxhighlight)
 
(25 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Emulators}}
'''NOTE: THIS PAGE IS UNDER CONSTRUCTION'''


An emulator is a device, computer program, or system that accepts the same inputs and produces the same outputs of another device, computer program or system.
An emulator is a device, computer program, or system that accepts the same inputs and produces the same outputs of another device, computer program or system.
Line 6: Line 6:


== Emulation Packages ==
== Emulation Packages ==

=== QEMU ===
=== QEMU ===
[[QEMU]] is operated from the command line with the parameters used to specify the hardware environment of the system and also to link to the image which holds your kernel binary. It's available for Linux and Windows (the later as 'kqemu').
Available for Linux and Windows (the latter as 'kqemu').


A simple command to run a floppy image would be:
Qemu is operated from the command line with the parameters used to specify the hardware environment of the system and also to link to the image which holds your kernel binary.


<syntaxhighlight lang="bash">
To link to a floppy image, a simple argument is:

<code>
qemu -fda floppy.img
qemu -fda floppy.img
</syntaxhighlight>
</code>


You can use Ctrl+Alt to release the cursor (while captured).
You can use Ctrl+Alt to release the cursor (while captured) and can use Ctrl+Alt+F to toggle fullscreen. There are further parameters available for use:
You can use Ctrl+Alt+F to toggle fullscreen.


{| {{wikitable}}
There are further parameters available for use:
! heading !! heading
<table border=1>
|-
<tr>
| HDD Image/Device ''path'' || <code>-hda ''path''</code>
<td>
|-
HDD Image/Device ''path''
| CD Image/Device ''path'' || <code>-cdrom ''path''</code>
</td>
|-
<td>
<code>-hda ''path''</code>
| Boot Device x(if not default) || <code>-boot x</code>
|-
</td>
| (x)MB RAM || <code>-m x</code>
</tr>
|-
<tr>
| Localized Time || <code>-localtime</code>
<td>
|-
CD Image/Device ''path''
| USB Support || <code>-usb</code>
<td>
|-
<code>-cdrom ''path''</code>
| Start in Full-Screen || <code>-full-screen</code>
<tr>
|}
<td>
Boot Device x(if not default)
</td>
<td>
<code>-boot x</code>
</td>
</tr>
<tr>
<td>
(x)MB RAM
</td>
<td>
<code>-m x</code>
</td>
</tr>
<tr>
<td>
Localized Time
</td>
<td>
<code>-localtime</code>
<tr>
<td>
USB Support
</td>
<td>
<code>-usb</code>
</td>
</tr>
<tr>
<td>
Start in Full-Screen
</td>
<td>
<code>-full-screen</code>
</td>
</tr>
</table>


=== Bochs ===
For more information take a look in the links section below.
[[Bochs]] supports a variety of features, all of which can be carefully customized with command line switches or a settings file. It can emulate a PC with VBE, NE2000, and Sound Blaster 16. It also has a built-in debugger which can be useful for testing and debugging your kernel. Bochs can emulate CPUs with support for SMP and x86-64. However, Bochs itself does not use threading and the emulation is not ''virtualized'', so you can expect slow and CPU-intensive emulation. Bochs is available for Linux and Windows and is free and open source.


=== Oracle VirtualBox ===
[[VirtualBox]] is a desktop VM package.


=== BOCHS ===
=== Microsoft Virtual PC ===
[[Microsoft Virtual PC]] is a desktop VM package.

More information to follow


=== Sun VirtualBox ===

''Desktop VM package''

More information to Follow


=== Microsoft Virtual PC 2007 ===

''Desktop VM package''

More information to follow


=== CPCE ===
=== CPCE ===
CPCE is an Amstrad emulator, see the [http://cpce.emuunlim.com/ official CPCE website] for installation and usage instructions.

''Amstrad Emulator''

More information to follow


=== PearPC ===
=== PearPC ===
PearPC is a [[PowerPC Overview|PowerPC]] emulator, an [http://pearpcguide.tripod.com in-depth tutorial] on how to setup the PearPC emulator with a PowerPC Mac OS install is available. (Pop-up blocker installed recommended!)

''PowerPC Emulator''

More information to follow


=== YAPE ===
=== YAPE ===
[http://yape.homeserver.hu YAPE] is a Commodore emulator.


==See Also==
''Commodore Emulator''
===External Links===

* [http://www.emulators.com/ A website filled with emulators from many platforms]
More information to follow
* [http://gablog.eu/online/node/39 Quick Qemu Tutorial]

* [http://qemu-forum.ipi.fi Qemu Forum]
== Links ==
http://www.emulators.com/ - ''A website filled with emulators from many platforms''
* [http://www.thefreecountry.com/emulators/arm.shtml A good list of ARM emulators]

http://gablog.eu/online/node/39 - ''Quick Qemu Tutorial''


[[Category:Emulators]]
http://qemu-forum.ipi.fi/ - ''Qemu Forum''

Latest revision as of 04:15, 9 June 2024

Emulators
PC Emulators
PC Virtual Machine Monitors
PowerPC Emulators

An emulator is a device, computer program, or system that accepts the same inputs and produces the same outputs of another device, computer program or system.

Emulators are available for everything from running Windows on the Mac OS to running Game Boy games on PS3s. In the context of kernel development however we want a generic emulator which emulates the environment you would like your kernel to run in.

Emulation Packages

QEMU

QEMU is operated from the command line with the parameters used to specify the hardware environment of the system and also to link to the image which holds your kernel binary. It's available for Linux and Windows (the later as 'kqemu').

A simple command to run a floppy image would be:

qemu -fda floppy.img

You can use Ctrl+Alt to release the cursor (while captured) and can use Ctrl+Alt+F to toggle fullscreen. There are further parameters available for use:

heading heading
HDD Image/Device path -hda path
CD Image/Device path -cdrom path
Boot Device x(if not default) -boot x
(x)MB RAM -m x
Localized Time -localtime
USB Support -usb
Start in Full-Screen -full-screen

Bochs

Bochs supports a variety of features, all of which can be carefully customized with command line switches or a settings file. It can emulate a PC with VBE, NE2000, and Sound Blaster 16. It also has a built-in debugger which can be useful for testing and debugging your kernel. Bochs can emulate CPUs with support for SMP and x86-64. However, Bochs itself does not use threading and the emulation is not virtualized, so you can expect slow and CPU-intensive emulation. Bochs is available for Linux and Windows and is free and open source.

Oracle VirtualBox

VirtualBox is a desktop VM package.

Microsoft Virtual PC

Microsoft Virtual PC is a desktop VM package.

CPCE

CPCE is an Amstrad emulator, see the official CPCE website for installation and usage instructions.

PearPC

PearPC is a PowerPC emulator, an in-depth tutorial on how to setup the PearPC emulator with a PowerPC Mac OS install is available. (Pop-up blocker installed recommended!)

YAPE

YAPE is a Commodore emulator.

See Also

External Links