qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] qemu alpha?


From: J. Mayer
Subject: Re: [Qemu-devel] qemu alpha?
Date: Sun, 21 Oct 2007 13:06:43 +0200

On Sun, 2007-10-21 at 05:43 -0500, Rob Landley wrote:
> On Saturday 20 October 2007 3:56:12 am J. Mayer wrote:
> > On Fri, 2007-10-19 at 19:49 -0500, Rob Landley wrote:
> > > On Sunday 14 October 2007 5:14:27 am J. Mayer wrote:
> > > > On Sun, 2007-10-14 at 11:19 +0200, Oliver Falk wrote:
> > > > > Hi list!
> > > >
> > > > Hi you !
> > > >
> > > > > Just wanted to know how far the progress on alpha target is? I would
> > > > > be happy if I have some 'virtual alpha' to test new isos.
> > > > >
> > > > > If I can help some way (I have a few alphas around). Let me know.
> > > >
> > > > I'm happy to see someone interresting in improving Alpha support, which
> > > > is .... very alpha for now !
> > >
> > > I'm interested in testing Alpha too, but I haven't seem a
> > > qemu-system-alpha show up yet.  Alas, I have no hardware or specific
> > > expertise in this platform, I'm just trying to build and boot Linux
> > > kernels (and corresponding root filesystems) on as many emulated target
> > > platforms as I can.
> >
> > There are a lot of things missing for qemu-system-alpha to be available:
> > - the PALCode emulation is far from being complete or even usable
> 
> I have no idea what that is.

The PALCode is mainly equivalent to the microcode of most CPU
architectures. What is different to microcode is that is uses only
regular Alpha instructions, just adding 4 instructions to access special
"hardware registers" and access the memory with different priviledge
levels. Another main idea is that everyone can write its own PALCode
image and switch to it at run-time. Then, for example, the PALCode ABI
is not the same one if you run Linux or Windows NT. The PALCode handles
all complex operations. For example, the CPU provides only TLB and the
MMU tables search is actually implemented in software, in the PALCode.
This greatly simplifies the CPU design and allows a high level of
flexibility. And if your OS need a specific ABI for example to handle
CPU exception, you define your ABI, write the PALCode using Alpha insns
and use it ! The Alpha CPU also provide an instruction to do PALCode
calls from the OS or applications.
There are 3 (4 ?) "native" PALCode ABIs documented in the Alpha CPUs
specifications then those can be emulated at the host side in Qemu. It
is in fact needed to emulate a subset of the PALCode even to run
user-mode programs.

[...]

-- 
J. Mayer <address@hidden>
Never organized





reply via email to

[Prev in Thread] Current Thread [Next in Thread]