Sony PS3 Q+A (Leaked)

GregLee said:
Much of this discussion assumes that the Linux supplied with the PS3 will be some version of the Linux kernel developed by IBM for the Cell. How do we know that? From the comments about the PS3 running operating systems as applications, I've been thinking in terms of a Linux running SPE code, with the Sony hypervisor running in the PPE and providing access to the display and other hardware to Linux through subroutine calls. Couldn't it be done that way? If it were, the user Linux might turn out to be much less capable. It might not even be able to do graphic output to the screen.

I don't know. What does YellowDog use for the Mercury Cell systems ?

If Sony were to dedicate a team of Linux guys to create and evolve its very own Linux kernel + supporting tools in an on-going basis, the $$$ has to be recovered somehow. Tyically it would mean that Sony needs the functionality for its own services/apps. Otherwise, that's a lot of investment.

Without much info, I'm just assuming the path of lowest resistance to bring PS3 Linux to the market based on Sony's statements. Certainly, this does not tell us much about how it will behave.
 
SPM said:
You can do it the other way around of course or both ways, but when someone is playing a game on the PS3, you would need to shut down Linux on the PS3 to get enough resources to run the game, so you would lose your connection. If this isn't a problem then you can do that. Stuff you run on the Linux PC will always run uninterrupted so long as you don't switch the PC off.

Yes, I assumed PS3 is only powerful enough to run Linux or PS3 OS in a mutually exclusive fashion. Perhaps one can pause/snapshot the Linux image and re-animate it later after the game session ?

Although it may be a computer, PS3 is most likely not meant to replace a general purpose PC.
 
GregLee said:
Much of this discussion assumes that the Linux supplied with the PS3 will be some version of the Linux kernel developed by IBM for the Cell. How do we know that? From the comments about the PS3 running operating systems as applications, I've been thinking in terms of a Linux running SPE code, with the Sony hypervisor running in the PPE and providing access to the display and other hardware to Linux through subroutine calls. Couldn't it be done that way? If it were, the user Linux might turn out to be much less capable. It might not even be able to do graphic output to the screen.

The Linux kernel is the same on every Linux machine. The only difference is the target processor it is compiled for and the compile options, and the optional modules that are compiled into the kernel either monolithically or as dynamically loadable modules. I don't know how different the PPE is to the PPC in terms of bytecode execution compatibility, but if it isn't then it may not run. You can get this problem with the ix86 architecture say if you pick certain compiler options that output P4 code which doesn't guarantee backwards compatibility with PIII processors for example.

The PPE will have to be timeshared by both hypervisor and Linux. The SPEs would probably be allocated to one or the other because of the expense of the context change. The SPE reserved for DRM would be locked out so they run specific code as might other SPEs.
As far as Linux running under the hypervisor is concerned, think of Windows running under VMWare (except it will run at native speeds). With VmWare, you have full control over Windows, but Windows runs in a fake environment and doesn't touch the real hardware, although it thinks it does. Linux on the PS3 will access the external world (screen, Hard drive, BD drive USB ports etc.) via the hypervisor. Sony can say restrict or control the access to BD drive and screen while allowing unrestricted access to the hard drive and USB ports. DRMed stuff stored on hard drive or USB can be stored encrypted, only decryptable by the SPE reserved for DRM.
 
patsu said:
Yes, I assumed PS3 is only powerful enough to run Linux or PS3 OS in a mutually exclusive fashion. Perhaps one can pause/snapshot the Linux image and re-animate it later after the game session ?

Although it may be a computer, PS3 is most likely not meant to replace a general purpose PC.

Some distros allow suspend to disk, but don't forget it is not you sitting in front of the PC who decides to switch to game playing - it is the guy downstairs in front of the PS3. You may not like getting kicked out whenever someone else has the inclination to play a game.
 
GregLee said:
Much of this discussion assumes that the Linux supplied with the PS3 will be some version of the Linux kernel developed by IBM for the Cell. How do we know that?

There is only one Linux kernel. As of version 2.6.16, it includes Cell support. All Linux distros include the kernel..if Sony were to write their own OS kernel it would no longer be Linux. There's no need to port the kernel to Cell if it already supports it.

GregLee said:
From the comments about the PS3 running operating systems as applications, I've been thinking in terms of a Linux running SPE code, with the Sony hypervisor running in the PPE and providing access to the display and other hardware to Linux through subroutine calls. Couldn't it be done that way? If it were, the user Linux might turn out to be much less capable. It might not even be able to do graphic output to the screen.

There's still a lot unknown about the Cell hypervisor in PS3, but it controls access to resources, and might allow multiple OSes to be run simultaneously (it may in fact be possible to "boot" linux on PS3 without a restart, by opening it in a new window via the "XMB OS", but that's just my speculative musing..). But that doesn't mean one would be able to use one resource, and the other not.

(While a game is running, obviously the only OS that can run would be the "XMB OS", or Cell OS as I think it's officially being called).
 
Last edited by a moderator:
SPM said:
If Sony put in loads of RAM and allowed you to use all six available SPEs, then developers might start developing quality games to run under PS3 Linux. Why not? They do it on the PC
I can't say I've noticed that in the PC space. I don't think I've seen much on the PC comparable with a full-fledged PS1 game, or even an Amiga game for that matter. They tend to be a little rough around the edges and lack depth or length, on the whole. When I check out the Indie annual awards, I see variety, but nothing in the same ballpark as the $millions titles developed by proper teams. When was the last time you saw an Indie game looking like Halo or MGS or FF of Zelda? Indie tech tends to be a generation at least behind current tech. That might change a little on a closed platform, as PC indie needs to cater for the largest range of machines. But I doubt many Indie's will be able to scrape together the talent for long enough to make anything to rival HS or Ff or Warhawk or Motorstorm. It'll be limited to smaller games, quirky platformers, cartoony looks aplenty (because it's cheap!), and nothing particularly complicated like well animated human characters. You can't make these games cheap, otherwise no-one would be complaining about the increasing costs of next-gen development, and that means there will a class gulf between games on disc and Linux indie creations on PS3. If you're happy playing those simpler Indie titles and with them, don't care to play PS3's full titles, why did you buy a PS3?! Get those games on the PC and save yourself a fortune!
 
SPM said:
The Linux kernel is the same on every Linux machine. The only difference is the target processor it is compiled for and the compile options, and the optional modules ...
Yes. I was suggesting that the target processor for the PS3 user Linux might be SPE rather than PPE. The SPE instruction set is sufficient, I gather (from the Programmer's Guide), to compile C/C++ code into; Linux is written mostly in C; so ...
 
Titanio said:
There is only one Linux kernel. As of version 2.6.16, it includes Cell support. All Linux distros include the kernel..if Sony were to write their own OS kernel it would no longer be Linux. There's no need to port the kernel to Cell if it already supports it.



There's still a lot unknown about the Cell hypervisor in PS3, but it controls access to resources, and might allow multiple OSes to be run simultaneously (it may in fact be possible to "boot" linux on PS3 without a restart, by opening it in a new window via the "XMB OS", but that's just my speculative musing..). But that doesn't mean one would be able to use one resource, and the other not.

(While a game is running, obviously the only OS that can run would be the "XMB OS", or Cell OS as I think it's officially being called).

T.... do you work for Sony?:?:
 
GregLee said:
Yes. I was suggesting that the target processor for the PS3 user Linux might be SPE rather than PPE. The SPE instruction set is sufficient, I gather (from the Programmer's Guide), to compile C/C++ code into; Linux is written mostly in C; so ...

That's what I thought you meant, but it seems like an overkill and I can't really place the ROI. You could be right, but I think it's less likely than just going with an existing kernel that runs on Cell already.
 
GregLee said:
Yes. I was suggesting that the target processor for the PS3 user Linux might be SPE rather than PPE. The SPE instruction set is sufficient, I gather (from the Programmer's Guide), to compile C/C++ code into; Linux is written mostly in C; so ...

Linux doesn't use the SPEs directly. Linux uses the PPE and treats the SPEs as device files. To use the SPEs under Linux, you write Linux device drivers. You wouldn't ever want to run an OS on an SPE since you want to run program and data from the very fast local store as much as possible. On existing applications, the SPE will therefore be used to emulate accelerated hardware by replacing the X Window accelerated media drivers, Ageia PPU API, encryption/decryption libraries etc.

If you want Linux applications to use the SPEs other than by replacing existing APIs or drivers, you have to rewrite the applications themselves.
 
Sorry for bumping up an old thread,

I'm kind of late to the party on this (sorry about that.. busy, don't you know), but I wouldn't bet on native PPC/Linux apps to just run on PS3 Linux. I believe there are differences in ABI (some subtle, some not so subtle), and CELL has been assigned a different machine id within the ELF object format.

While I have no confirmed information on this, my guess is that applications would need to be built on a Sony-supplied PPU version of GCC, much like we have available as part of the PS3 SDK.
This guy could run a binary for Fedora 5 PPC on a Cell blade.
http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=739&thread=135031&cat=46

(But you have to recompile them to get good performance anyway
http://www-128.ibm.com/developerwor...reeDisplayType=threadmode1&forum=739#13868067 )
 
Back
Top