powerpc开发环境_Apple PowerPC硬件上用于Java技术的IBM开发人员工具包

IBM为运行在IBM POWER和PowerPC硬件上的Linux发行版的Java技术提供了多种版本的开发人员工具包和运行时环境。 也就是说,在IBM eServer™iSeries™上运行的Linux发行版,包括eServer i5; eServerpSeries®,包括eServer p5; eServer BladeCenter™JS20; 和eServer OpenPower™。

存在许多为POWER或PowerPC硬件创建的Linux发行版,例如:

  • CRUX PPC
  • Debian Linux
  • Gentoo Linux
  • Mandrakelinux
  • 黄狗Linux
  • ROCK Linux
  • 红帽企业Linux
  • SUSE LINUX企业服务器

列举一些领先的发行版。

IBM JVM并非旨在支持现有Linux发行版与所有PowerPC硬件的所有可能组合,其中某些不是IBM设计的。 因此,当在Apple PPC硬件的Linux发行版上运行时,IBM eServer iSeries,eServer pSeries或eServer OpenPower上的Linux开发人员套件或Linux上的运行时环境的兼容性取决于特定Linux发行版与特定Apple硬件的组合。 。

有关Java技术的IBM开发人员套件与Linux的IBM POWER和IBM PowerPC硬件的兼容性的更多信息,请参阅LinuxIBM开发人员套件:经过测试的平台Linux开发人员IBM开发人员下载页面。

与运行在Apple PowerPC硬件(例如G3,G4和G5处理器)上的Linux发行版捆绑在一起的Java环境的可用性和规格差异很大。 有些根本不提供任何JDK或JRE,而有些则仅提供JRE。 如果为Apple PPC硬件发行版的特定Linux提供了JRE和/或JDK,则JRE和/或JDK可能不是用户特定目的所需的版本。

在Linux上使用适用于Java POWER的IBM开发人员工具包用于IBM POWER和在Apple PPC硬件上使用IBM PPC硬件

要使用Apple PPC硬件上的IBM POWER和IBM PPC硬件的Java技术的IBM开发人员工具包或运行时环境,您需要知道系统具有哪种类型的主机处理器(G3,G4或G5)。 您还需要知道JVM是否正确确定了主机处理器体系结构,以便JIT编译器可以为该体系结构生成正确的指令集。

为了生成主机处理器指令的确切集合,JIT编译器需要精确确定基础处理器的体系结构类型。 如果无法确定处理器类型(可能是因为不支持),则JIT会针对该特定JVM版本中的默认处理器设置生成一组指令。 为默认处理器生成的指令可能不在主机处理器可以理解的指令集中。 由于将非法指令传递到处理器以执行,这将导致JVM异常终止-SIGILL崩溃。 完全禁用JIT意味着JVM将以纯解释性模式运行应用程序的Java字节码。 最终的性能很可能不会令人满意。 试图跳过某些JIT编译为不属于主机处理器理解的ISA指令的某些ISA指令的方法的基本JIT编译几乎没有任何意义。 JIT调试通常是一个复杂且耗时的过程。 即使可以强制将所有方法在首次加载到JVM中时都进行JIT编译,但是很难预测在执行任何中等复杂的Java应用程序的过程中何时以及将哪些方法加载到JVM中。

为了让JIT编译器确定正确的处理器类型,请使用systemcfg_init()函数检查系统配置信息。 如果该函数返回NULL,则将分析和检查/ proc文件系统中的/ proc / cpuinfo文本文件。 某些Linux发行版在/ proc文件系统中没有cpuinfo文件。 使cpuinfo在/ proc文件系统中可用可能是一种解决方案。

即使正确确定了处理器类型,JIT可能也没有为非支持的处理器生成PPC指令子集的规定。 一个例子是苹果G4处理器,摩托罗拉7400,它通常被归类为PowerPC 700系列。 IBM JVM的JIT编译器不支持此处理器。 解决方案是指示JIT生成一组PowerPC 604指令。 PowerPC 604是最早的PowerPC处理器之一,其指令构成了任何PowerPC处理器的指令的核心子集。 换句话说,每个PowerPC处理器都应该能够执行基本PowerPC 604指令。 将全局变量JITC_PROCESSOR_TYPE设置为“ 6”应该指示JIT生成G4应该能够执行的PowerPC 604指令。

表1显示了JITC_PROCESSOR_TYPE变量的可能值,以及它们如何与各种POWER和PPC处理器体系结构对应。

表1. JITC_PROCESSOR_TYPE值及其POWER / PPC体系结构的相关性
电源/ PPC芯片
1个 电源(RS1)
2 电源I(RSC)
3 力量II
4 PPC 601
5 PPC 603
6 PPC 604
7 PPC 620
8 PPC 630 /电源III
9 明星电源RS64
10 明星电源RS64II
11 明星电源RS64III
12 电源4
13 电源4+
14 电源5

结论

通过了解特定系统的处理器类型,您可以决定为JITC_PROCESSOR_TYPE设置什么值,以使库存的IBM JVM for Linux发行版的IBM Power和IBM PPC硬件可以在Apple硬件的Linux发行版上工作。 您还可以查看是否无法确定或不支持处理器类型。

如果用于IBM POWER的IBM JVM for Linux发行版和IBM PPC硬件可以识别主机处理器并支持该处理器的指令集,则这将不是必需的。 例如,在Apple G5上运行Yellow Dog Linux版本3或4时,上述都不是必需的,因为Apple G5基于IBM PowerPC 970处理器,而该处理器又基于IBM POWER4芯片的单核版本。 IBM JVM JIT可以为此生成指令。

词汇表

i5 -IBM eServer i5是使用POWER5处理器的下一代iSeries。

ISA-指令集体系结构。

iSeries-基于POWER架构的IBM集成服务器。

JDK -Java开发套件。 JRE的超集。 包括JRE和开发工具,例如编译器,调试器和其他工具。

JIT -同JITC。

JITC-即时编译器,可将Java字节码转换为主机体系结构的本机代码。

JRE -Java运行时环境。 JDK的子集。 不包括开发工具。 提供JVM以运行在其他地方编译的Java字节码。

JSDK -Java软件开发套件。 该缩写可与SDK和JDK互换使用。

JVM -Java虚拟机。

NPTL-本机POSIX线程库。 NPTL为Linux带来了企业级线程支持,远远超过了LinuxThreads提供的性能。 它基于用户线程与内核线程之间的1:1比率。

OpenPower-针对Linux调整的基于IBM POWER5微处理器的系统。

p5 -IBM eServer p5是使用POWER5处理器的下一代pSeries。

电源 -使用增强的RISC架构进行性能优化。 IBM eServer pSeries,iSeries和OpenPower服务器的通用芯片体系结构的名称。

POWER3-入门级pSeries服务器当前可用的POWER芯片之一。

POWER4 -POWER4体系结构在广泛的商业和高性能计算环境中具有卓越的性能。 基于POWER4的iSeries和pSeries服务器支持动态逻辑分区。

POWER4 + -也称为POWER4-II。 升级POWER4可以在更高的频率下以更低的功耗工作。

POWER5-当前最新可用的POWER芯片。 像POWER3和POWER4一样,POWER5技术统一了POWER和PowerPC架构。 它具有通信加速,芯片多处理和同步多线程(SMT)的功能。

PowerPC-从POWER派生的硬件体系结构。

PPC -PowerPC的缩写。

pSeries-在基于IBM POWER的硬件上运行AIX和/或Linux的基于IBM UNIX的服务器。

RHEL-红帽企业Linux。

RISC-精简指令集计算机。

SDK-软件开发套件。 缩写可以与JDK和JSDK互换使用。

SLES -SUSE LINUX企业服务器。

SR-服务刷新。


翻译自: https://www.ibm.com/developerworks/systems/library/es-apple.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值