A question for SPARC experts – did anyone use virtualization/hypervisors on SPARC v9/Sun4u machines, i.e. before the availability of Sun4v processors? If so, is there any sample code for a (ideally bare-metal "type 1") hypervisor available?

The only reference I found is a paper by Leon SPARC (v8) users who conclude that SPARC v8 should be classically (Popek/Goldberg) virtualizable using a trap- and emulate approach.

https://dl.acm.org/doi/10.1145/3584702

#SPARC #Sun #hypervisor #virtualization #UltraSPARC

I found a single source for SPARC v8 - the XtratuM hypervisor source for SPARC is available at https://github.com/Danoloan10/xm-sparc

Nothing for Sun4u so far...

GitHub - Danoloan10/xm-sparc: XtratuM for SPARC

XtratuM for SPARC. Contribute to Danoloan10/xm-sparc development by creating an account on GitHub.

GitHub
@me_ From what I recall, there was no commercially offered virtualisation at the time since the Sun-promoted way was to use hardware-based separation, e.g., used in the StarFire E10000 servers. They had a separate control node to reprogram the FPGA? hardware bus switch to create separated hardware domains on boot. The separation guarantees were stronger (i.e. no noisy neighbor problems since all compute, memory and IO was bound to a particular domain and not shared) but of course came with a very different price tag.
@me_ I’m not sure what you mean by hypervisor. The M5000 for instance has XSCF which allows for partitioning a system with domains. In other words carving out resources and assigning them into logical systems. This is not LDoms like you’d find on sun4v systems like the T-series systems. But abstraction of hardware like VMware I have never seen on SPARC. The closest I’ve seen though is kernel zones on Solaris 11.4, but that’s more of an OS virtualization thing.

@astade @me_ maybe I’m wrong, but domains a la M5000 are decidedly different than logical domains a la sun4v. Hence the writing on the tin with logical in the name.

My understanding is that (physical) domains happen at a circuit level while logical domains happen at a firmware level.

LDOM may be an evolution of (P)DOM. But they have significant differences.

I think that LDOM is more akin to VMware.