121
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 14 Aug 2023
121 points (92.9% liked)
Linux
48335 readers
441 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
Virtualization is a specialization of emulation. to emulate something merely means to imitate. virtualization is still emulating a secondary PC environment. Saying virtualisation is not emulation is just fudging terms because people don't like the implication that the term "emulation" has. I recommend reading WINE's FAQ where even they admit that it would be more accurate to say "wine is not just an emulator". Virtualization is just a subclass of emulation.
this is a common misconception Most VMMs emulate GPU. virtualbox, vmware, wsa, and qemu all emulate GPU (or rather, technically a gallium driver) for opengl support on linux and even windows. as windows guests under virtualbox actually uses gallium nine/dxvk under the hood (perf is still crap somehow though). the technical breakdown for qemu would be [ host gpu <--> gallium <--> opengl <--> qemu pipe <--> virgl <--> gallium calls <--> opengl <--> application ]
vmware/vbox are slightly different as it's an accelerated backend to vmgfx but that too emulates a gallium backend on linux meaning it's doing ogl -> gallium -> ogl etc.... Hyper-v/wsa is the exact same situation as both. I don't believe that bluestacks and memuplay deviates from this greatly. though it's not something I have looked in depth into.
it wasn't until recently with virglrenderer venus for qemu/crosvm and hyper-v gpu-pv that we have gotten real API forwarding for VMs (technically android's cuttlefish also had it IIRC, but preformance was terrible when I played with it, hyper-v also had something but it was really bad too).
as for other forms of api forwarding, qemu-3dfx is a prime example of real "api forwarding" to an extent, rather it forwards 3dfx and opengl calls to the host. and you can have d3d support via wined3d.