304 lines
13 KiB
HTML
Executable File
304 lines
13 KiB
HTML
Executable File
<HTML>
|
|
<HEAD>
|
|
<TITLE>bochs: The Open Source IA-32 Emulation Project (Linux Documentation)</TITLE>
|
|
|
|
<style TYPE="text/CSS">
|
|
<!--
|
|
A:link {color: blue; text-decoration: none}
|
|
A:visited {color: blue; text-decoration: none}
|
|
A:active {color: blue; text-decoration: none}
|
|
A:hover {color: blue; text-decoration: underline}
|
|
|
|
|
|
.sidebar {font-family:Verdana, Arial, Helvetica; color: #000000}
|
|
A.sidebar:link {color: #000000; font-style: normal; text-decoration: none}
|
|
A.sidebar:visited {color: #000000; font-style: normal; text-decoration: none}
|
|
A.sidebar:active {color: #000000; font-style: normal; text-decoration: none}
|
|
A.sidebar:hover {color: blue; text-decoration: underline}
|
|
-->
|
|
</style>
|
|
|
|
<META NAME="resource-type" CONTENT="document">
|
|
<META NAME="distribution" CONTENT="GLOBAL">
|
|
<META NAME="description" CONTENT="Bochs IA-32 Emulator provides a virtual PC that can run operating systems such as Windows, Linux, and BSD.">
|
|
<META NAME="copyright" CONTENT="Copyright 2001 The Bochs Project.">
|
|
<META NAME="keywords" CONTENT="pc emulation, vmware, win4lin, netraverse, trelos, x86 emulation, emulator,insignia, softpc, connectix, virtualpc, fx!32, freemware, dynamic translation,open source, gnu, linux, windows, bsd">
|
|
<META NAME="Author" CONTENT="Bryce Denney">
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">
|
|
|
|
</HEAD>
|
|
<BODY BGCOLOR="#FFFFFF" VLINK="#000000" ALINK="#000000" LINK="#000000" TOPMARGIN="0" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0">
|
|
|
|
|
|
|
|
<BR>
|
|
<center>
|
|
<font face="arial, helvetica" color="#1e029a" size="5">
|
|
<b>The Bochs IA-32 Emulator Project</b> <BR>
|
|
<b>Linux Documentation</b>
|
|
</font>
|
|
</center>
|
|
<BR>
|
|
<BR>
|
|
|
|
This file is an introduction to Bochs, written for Linux users. It assumes
|
|
that you have just downloaded a Bochs binary distribution, and now you want to
|
|
see it work!
|
|
|
|
<BR><BR>
|
|
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>Contents</b>
|
|
</font>
|
|
<BR>
|
|
|
|
<ul>
|
|
<li><a href="#recent">Where is the most recent version?</a>
|
|
<li><a href="#files">What files were installed?</a>
|
|
<li>Where's the <a href="docs-html/faq.html">FAQ</a>?
|
|
<li>Where is the rest of the documentation? (<a href="docs-html/index.html">local copy</a> - <a href="http://bochs.sourceforge.net/docs-html">online</a>)
|
|
<li><a href="#quickstart">How can I try out Bochs in 10 minutes or less?</a>
|
|
<li><a href="#tools">What tools are included in this package?</a>
|
|
<li><a href="#learnmore">How do I learn more?</a>
|
|
<li>Do you guys have a website? <a href="http://bochs.sourceforge.net">Take me there!</a>
|
|
</ul>
|
|
|
|
|
|
<a name="recent"></a>
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>Where is the most recent version?</b>
|
|
</font>
|
|
<BR>
|
|
All versions of Bochs can be downloaded from the Bochs website at
|
|
<a href="http://bochs.sourceforge.net"> http://bochs.sourceforge.net </a>.
|
|
In the top-left corner of the web page, there is a link to the latest
|
|
release. On the web site, in addition to downloading Bochs, you can join
|
|
the bochs-developers or bochs-announce mailing lists, submit bug reports,
|
|
view the source code, and much more.
|
|
<BR>
|
|
|
|
<a name="files"></a>
|
|
<BR>
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>What files were installed?</b>
|
|
</font>
|
|
<BR>
|
|
When you install a Bochs RPM for Linux, you get the Bochs executables and
|
|
tools, ROM image files, documentation, and a sample disk image that allows
|
|
Bochs to boot Linux. Here is a list of the files that are installed by the
|
|
RPM, and a brief description of each one. The files which can be viewed in
|
|
text form are shown as links. <br>
|
|
|
|
<table align=center border=1>
|
|
<th>File name </th> <th> Description </th>
|
|
<tr><td><a href="README ">@prefix@/share/doc/bochs/README </a></td> <td> the ReadMe file from the source distribution. </td> </tr>
|
|
<tr><td><a href="COPYING ">@prefix@/share/doc/bochs/COPYING </a></td> <td> copy of the LGPL license </td> </tr>
|
|
<tr><td><a href="DOC-linux.html ">@prefix@/share/doc/bochs/DOC-linux.html </a></td> <td> this file </td> </tr>
|
|
<tr><td>/usr/man/man1/* </td> <td> man pages for bochs, bochs-dlx and bximage </td> </tr>
|
|
<tr><td>/usr/man/man5/* </td> <td> man page for bochsrc </td> </tr>
|
|
<tr><td><a href="docs-html/index.html ">@prefix@/share/doc/bochs/docs-html/* </a></td> <td> a local copy of all Bochs documentation ( <a href="http://bochs.sourceforge.net/docs-html">Online copy</a> )</td> </tr>
|
|
<tr><td><a href="CHANGES ">@prefix@/share/doc/bochs/CHANGES </a></td> <td> what is changed between versions </td> </tr>
|
|
<tr><td>@prefix@/share/bochs/BIOS-bochs-latest </td> <td> ROM BIOS image for Bochs </td> </tr>
|
|
<tr><td>@prefix@/share/bochs/VGABIOS-elpin-2.40 </td> <td> VGA BIOS image for Bochs </td> </tr>
|
|
<tr><td><a href="VGABIOS-elpin-LICENSE ">@prefix@/share/bochs/VGABIOS-elpin-LICENSE </a></td> <td> license for VGA BIOS </td> </tr>
|
|
<tr><td><a href="bochsrc-sample.txt">@prefix@/share/doc/bochs/bochsrc-sample.txt</a></td> <td> sample Bochs configuration file </td> </tr>
|
|
<tr><td>@prefix@/bin/bochs </td> <td> the main Bochs executable (This is actually a symbolic link to @prefix@/bochs/@VERSION@/bochs) </td> </tr>
|
|
<tr><td>@prefix@/bin/bximage </td> <td> tool for making new disk images (This is actually a symbolic link to @prefix@/bochs/@VERSION@/bximage)</td> </tr>
|
|
<tr><td>@prefix@/bin/bochs-docs </td> <td> script to start up browser with this page </td> </tr>
|
|
<tr><td>@prefix@/bin/bochs-dlx </td> <td> run this script to try out DLX Linux inside Bochs!</td> </tr>
|
|
<tr><td>@prefix@/share/bochs/dlxlinux/ </td> <td> directory containing DLX linux sample disk image </td> </tr>
|
|
<tr><td><a href="../dlxlinux/README ">@prefix@/share/bochs/dlxlinux/README </a></td> <td> description of DLX linux</td> </tr>
|
|
<tr><td><a href="../dlxlinux/bochsrc.txt ">@prefix@/share/bochs/dlxlinux/bochsrc.txt </a></td> <td> Bochs configuration file for DLX</td> </tr>
|
|
<tr><td>@prefix@/share/bochs/dlxlinux/hd10meg.img </td> <td> disk image file (10 meg) </td> </tr>
|
|
<tr><td><a href="../dlxlinux/testform.txt ">@prefix@/share/bochs/dlxlinux/testform.txt </a></td> <td> Form for reporting success or failure </td> </tr>
|
|
</table>
|
|
|
|
|
|
|
|
<a name="quickstart"></a>
|
|
<BR>
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>How can I try out Bochs in 10 minutes or less?</b>
|
|
</font>
|
|
<BR>
|
|
This RPM package includes a sample disk image containing DLX Linux, which you
|
|
can boot within Bochs. To start up DLX linux, just type "bochs-dlx" in an
|
|
xterm. This will create a Bochs Display window, and print some log messages
|
|
into the xterm. The display window is the most interesting, but if something
|
|
goes wrong the log messages should give an idea of what has happened.
|
|
<br><br>
|
|
One common problem in X windows is that the screen colors can be abnormal
|
|
if other X programs have already allocated all the colors. (This assumes that
|
|
you are in 8-bit color mode.) If the colors don't look right, try quitting
|
|
netscape, clearing any complex images in the background, etc. so that Bochs
|
|
has a chance to allocate the colors it needs.
|
|
<br><br>
|
|
Meanwhile, the Bochs display screen looks like a PC booting, and in fact it is!
|
|
Bochs begins simulating a PC from the time the power turns on. You will see
|
|
the VGA BIOS message, and it begins loading Linux from the disk image. (The
|
|
disk image is just a big file that Bochs uses as if it were a real hard drive.)
|
|
After a while, you see Linux boot messages and eventually a login prompt. You
|
|
are now running DLX Linux in a window!
|
|
<br><br>
|
|
Bochs simulates every instruction of an x86 CPU, so it is very memory- and
|
|
compute-intensive. The speed of your real CPU will make a big difference in
|
|
how fast the DLX Linux image boots. On a 750MHz Pentium, the sample Linux
|
|
image takes about 25 seconds to boot.
|
|
<br><br>
|
|
Booting is complete when you see "dlx login:" and a cursor. At this login
|
|
prompt, type "root". On UNIX systems, root is the system admin user.
|
|
There is no password for root on this image, so it lets you log in
|
|
immediately. Now you should see a UNIX prompt, and you can begin to
|
|
type UNIX commands.
|
|
<BR><br>
|
|
<center>
|
|
<table border=1>
|
|
<td>
|
|
<PRE>
|
|
Welcome to DLX V1.0 (C) 1995-96 Erich Boehm
|
|
(C) 1995 Hannes Boehm
|
|
|
|
dlx login: <b>root</b>
|
|
Linux 1.3.89.
|
|
dlx:~# <b>pwd</b>
|
|
/root
|
|
dlx:~# <b>cd /</b>
|
|
dlx:~# <b>ls</b>
|
|
bin/ etc/ lost+found/ root/ usr/
|
|
boot/ fd/ mnt/ sbin/ var/
|
|
dev/ lib/ proc/ tmp/ zip/
|
|
dlx:/# <b>df</b>
|
|
Filesystem 1024-blocks Used Available Capacity Mounted on
|
|
/dev/hda1 10060 2736 6005 29% /
|
|
dlx:/# _
|
|
</PRE>
|
|
</td>
|
|
</table>
|
|
</center>
|
|
|
|
<br>
|
|
One thing you may notice is that the screen saver turns on (screen goes
|
|
blank) very quickly when you have stopped typing. The reason is that Bochs
|
|
always simulates as fast as it can. If the CPU is very busy (running
|
|
instructions nonstop), simulated time goes by slowly. If the CPU is idle (just
|
|
waiting for you to type, for example), simulated time speeds up dramatically.
|
|
In any case, If the screen saver blanks out the screen, just press a key (try
|
|
shift or control) to restore the screen.
|
|
<br>
|
|
<br>
|
|
|
|
When you get tired of playing with DLX Linux, just type "reboot" in the Bochs
|
|
window to shut down the DLX Linux operating system. You can also press
|
|
the "Power" button to stop the simulation.
|
|
<br>
|
|
<br>
|
|
In this brief introduction you saw how Bochs can boot and run an x86 operating
|
|
system in a window. It doesn't have to be Linux, of course! Various people
|
|
have been able to install and run DOS, Windows 3.1, Windows 95, Windows 98,
|
|
Windows NT, Linux, FreeBSD, NetBSD, OpenBSD, and probably others that we've
|
|
never even heard of. In fact Bochs is used by many operating system developers
|
|
to test out their software in a controlled environment without having to
|
|
reboot their development machine.
|
|
<br><br>
|
|
<a name="tools"></a>
|
|
<BR>
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>What tools are included in this package?</b>
|
|
</font>
|
|
<BR>
|
|
Other than the bochs binary, there is a disk image creation tool
|
|
called bximage, a script called bochs-docs which calls up this
|
|
page in a browser, and a script called bochs-dlx which makes it easy
|
|
to start up DLX Linux.
|
|
<br><br>
|
|
|
|
<font face="arial, helvetica" color="#1e029a" size="3">
|
|
<b>bochs-dlx</b>
|
|
</font>
|
|
<BR>
|
|
This script makes it quick and easy to start up DLX Linux within bochs.
|
|
"bochs-dlx" should run as soon as you install the RPM. All the script actually
|
|
does is to cd into @prefix@/bochs/dlxlinux and then run bochs from there.
|
|
<br><br>
|
|
|
|
<font face="arial, helvetica" color="#1e029a" size="3">
|
|
<b>bochs-docs</b>
|
|
</font>
|
|
<BR>
|
|
The bochs-docs script starts up your web browser and points it
|
|
to this HTML file. If you don't have netscape installed, you will
|
|
have to edit the BROWSER variable in bochs-docs to make it work.
|
|
<br><br>
|
|
|
|
<font face="arial, helvetica" color="#1e029a" size="3">
|
|
<b>bximage</b>
|
|
</font>
|
|
<BR>
|
|
Bximage is a small program that helps to create empty floppy disk
|
|
and hard disk images. To use it, you should run bximage in an xterm.
|
|
Just CD to the directory where you want the disk images to go, and run bximage.
|
|
Bximage will ask you some questions about what type of disk image you need, and
|
|
then create one for
|
|
you.
|
|
<br><br>
|
|
Here is an example run of bximage, in which I made a 12-meg hard disk image called c.img. The default answer to a question is always printed in brackets.
|
|
If you want to accept the default choice, you can just press return. Also,
|
|
you can always quit bximage by pressing Control-C.
|
|
<br><br>
|
|
<table align=center border=1>
|
|
<td>
|
|
<pre>
|
|
linux$ <b>bximage</b>
|
|
========================================================================
|
|
bximage
|
|
Disk Image Creation Tool for Bochs
|
|
========================================================================
|
|
|
|
Do you want to create a floppy disk image or a hard disk image?
|
|
Please type hd or fd. [hd]
|
|
|
|
Enter the hard disk size in megabytes, between 1 and 32255
|
|
[10] <b>12</b>
|
|
|
|
I will create a hard disk image with
|
|
cyl=24
|
|
heads=16
|
|
sectors per track=63
|
|
total sectors=24192
|
|
total size=11.81 megabytes
|
|
|
|
What should I name the image?
|
|
[c.img]
|
|
|
|
Writing: [............] Done.
|
|
|
|
I wrote 12386304 bytes to c.img.
|
|
|
|
The following line should appear in your bochsrc:
|
|
diskc: file="c.img", cyl=24, heads=16, spt=63
|
|
</pre>
|
|
</td>
|
|
</table>
|
|
<br><br>
|
|
In order for Bochs to know to use the hard disk image, you should type
|
|
the diskc line into your bochsrc.txt. You can also change it to diskd
|
|
if you already have a diskc line, but be careful not to have both
|
|
diskd and cdromd--these options cannot be used together.
|
|
<br><br>
|
|
|
|
<a name="learnmore"></a>
|
|
<BR>
|
|
<font face="arial, helvetica" color="#1e029a" size="4">
|
|
<b>Where can I learn more?</b>
|
|
</font>
|
|
<BR>
|
|
Here are some sources of more information about Bochs:
|
|
<ul>
|
|
<li> The rest of the documentation (<a href="docs-html/index.html"> local copy</a> - <a href="http://bochs.sourceforge.net/docs-html">online</a>)
|
|
<li> The bochs-developers mailing list ( <a href="http://bochs.sourceforge.net/mailinglists.html"> online </a>)
|
|
<li> The Bochs website at <a href="http://bochs.sourceforge.net">http://bochs.sourceforge.net</a> has a collection of disk images of different operating systems. Some disk images are the size of a floppy disk (1 meg compressed) and others are gigantic (160 meg compressed). ( <a href="http://bochs.sourceforge.net/diskimages.html">Go there</a> )
|
|
</ul>
|
|
|
|
</BODY>
|
|
</HTML>
|