« 七月 2008
星期日星期一星期二星期三星期四星期五星期六
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  
       
今天

Blog::Navigation

Blog::Editing

Bookmarks::Blogroll

Blog::Referers

Site notes

This page validates as XHTML 1.0, and will look much better in a browser that supports web standards, but it is accessible to any browser or Internet device. It was created using techniques detailed at glish.com/css/.

Powered by Roller Weblogger.
星期五 五月 23, 2008

Sun Device Detection Tool 2.1 本地版

除了大家已知的Sun Device Detection Tool网络版,本工具还提供一个本地版。本地版与网络版功能一致,区别在于本地版无需网络连接也可以运行。

现在Sun Device Detection Tool 2.1 本地版已经在它的Open Source网页上发布。有需要的用户可以下载本地版程序包,将其拷贝到任何一台安装了Solaris, Linux, Windows, 或Mac OS的机器上,解压缩后运行第一层目录下的脚本,即可得到该机器的Solaris驱动状态报告。

星期五 四月 25, 2008

Sun Device Detection Tool 2.1 已发布

最新版本的Sun Device Detection Tool 2.1已于2008年4月18日发布。欲知详情,请访问Sun公司网页http://www.sun.com/bigadmin/hcl/hcts/device_detect.jsp

SDDTool 2.1的更新内容:

1. 支持在Mac OS X上运行。

2. 在Solaris驱动状态报告中显示各PCI设备的设备数据(vendor id, device id, class code等)。

3. 在Solaris系统上启动HCL Submission功能后,自动收集添加补丁信息和各PCI设备加载的驱动名称信息。

4. 允许用户将HCL Submission报告存储为HTML格式。

5. 提供了最新的Solaris 10和Solaris Express Developer Edition驱动数据库。 

 

星期三 三月 26, 2008

北京OpenSolaris用户组第十四次会议将介绍SDDTool

北京OpenSolaris用户组第十四次会议将于2008年3月27日(星期四)举行。
地点:会议室名称:清华科技园国际会议中心第三会议室,科技大厦A座2层

日程:
6:00pm- 7:00pm 晚餐时间,免费提供食物和饮料
7:00pm- 8:30pm 主题演讲
8:30pm- 分组讨论 

介时,Sun中国工程研究院资深软件工程师车向东将主讲“OpenSolaris硬件兼容性的检测 - 如何快速判断硬件产品是否被 OpenSolaris所支持”。

计算机硬件技术的快速发展使得市场上可见的硬件产品日新月异。如何快速判断自己的硬件产品是否被OpenSolaris操作系统所支持是一个用户常见的问 题。本次技术讨论将介绍Sun公司在OpenSolaris硬件兼容性检测方面所提供的多种工具和资源,并重点介绍一个开源的软件项目Sun Device Detection Tool。

演讲人背景:北京航空航天大学毕业后在中科院软件中心从事嵌入式软件研发工作。2003年底加入Sun中国工程研究院任软件工程师,负责Solaris操 作系统硬件兼容性方面的研发工作。

如果您要了解更多关于北京OpenSolaris用户组信息,请访问我们的网站: http://opensolaris.org/os/project/bjosug/

星期四 三月 13, 2008

Sun Device Detection Tool 之路(2)

在良好开端的鼓励之下,为了方便没有网络连接的用户,也是为了当时新发布的Solaris Express Developer Edition 服务,Sun Device Detection Tool在通过官方网站发布的网络版之外,又派生了一个单机版。该版本被集成到Solaris Express Developer Edition的安装DVD里,提供的也是针对Solaris Express Developer Edition的数据库(数据库和程序一样被集成在DVD里)。用户可以在没有任何网络连接的情况下使用单机版。

此后,开发测试人员继续改善这一工具,使它具有更好的可靠性以及提供更多的功能。在1.0之后,Sun Device Detection Tool 1.1, 1.2, 和2.0版本被相继发布。

在Sun Device Detection Tool 1.1中,提供了针对多个Solaris OS版本的数据库(Solaris 10 11/06 和 Solaris Express Developer Edition 2/07)。从那以后,各版本的Sun Device Detection Tool都保持提供针对最新版的Solaris 10 和Solaris Express Developer Edition的数据库。

在Sun Device Detection Tool 1.2中开发的一个全新功能是HCL提交选项,使用此项功能,用户可以将自己的Solaris正式发行版的系 统信息提交给HCL team,经过HCL的工程师评审后,如果符合HCL规范,则该系统将作为与Solaris OS兼容的系统被列入到HCL中。

鉴于1.0对于系统命令依赖的局限,在Sun Device Detection Tool 2.0中我们开发自己的程序,通过各系统提供的接口直接读取设备数据(具体实现如下)。

OS类型
接口
解决方法
Solaris
libdevinfo 在prom tree中查询PCI节点,并从节点中读取设备数据
Windows
Win32 API 通过Win32 API从注册表中读取设备数据
Linux
/proc/bus/pci 扫描/proc/bus/pci文件,并从中读取设备数据

这样,Sun Device Detection Tool探测用户设备的时候,不再依赖于用户系统的系统命令,使得本工具的可靠性大幅度提高。同时也扩展的Sun Device Detection Tool的支持平台,使得它在所有2.6内核的Linux系统和主要的Windows系统上都可以运行。

当然,之前的通过解析系统命令输出获得设备数据的功能也没有被废弃,而是作为一个全新的导入设备数据文件的功能开放给了用户。这样也方便了那些由于没有网络连接无法使 用Sun Device Detection Tool,或者希望判断远程徐同中设备与Solaris OS兼容性的用户。他们可以先在需要探测的Solaris, Windows或Linux系统上运行相应的命令生成一个保存了其输出的文件。然后把这个文件拷贝到有网络连接的机器上,作为设备数据文件导入给Sun Device Detection Tool,以获得该系统设备的报告。

目前,Sun Device Detection Tool 2.1正在开发过程中,并将于今年四月中下旬发布。2.1在以上诸多功能的基础之上,扩展了设备探测功能,使得它可以在Mac OS X上运行。在最后生成的Solaris驱动可用性报告中,除了 现在已有的项目,用户还可以通过提示工具(ToolTip)直接浏览设备数据信息。另外,用户在WindowsLinux系统上也将可以使用HCL提交选项把他们的系统信息发送给Sun。虽然他们的系统不能直接被列入 HCL,但是他们提供的诸多硬件和系统配置的信息,将为Solaris驱动和系统开发提供指导。

还有一点需要指出的是,早在Sun Device Detection Tool 1.0发布不久,开发工程师就曾经考虑将其作为一个开源项目,发布源代码。现在2.0的源代码已经在OpenSolaris.org上发布。在开源项目 中,表示公司名称的"Sun"被移除,本工具的开源名称为Device Detection Tool,欢迎访问Device Detection Tool开源主页,并参与到该项目中 来。

Sun Device Detection Tool 之路(1)

几年前,HCL(Hardware Compatibility Lists)team的工程师在进行Solaris OS兼容性测试的工作时,接触到了各种各样的x86/x64系统,包括笔记本、台式机、工作站和服务器。它们的生产厂商有Dell, IBM, HP, Sony, Toshiaba, Acer等。 HCL team的工程师由于安装并测试了大量x86/x64系统,积累了丰富的知识和经验。因此,到了后来,几乎做到了通过读取一个新系统的的芯片信息,就可以 预言它能否成功安装Solaris OS。实际上,是工程师们在头脑中建立了一个从硬件设备对应到Solaris驱动的小数据库。

在这种情况下,一个想法被提了出来:我们能不能开发一个工具来帮我们在做预言兼容性这件事?这样不仅对HCL team自己的工作有帮助,而且可以向外界分享我们的经验并帮助他人做同样的工作。这个提议立刻收到了全组成员的一致拥护。

在最初讨论时,通过头脑风暴,大家认为最佳的解决方案是在Sun的官方网站上提供一个链接,用户只需点击这个链接,就可以知道他们的硬件是否被Solaris OS支持。但是由于当时工程师们不知道如何去实现这一方案,就选择了一个次优方案:我们提供一个iso文件,用户刻成CD盘后用这个CD引导系统启动,然 后得到一个关于他们的硬件设备有否Solaris驱动程序的报告。

于是,HCL team的工程师通过定制Solaris安装CD制作了一张Live CD。这个最初的原型证明了次优方案的可行性,但是这个Live CD超过了500M。这样的大小对于用户而言简直就是不可接受的。

在Solaris 10 1/06发布之后,事情出现了转机。Grub和miniroot的引入使得这个版本的Solaris OS更易于定制。这样Live CD被减至约50M。这已经是一个可接受的大小了。

至此,我们发布了Solaris Operating System for x86 Installation Check Tool 1.0. 在它发布后一个月内,就有300多个用户下载并使用了该工具。

Installation Check Tool虽然实现了我们期望的功能,但是毕竟它需要用户先下载一个几十兆的iso文件,刻制CD盘,然后再用这张CD盘重启系统。不仅需要较长的时间,而 且要求额外的资源(CD刻录机),相对于点击网页链接即运行的方案还是存在诸多不便之处。

随着新的工程师的加入,一个采用Java Web Start技术的方案被提出和采纳。这一解决方案和最初的最优方案完全吻合。经过整合Installation Check Tool的部分代码,以及早先开发的运行在Window和LInux平台上的原型工具,我们做出了Sun Device Detection Tool的第一版原型。

在原型的基础上,在全组成员的通力合作之下,Sun Device Detection Tool 1.0在2006年10月26日发布了。作为初始版本,它还相当简单粗陋,在Solaris,Windows及Linux系统 上运行时,1.0版是通过运行下列系统命令并解析其输出来获得该系统上的设备信息的。

OS
System Command
Utility
Solaris OS
prtconf -pv prtconf
Windows OS reg query hklm\system\currentcontrolset\enum\pci /s register.exe
Linux OS
lspci -vv -n PCIUtilities

这就导致了Sun Device Detection Tool 1.0对各系统系统命令的依赖。如果提供命令的程序(utility)出现问题,则本工具就不能提供正确结果。特别是,PCIUtilities并非所有Linux发行版默认安装的工具,所以,对于这些发行版的用户而言,他们必须先安 装PCIUtilities才能使用本工具。

还有,Sun Device Detection Tool 1.0只提供了一个单一的针对Solaris 10 6/06的驱动信息数据库。用户使用1.0只能得到Solaris 10 6/06对自己设备的支持状况。

尽管有着种种局限性,Sun Device Detection Tool 1.0在发布后的第一个月里就获得了超过了3000的下载量,它的support alias也收到了大量的用户 反馈,其中包括许多对本工具后来的发展影响很大的好建议。全体开发和测试人员因此而大受鼓舞。

Sun Device Detection Tool 的工作原理

从某种意义上讲,Sun Device Detection Tool是一个“预言”工具。

现在你的计算机上安装的可能是Window或者Linux系统,但是只要运行一下Sun Device Detection Tool,它就可以告诉你,当前你的机器上的这些设备在安装了某个Solaris OS版本之后是否仍然能够工作。

它是怎样做出预言的?其实原理很简单,具体步骤如下:

1. Sun Device Detection Tool首先探测你的系统都安装了哪些设备,以及它们的设备数据(包括生产厂商ID,设备ID,类型码等)是什么。

Sun Device Detection Tool在Solaris,Windows和Linux平台上都可以运行,它通过各平台提供的系统接口收集设备信息,具体应用到的接口如下: 

OS类型
接口
解决方法
Solaris
libdevinfo 在prom tree中查询PCI节点,并从节点中读取设备数据
Windows
Win32 API 通过Win32 API从注册表中读取设备数据
Linux
/proc/bus/pci 扫描/proc/bus/pci文件,并从中读取设备数据
         

2. 网络版Sun Device Detection Tool从Sun的服务器上下载一个由Sun内部工程师创建并维护的Solaris驱动程序数据库。如果是单机版,则直接从自身所在的DVD光盘中读取该数据库。

然后本工具在该数据库中搜索这些探测到的设备数据,看能否找到对应各设备的Solaris驱动。如果能,则说明该 设备为Solaris OS所支持,反之,则不支持。同时,根据ID在数据库中查找各个设备的厂商名、设备名等。


3. 在得出了每个设备的Solaris支持状态等信息后,生成一个包括了所有探测到设备的表格,其中列举出了每个设备的厂商名、设备名、设备类型和在32-bit, 64-bit Solaris 系统上被支持的状况(有Solaris OS内置驱动,有第三方驱动,有OpenSolaris驱动,或者根本没有驱动等)。

让你的计算机系统出现在Solaris硬件兼容性列表里

Solaris 操作系统硬件兼容性列表 (Hardware Compatibility Lists, HCL) 列举了和Solaris OS 兼容的计算机系统及设备。想不想让你的系统也位列其中?如果答案是肯定的,那么Sun Device Detection Tool 2.0 所提供的HCL提交选项(HCL Submission Option)可以帮你。

目前这一功能仅可在下列x86/x64平台上使用:

具体实现步骤如下:

1. 运行Sun Device Detection Tool,然后选择File菜单中的Submit...项,如下的联系信息窗口将出现:


输入姓名和邮件地址后,点击Next按钮。

2. 系统信息窗口显示如下:

 

选择系统类型,Sun Device Detection Tool会自动探测系统生产厂商,模式,CPU类型,和BIOS/Fireware制造者。如果任何没有列举的补充信息需要提交,则请填写到General Notes一栏。之后点击Next按钮。

3. 总结窗口出现。


其中没有需要用户填写和选择的项目,本窗口中显示了所有用户填写和系统自动探测到,要提交给Sun的数据,用户审阅确认后和可直接点击Next按钮。

4. 网络代理信息窗口出现。


正确选择网络连接方式,填写代理信息后,点击Next按钮提交报告。

至此,你的系统信息被提交给了Sun公司的HCL team,经过HCL工程是评审后,如果提交的系统信息符合HCL规范,则此报告将被公布在HCL网站上。

 

星期三 三月 12, 2008

判断Solaris OS对远程x86/x64系统中设备的支持

如果你想知道的不是当前你正在使用的计算机,而是一台位于远方无法访问到的x86/x64系统中的设备是否被Solaris OS支持,Sun Device Detection Tool还能提供帮助吗?

或者,你当前的系统无法连接网络,又不想运行单机版Sun Device Detection Tool,是否还有可能得到Solaris驱动可用性报告?

对于上面两个问题,答案都是肯定的,因为Sun Device Detection Tool 2.0 提供了一项“设备数据文件(device data file)导入(Import)”功能。该功能允许用户将通过下列系统命令在对应系统上生成的设备数据文件导入给Sun Device Detection Tool,以获得该系统中设备的Solaris驱动可用性报告:

  • prtconf -pv (on Solaris OS).
  • reg query hklm\system\currentcontrolset\enum\pci /s (on Microsoft Windows based OS).
  • lspci -vv -n (on Linux OS).

 
具体操作过程如下:

  1. 运行上述命令,收集系统信息,生成设备数据文件。例如:

     c:\> reg query hklm\system\currentcontrolset\enum\pci /s > register-1.txt

  2. 点击File菜单中的Import项,你将看到一个文件选择框,从中选择要导入的设备数据文件,点击Open(打开)按钮。


     至此,设备数据文件被导入。

  3. 点击主窗口上的Start按钮,Sun Device Detection Tool将解析导入的文件,并最终给出针对导入文件的Solaris驱动可用性报告。

Sun Device Detection Tool 的两个版本

Sun Device Detection Tool有两个版本供用户选择:

  • 通过点击网页上链接方式运行的网络版(web-based version),和
  • 通过运行启动脚本方式运行的单机版(stand-alone version)。

网络版可以通过访问Sun Device Detection Tool官方网站直接启动运行,其运行方式简单,所提供报告结果确定为最新数据,但在运行过程中,要求用户的系统持续可访问Internet。

单机版的功能与网络版完全一致,但要求用户的系统在运行时提供网络连接,这一特征方便了那些无法连接网络的用户。但也由于此特征,单机版提供的有可能不是最新数据。所以,如果单机版列出的某个设备不受支持,还是请设法运行网络版,以确定是否最新发行的Solaris OS已开始支持该设备。

目前单机版暂时不提供独立下载,它作为附加软件,被集成到了Solaris Express Developer Edition 1/08的安装DVD中。

Sun Device Detection Tool -- 帮助判断你的x86/x64系统能否安装Solaris OS的工具

自己的x86系统在安装了Solaris OS之后,现有的设备是否仍然可以工作?这是一个困扰许多有意图安装Solaris系统的用户的问题。Sun Device Detection Tool就是一个用来解决这一问题的工具。它可以在几分钟之内告诉你最新的 Solaris 10 或者 Solaris Express Developer Edition 操作系统是否支持在你的 x86 系统中检测到的设备。

Sun Device Detection Tool 是一个十分轻巧的小工具,无需安装,无需重启系统,只需几次点击,就可以了解针对你的系统上已经安装的各种设备(网卡、显卡、声卡等等),Solaris 操作系统中是否内置了该驱动程序,是否有可用的第三方驱动程序以或者OpenSolaris社区发布的驱动。

目前的最新版本是Sun Device Detection Tool 2.0(本工具会定期更新,以便在该工具所使用的驱动程序数据库中包含最新的驱动程序),它可以在以下系统上运行:

  • Solaris OS
    • Solaris 10 x86/x64 updates
    • Solaris Express Developer Edition x86/x64 updates
  • Microsoft Windows
    • MS Windows Vista
    • MS Windows XP
    • MS Windows 2003
    • MS Windows 2000
  • Linux OS
    • All Linux 2.6 kernel x86/x86_64 distributions

:由于本工具是一个Java应用程序,因此你的系统必须安装 Java Platform, Standard Edition (J2SE) Runtime Environment (JRE) 1.4 或更新版本才可以运行它。

如果你的操作系统属于上述列举的之一,并且已经安装了JRE,那么通过单击以下链接便可以启动本工具:

Start Sun Device Detection Tool 2.0

启动后,首先选择目标操作系统,然后轻松点击主窗口上的'Start'按钮,本工具便开始探测系统上的设备。它将系统上检测到的设备与 Solaris 操作系统中支持的设备数据库进行比较,最后显示一个如下所示的Solaris驱动可用性报告:

Report_Picture

报告中列出了所有在你的系统中探测到的PCI设备,给出了它们的供应商名、设备名、设备类型和对应的Solaris驱动名,并用一些彩色图标标志出了这些Solaris驱动的状态:

red_icon -- 本设备没有Solaris驱动。

yellow_icon -- 此标志出现可能表示两种含义:[1] 本设备是显卡设备,它只有内核驱动没有Xorg驱动。[2] 本设备是任意类型设备,它有Solaris驱动,但是Sun公司不确定这个驱动确实能够支持该设备。

orange_icon -- 本驱动是OpenSolaris.org 提供的驱动。

blue_icon -- 本驱动是第三方驱动。

green_icon -- 本驱动是目标Solaris OS内置的驱动。

:Sun公司不对任何第三方驱动程序或者OpenSolaris驱动程序的行为作出担保。

Copyright (C) 2003, Sun Device Detection Tool