Valve’s SteamOS Compatibility Layers: Beyond Proton

▼ Summary
– Valve is integrating two new compatibility layers, FEX and Proton, to enable Windows games to run on the Linux-based SteamOS for the Steam Frame headset.
– FEX is an open-source emulator that translates x86 processor instructions to Arm chipsets, featuring binary recompilation and code caching to minimize performance stuttering.
– Valve has supported FEX developer Ryan Houdek since the project’s prototype stage in 2018, anticipating nearly a decade of work was needed for robust library support.
– Houdek acknowledged Valve’s early trust and funding, which allowed him to design the framework as a long-term, adaptable open-source project for various use cases.
– With FEX ready for the Steam Frame, Valve plans to expand SteamOS to other Arm devices, aiming to unify the adjacent ecosystem into a more general platform.
SteamOS compatibility has long been defined by Proton, the translation layer that enables Windows games to run smoothly on Valve’s Linux-based operating system. While Proton remains the cornerstone of this ecosystem, supporting the newly announced Steam Frame headset requires more than just existing technology. To expand its library reach, Valve is integrating two new compatibility layers into its architecture, with FEX standing out as a critical component for handling different processor architectures.
FEX represents Valve’s strategic adoption of fex-emu, an open-source initiative designed to emulate x86 instructions on Arm chipsets. What began in 2018 as a modest cross-platform experiment has evolved into a sophisticated tool featuring an advanced binary recompiler. This recompiler supports all modern extensions of the x86(-64) instruction set. According to Steam’s developer documentation, FEX leverages graphics libraries such as OpenGL and Vulkan to lower overhead. It also utilizes code caching techniques to significantly reduce stuttering, ensuring a smoother gaming experience on devices with different hardware foundations.
The relationship between Valve and the FEX project goes back to its earliest stages. Valve engineer Pierre-Loup Griffais revealed to The Verge last year that the company funded lead developer Ryan Houdek while fex-emu was still merely a prototype. At that time, Valve recognized that building a robust emulation layer would be a massive undertaking. Griffais noted that the team anticipated “close to a decade of work [would be] needed before [Fex-emu] would be robust enough people could rely on it for their libraries.”
Houdek acknowledged this early support in November last year, marking the seventh anniversary of the project. He emphasized the importance of Valve’s trust in his vision for the software’s longevity. “I want to thank the people from Valve for being here from the start and allowing me to kickstart this project,” Houdek wrote. “They trusted me with the responsibility of designing and frameworking the project in a way that it can work long-term; not only for their use cases but also keeping it an open project that anyone can adapt for their own use cases.”
With FEX now poised for integration into the Steam Frame, Valve is looking beyond the headset itself. The company is actively investigating how to port SteamOS to other Arm-based devices. Griffais recently told Rock Paper Shotgun that the Frame is helping pave the way for a broader strategy. “I think one of the things that we want to do, and that the Frame is kind of paving the way for, is just more general SteamOS for Arm, right?” he said. “There’s a bunch of devices where you could have a great experience running SteamOS on there, that are currently kind of this adjacent ecosystem that’s just a little bit different. But not really that different, in our opinion.”
(Source: Ars Technica)




