OXMUK
Xbox One offers a total of eight gigabytes of RAM, a stupendous leap over its predecessor's 512 MB - but around three gigabytes of this is set aside for entertainment apps, system-wide Kinect features and communication tools like Skype, which run in parallel to games. Naturally, this has provoked a certain amount of upset among those who'd rather each and every byte of memory was set aside for the sole, exclusive purpose of (e.g.) rendering every fold in Batman's cape.
According to Xbox's director of development Boyd Multerer, however, that kind of all-or-nothing thinking simply isn't reflective of the myriad functionality players now expect of their consoles. Xbox One's operating system setup, he argued, is an attempt to reconcile this hunger for supposedly "peripheral" features with the stability developers require of console hardware. Speaking to us shortly before the console's reveal, Multerer explained Microsoft's thinking in greater depth: how it built Xbox One to have both a fixed games platform for developers to target, and something more flexible for rapidly-changing apps of the moment - rather than trying to cram the latter into the former, as with Xbox 360's unloved Twitter app.
A quick recap, for those who missed our Xbox One guide in May. The new console runs three "virtual machines", two on top of a third. The heftiest is a partition that's exclusively for games, which sits alongside a lesser Windows-derived partition that's exclusively for apps and system-wide features. Beneath these is a hypervisor that manages the distribution of hardware resources between the two. Running these virtual machines in parallel contrasts to older consoles like the PS2, where the hardware "literally reboots into the game which has its own operating system, which then takes over the entire machine".
Xbox One's gaming partition gets the "majority of the resources of the box", according to Multerer, and runs a "very thin" (that's to say, non-memory intensive) operating system - so "thin", in fact that games "pretty much sit right on top of the hardware", granting all but unfettered access to its capabilities. It gets the lion's share of the machine's processing power when games are playing, too - some 90%, according to Multerer - though the amount of memory available is fixed.
Meet the new crowd
Xbox 360 already divides its memory allowance, in order to run the dashboard Guide on top of games, but there's now much more pressure to save RAM for so-called "broader entertainment" and networking features. "The next generation gamer is not necessarily the gamer I was when I was getting into gaming," Multerer told us. "There are real differences, real changes that have happened since we began the last generation."
For one thing, most living rooms are now awash with portable entertainment hardware, from laptops to smartphones, and consumers are accustomed to running two or more of them at once - checking Twitter while sitting through a Call of Duty cutscene, for instance. Moreover, these devices are conduits to a vast, chaotic, relentlessly distracting universe of software and content.
"There has been an explosion of devices," Multerer went on. "There are phones, there are tablets, the whole way that people interact and that they live with devices has fundamentally changed. I walk around with a phone all time, everybody I know walks around with phones. The expectation of the next gen gamer is that these things are just there. It's a rapidly changing ecosystem of applications that sit on a rapidly changing ecosystem of devices - fundamentally different to the consoles of the past."
Players nowadays are above all multi-taskers, he said. "They're sitting watching a movie and they're texting all the time. I just didn't do that! It's not part of my life, right. But it's part of theirs. They don't even think about it, of course they're connected to their friends. Of course they're using services, of course they're being social. They're going through these large experiences and they're constantly multitasking."
Balancing predictability and novelty
The aim with Xbox One is to facilitate and support all these assorted distractions by way of the console itself, such that you aren't obliged to get up to switch inputs on your TV, or browse your tablet for a wiki page when watching the new Game of Thrones. Movie and TV channels are "seamlessly" available at the touch of a button or a voice command, with no pause to switch off one set of features and enable the other, and phones can be tethered to the machine, automatically offering up complimentary features such as mini-maps or Friends lists.
Hence the decision to set aside a dedicated chunk of memory for such features - but this isn't just necessary to ensure that, for instance, Skype videochats are possible wherever you are in the system. It's necessary to protect creators from the instability that's now a characteristic of digital consumption.
Game development has never been more costly, thanks in particular to demand for HD-worthy, high quality art, fit to be seen on TVs that now stretch across entire walls. As you may know if you've bought a first-person shooter in the past 18 months, this has bred extraordinary caution on the part of bigger publishers and developers.
"When you're thinking about making a triple-A game, and you're looking at a budget that says you'll have spent a hundred million dollars before you sell your first copy, you've got to think really hard about getting the maximum impact for the dollar you're spending," said Multerer.
"That hundred million dollar budget, most of it is going into art," he added. "You look at a game team today and you'll see ratios along the lines of, say, 20 people writing code, maybe fifteen, fifteen to twenty people writing code, 800 people making artwork. Spread around the world, multiple countries, the money goes into the artwork, the stress goes into the artwork."
The problem with this demand for ever prettier art assets is that it's increasingly hard to reconcile with the aforesaid player lust for volatility - both for new software and for the perpetual updating and expansion of that software. Games that are optimised for a certain memory setup may be threatened by the introduction of a new app, as Multerer proceeded to illustrate.
Pleasing everybody
"We find ourselves in a position where if we want to change the [Application Programming Interfaces] and make a bigger buffer or talk to a service that has slightly different requirements, and we need 10 more bytes of RAM - 10 bytes - some game is going to start crashing. We have to be extremely careful and offer up a very predictable environment to the game developers to get the best games on your console."
Hence, Microsoft's decision to run apps and games in separate partitions, so that the two sets of requirements can coexist. "In the application world, what the next-gen gamer wants is lots of change. 'I want lots of apps, I want lots of services, I want to talk to services that may decide to change their APIs every couple of months or so, turn off old ones and expect all new ones' - but games don't work that way.
"You've got so much money invested in your art that if you had to rejig around what's in RAM at what time to make a bigger buffer that's a sizeable investment. A sizeable testing curve you have to go through and re-certify everything, that's quite difficult."
Multerer compared achieving this compromise to developing a first-person shooter. "When you're building a game, the word they use is balance. If you're making a shooter, you've got various weapons, they have various damage characteristics, you've also got armour and defences, they have various characteristics, and the game is the most fun when it's balanced.
"When this one weapon is too strong, it's too easy to beat the bad guys and it's not fun, when the defences are too strong and you're not hurting anyone it's no fun. You've got to have the right balance. We need to have the right balance in the next generation console to fit these needs."
Those still disgruntled by the withholding of RAM that might be devoted exclusively to sharper gun renders may be mollified by the following: those simultaneously-running apps could form part of the game in some way. Developer fondness for networked features such as DICE's Battlelog services shows no sign of abating, and it's possible the Windows-based partition might handle certain of these services in future.
"You start thinking of it like "ah, okay, the game developer could really focus on the 3D world, focus on the art and the money they put into it, have this look beautiful," mused Multerer, "While working with a set of apps over here that allows us to have different surfaces, hook into social systems, to add value beyond the 3D world of the game, flip back and forth quickly between them.
"And you end up with a vibrant, changing world that can handle the innovation and the pace of change over on the internet, all the start-ups, that sort of stuff - but can still work with the games, that need the predictability, that need the optimization, that need to make sure they're spending their money on the right things."
http://www.oxm.co.uk/59251/features/how-xbox-ones-operating-systems-work-why-splitting-the-ram-is-good-for-developers-and-gamers/?page=1











