Wei's profilew3ishi's blogPhotosBlogLists Tools Help

Blog


    5/12/2008

    PS3上成功安装Linux

    前些日子买了台40g版的ps3,将硬盘升级为120g后又安装了linux,使用的是ydl6.0发行版。安装过程并没有什么特别,关于安装前对主机的设置,ydl的安装手册上也有说明。

    PS3使用的是IBM Cell BE处理器,由一个PPE和8(ps3上禁用了一个,所以只剩下7个可用的。)个SPE组成。PPE其实就是一颗双核3.2GHz的 PowerPC处理器。每个SPE包括:一个SPU,一个私有内存空间(256K),128个寄存器,每个寄存器128位,一个MFC(memory flow controller)。

    尝试着写了一些程序,初步印象感觉和在linux上使用affinity是差不多的,通过spe_create_thread()派生出指定绑定在某个spe上的线程。

    编译步骤需要注意的有:

    1.spe的入口程序使用spu-gcc来编译。

    2.spu-gcc编译好的.o文件需要用ppu-embedspu这个脚本来处理,之后才能与PPE的程序链接。

    3.ppe的程序直接可以用gcc来编译可以使用-lspe标志。

    4.需要指定程序是-m64还是-m32的,否则会出错。

    另外,如果安装的是ydl6.0,有可能会丢失ppu-embedspu.sh这个脚本,解决办法是配置好主机的Internet连接后,运行yum install *spu* *ppu*,会自动通过网络安装的相关的开发程序。

    如果只使用gcc并且不调用与cell be sdk相关的函数,生成的程序只是一个运行在Power PC处理上普通的程序。

    稍后我会尝试移植一些程序到这个平台。