437 lines
18 KiB
HTML
437 lines
18 KiB
HTML
<!--startcut ======================================================= -->
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<html>
|
|
<head>
|
|
<META NAME="generator" CONTENT="lgazmail v1.1pre8">
|
|
<TITLE>The Answer Guy 30: Running Unix/Linux Under Win '9x</TITLE>
|
|
</head>
|
|
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000">
|
|
<!--endcut ========================================================= -->
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
<P> <hr> <P>
|
|
|
|
<!-- =============================================================== -->
|
|
<H1 align="center"><A NAME="answer">
|
|
<img src="../gx/dennis/qbubble.gif" alt="" border="0" align="middle">
|
|
<a href="./index.html">The Answer Guy</a>
|
|
<img src="../gx/dennis/bbubble.gif" alt="" border="0" align="middle">
|
|
</A></H1> <BR>
|
|
<H4 align="center">By James T. Dennis,
|
|
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
|
|
Starshine Technical Services,
|
|
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A> </H4>
|
|
<p><hr><p>
|
|
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
|
align="left" border="0">Running Unix/Linux Under Win '9x</H3>
|
|
|
|
<p><strong>From John Riddoch on the
|
|
<A HREF="news:comp.unix.questions">comp.unix.questions</A> newsgroup
|
|
on 05 Jun 1998
|
|
|
|
<!-- begin body -->
|
|
<br><br>
|
|
<em><font color="#003366">Jeff wrote:
|
|
<br>I need a question answered. I am running Windows 95 and soon 98.
|
|
...
|
|
|
|
|
|
<br><br>
|
|
I was
|
|
wondering if there is any way to run the unix program itself in a
|
|
program window in Win 95,
|
|
</font></em>
|
|
<br><br>
|
|
unix is not a program; it is an operating system. You _<EM>cannot</EM>_
|
|
run two operating systems at the same time on the same hardware. Dual-booting
|
|
is a different matter.
|
|
</strong></p>
|
|
|
|
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
|
alt="(!)" border="0"
|
|
>And running an OS under simulation or under a VM
|
|
is also a "different matter." Also not that the phrase
|
|
"OS" is not so precisely defined that you can defend this
|
|
position. For example the IBM mainframes support VM's
|
|
(virtual machines) that would allow the concurrent use of
|
|
multiple OS'. Also consider the case of Tenon Systems'
|
|
"MachTen" a microkernel OS that support MacOS running as
|
|
a personality under the microkernel.
|
|
</blockquote>
|
|
|
|
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
|
alt="(?)" border="0"><em><font color="#003366"
|
|
>just like you can run win 95 the same way on a mac.</font></em>
|
|
<br><br>
|
|
???? I sincerely doubt it. Perhaps the mac had an emulator that ran
|
|
win 95 programs. Apart from anything else, win 95 is i386 only and
|
|
won't run on a 68000 (or whatever macs use these days).
|
|
</p></strong>
|
|
|
|
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
|
alt="(!)" border="0"
|
|
>He's probably referring to
|
|
<A HREF="http://www.connectix.com/html/connectix_virtualpc.html"
|
|
>VirtualPC</A> --- an emulation of the hardware, including CPU, video,
|
|
disk, I/O, and ethernet chipsets. There's also
|
|
<A HREF="http://www.softwindows.com/SoftWindows/Mac/Products/RealPC_brief.html">RealPC</A>.
|
|
These are the most popular PC
|
|
<A HREF="http://www.emulation.net/">emulators under MacOS</A>.
|
|
|
|
<br><br>
|
|
Modern Macs run the G3 (PowerPC) processor, and the performance
|
|
of Win '95 under VirtualPC is tolerable (about equivalent to a
|
|
Pentium 90 on a 250 Mhz G3 Powerbook (laptop) and about a
|
|
Pentium 75 on a 180 Mhz Performa).
|
|
|
|
<br><br>
|
|
Getting back to the original question:
|
|
|
|
<br><br>
|
|
There is a shareware package (distributed as source code
|
|
and available for free evaluation) by Kevin Lawton called Bochs.
|
|
|
|
<br><br>
|
|
This started as a PC emulator (hardware) emulation for Unix
|
|
(including Linux) that is allegedly capable of supporting Win
|
|
'95 under emulation. It apparently isn't quite up to supporting
|
|
NT (apparently the CPU emulation is only 386 and NT requires
|
|
486 or Pentium emulation). For info on that look at the
|
|
Bochs web site:
|
|
(<A HREF="http://world.std.com/~bochs/">http://world.std.com/~bochs/</A>).
|
|
It looks like Kevin will be upgrading the processor emulation
|
|
as time (and possibly funds) allow. Apparently you can
|
|
License this package for $25. (I haven't used it yet, but
|
|
I might send him the money just 'cause I'm so impressed
|
|
by the effort).
|
|
|
|
<br><br>
|
|
I know this doesn't answer the question <EM>Yet</EM> but hang with
|
|
me a moment. Someone named David Ross seems to have ported
|
|
<A HREF="http://v.nu/core/Bochs/">Bochs</A> to the Win32 platform,
|
|
thus allegedly allowing one to run Linux, FreeBSD, or (presumably)
|
|
most other forms of x86 Unix.
|
|
</blockquote>
|
|
|
|
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
|
alt="(?)" border="0"><em><font color="#003366"
|
|
>if you can gimmie a hand and maybe tell me some sites where i can
|
|
download some software please tell me.</font></em>
|
|
</p></strong>
|
|
|
|
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
|
alt="(!)" border="0">See above.
|
|
</blockquote>
|
|
|
|
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
|
alt="(?)" border="0"
|
|
>You might try <A HREF="http://www.linux.org/">http://www.linux.org/</A>
|
|
for a few pointers. Do some web searches for linux and read some stuff.
|
|
RedHat linux 5.0 is a reasonable version which is nicely pre-packaged for
|
|
you and fairly easy to install
|
|
(<A HREF="http://www.redhat.com/">http://www.redhat.com/</A>).
|
|
</p></strong>
|
|
|
|
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
|
alt="(!)" border="0"
|
|
>Having answered the basic question (where can you find
|
|
a PC emulator for Win '9x) I have to add my own suggestion:
|
|
<br><br>
|
|
<div align="center">Don't do it.</div>
|
|
|
|
<br><br>
|
|
You can buy a cheap PC (even an old used 486) for next to
|
|
nothing (I've recently had one 40Mhz 386 given to me for free);
|
|
and you can install Linux on that.
|
|
|
|
<br><br>
|
|
(My main household server is a 10 year old 386/33 with 32
|
|
Mb of RAM. Eventually I'll install some extra RAM and
|
|
a new disk into that "new" 386 and throw it up as an
|
|
extra server on my LAN).
|
|
|
|
<br><br>
|
|
Once you have a machine (give it at least 16Mb and at least
|
|
a 540Mb drive) then you can just slap a null modem between
|
|
it and you desktop machine, or toss in a couple of ether
|
|
cards and a cross-over 10BaseT cord (or even by a little
|
|
4 or 5 port hub). Once that's done you can use a terminal
|
|
package (like Hyperterm, Telix, or K95 -- Columbia U's
|
|
Kermit for Win '9x), or even Kermit for DOS) to connect
|
|
to the Linux box. If you go the ethernet route you can
|
|
use Win '95's '<TT>TELNET.EXE</TT>' or you can still use K95
|
|
(it's also a telnet client --- and it's terminal emulation
|
|
is far less buggy than Microsoft's --- so you won't need
|
|
a custom termcap/terminfo file to run "curses" (Unix/Linux
|
|
"full scree" terminal/console) applications).
|
|
|
|
<br><br>
|
|
There are two reasons for me to suggest this approach:
|
|
|
|
<br><br>
|
|
First, you are likely to be very unhappy with the performance
|
|
of running any form of Unix under emulation. Although
|
|
Linux performs adequately on a 386 with only 16Mb of RAM
|
|
--- and some kernels can run in as little as 2Mb --- you'll
|
|
probably just find emulation to be too frustrating to be useful
|
|
--- particularly when using any Unix networking utilities.
|
|
|
|
<br><br>
|
|
The only two viable reasons I can see for the mode of operation
|
|
that you've requested are:
|
|
|
|
<ul>
|
|
<li>You want to play with Unix to learn it.
|
|
|
|
<li>You want to use <TT>Perl</TT>/<TT>awk</TT>, or other text
|
|
processing tools that are considered to be "Unix" utilities.
|
|
</ul>
|
|
|
|
You won't learn as much about Unix by running it under emulation
|
|
--- and you'll probably end up being too frustrated by its
|
|
performance to come away with a realistic appreciation of it.
|
|
|
|
<br><br>
|
|
In the other case you can get versions of <TT>Perl</TT>, <TT>awk</TT>,
|
|
and most other Unix utilities, shells, editors and many other tools that
|
|
have been <A HREF="http://www.itribe.net/virtunix/">ported to Win32</A>
|
|
(and even to DOS, often using the GNU'ish Go32 "DOS extender").
|
|
|
|
<br><br>
|
|
The other reason for my suggestion is that Linux, even on a
|
|
lowly 386, makes a great server. My box has over 6Gb of online
|
|
storage (which I'll probably double in the 40Mhz) a magneto
|
|
optical drive, a CD-ROM and a CDR recorder, a 4mm DAT
|
|
autochanger, a modem line (which handles uucp, incoming and
|
|
outgoing fax, dial out terminal/BBS'ing, dial in terminal, and
|
|
dial out PPP and will handle dial-up PPP when I get around to
|
|
configuring it), a null modem into the living room (for use from an
|
|
old XT laptop) and some other toys.
|
|
|
|
<br><br>
|
|
The machine has currently been up for about three months.
|
|
|
|
<br><br>
|
|
I forget why I rebooted three months ago, maybe I built a new
|
|
kernel for it or maybe I just made some changes to the startup
|
|
files and wanted to make sure it would come up automatically.
|
|
It's been used as my mail gateway and newserver for a few years
|
|
--- and it was used as my primary interactive machine (mostly
|
|
text editing) for years. My wife and our various house guests
|
|
sometime still use it or the dumb terminal to read their mail
|
|
(if they don't want to use one of the Pentium's in the living
|
|
room or in my bedroom). Sometimes I dial into to it from
|
|
a client site (I'm a consultant) or even from some local
|
|
coffee house using the Ricochet wireless to telco gateway
|
|
(offered in selected areas by Metricom:
|
|
(<A HREF="http://www.metricom.com/">http://www.metricom.com/</A>).
|
|
|
|
<br><br>
|
|
You can use Linux as a gateway. Its kernel offers an optional
|
|
feature called "IP Masquerading" which is a special form of
|
|
"network address translation" (NAT) that allows you to hide a
|
|
whole network of computers (using "private net IP addresses"
|
|
like <TT>10.*.*.*</TT>, <TT>192.168.*.*</TT> and others defined in the
|
|
RFC 1918). It is trivial to install a package called '<TT>diald</TT>'
|
|
that will dial up your ISP on demand (automatically when any of
|
|
you computers try to access the Internet -- or any other
|
|
non-local nets) and will automatically drop the line after
|
|
a configurable period of inactivity. This puts virtually
|
|
no load on a machine (not measurable on my 386!).
|
|
|
|
<br><br>
|
|
Another handy server role you can assign to your Unix box
|
|
(Linux or otherwise) is as a household schedule/reminder
|
|
service. The Unix '<TT>cron</TT>' and '<TT>at</TT>' facilities are just
|
|
perfect for this. You can write simple scripts and
|
|
schedule them for periodic execution (<TT>cron</TT>) or for one
|
|
time execution in the future (<TT>at</TT>). With slightly more
|
|
complex scripts (using the GNU '<TT>date</TT>' command, and
|
|
simple shell conditionals and tests) you can do
|
|
arbitrarily complex scheduling. It is truly easy to
|
|
set this up to automatically e-mail you reminders
|
|
post them to your "intranet web server" or to even page
|
|
you (using a normal modem) as an alarm service.
|
|
|
|
<br><br>
|
|
Eventually I expect someone to release a set of CGI scripts
|
|
to act as a front end to a reminder/alarm service --- which
|
|
you could toss up on your "intranet" server.
|
|
|
|
<br><br>
|
|
Using a little box as an "intranet" web server for a
|
|
household or small business also takes almost no memory
|
|
or CPU power on a Linux or FreeBSD box. I think the
|
|
overhead is about 70K for a small web server, and you can
|
|
even configure them to be "dynamically" loaded if you're
|
|
really pressed for RAM. The little box can also function
|
|
as a fileserver for you Win '95 box by using Samba, a Unix
|
|
package that provides Windows/NT compatible file sharing.
|
|
It's easy to run all of these functions on the same box,
|
|
they don't conflict with one another at all, and most of
|
|
them present very little load on the server.
|
|
|
|
<br><br>
|
|
On top of all that you can use the old clunker to run household
|
|
appliance over the old BSR X-10 "Powerhouse" interface (also sold as
|
|
"ActiveHome"). Larry Wall just gave a talk at the
|
|
<A HREF="http://www.svlug.org/">Silicon Valley Linux user's group</A>
|
|
showing us a demo of how he's automated his house. It was
|
|
incredibly amusing. He has a detector on his clothes
|
|
dryer, in the garage, that announces through the household
|
|
PA system when the laundry is done; and motion sensors
|
|
on the walk way leading up to the front door to announce
|
|
visitors, and scripts to tell his wife and kids when they get
|
|
mail (presumably he gets too much mail to want such an
|
|
announcment for himself).
|
|
|
|
<br><br>
|
|
Naturally you can put a sound card in the PC and run
|
|
PA/Speakers off of it to do various cool things.
|
|
|
|
<br><br>
|
|
The point is that you can't do all of this when you're
|
|
running Unix in an emulator under Win '95 (since the
|
|
chances are too great that you'll need to reboot it, and
|
|
also since your emulator won't have access to most of
|
|
the hardware that we're talking about --- it can only
|
|
access the virtual/emulated hardware. The other problem
|
|
is that Win '95 is generally not nearly as stable as
|
|
any form of Unix. Even NT doesn't come close to Linux,
|
|
FreeBSD, or any of the popular forms of Unix for stability.
|
|
|
|
<br><br>
|
|
For the same reasons you won't benefit nearly as much from
|
|
a dual or multi boot configuration. There's not much point
|
|
to having a "server" that you keep rebooting to play
|
|
<A HREF="http://www.idsoftware.com/archives/doomarc.html">Doom</A>
|
|
(which is available for Linux, BTW) or to read that MS
|
|
Word document.
|
|
|
|
<br><br>
|
|
Although I've focused on Linux (and I prefer it for my
|
|
personal use) all of what I've said applies to
|
|
<A HREF="http://www.freebsd.org/">FreeBSD</A>,
|
|
<A HREF="http://www.netbsd.org/">NetBSD</A>, and
|
|
<A HREF="http://www.openbsd.org/">OpenBSD</A> among others.
|
|
(There are some differences, the *BSD's don't have their NAT/masquerading
|
|
and packet filtering in the kernel -- it's run as a
|
|
user process, things like that. If you're learning
|
|
Unix for professional reasons I'd definitely suggest that
|
|
you clock in some time and practice on any one of the
|
|
BSD systems as well as on a Linux box. Potential employers
|
|
(in Unix savvy companies) will be far more intrigued by
|
|
entry level applicants who've worked with BSD.
|
|
|
|
<br><br>
|
|
Also, if you want to play with the X Window system (the
|
|
dominant tehnology for supporting GUI's under Unix ---
|
|
though, technically, it is a communications protocol and
|
|
programming API --- and not a "GUI") you won't want to
|
|
run it on less than a Pentium. In that situation I'd
|
|
put one (character only) installation on the cheap/used
|
|
PC and install a dual boot configuration on your main
|
|
(Win '95) workstation. The best way to do that is to
|
|
install an extra hard drive on the workstation (so you
|
|
don't need to repartition your existing drives).
|
|
|
|
<br><br>
|
|
Even you decide to put one of the BSD's on your cheap/used
|
|
server you should probably still put Linux on your
|
|
Win '9x workstation. There are two reasons for this:
|
|
|
|
<ol>
|
|
<li>there are more commercially available
|
|
productivity applications available for Linux
|
|
(WordPerfect, StarOffice, Applixware, Cliq,
|
|
Wingz, etc).
|
|
|
|
<li>Linux has <EM>very</EM> good support for DOS, and
|
|
Windows filesystems (and even some, read-only
|
|
and even NTFS and HPFS). You can even install
|
|
a small Linux distributions directly into a
|
|
DOS subdirectory.
|
|
</ol>
|
|
|
|
You could install Linux on the workstation and have it
|
|
access most of its files (almost all of them) over the
|
|
network (over NFS). All you need on a Unix box is a
|
|
fairly small "root" filesystem. 20 Mb is enough for
|
|
all the "root" files (all you <EM>really</EM> need is
|
|
<TT>/etc</TT>, <TT>/dev/</TT>, and <TT>/sbin</TT>
|
|
-- the rest can all be mounted
|
|
over the LAN though I'd suggest adding a local swap
|
|
file or partition, and a local <TT>/tmp</TT> directory).
|
|
|
|
<br><br>
|
|
If you do an installation like this: (with one server
|
|
installation on a dedicated PC and another on your
|
|
workstation -- say FreeBSD on the server and Linux
|
|
on a multi-boot for your Win '9x box) you'll get the
|
|
maximum benefits and you'll learn enough about Unix
|
|
to qualify for professional work in the field.
|
|
|
|
<br><br>
|
|
So, in conclusion: You won't learn nearly as much about
|
|
Unix from any form of "emulation" or dual-boot arrangement.
|
|
The principle advantage of Unix has always been the client
|
|
server model it uses. Unix "wants" to be a server. It's
|
|
as important to learn this philosophy as it is to learn
|
|
the syntax for a couple hundred Unix commands. So, that's
|
|
the best approach to installing and learning it around your
|
|
house.
|
|
</blockquote>
|
|
|
|
<!-- end body -->
|
|
<!--================================================================-->
|
|
<P> <hr> <P>
|
|
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
|
|
>Copyright ©</a> 1998, James T. Dennis <BR>
|
|
Published in <I>Linux Gazette</I> Issue 30 July 1998</H5>
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<table width="98%"><tr valign="center" align="center">
|
|
<td rowspan="3"><A HREF="../lg_answer30.html"><IMG
|
|
SRC="../gx/dennis/answernew.gif"
|
|
ALT="[ Answer Guy Index ]"></A></td>
|
|
<td><A HREF="tag_SCOkeys.html">SCOkeys</A></td>
|
|
<td><A HREF="tag_chroot.html">chroot</A></td>
|
|
<td><A HREF="tag_dosemu-db.html">dosemu-db</A></td>
|
|
<td><A HREF="tag_NTauth.html">NTauth</A></td>
|
|
<td><A HREF="tag_cdr.html">cdr</A></td>
|
|
<td><A HREF="tag_3270.html">3270</A></td>
|
|
<td><A HREF="linux-questions-only@ssc.comport.html">comport</A></td>
|
|
</tr><tr valign="center" align="center">
|
|
<td><A HREF="tag_lilostop.html">lilostop</A></td>
|
|
<td><A HREF="tag_emulate.html">emulate</A></td>
|
|
<td><A HREF="tag_ppadrivers.html">ppadrivers</A></td>
|
|
<td><A HREF="tag_database.html">database</A></td>
|
|
<td><A HREF="tag_vacation.html">vacation</A></td>
|
|
<td><A HREF="tag_nullmodem.html">nullmodem</A></td>
|
|
<td><A HREF="tag_lockups.html">lockups</A></td>
|
|
</tr><tr valign="center" align="center">
|
|
<td><A HREF="tag_gzipC.html">gzipC</A></td>
|
|
<td><A HREF="tag_newlook.html">newlook</A></td>
|
|
<td><A HREF="tag_c500.html">c500</A></td>
|
|
<td><A HREF="tag_solprint.html">solprint</A></td>
|
|
<td><A HREF="tag_vc1shell.html">vc1shell</A></td>
|
|
<td><A HREF="tag_memleak.html">memleak</A></td>
|
|
<td><A HREF="tag_tvcard.html">tvcard</A></td>
|
|
</tr></table>
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif"
|
|
ALT="[ Table Of Contents ]"></A>
|
|
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif"
|
|
ALT="[ Front Page ]"></A>
|
|
<A HREF="lg_bytes30.html"><IMG SRC="../gx/back2.gif"
|
|
ALT="[ Previous Section ]"></A>
|
|
<A HREF="./vrenios.html"><IMG SRC="../gx/fwd.gif"
|
|
ALT="[ Next Section ]"></A>
|
|
<!--startcut ======================================================= -->
|
|
</body>
|
|
</html>
|
|
<!--endcut ========================================================= -->
|