Java Solaris 加入Sun中国技术社区 我的社区 注册说明
 
JDK 6.0 API 中文版
 
 
 
 
Java API 文档中文版
为何使用 Solaris OS 作为开发平台?
 
By Janice J. Heiss, 3/9/08  

Solaris Express Developer Edition(SXDE)是 Sun 下一代 Solaris 操作系统的免费发行版(每季度发行一次),它为开发人员提供了卓越的特性、向后兼容性、质量开发工具、简单下载,以及一个繁荣的开源社区。

目录

概述
 

Solaris Operating System (Solaris OS) 提供了一个功能强大、稳定的环境和一个新的现代化安装程序,能够带来类似 Linux OS 的清晰、简单明了的安装体验。Solaris OS 是一个免费的开放 UNIX 操作系统,在 x86 和 SPARC 系统上都可以使用。迄今为止,已经有超过 1100 万开发人员在使用 Solaris OS,有超过 200 万个 CPU 获得了商业许可。

最近,Sun Solaris 10 OS 作为 Most Innovative Server OS 荣获了 InfoWorld 的 2008 Technology of the Year Award 年度奖项。InfoWorld 的评论是 “没有一个服务器操作系统能够满足更多种类的需求,或者拥有更加丰富的特性。”

只有一个 Solaris 10 OS 和一个源代码库。因此,它能够在所有平台上交付相同的特性。开发人员可以针对来自主流开发商(比如 Sun、HP、IBM 和 Dell)的数百个系统,在 Solaris OS 上开发和优化应用程序。

Solaris Express Developer Edition

对于开发人员来说,最重要的莫过于 Solaris Express Developer Edition (SXDE),这是一个免费的、每季度发行一次新版本的 Sun Solaris OS,是根据 OpenSolaris.org 上的源代码存储库构建的,OpenSolaris.org 是 OpenSolaris 社区的基地和开发人员协作的站点。SXDE 包含许多 Solaris 10 OS 中没有的增强。SXDE 版本是针对 x86 平台创建的,包括创建 Solaris OS 应用程序、Java 应用程序平台和 Web 2.0 所需的最新的工具、技术和平台。开发人员可以免费 下载订购 DVD 套件,或者 获取已配置为一个 VMware 虚拟设备的 SXDE

为了支持膝上型电脑上的开发,每个版本中都添加了支持无线的新驱动程序。9/07 版包含对 Enhanced Intel SpeedStep Technology (EIST) 的支持,后者是一个重要的功率管理特性。1/08 版包含对 EIST 的改进和一个针对 Intel 4965 802.11agn 的驱动程序。为了进一步简化安装过程,Sun 已经将 SXDE 安装和配置支持添加到 Solaris 10 OS 的服务订阅产品中,无需额外的费用。

SPARC 系统上的开发人员可以获得类似功能,只需下载最新的 Solaris Express Community Edition 版本(DVD)或(CD),并安装 SPARC 开发人员工具集,该工具集计划在 2 月中旬发布。以后的 Solaris Express Developer Edition 版本将同时支持 x86 和 SPARC 平台。针对 Solaris Express Developer Edition 的 VMware 也已经发布。

Solaris OS:一个操作系统和一个社区
 
InfoWorld 奖项

Sun Solaris 10 OS 和 ZFS 文件系统最近荣获了 InfoWorld 的 2008 Technology of the Year Award。

Sun Solaris 10 OS 在平台中被评为 Most Innovative Server OS

InfoWorld 的评价是,“没有一个服务器操作系统能够满足更多种类的需求,或拥有更加丰富的特性。首先是 ZFS 文件系统,它也荣获了 2008 Technology of the Year Award;DTrace 是最优秀的 OS 分析工具;以及 Solaris Container 的本机、内置虚拟化,这是目前其他任何 OS 都没有的特性;最后还有能够运行 Red Hat Linux 二进制的能力。毫无疑问,它就是这十年中最具创新性的服务器操作系统版本。”

此外,ZFS 文件系统荣获了 Best File System。InfoWorld 对 ZFS 的创新大加赞叹:“不是每一天计算机行业都会交付 Sun 的 ZFS 所具有的创新性。ZFS 的流动性、柔韧性和可伸缩性都远远超过了现有的任何平台上的任何文件系统。IT 科学越来越多的进步都只是现有条件的简单繁衍。ZFS 在此打破了所有规则,而且获得了一个令人惊异的经过深思熟虑和精心实现的解决方案。”

Solaris OS 并不等同于 OpenSolaris Project,它由 OpenSolaris 源代码、开发人员社区和 web 站点组成。Solaris OS 是一个 Sun 项目。尽管两者都受 Sun 支持,但 OpenSolaris 是一个由开发人员社区运作的开发项目。未来的 Solaris OS 版本将会基于 OpenSolaris 项目开发的技术。两者都可作为免费的二进制文件下载,而且 Sun 为两者都提供了服务包和常规更新。

Solaris OS 为开发人员提供了以下优势:

  • 独特的特性:DTrace、Solaris 区域、改进的 IP 堆栈、ZFS 等等。
  • 下载中提供的质量开发工具,包括 Sun Studio 编译器和工具、NetBeans IDE。
  • 当前支持超过 5,000 种应用程序,包括 web 应用程序软件(Solaris OS、Apache、MySQL、Ruby 和 PHP)、NetBeans IDE 6、JRuby 和 PHP 预览插件,支持 Perl、Python、Ruby、JavaDB、PostgreSQL,以及 Apache 1.x 和 Apache 2.x。
  • 现在,NetBeans IDE 6.0 能够 支持丰富的插件
  • 繁荣的开源社区支持开源软件,鼓舞着新的开发人员。只要获得 OSI 认可的 CDDL,就能够使用这些软件的源代码。
  • Sun 承诺长期提供 对二进制的向后兼容性源代码,以及工具。Sun Studio 12 软件 交付了高性能的编译器和工具、以及分别针对 SPARC 平台上的 Solaris 和 x86/x64 平台上的 Solaris、Linux 进行优化的 C、C++ 和 Fortran 编译器;维护与编译器的兼容性,以及与更旧的对象文件的链接程序。
  • 超过 900 个 x86 和 SPARC 平台的多平台支持。
  • 管理、部署和支持成本比 Red Hat Linux OS 更低。
  • 文档
  • 改进的 基于 GNOME 的桌面
  • 部署要点包括:
    • SPARC 和 AMD/Intel 架构支持
    • 虚拟化
    • Solaris 可伸缩性
    • 线程增强和调度
    • 内存定位优化(MPO)
Solaris OS 的独特特性

Solaris 10 OS 发布于 2005 年早期,它包含超过 600 项新特性,在后来的更新版本和 Solaris Express 程序中加入了更多特性。许多特性是其他操作系统没有的,比如 Solaris 动态跟踪(DTrace)、Solaris 容器,前兆性自愈(Predictive Self-Healing)、Solaris ZFS、Solaris 可信扩展(Solaris Trusted Extensions),以及逻辑域(Logical Domains,LDoms)。

动态跟踪(DTrace) 是 Solaris 10 OS 中引入的一个调试工具,帮助调试用传统调试工具难以诊断的系统问题。DTrace 允许用户获得整个软件集合的系统级视图。这使开发人员能够跨 Web 2.0 中常见的多层软件集合进行调试,其中可以有许多不同层,分别用不同的语言实现,比如 JavaScript、Java,以及 C/ C++。

常规调试工具无法实现这种多层视图。DTrace 的这个性质支持进行试验,允许开发人员询问问题并从运行于生产服务器上的应用程序获得答案,而无需运行应用程序的调试版本。向运行于桌面上的关键应用程序(比如 Firefox)添加探测器(probe),允许开发人员使用 DTrace 调试运行于 Firefox 中的 JavaScript 代码,甚至可以对 Firefox 本身进行调优。

DTrace 通过一个命令库 libdtrace 进行工作,该库包含内核中各种 “DTrace 提供者” 的入口点,每个 DTrace 提供者提供某个内核子系统的逻辑视图。Solaris 10 OS 包含近 40,000 个探测器,可用作 Solaris 内核中的探测点。可以随意打开和关闭 DTrace 探测,当关闭跟踪时,不会增加任何开销。可以将查询进行组合,创建定制探测器。

ZFS 是最先进的 128 位文件系统,具有端到端错误检查和更正,一个简单的命令行接口,以及虚拟无限存储能力。它被 InfoWorld 评选为 Best File System of 2008

Solaris 区域 允许开发人员将一台计算机划分为大量彼此独立的虚拟计算机。Solaris 区域是 Solaris OS 内部的分区虚拟 OS 环境。每个区域相当于计算机中的一个隔离的虚拟服务器。区域是一个原语,当与操作系统的资源管理设施一起使用时,它就是一个 Solaris 容器。许多开发人员都交替使用 “区域” 和 “容器”。

应用程序将区域当作一个隔离的安全操作系统环境,支持开发人员将应用程序彼此隔离,只需将它们安装在不同的区域即可,然后对操作系统资源进行集中管理。

前兆性自愈 是针对 Solaris 10 OS 创建的,它可以自动诊断、隔离大量硬件和应用程序故障,并进行恢复。所以,当出现软件故障、主要的硬件组件故障,甚至软件错误配置问题时,业务关键型应用程序和重要的系统服务不会受到干扰。

在 2007 年 10 月,Java 技术之父 James Gosling 在 博客 中对 Solaris OS 大加赞叹:“Solaris 的所有出色功能都能派上用场。我完全陶醉在区域和 ZFS 中了。例如:我将我的 laptop 设置为用 ZFS 管理磁盘,然后将 laptop 的磁盘镜像到 USB 驱动器上。”

开发工具

Solaris OS 提供了集成的、随时可以使用的工具,这些工具能够兼容开发人员部署应用程序的所有环境。使用 SXDE,可以在 OS 上自动安装最新的开发人员工具。

开发人员工具包括:

  • Sun Studio 12 12/07 软件 交付了高性能的编译器和工具、以及分别针对 SPARC 平台上的 Solaris 和 x86/x64 平台上的 Solaris、Linux 进行优化的 C、C++ 和 Fortran 编译器,包括最新的多核心系统和源代码、内存、线程调试。
  • Project D-Light 提供了一些用于分析系统行为的工具。(目前,Project D-Light 只能在 Solaris 10 OS 上运行,而且需要一个支持 DTrace 的 Java Runtime Environment 6 及以上版本。)Project D-Light 使开发人员可以访问更加广泛的复杂应用程序和系统配置,通过虚拟化整个应用程序系统中的性能瓶颈和资源争用,优化他们的应用程序和系统环境。使用直观的拖放界面,D-Light 提供了一个可扩展的工具库,表示最新的配置技术增强,包括动态跟踪(DTrace)。
  • NetBeans IDE 6 提供了Solaris 开发人员创建跨平台 Java 桌面、企业和 Web 应用程序所需的所有工具,包括对 Ruby on Rails、JRuby 和 PHP 预览插件的支持。
  • Java Platform, Standard Edition 6 (Java SE) 允许开发人员在桌面和服务器上,以及嵌入式和实时环境中创建和部署 Java 应用程序。Java SE 6 包含支持 Java Web Service 的类,为 Java Platform, Enterprise Edition (Java EE) 提供了基础。
应用程序支持:Web 应用程序栈

web 应用程序集是作为 SXDE 的一部分交付的,它提供了针对 Solaris OS 优化的常用开源应用程序集合。它已经进行了预配置,大多数流行应用程序(Apache、PHP、MySQL、Ruby 等等)都可以立即无缝地运行,而且还附带了一个控制面板,可用来快速容易地启用服务。

多平台支持

Solaris 10 OS 可以在无数的平台上运行,从膝上型电脑到台式机,以及 SPARC 和 x64/x86 平台上的数据中心。在膝上型电脑和台式机上,借助完全集成的 Sun Java Desktop System,Solaris 10 OS 允许开发人员利用高级特性和增值、成本有效的办公室生产力工具和开发人员工具。

有保证的向后兼容性

有保证的向后兼容性对商业软件开发人员尤其重要,因为维护通常是软件中开销最大的部分。Sun 的向后兼容性可以向开发商保证,针对一个 Solaris OS 版本构建的软件可以在后续版本上正常运行。

在许多操作系统中,在对系统组件(例如,库)进行不兼容的更改时,不会考虑对应用程序的影响,造成的结果是应用程序被破坏,进而增加了维护成本,给应用程序开发商和用户带来挫败感。Solaris OS 与这些操作系统形成了鲜明对比。

繁荣的开源社区

2006 年 11 月到 2007 年 11 月期间,OpenSolaris.org 的成员数量从 20,000 猛增到 80,000。OpenSolaris 不仅是一个开源项目,还是一个协作的社区和 web 站点。opensolaris.org 上包含 Solaris 源代码、下载、开发人员工具、邮件列表、用户组、活动信息等等。OpenSolaris 技术组成了一个针对 SPARC 和 x86 平台的源代码库,可以在所有平台上交付相同的特性。

GNOME 与 Java GNOME 绑定

GNOME 提供了一个现代的、流行的桌面,可以帮助开发人员展示他们最优秀的桌面应用程序。

GNOME 社区希望吸引更多的桌面开发人员和用 C 开发桌面应用程序的备选方案。由于 95% 的 GNOME 桌面是用 C 编写的,借助对现代 IDE(比如 Sun Studio 软件、NetBeans 及其 C/C++ 模块,以及 Eclipse)的支持,许多开发人员仍在继续使用 C 开发桌面应用程序。

Java GNOME 绑定 使得在开发 GNOME 和 GTK+ 时,可以根据需要访问核心库。这些绑定提供了一个 Java API,它使用 Java SE 平台中的 Java Native Interface 支持公开底层平台 C API。这些绑定是作为一组 Solaris 包提供的,这些包包括:

  • API jar 文件:提供 Java API,并允许在应用程序中导入 Java GNOME API
  • API 库:支持通过 Java API 调用的 JNI 本机 C 库
  • 文档:描述可用于使代码完备化的 API 源 jar 文件,以及在 IDE 中浏览源代码。
  • API Javadoc 文件:提供 API 的综合文档

Java GNOME 绑定为熟悉基于 Glade 的 GNOME/GTK+ 应用程序开发的开发人员提供了一种用 Java 编程语言开发这些类型的桌面应用程序的可行方法。Java GNOME 社区也正在对绑定进行重新设计,以更加自动地生成这些绑定。这将有助于提供几乎所有的底层 GNOME 平台 API 和 Cairo 本机库,确保它们与 GNOME 平台的后续版本保持同步。

此外,新的 GNOME DevHelp 是一个应用程序,支持开发人员在本机使用 gtk-doc 时浏览和搜索 GNOME API 文档。

部署要点

Solaris OS 提供了部署灵活性。无论 Solaris 10 OS 在基于 SPARC 的系统上运行,还是在基于 x64/x86 的系统上运行,它都会提供相同的特性和功能。Solaris 10 OS 的模块架构允许动态加载驱动程序,无需重新编译内核。内核本身支持单处理器和多处理器环境,而且是自调优的主要部分。这些特性使得很容易为大量部署定义单一的、优化的、安全的 OS 映像。无论是制造嵌入式系统,还是装备一个运算中心,这些特性都会提供相同的功效。因此,Solaris OS 非常适合用于设备集中式行业,比如电信、存储、网络安全、医疗、政府市场,以及用于在所有规格的 PC(膝上型电脑、台式机、工作站、刀片、架装系统,以及多处理器服务器,包括基于 x64/x86 的八路服务器)上的进行配置。

借助 Solaris Ready Test Suite,可以对使用 SXDE 部署的应用程序针对部署到 Solaris 10 系统进行测试,检验 Solaris 10 API 的使用情况。此外,在部署之前,应该在 Solaris 10 服务器上进行最后构建。

虚拟化

此外,构建到 Solaris OS 中的 虚拟化 特性使部署过程更加简单和灵活。Sun 提供了当前构建虚拟企业所需的所有重要技术,这些创新技术必将促进虚拟化的发展。

内存定位优化(MPO)

Solaris 10 OS 使用 内存定位优化 改进服务器的物理内存中的内存定位,从而提升了性能。借助 MPO,Solaris 10 OS 可以确保处理器最大限度地访问内存,同时仍会保持系统内部的足够平衡。其结果是,极大地降低了 TPC-H 运行时,提升了 TPC-C 性能,许多好性能计算(HPC)应用程序运行时间减少了一半。

增强的线程机制

在前几个 Solaris OS 版本中,线程库已经 针对多线程应用程序进行了增强。首先是 Solaris 9 OS,Sun 采用了一个优于曾经的 ‘MxN’ 的、经过高度调优和测试的 ‘1:1’ 线程模型。通过简化底层线程实现,可以极大地提升现有应用程序的性能和稳定性,无需重新编译。在 Solaris 10 OS 中,添加了线程本地存储(Thread Local Storage,TLS),简化和提升了存储性能。将新的线程模型和最新的 Java Virtual Machine (JVM) 记住进行组合,极大地提升了 SPECjbb2000 性能。

更低的管理成本

许多开发人员都管理自己的软件环境。根据 Crimson Consulting Group 进行的 一项新研究,Solaris 10 OS 的拥有成本比 Red Hat Enterprise Linux 降低了 20%。这项研究由 Sun Microsystems 发起,是研究参与方设计和执行的一个独立的分析评估,主要研究了 Solaris 和 Red Hat Enterprise Linux OS 的可比较的部署体验。

Solaris OS 的未来

Solaris OS 和 SXDE 向开发人员提供了大量独特特性、应用程序集合、质量开发工具、简单下载、多平台支持、繁荣的开源社区、有保证的向后兼容性、出色的部署,以及更低的管理成本 —— 所有功能经过尝试您就会确信。

借助 Sun 和一个不断壮大、繁荣的开源社区的支持,未来一片明朗。

更多信息
关于作者

Janice J. Heiss 在 Sun Microsystems Inc 担任 Java 技术专职作家,并且集诗歌、小说和传记创作于一身。除了创作,他还经常上台演出,比如说单人喜剧。