doc/en/platforms/sparc.sgml

247 lines
10 KiB
Text

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD: www/en/platforms/sparc.sgml,v 1.2 2001/06/06 18:17:10 obrien Exp $">
<!ENTITY title "FreeBSD/Sparc64 Project">
<!ENTITY % includes SYSTEM "../includes.sgml"> %includes;]>
<html>
&header;
<p>This page contains information about porting FreeBSD to UltraSPARC
systems.</p>
<h3>General Information</h3>
<ul>
<li><a href="#history">Port History</a></li>
<li><a href="#status">Port Status</a></li>
<li><a href="#faq">Port FAQs</a></li>
<li><a href="mailto:freebsd-sparc@FreeBSD.org">FreeBSD/SPARC mailing
list</a></li>
</ul>
<h3>Source Code</h3>
<ul>
<li><a
href="http://people.FreeBSD.org/~obrien/freebsd-sparc/src-981023.tar.gz">src-981023.tar.gz</a>
- early boot code (sun4u)</li>
</ul>
<h3>Documentation and White Papers</h3>
<ul>
<li><a href="http://www.sun.com/microelectronics/manuals/">Sun
Microelectronics Manuals</a></li>
<li><a href="http://playground.sun.com/pub/1275/home.html">Open
Firmware Home Page (Sun)</a></li>
<li><a
href="http://www.UNIX-systems.org/version2/whatsnew/datasize.html">Data
Size Neutrality</a></li>
<li><a
href="http://www.UNIX-systems.org/version2/whatsnew/lp64_wp.html">Why
LP64?</a></li>
</ul>
<h3>Other Links of Interest</h3>
<ul>
<li><a href="http://www.geog.ubc.ca/s_linux.html">Linux for SPARC
Processors</a></li>
<li><a
href="http://www.NetBSD.org/Ports/sparc/">NetBSD/SPARC</a></li>
<li><a
href="http://www.OpenBSD.org/sparc.html">OpenBSD/SPARC</a></li>
<li><a href="http://www.firmworks.com/">FirmWorks</a></li>
</ul>
<hr noshade>
<h3><a name="history">Port History</a></h3>
<p>The FreeBSD/Sparc64 platform port was initiated by Jason Evans in 1997.
Originally, the port was backed by Sun Microelectronics, but they
have since backed out. This is quite interesting, given <a
href="http://www.sun.com/smi/Press/sunflash/1999-12/sunflash.991214.1.html">this
press release</a> from Sun, which announces that RedHat Linux 6.1
can now be purchased and shipped with a new UltraSPARC server or
workstation. Sun joined Linux International in May 1998, shortly
after Jason announced that he would no longer be working on the port
in an official capacity. Jordan Hubbard, the FreeBSD release
engineer, responded to <a
href="http://docs.freebsd.org/cgi/getmsg.cgi?fetch=0+0+archive/1998/freebsd-sparc/19980405.freebsd-sparc">Jason's
post</a> suggesting that somebody needed to take the reins.</p>
<p>FreeBSD/Sparc64 didn't die, however disheartening the news of Sun's
retreat was. The mailing list did go on hiatus for a while while
several people working on coding. Late in October 1998, a source
code tarball was made available.</p>
<p>Paolo Di Francesco was the next "father" of the port. Paolo
attempted, for the first time in the history of the port, to
organize information, developers, and tasks into a structure that
can only be known as project management. If not for the 98-99
holiday season and a few overspoken individuals on the mailing list,
Paolo would have continued on. During his tenure, a number of
people stepped up to work on the older Sun SPARC architectures.
This did cause a slight chasm in the project, and many of the more
qualified individuals were on the side of the UltraSPARC family of
machines. Luckily, this didn't end up a period of quiet on the
mailing list, as Telecom Italia provided us with a list keep-alive.
A glitch in their system caused one of Paolo's posts to keep coming
back and back and back and back... This repeat post continued well
into 1999, when the list did once again become mostly silent.</p>
<p>This brings us up-to-date. David O'Brien had been itching for a
long time to start work on the port, but was waiting for some sort
of direction. As the months dragged on into 2000, he decided that
nobody was going to accept the challenge if he didn't. As to the
port status, nothing much has changed since the early boot code
release of October 1998. The rest of the port history is best
expressed by Jason Evans, and can be found <a
href="#status">here</a>.</p>
<hr noshade>
<h3><a name="status">Port Status</a></h3>
<blockquote>
<p><i>While reading this, keep in mind it is from 1997 or 1998.
This information is pulled from the original FAQ, written by Jason
Evans.</i></p>
</blockquote>
<p>The Sparc64 platform port is in it's infancy. We've done a good bit of
research into what needs to be done in order to make FreeBSD/Sparc64 a
reality, but the vast majority of the work has yet to be done.</p>
<p>Here's a short history of what led up to this porting effort. Sun
Microelectronics (SME) is the part of Sun that makes
microprocessors. Up until now, SMCC (the part of Sun that makes
workstations) has been the overwhelmingly primary customer of SME.
SME naturally wants to expand its sales, and to do that, they need
to sell CPUs to people outside of Sun. FreeBSD is perceived as
being a way of accomplishing this.</p>
<p>To understand why Sun could fund a FreeBSD port, which would seem
to conflict with Sun's Solaris offerings, you need to realize that
Sun is broken up into separate business units that often
<strong>compete</strong> with each other. The Solaris people at Sun
may not like having a FreeBSD port to compete with, but their power
to prevent it is somewhat diminished due to the business model. Of
course, if the FreeBSD port were a major threat, SMI (the main Sun
umbrella company) would put a stop to it. However, this is
unlikely, since FreeBSD mostly meets the needs of a different market
sector than Solaris. Solaris does wonderful things on big MP
servers. FreeBSD is fast and lean for small servers. It is also
useful for certain types of embedded applications, which is actually
the main reason SME is interested in seeing a port of FreeBSD to
UltraSPARC.</p>
<p>A while back, SME approached the FreeBSD core team and offered
monetary compensation of some nature (I don't know the details) in
exchange for an official UltraSPARC port. The core team turned down
this offer. Once again, I don't know details, but one of the main
statements made (actually somewhat inferred) by Jordan Hubbard was
that SME's offer was not of major interest since to be of long term
use to FreeBSD, such a proposal would need to include support for a
number of years from someone internal to Sun.</p>
<p>Jordan's statement makes a great deal of sense. I've traced down
documentation in preparation for this port that people external to
Sun would have had a difficult, perhaps impossible time procuring.
Without such access, it is very difficult to make continual progress
on such a project.</p>
<p>Now it's time to mingle some of my background into this narrative.
I started working at SME in September of 1997. During my first
week, I caught wind of the negotiations SME was making with the core
team. I expressed extreme interest in working on the project.
Through a bit of persistence (and the failure of the proposal made
by SME), I was given permission to begin work on the port.</p>
<p>My other duties at SME include finding information for software
vendors who are porting their OSes/RTOSes to the UltraSPARC. This
puts me in a good position to gather hardware information pertinent
to the FreeBSD port.</p>
<p>So here's the catch. I have access to documentation, a machine to
develop on, but very little low-level OS or hardware experience. I
learn quickly, but I've got a lot to learn. Already several people
have been able to help me grasp concepts that are key to porting
FreeBSD, but there is much, much more to learn.</p>
<p>So, I can use the following types of help (not exclusively, of
course:</p>
<ol>
<li>Answer my questions about kernel and hardware details. For
example, I have documentation on the MMU, but have never actually
dealt with one, so John Dyson has volunteered to get me through
the rough spots having to do with memory management, as well as
discussing design issues due to the difference in nature between
PCs and Suns.</li>
<li>Actually write code.</li>
<li>Various administrative things, such as a web page, bug tracking,
FAQ, etc.</li>
<li>Whatever you can do to help.</li>
</ol>
<hr noshade>
<h3><a name="faq">Frequently Asked Questions</a></h3>
<ol>
<li><a href="#1">What happened to the old FAQ?</a></li>
<li><a href="#2">What is the status of the port?</a></li>
<li><a href="#3">What machines will FreeBSD/Sparc64 run on?</a></li>
<li><a href="#4">Does FreeBSD/Sparc64 support device X?</a></li>
<li><a href="#5">Will FreeBSD/Sparc64 run Solaris/SunOS binaries?</a></li>
</ol>
<h4><a name="1">What happened to the old FAQ?</a></h4>
<p>It's right <a
href="http://people.FreeBSD.org/~obrien/freebsd-sparc/oldfaq.html">here</a>.
The old FAQ is SME-centeric, and sun4u-specific. These traits do
not reflect the current state of the port, since SME has pulled
their official support from the port and the majority of the
development equipment now consists of older Sun SPARC hardware.
Furthermore, there haven't been a lot of frequently asked questions
of late. Most of the items in the old FAQ date back to before the
mailing list was being archived.</p>
<h4><a name="2">What is the status of the port?</a></h4>
<p>While we're in the early stages, and to help keep people interested
in the porting effort, you can view the <a href="#status">status</a>
online.</p>
<h4><a name="3">What machines will FreeBSD/Sparc64 run on?</a></h4>
<p>Currently? None. The port is a long way away from running on
anything. We have plans to support every machine we can. It is
safe to assume that FreeBSD/Sparc64 will run on at least all PCI / IDE
based workstations. </p>
<h4><a name="4">Does FreeBSD/Sparc64 support device X?</a></h4>
<p>See <a href="#3">question #3</a>.</p>
<h4><a name="5">Will FreeBSD/Sparc64 run Solaris/SunOS binaries?</a></h4>
<p>It is reasonable to say that FreeBSD/Sparc64 will provide some
Solaris/SunOS emulation. It is too early in the life of the port to
answer this any more specifically.</p>
&footer;
</html>