NBI Platforms Recognition and Naming Proposal

A platform in NBI terms - is a concrete combination of hardware architecture (e.g. i386, x64, sparc, ppc, etc.), operating system family (e.g. Windows, Linux, Solaris, Mac OS X), operating system version (e.g. Windows Vista Home Premium), and, optionally, operating system "flavor" (e.g. Linux 2.6.18, Fedora Core 6).
This implies the existence of a developed system of code names for each of the parts that form the notion of platform. This document specifies the possible values for them and thus defines the set of platforms supported by the NBI engine. The intention is to support all possible major platforms. The code name for a concrete platform is the result of concatenating the code names for its parts in the specified order: {os-family}-{hardware-arch}[[[-{osVersion}[[-{osVlavor} | [-{os-version}[[-{os-flavor}]]] .

The following hardware architectures are recognized:

  • x86 - Intel/AMD, 32-bit
  • x64 - Intel/AMD, 64-bit
  • sparc - SPARC, both 32-bit and 64-bit
  • ppc - Power PC, both 32-bit and 64-bit (??)

The following operating system families are recognized:

  • windows
  • linux
  • solaris
  • macosx

The versions and flavors are dependent on the overlying hardware architecture and operating system family, thus they are specified in the overall platforms tree:

  • windows
  • windows-x86
  • windows-x86-xp
    • windows-x86-xp-home
    • windows-x86-xp-professional
    • windows-x86-xp-home_sp1
    • windows-x86-xp-professional_sp1
    • windows-x86-xp-home_sp2
    • windows-x86-xp-professional_sp2
  • windows-x86-vista
    • windows-x86-vista-home_basic
    • windows-x86-vista-home_premium
    • windows-x86-vista-business
    • windows-x86-vista-enterprise
    • windows-x86-vista-ultimate
  • windows-x64
  • windows-x64-xp
    • windows-x64-xp-professional
    • windows-x64-xp-professional_sp1
    • windows-x64-xp-professional_sp2
  • windows-x64-vista
    • windows-x64-vista-home_basic
    • windows-x64-vista-home_premium
    • windows-x64-vista-business
    • windows-x64-vista-enterprise
  • windows-x64-vista-ultimate
  • linux
  • linux-x86
  • linux-x86-2.6.18
    • linux-x86-2.6.18-fedora_core
  • linux-x64
  • linux-x64-2.6.18
    • linux-x64-2.6.18-fedora_core
  • linux-ppc
  • linux-ppc-2.6.18
    • linux-ppc-2.6.18-fedora_core
  • solaris
  • solaris-x86
  • solaris-x86-10
    • solaris-x86-10-belenix_0.5
  • solaris-x64
  • solaris-x64-10
  • solaris-sparc
  • solaris-sparc-10
  • macosx
  • macosx-x86
  • macosx-x86-tiger
  • macosx-x86-leopard
  • macosx-x64
  • macosx-x64-tiger
  • macosx-x64-leopard
  • macosx-ppc
  • macosx-ppc-tiger
  • macosx-ppc-leopard

Additionally, the engine defines the notion of a generic platform, which is active in case, when the platform is not recognized.

The platforms structure is hierarchical, i.e. if an application declares support for macosx, it is assumed that it supports all derivative platforms, such as macosx-ppc-tiger and macosx-x86-leopard.

Applications declaring support for the generic platform imply that they are platform-agnostic.

The same related to the platforms comparison. If the current platform is windows-x86-vista-business, the engine should return true for queries on whether the current platform is windows, windows-x86 and windows-x86-vista, in addition to comparing with windows-x86-vista-business directly. The logic for these comparisons is contained in the org.netbeans.installer.utils.helper.Platform class.

Build-Time Platforms

For build-time, the platforms (which are used for building native components) are a subset of the run-time platforms. Specifically, only the operating system family/hardware architecture is recognized: windows-x86, windows-x64, linux-ppc, etc.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo