2DJGAME! NOVO

標題: [PS3]在PlayStation3上运行Linux不仅仅是玩具 [打印本頁]

作者: bt12345678    時間: 2008-04-23 11:32
標題: [PS3]在PlayStation3上运行Linux不仅仅是玩具
A9论坛!
当索尼首次宣布 PlayStation 3 将能够直接运行 Linux 的时候,非常令人兴奋。最初,直接安装 Linux 会有些困难。PS 3 支持的安装程序运行自定义脚本,手工将 Fedora Core 5 或 6 安装 DVD 改造成使用特殊 PS3 内核运行的系统。人们花了许多时间来让其他系统(例如 Ubuntu)工作。Terrasoft 的黄狗(Yellow Dog)Linux 带有真正能在 PS3 上运行的图形安装程序。


          随着时间流逝,许多事都已经发生了变化。现在能够将 Fedora 7 直接安装到 PS3 上,安装过程最难的部分就是,选择 PS3 的存储驱动器以便让它能够找到安装 DVD,还要记得在初始安装命令行中指定视频模式以便能够看到安装程序。


          所以,在 PS3 上是能够运行 Linux 的。问题是目前运行得还不太好。如果将 PS3 作为便宜的 Cell 开发系统,那么您肯定会有点失望地发现:执行默认安装过程之后,在进入 shell 提示符之前就已经用去了数百兆甚至更多的交换空间。

          获取 Fedora 7(Fedora 8 可能也适合,但在写作本系列的时候,我手上用的是 Fedora 7)。显然,如果使用经过专门调优的或者针对小巧和效率进行构建的发行版,那么可能会得到更佳的效果,但是 Fedora 7 有一个巨大的优势:它受 Cell/B.E. SDK 支持(也支持 RHEL 5.1,但对 Fedora 7 的支持更好)。

          PlayStation 2 也能运行 Linux,但是比较麻烦。为此,索尼发布了专门的工具包,但是只能在更早的厚重的 PS2 机器上运行,而且要求使用附加硬盘。不支持后来的(更普遍的)“苗条” PS2 机器,所以这个工具包很快就消失了。但是,它消失的主要原因是它几乎只是个概念证明;PS2 系统上没有足够的内存,也没有专门的编译工具,CPU 只是标准的 MIPS 内核。除了索尼专用的工具之外,矢量单元没有得到广泛支持,也没有充足的文档。


        对比之下,在 PS3 推出之前,就已经有运行 Linux 的支持,而且索尼还大量提供了支持代码和支持包。在系统发布前后推出的 “Cell addons” 光盘上包含对 Fedora 5 和 6 的直接支持,而且还提供了其他 Linux 发行版开发 PS3 移植所需的所有文件。所以,不用单独的光盘就能在 PS3 上运行 Fedora 7,不过仍然需要从索尼下载并安装引导加载程序。增值软件光盘(请参阅 参考资料)将继续用新版内核进行更新。


理解 hypervisor


          PS3 的基本规格是 256MB 主内存,一个 Cell/B.E. 处理器,有线以太网卡(有些型号上有 802.11b/g 无线网卡),称为 RSX 的图形处理单元(自带 256MB 内存)和一块 SATA 硬盘。还有些外部设备,包括 USB 端口、蓝牙,某些型号上还有读卡器。但是,这并不是运行 PS3 Linux 的机器。


          在 PS3 上,Linux 在 hypervisor 控制下运行 — 实际上,PS3 Linux 是在与 Xen 类似的虚拟机上运行的。hypervisor 提供了对 PS3 硬件的受约束和经过过滤的访问。例如,Linux 代码不能直接访问 RSX 图形处理器,但是可以使用其提供的专门设备对 RSX 进行有限访问,从而实现不错的 2D 帧缓冲效率。


          hypervisor 提供了许多转换。例如,正如前面提到的,hypervisor 为 Linux 提供了一个虚拟的帧缓冲设备,是 hypervisor 随后用 RSX 图形内核实现的。类似的,Linux 不能访问 SATA 硬盘,只能访问 SCSI 驱动程序,由后者映射到内部驱动器中分配给 “其他操作系统” 分区的区域。不能从物理上访问 PS3 游戏软件使用的磁盘部分。


          网络硬件可能是最有趣的部分。PS3 Linux 既能够访问千兆以太网络,也能够访问 802.11g 无线网络,但不能同时访问。在配置网络接口时,如果用 SSID 将其指定为无线接口,那么 hypervisor 就使用无线接口,否则使用有线接口。


          下面我们讨论修订的规格。PS3 Linux 在虚拟机上运行,虚拟机有一颗带 6 个 SPE 的 Cell/B.E. 处理器,大约 212MB 主内存,一个网络接口,一个 SCSI 磁盘(如果有读卡器,则会有更多 SCSI 磁盘),一个 SCSI 设备(可能是 DVD-ROM、CD-ROM,也可能是蓝光光驱),USB 和蓝牙端口。图形是通过特殊的帧缓冲设备提供的,支持各种视频模式(请参阅 理解消费者电子视频模式)。


规划开发环境


      为了更好地利用 PS3 进行开发,首先要确定需要什么样的开发环境。如果愿意完全取消 X,那会节省大量内存(Fedora 默认运行 Gnome,这可能不是最省内存的策略)。许多系统设置工具都可以通过 X 访问,但是运行的时间很长。我在 Gnome 下运行图形包更新程序时花了几个小时才完成。这可能是因为该过程总共需要 375MB 的内存,严重超出了可用的物理内存。大多数时间都花在等待交换磁盘上,就像 VAX 上的 Emacs 一样。


    由此得到的教训是:可用内存将是 PS3 上的最大弱点。请尽快关闭那些不需要的服务。用 xterm 代替 gnome 终端。如果需要多个窗口,可以考虑运行 screen 而不是多个 xterm。


显示选项


      如果只是玩玩,那么不用对这些问题太过担心。但是如果在运行的时候需要查看显示结果,那就需要考虑显示选项。PS3 的 HDMI 输出质量最好。如果有计算机监视器,那么 HDMI 转 DVI 线很便宜,但是要确定监视器支持高带宽数字内容保护(High-bandwidth Digital Content Protection,HDCP)。如果监示器不支持,那么只会看到一个黑色屏幕,或者可能是一片明亮的彩色状态。如果正在使用 KVM 开关,请注意开关也必须支持 HDCP!不幸的是,似乎无法关闭这项 “功能”;无法得到未加密的信号。虽然这种做法是为了保护高清晰电影,但是查看 X 桌面也需要特殊许可还是有点讨厌。HDMI/DVI 支持 PS3 提供的每种视频模式,包括消费者电子模式(例如 720p)和 PC 模式(例如 WXGA)。


    如果没有 HDCP,也没有支持 DVI 的监视器,那么只能改用分量视频。大多数电视都接受分量视频,有些计算机监视器也支持。分量视频的效果与早期的 VGA 类似,只是它带有三个 RCA 连接器,一个输出红色,一个输出绿色,一个输出蓝色。分量视频线要单独收费 — 不过与 PS2 的分量视频线相同,如果有 PS2 的线,可以继续用。分量视频支持 720p 和 1080i 显示,但是可能不支持 1080p(如果不知道这些是什么,请参阅 理解消费者电子视频模式)。分量视频提供的分辨率和清晰度比下面两个选项高。


      如果没有分量视频,那么可以使用支持 S-video 的设备。S-video 支持 480i,但是要将信号分解到两个独立通道中,一个通道传输亮度,一个通道传输色度(即 “亮度” 和 “颜色” )。他的清晰度比最后一个选项 —— 复合视频 —— 要好些。复合视频是旧式的 RCA 接头,通常是黄色,几乎与任何电视兼容。如果能不用复合视频,就不要用。


    当索尼首次宣布 PlayStation 3 将能够直接运行 Linux 的时候,非常令人兴奋。最初,直接安装 Linux 会有些困难。PS 3 支持的安装程序运行自定义脚本,手工将 Fedora Core 5 或 6 安装 DVD 改造成使用特殊 PS3 内核运行的系统。人们花了许多时间来让其他系统(例如 Ubuntu)工作。Terrasoft 的黄狗(Yellow Dog)Linux 带有真正能在 PS3 上运行的图形安装程序。

    随着时间流逝,许多事都已经发生了变化。现在能够将 Fedora 7 直接安装到 PS3 上,安装过程最难的部分就是,选择 PS3 的存储驱动器以便让它能够找到安装 DVD,还要记得在初始安装命令行中指定视频模式以便能够看到安装程序。

    所以,在 PS3 上是能够运行 Linux 的。问题是目前运行得还不太好。如果将 PS3 作为便宜的 Cell 开发系统,那么您肯定会有点失望地发现:执行默认安装过程之后,在进入 shell 提示符之前就已经用去了数百兆甚至更多的交换空间。
    获取 Fedora 7(Fedora 8 可能也适合,但在写作本系列的时候,我手上用的是 Fedora 7)。显然,如果使用经过专门调优的或者针对小巧和效率进行构建的发行版,那么可能会得到更佳的效果,但是 Fedora 7 有一个巨大的优势:它受 Cell/B.E. SDK 支持(也支持 RHEL 5.1,但对 Fedora 7 的支持更好)。
    PlayStation 2 也能运行 Linux,但是比较麻烦。为此,索尼发布了专门的工具包,但是只能在更早的厚重的 PS2 机器上运行,而且要求使用附加硬盘。不支持后来的(更普遍的)“苗条” PS2 机器,所以这个工具包很快就消失了。但是,它消失的主要原因是它几乎只是个概念证明;PS2 系统上没有足够的内存,也没有专门的编译工具,CPU 只是标准的 MIPS 内核。除了索尼专用的工具之外,矢量单元没有得到广泛支持,也没有充足的文档。

    对比之下,在 PS3 推出之前,就已经有运行 Linux 的支持,而且索尼还大量提供了支持代码和支持包。在系统发布前后推出的 “Cell addons” 光盘上包含对 Fedora 5 和 6 的直接支持,而且还提供了其他 Linux 发行版开发 PS3 移植所需的所有文件。所以,不用单独的光盘就能在 PS3 上运行 Fedora 7,不过仍然需要从索尼下载并安装引导加载程序。增值软件光盘(请参阅 参考资料)将继续用新版内核进行更新。

理解 hypervisor

    PS3 的基本规格是 256MB 主内存,一个 Cell/B.E. 处理器,有线以太网卡(有些型号上有 802.11b/g 无线网卡),称为 RSX 的图形处理单元(自带 256MB 内存)和一块 SATA 硬盘。还有些外部设备,包括 USB 端口、蓝牙,某些型号上还有读卡器。但是,这并不是运行 PS3 Linux 的机器。

    在 PS3 上,Linux 在 hypervisor 控制下运行 — 实际上,PS3 Linux 是在与 Xen 类似的虚拟机上运行的。hypervisor 提供了对 PS3 硬件的受约束和经过过滤的访问。例如,Linux 代码不能直接访问 RSX 图形处理器,但是可以使用其提供的专门设备对 RSX 进行有限访问,从而实现不错的 2D 帧缓冲效率。

    hypervisor 提供了许多转换。例如,正如前面提到的,hypervisor 为 Linux 提供了一个虚拟的帧缓冲设备,是 hypervisor 随后用 RSX 图形内核实现的。类似的,Linux 不能访问 SATA 硬盘,只能访问 SCSI 驱动程序,由后者映射到内部驱动器中分配给 “其他操作系统” 分区的区域。不能从物理上访问 PS3 游戏软件使用的磁盘部分。

    网络硬件可能是最有趣的部分。PS3 Linux 既能够访问千兆以太网络,也能够访问 802.11g 无线网络,但不能同时访问。在配置网络接口时,如果用 SSID 将其指定为无线接口,那么 hypervisor 就使用无线接口,否则使用有线接口。

    下面我们讨论修订的规格。PS3 Linux 在虚拟机上运行,虚拟机有一颗带 6 个 SPE 的 Cell/B.E. 处理器,大约 212MB 主内存,一个网络接口,一个 SCSI 磁盘(如果有读卡器,则会有更多 SCSI 磁盘),一个 SCSI 设备(可能是 DVD-ROM、CD-ROM,也可能是蓝光光驱),USB 和蓝牙端口。图形是通过特殊的帧缓冲设备提供的,支持各种视频模式(请参阅 理解消费者电子视频模式)。

规划开发环境

    为了更好地利用 PS3 进行开发,首先要确定需要什么样的开发环境。如果愿意完全取消 X,那会节省大量内存(Fedora 默认运行 Gnome,这可能不是最省内存的策略)。许多系统设置工具都可以通过 X 访问,但是运行的时间很长。我在 Gnome 下运行图形包更新程序时花了几个小时才完成。这可能是因为该过程总共需要 375MB 的内存,严重超出了可用的物理内存。大多数时间都花在等待交换磁盘上,就像 VAX 上的 Emacs 一样。

    由此得到的教训是:可用内存将是 PS3 上的最大弱点。请尽快关闭那些不需要的服务。用 xterm 代替 gnome 终端。如果需要多个窗口,可以考虑运行 screen 而不是多个 xterm。

    注意,Fedora 7 安装程序实际上不能在 720p 下使用,除非采用它的文本模式。实际上,如果打算采用 PS3 作为开发系统,最好是使用更高的分辨率模式。Linux 系统适合于较大的显示器,Fedora 的窗口环境在低分辨率显示器上的效果非常差。而且,低分辨率显示 —— 特别是通过复合视频线传输时 —— 很难看清楚,界面非常模糊。

很强大的东东 
作者: sbvt    時間: 2008-04-23 12:48
PS3现在什么价位了??前些日子问过360,2800最低,不知道算不算便宜啊
作者: sejojoed    時間: 2008-04-24 17:47
这么专业的文章很难看懂啊,不过PS3要是像PC一样能插内存条就无敌了。
作者: wygoodboy    時間: 2008-04-24 20:25
太长了,不愿看。不过在游戏机上运行os有什么实际意义呢。
作者: luoylbtx    時間: 2008-04-25 11:15
[quote=sejojoed] 这么专业的文章很难看懂啊,不过PS3要是像PC一样能插内存条就无敌了。 [/quote]


这篇文章就是说,PS3可以运行UNIX或者LINUX系统,但是都不是直接控制物理设备的.运行的效果不理想,只在个别的项目上有优势.反正PS3也不便宜,用PS3去运行LNIUX系统,发神经了才去.
作者: dtheiji    時間: 2008-04-26 02:42
PS3本身就是一玩具...
作者: longjing007    時間: 2008-04-27 01:13
PS3又不是电脑...现在的组装电脑都比它便宜 没必要搞个系统吧
作者: siomliu    時間: 2008-04-27 02:21
啥时候运行个vista给爷们乐乐
作者: yeye1982    時間: 2008-04-27 12:18
能不能运行或者运行得流畅都无所谓,只要有经典游戏可玩就够了。但现在,我还找不出来。
作者: 6290872    時間: 2008-04-27 13:37
PS3已经到靠这些无聊的东西来吸引眼球吗? 没好游戏有P用啊
作者: bill4    時間: 2008-04-27 20:01
搞不太清楚PS3用不同的OS有什麼差異...
作者: ilovedamimi    時間: 2008-04-27 21:26
能运行什么程序并不重要,重要的是能有什么游戏好玩。




歡迎光臨 2DJGAME! NOVO (https://bbs4.2djgame.net/HOME/) Powered by Discuz! X2.5