Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
qemu
提交
15a34c63
Q
qemu
项目概览
openeuler
/
qemu
通知
10
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Q
qemu
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
15a34c63
编写于
7月 08, 2004
作者:
B
bellard
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
doc update
git-svn-id:
svn://svn.savannah.nongnu.org/qemu/trunk@990
c046a42c-6fe2-441c-8c8c-71466251a162
上级
1bfe856e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
176 addition
and
118 deletion
+176
-118
qemu-doc.texi
qemu-doc.texi
+173
-102
qemu-tech.texi
qemu-tech.texi
+3
-16
未找到文件。
qemu-doc.texi
浏览文件 @
15a34c63
...
...
@@ -41,18 +41,19 @@ For system emulation, the following hardware targets are supported:
@itemize
@item PC (x86 processor)
@item PREP (PowerPC processor)
@item PowerMac (PowerPC processor, in progress)
@end itemize
For user emulation, x86, PowerPC, ARM, and SPARC CPUs are supported.
@chapter Installation
If you want to compile QEMU yourself, see @ref
{
compilation
}
.
@section Linux
If you want to compile QEMU, please read the @file
{
README
}
which gives
the related information. Otherwise just download the binary
distribution (@file
{
qemu-XXX-i386.tar.gz
}
) and untar it as root in
@file
{
/
}
:
Download the binary distribution (@file
{
qemu-XXX-i386.tar.gz
}
) and
untar it as root in @file
{
/
}
:
@example
su
...
...
@@ -62,67 +63,13 @@ tar zxvf /tmp/qemu-XXX-i386.tar.gz
@section Windows
@itemize
@item Install the current versions of MSYS and MinGW from
@url
{
http://www.mingw.org/
}
. You can find detailed installation
instructions in the download section and the FAQ.
@item Download
the MinGW development library of SDL 1.2.x
(@file
{
SDL-devel-1.2.x-mingw32.tar.gz
}
) from
@url
{
http://www.libsdl.org
}
. Unpack it in a temporary place, and
unpack the archive @file
{
i386-mingw32msvc.tar.gz
}
in the MinGW tool
directory. Edit the @file
{
sdl-config
}
script so that it gives the
correct SDL directory when invoked.
@item Extract the current version of QEMU.
@item Start the MSYS shell (file @file
{
msys.bat
}
).
@item Change to the QEMU directory. Launch @file
{
./configure
}
and
@file
{
make
}
. If you have problems using SDL, verify that
@file
{
sdl-config
}
can be launched from the MSYS command line.
@item You can install QEMU in @file
{
Program Files/Qemu
}
by typing
@file
{
make install
}
. Don't forget to copy @file
{
SDL.dll
}
in
@file
{
Program Files/Qemu
}
.
@end itemize
@section Cross compilation for Windows with Linux
@itemize
@item
Install the MinGW cross compilation tools available at
@url
{
http://www.mingw.org/
}
.
@item
Install the Win32 version of SDL (@url
{
http://www.libsdl.org
}
) by
unpacking @file
{
i386-mingw32msvc.tar.gz
}
. Set up the PATH environment
variable so that @file
{
i386-mingw32msvc-sdl-config
}
can be launched by
the QEMU configuration script.
@item
Configure QEMU for Windows cross compilation:
@example
./configure --enable-mingw32
@end example
If necessary, you can change the cross-prefix according to the prefix
choosen for the MinGW tools with --cross-prefix. You can also use
--prefix to set the Win32 install path.
@item You can install QEMU in the installation directory by typing
@file
{
make install
}
. Don't forget to copy @file
{
SDL.dll
}
in the
installation directory.
@end itemize
Note: Currently, Wine does not seem able to launch
QEMU for Win32.
Download the experimental binary installer at
@url
{
http://www.freeoszoo.org/download.php
}
.
@section Mac OS X
Mac OS X is currently not supported.
Download the experimental binary installer at
@url
{
http://www.freeoszoo.org/download.php
}
.
@chapter QEMU PC System emulator invocation
...
...
@@ -138,11 +85,11 @@ available:
@enumerate
@item
@code
{
qemu-fast
}
uses the host Memory Management Unit (MMU) to
simulate
the x86 MMU. It is @emph
{
fast
}
but has limitations because the whole 4 GB
address space cannot be used and some memory mapped peripherials
cannot be emulated accurately yet. Therefore, a specific Linux kernel
must be used (@xref
{
linux
_
compile
}
)
.
@code
{
qemu-fast
}
uses the host Memory Management Unit (MMU) to
simulate the x86 MMU. It is @emph
{
fast
}
but has limitations because
the whole 4 GB address space cannot be used and some memory mapped
peripherials cannot be emulated accurately yet. Therefore, a specific
guest Linux kernel can be used (@xref
{
linux
_
compile
}
) as guest OS
.
@item
@code
{
qemu
}
uses a software MMU. It is about @emph
{
two times
...
...
@@ -153,22 +100,28 @@ slower} but gives a more accurate emulation.
QEMU emulates the following PC peripherials:
@itemize @minus
@item
i440FX host PCI bridge and PIIX3 PCI to ISA bridge
@item
VGA (hardware level, including all non standard modes)
Cirrus CLGD 5446 PCI VGA card or dummy VGA card with Bochs VESA
extensions (hardware level, including all non standard modes).
@item
PS/2 mouse and keyboard
@item
2 IDE interfaces with hard disk and CD-ROM support
2
PCI
IDE interfaces with hard disk and CD-ROM support
@item
Floppy disk
@item
up to 6 NE2000
network adapters
NE2000 PCI
network adapters
@item
Serial port
@item
Soundblaster 16 card
@end itemize
QEMU uses the PC BIOS from the Bochs project and the Plex86/Bochs LGPL
VGA BIOS.
@c man end
@section Quick Start
...
...
@@ -220,7 +173,7 @@ the raw disk image you use is not written back. You can however force
the write back by pressing @key
{
C-a s
}
(@xref
{
disk
_
images
}
).
@item -m megs
Set virtual RAM size to @var
{
megs
}
megabytes.
Set virtual RAM size to @var
{
megs
}
megabytes.
Default is 128 MB.
@item -initrd file
Use @var
{
file
}
as initial ram disk.
...
...
@@ -238,6 +191,11 @@ with a serial console.
The SB16 emulation is disabled by default as it may give problems with
Windows. You can enable it manually with this option.
@item -localtime
Set the real time clock to local time (the default is to UTC
time). This option is needed to have correct date in MS-DOS or
Windows.
@end table
Network options:
...
...
@@ -261,11 +219,11 @@ it. Read @url{http://bellard.org/qemu/tetrinet.html} to have an
example of its use.
@item -user-net
(Experimental) Use the user mode network stack. This is the default if
n
o tun/tap n
etwork init script is found.
Use the user mode network stack. This is the default if no tun/tap
network init script is found.
@item -dummy-net
Use the dummy network stack: no packet will be received
on
the network
Use the dummy network stack: no packet will be received
by
the network
cards.
@end table
...
...
@@ -287,7 +245,7 @@ Use @var{file} as initial ram disk.
@end table
Debug options:
Debug
/Expert
options:
@table @option
@item -s
Wait gdb connection to port 1234 (@xref
{
gdb
_
usage
}
).
...
...
@@ -297,6 +255,12 @@ Change gdb connection port.
Do not start CPU at startup (you must type 'c' in the monitor).
@item -d
Output log in /tmp/qemu.log
@item -isa
Simulate an ISA-only system (default is PCI system).
@item -std-vga
Simulate a standard VGA card with Bochs VBE extensions (default is
Cirrus Logic GD5446 PCI VGA)
@end table
During the graphical emulation, you can use the following keys:
...
...
@@ -495,6 +459,10 @@ sendkey ctrl-alt-f1
This command is useful to send keys that your graphical user interface
intercepts at low level, such as @code
{
ctrl
-
alt
-
f
1
}
in X Window.
@item system
_
reset
Reset the system.
@end table
@subsection Integer expressions
...
...
@@ -904,63 +872,93 @@ Use @code{set architecture i8086} to dump 16 bit code. Then use
@subsection Linux
To have access to SVGA graphic modes under X
11
, use the @code
{
vesa
}
X
11
driver. For optimal performances, use the same depth as your
native display
.
To have access to SVGA graphic modes under X
11
, use the @code
{
vesa
}
or
the @code
{
cirrus
}
X
11
driver. For optimal performances, use
16
bit
color depth in the guest and the host OS
.
@subsection Windows
If you have a slow host, using Windows
95
is better as it gives the
best speed. Windows
2000
is also a good choice.
SVGA graphic modes support: QEMU
currently supports the Bochs VESA VBE
extensions. It supports color depths of
8
,
15
,
16
and
32
bits per
pixel in
640
x
480
,
800
x
600
and
1024
x
768
. For optimal performances, use
the same depth as your native display
.
SVGA graphic modes support: QEMU
emulates a Cirrus Logic GD
5446
Video
card. All Windows versions starting from Windows
95
should recognize
and use this graphic card. For optimal performances, use
16
bit color
depth in the guest and the host OS
.
@itemize
CPU usage reduction: Windows
9
x does not correctly use the CPU HLT
instruction. The result is that it takes host CPU cycles even when
idle. You can install the utility from
@url
{
http:
//
www.user.cityline.ru
/
~maxamn
/
amnhltm.zip
}
to solve this
problem. Note that no such tool is needed for NT,
2000
or XP.
@
item Windows XP: it should be automatically detected.
@
chapter QEMU PowerPC System emulator invocation
@item Windows NT
4
or
2000
: use the driver
@url
{
http:
//
www.volny.cz
/
xnavara
/
qemuvid
_
bin.zip
}
by Filip Navara
.
Use the executable @file
{
qemu
-
system
-
ppc
}
to simulate a complete PREP
or PowerMac PowerPC system
.
@item Windows
95
/
98
/
Me: no clean solution yet
(
but it will change
soon
)
. You can however use the shareware driver from SciTech. Here are
the steps recommended by Christophe Bothamy on the Bochs mailing list:
QEMU emulates the following PowerMac peripherials:
@itemize
@item install win
95
with the VGA driver.
@item download sdd
7
beta from @url
{
http:
//
www.majorgeeks.com
/
download
382
.html
}
@item download pmhelp.vxd from @url
{
http:
//
unununium.org
/
viewcvs
/
snap
/
redist
/
release
/
pmhelp.vxd
}
@item copy pmhelp.vxd to the win
95
system directory
@item install sdd
7
@end itemize
@itemize @minus
@item
UniNorth PCI Bridge
@item
PCI VGA compatible card with VESA Bochs Extensions
@item
2
PMAC IDE interfaces with hard disk and CD
-
ROM support
@item
NE
2000
PCI adapters
@item
Non Volatile RAM
@item
VIA
-
CUDA with ADB keyboard and mouse.
@end itemize
@chapter QEMU PREP PowerPC System emulator invocation
Use the executable @file
{
qemu
-
system
-
ppc
}
to simulate a complete PREP
PowerPC system.
QEMU emulates the following PREP peripherials:
@itemize @minus
@item
PCI Bridge
@item
PCI VGA compatible card with VESA Bochs Extensions
@item
2
IDE interfaces with hard disk and CD
-
ROM support
@item
Floppy disk
@item
up to
6
NE
2000
network adapters
NE
2000
network adapters
@item
Serial port
@item
PREP Non Volatile RAM
@item
PC compatible keyboard and mouse.
@end itemize
QEMU uses the Open Hack'Ware Open Firmware Compatible BIOS available at
@url
{
http:
//
site.voila.fr
/
jmayer
/
OpenHackWare
/
index.htm
}
.
You can read the qemu PC system emulation chapter to have more
informations about QEMU usage.
@c man begin OPTIONS
The following options are specific to the PowerPC emulation:
@table @option
@item
-
prep
Simulate a PREP system
(
default is PowerMAC
)
@item
-
g WxH
[
xDEPTH
]
Set the initial VGA graphic mode. The default is
800
x
600
x
15
.
@end table
@c man end
More information is available at
@url
{
http:
//
jocelyn.mayer.free.fr
/
qemu
-
ppc
/
}
.
...
...
@@ -1065,3 +1063,76 @@ Activate log (logfile=/tmp/qemu.log)
Act as if the host page size was 'pagesize' bytes
@end table
@node compilation
@chapter Compilation from the sources
@section Linux
/
BSD
Read the @file
{
README
}
which gives the related information.
@section Windows
@itemize
@item Install the current versions of MSYS and MinGW from
@url
{
http:
//
www.mingw.org
/
}
. You can find detailed installation
instructions in the download section and the FAQ.
@item Download
the MinGW development library of SDL
1
.
2
.x
(
@file
{
SDL
-
devel
-
1
.
2
.x
-
mingw
32
.tar.gz
}
)
from
@url
{
http:
//
www.libsdl.org
}
. Unpack it in a temporary place, and
unpack the archive @file
{
i
386
-
mingw
32
msvc.tar.gz
}
in the MinGW tool
directory. Edit the @file
{
sdl
-
config
}
script so that it gives the
correct SDL directory when invoked.
@item Extract the current version of QEMU.
@item Start the MSYS shell
(
file @file
{
msys.bat
}
)
.
@item Change to the QEMU directory. Launch @file
{
.
/
configure
}
and
@file
{
make
}
. If you have problems using SDL, verify that
@file
{
sdl
-
config
}
can be launched from the MSYS command line.
@item You can install QEMU in @file
{
Program Files
/
Qemu
}
by typing
@file
{
make install
}
. Don't forget to copy @file
{
SDL.dll
}
in
@file
{
Program Files
/
Qemu
}
.
@end itemize
@section Cross compilation for Windows with Linux
@itemize
@item
Install the MinGW cross compilation tools available at
@url
{
http:
//
www.mingw.org
/
}
.
@item
Install the Win
32
version of SDL
(
@url
{
http:
//
www.libsdl.org
}
)
by
unpacking @file
{
i
386
-
mingw
32
msvc.tar.gz
}
. Set up the PATH environment
variable so that @file
{
i
386
-
mingw
32
msvc
-
sdl
-
config
}
can be launched by
the QEMU configuration script.
@item
Configure QEMU for Windows cross compilation:
@example
.
/
configure
--
enable
-
mingw
32
@end example
If necessary, you can change the cross
-
prefix according to the prefix
choosen for the MinGW tools with
--
cross
-
prefix. You can also use
--
prefix to set the Win
32
install path.
@item You can install QEMU in the installation directory by typing
@file
{
make install
}
. Don't forget to copy @file
{
SDL.dll
}
in the
installation directory.
@end itemize
Note: Currently, Wine does not seem able to launch
QEMU for Win
32
.
@section Mac OS X
The Mac OS X patches are not fully merged in QEMU, so you should look
at the QEMU mailing list archive to have all the necessary
information.
qemu-tech.texi
浏览文件 @
15a34c63
...
...
@@ -258,7 +258,7 @@ segment base.
@section Translation cache
A
2
MByte cache holds the most recently used translations. For
A
16
MByte cache holds the most recently used translations. For
simplicity, it is completely flushed when it is full. A translation unit
contains just a single basic block (a block of x86 instructions
terminated by a jump or by a virtual CPU state change which the
...
...
@@ -489,19 +489,6 @@ This program tests various Linux system calls. It is used to verify
that the system call parameters are correctly converted between target
and host CPUs.
@section @file
{
hello-i386
}
Very simple statically linked x86 program, just to test QEMU during a
port to a new host CPU.
@section @file
{
hello-arm
}
Very simple statically linked ARM program, just to test QEMU during a
port to a new host CPU.
@section @file
{
sha1
}
It is a simple benchmark. Care must be taken to interpret the results
because it mostly tests the ability of the virtual CPU to optimize the
@code
{
rol
}
x86 instruction and the condition code computations.
@section @file
{
qruncom.c
}
Example of usage of @code
{
libqemu
}
to emulate a user mode i386 CPU.
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录