Top
首页 > 老文章 > 正文

Jini技术常见问题解答(2)

Jini技术常见问题解答(2)

Jini技术常见问题解答(2)
发布时间:2006-04-25 18:02        来源:        作者:
Jini技术常见问题解答(2)

问题19:什么是Jini技术社区?

Jini技术社区由任意对创建应用程序或服务感兴趣的开发组织或个人所组成。该社区的成员必须执行基本的Sun社区资源许可(Sun Community Source Licence (SCSL))协议以获得对Jini技术源代码的访问。他们分享一定的权力和责任以保护Jini技术的开放的和可扩展的性质。这些成员可参加用户小组、开发论坛及顾问讨论会,还可能获得来自Sun Microsystems和其它社区成员的开发与技术支持。


问题20:Sun拥有哪类计划可以支持各类组织使用Jini技术进行开发?

为鼓励Jini技术社区内的创新,Sun为使用Jini技术的商业性的产品提供全方位的技术信息、支持服务以及市场支援。从具有深入技术信息和共享资源库的免费Web站点,到专业级的技术支持以及超级合作营销机会,Sun的计划可帮助开发者为Jini技术探索新的用途,开发具有创新的产品和服务,以及为使用Jini软件创建用户需求。


问题21:有可以使用的Jini技术开发工具吗?

因为Jini技术是基于Java平台的,所以任何可被用在Java软件开发上的现有开发工具都可被用在Jini软件的开发上。除此之外,实用工具类和实现正在被开发,并可免费获取。 这将会减低使用Jini技术的服务和客户(clients)的开发难度。


问题22:是否有创建Jini技术部件或服务的可视开发工具?

在当前这个早期阶段,还没有为Jini技术使用的商业性的可视工具包。然而,我们的确期望社区成员能够提交这类工具,并且我们鼓励商务公司为Jini技术开发类似于用在其它技术上的工具包。


问题23:现在就可以获得Jini技术吗?我怎样才能得到它?

可以。Jini技术Core Platform (内核平台)的源代码和规范可以从网上下载。网址是:http://www.sun.com/jini/。虽然可免费下载,但你必须通过鼠标的点击来表示接受 Sun 的社区资源许可协议(Sun Community Source Licence (SCSL))。


问题24:社区资源许可协议是如何运作的?

Sun的社区资源许可(SCSL)协议是为在开发者社区中发布资源代码而设计的一种许可模型。该模型是根据Sun Microsystems最近发布的由Richard Gabriel和Bill Joy设计的社区资源许可原则(Community Source Licensing Principles)而提出的。

为了促进和提高Jini技术,按照SCSL协议,Sun在开发者社区中基本上与其他成员分享了源代码的权利。Sun还致力于建立一种责任以保证兼容性;并提出了一种业务模式--通过提倡协议的接受者创建专利改进项目,以奖励创新和发明。


有关社区资源许可协议的进一步运作细节,请参见我们的网址的Licensing部分,网址是:http://www.sun.com/jini/licensing/。


问题25: Jini技术的价格体系是怎样的?

对那些希望对Jini技术的源代码进行评估、改进、完善和作为内部使用的协议接受者来说, 只要遵守Sun社区资源许可(SCSL)协议, 就可以免费使用Jini技术源代码。一旦你或你的公司决定将Jini技术产品作为商业性的使用, 你则必须同意SCSL(附件E)中的有关商业性使用条款, 并签定Jini Compatibility Logo(Jini兼容性标志)许可协议。标志许可包括了使用标志的年度价格或单价(per-unit fee)。


问题26:我能够使源代码更新吗?

所有的Jini技术的协议的接受者都可以访问我们的Jini技术站点。在这里,我们为协议的接受者(包括Sun本身)安排了一个区域,使他们可以将程序调试、更新、使用的工具、示例以及与Jini技术有关的其它技术支持问题发送给社区的其他成员。我们期待着每天都收到新的信息。Sun将在适当的时候、适当的位置将核心代码做必要的改动。所有的情况都会在网上通知。


问题27:我如何将代码回赠给Jini技术社区?

在我们的网址上有这方面的详细步骤。该网址是: http://developer.java.sun.com/developer/products/jini/index.html.

Jini和Java技术

问题28:使用Jini技术需要哪个版本的Java软件?

Jini技术依赖于最近发布的Java 2 软件的一些特性。其设备间的通信是使用Java远程方法调用(RMI)来完成的。安全性是通过扩展Java软件安全性模型来提供的。对象序列化(Object serialization)被用来将设备接口传递给查找服务以及任何希望利用该设备的应用程序。


问题29:Sun为什么在Jini技术中使用了Java远程方法调用(Java RMI)?

Java RMI是Jini技术的基本底层结构,因为只有RMI才具有使Jini软件的体系结构得以实现的能力。Java RMI允许对象(包括它们的行为)按照它们实际的Java软件类型进行传递。这就允许了一个期望获得基础类型的对象的子类型的传递,以及使相同服务接口得以按不同方式实现的代码能够按指令传递到该服务的客户端。

没有Java RMI,Jini技术就不可能实现。


问题30:Jini技术可以与Microsoft的虚拟机一起运行吗?

不可以。因为Jini技术依赖于Java 2 环境,包括增强的RMI、安全性以及集合类。目前发行的Microsoft虚拟机没有实现Java 2 。


问题31:为什么Jini技术与Java平台是分离的?


Jini技术是Java平台的扩展,它将Java技术的优势带到了网络之中。然而,它与Java平台又是截然不同的--例如,它不适合于独立的系统(stand-alone system)。再者,鉴于Jini技术的以网络为中心的特性,因而它也不适于在一般的Java平台中使用。


问题32:Jini技术是如何与Java技术的其它功能协调运行的?

Jini软件的底层结构是用Java编程语言编写的,它可以与所有的Java核心技术协同工作。


问题33:Jini技术适应EntERPrise JavaBean部件吗?

Enterprise JavaBeans(EJB)部件可作为服务器部件的开发和部署模型。通过将Jini软件的底层结构添加到这些部件上,EJB可以容易地成为Jini技术的服务。


问题34:什么是JavASPaces技术?

JavaSpaces技术是为Java软件对象的相关组的简单通信和存储而提供的服务。


问题35:我是否需要完整的事务管理程序来使用Jini技术?

使用Jini技术不需要任何事务处理管理程序。服务可以使用免费的Jini两阶段提交事务管理程序,也使用对它们合适的任何其它事务管理程序,或者根本不使用事务管理程序。


问题36: 我可以在eJava和pJava技术中使用Jini技术吗?

这两种技术都将实现在Java 2环境基础上的改善,以便更好地支持Jini软件。有关开发工作的时间表将很快公之于众。

Jini技术和操作系统

问题37: Jini软件是一种网络操作系统吗?

不是。Jini软件是一种运行于Java平台之上, 用来创建一个虚拟机联盟的结构。每个虚拟机都运行在一个系统之上,操作系统又在网络上。网络操作系统是一种包含了与其它计算机通过网络进行通信的软件的操作系统。UNIX和Novell Netware就是网络操作系统的例子。


问题38: Windwos CE不能做同样的事情吗?

不能。Windows CE是一种可被安装在与传统的计算机相独立的设备上的操作系统。Jini软件不是操作系统, 它是一种编程模型, 它使开发者可以创建并管理它们自己的操作环境, 并连接到一个普通的网络上。该设备可自行管理自己, 并按照基于网络的一套规则运转, 其使用的操作系统是基于用户的考虑来决定的。

问题39: Jini技术与Microsoft的"即插即用"相比是怎样的?

Microsoft的"即插即用"特性并不是在所有方面都是可以利用的。从目前所报道的有关它的底层结构的情况看,我们认为:这一特性根本不可和Jini技术相比较。"即插即用"特性是绑缚在Microsoft操作系统上、由Microsoft领导的一个封闭的集团所定义的。而Jini技术则是独立于操作系统、由Jini软件用户社区所控制的,该用户社区具有免费访问、 扩展和更改Jini技术源代码的权力。"即插即用"是关于如何连接设备的,它要求把设备的驱动代码提供到客户或由用户手工安装驱动程序。而Jini技术是关于如何连接服务的,这种服务既可以是设备,也可以是软件,而且,Jini技术固有的代码灵活性允许设备将它们的驱动程序代码传递到客户,而不需要用户的干预。

Jini和其它查找技术

问题40:将使用Jini技术的网络上的查找技术与其它诸如LDAP和JNDI(Java Naming and Directory Interface(tm))等目录服务相比,结果会怎么样呢?

Jini技术中的查找服务是一个轻型的、但功能强大的服务库。

它使用Java平台的类型系统作为名空间,这种结构是独特的--这意味着它不是存储固定的名-值对(name-value pairs),而是存储对象和反映对象实际行为的对象图。这在一个分布式系统中有两个明显的优势。第一,你可以按照你所期望的行为,而不是仅仅用它们的名称来搜索一个对象或一个服务。第二,当你在目录中一旦发现一个对象时,即使以前不曾"见过"它,你也可以立即知道如何使用它。

例如,或许你要查找一个存储服务。你可以直接发出对某种行为的请求,如可移动的、固定的、本地的、远程的等等。按照你的请求,你可以收到若干选择,包括可写的CD、Zip驱动或其它许多任意的安装在你的网络上的介质类型。一旦你选择了某种你要使用的服务,则该服务的接口和驱动程序会自动地包含在你的选择之中,你不必担心它们是否曾经被安装过。

Jini的查找技术被设计为对这些请求的一种服务。而LDAP和JNDI可支持对你同样重要的其它服务。Jini技术不必替换你的现存系统,企业级目录服务可被提供为Jini技术服务中的服务,这就使客户可以容易地找到它们所需要的企业级信息。


问题41:什么是SLP,它与Jini软件的关系是怎样的?

Jini技术和SLP(服务定位协议)都是网络上的动态查找服务机制。然而,与SLP不同的是,Jini技术是基于Java平台的,它提供了代码的灵活性。代码的灵活性意味着你可以在网络上移动代码以及与它相关的行为(代理)。你可以在Jini技术的查找服务中存储任何Java对象或对象图(object graph),包括驱动程序、代理(proxies)、智能代理(smart proxies)和GUI等。应用程序可以用查找服务提取并执行它们。


问题42:我听说一种称作Salutation的业内新发明,它与Jini技术类似吗?

Salutation提供了类似于被称作Information Management Service(IMS)的服务库那样的查找服务,这与Jini技术的查找服务类似。然而,IMS只支持按照名-值对的搜索,而不支持象Jini技术那样的按照对象类型的搜索。Salutation允许服务之间的相互搜索,但一旦找到后,它便直接使用RPC。由于Jini软件是基于Java技术的,因而它支持代码的可移动性。这就允许你使用代理(agent)在网络上移动行为。


问题43:HAVi是家庭网络的新发明,Jini技术适用于它吗?

HAVi(家庭音频/视频交互操作性)是一种针对家用电子设备的家庭网络系统。Jini技术不但应用于家庭网络环境,也应用于企业和Internet。HAVi组织最近已宣布,它将使用Java编程语言作为它选定的语言,这就使它可以更容易地将HAVi集成到使用Jini软件的网络中。我们期望看到基于Jini技术的软件桥梁能够允许无缝共享HAVi设备和服务。


问题44:HP的JetSend协议与Jini软件是一种相似的技术吗?

HP JetSend是为固定功能和可编程的设备而设计的信息交换协议。Jini技术为软件服务和硬件服务都提供了一种体系结构,并为动态行为支持代码的灵活性。利用Jini技术,服务可被动态地发现并自动注册,驱动程序也可被自动地安装。通过在JetSend设备和Jini技术之间提供一个网关,JetSend设备可与Jini技术一起运行。

Jini技术和补充网络技术

问题45:Jini技术适应firewire技术吗?

Firewire技术主要致力于如何使PC与外部设备的连接变得更简单。通过提供将外部设备连接于较大的网络和Internet的方法, Jini技术进一步完善了Firewire和USB技术。Jini技术还提供了附加的服务, 如租用、事务处理和JavaSpace技术等。我们期望看到建立在那些重要技术之上的Jini技术。


问题46: Jini技术适用于USB吗?

通用串行总线(USB)是一个网络传输层, 设计它的目的是为了在硬件中采用 "即插即用"功能。虽然它解决了某些Jini技术可以解决的问题, 但Jini技术使USB向更深一步发展了。Jini技术是一个单独的、统一的传输层, 它可与网络直接会话; 使用Jini技术的服务既可以是硬件, 也可以是软件。Jini技术适用于USB, 正象它适用于以太网和Firewire一样。


问题47: Jini技术适用于家用电话线网络联盟(Home Phoneline Networking Alliance (HPNA))吗?

HPNA是一个创新, 它为家庭现有电话配线提供了 "以太网"的能力。HPNA所要解决的问题主要是各种现存家用配线(较老的单对非双绞线、3类双绞线和5类双绞线)以及如何管理在各种配线拓扑上的带宽限制。这种技术不是针对 "自发网络" 的概念的, 在自发网络中的设备的引导和加入是与家庭或办公室中的其它设备一起进行的。HPNA可能是Jini技术在家庭中的一个潜在的发送机制, 这里,家庭的网络配线已经不存在, 或者说安装这样的配线的费用是不能接受的。


问题48:Jini技术适合于Bluetooth吗?

Bluetooth是为在PDA、膝上电脑、移动电话和其它便携式设备之间使用低成本、短距离无线电链接而制定的网络传输技术规范。当两个Bluetooth设备相互靠近时,它们可以自动探测到对方,并建立网络链接。然后,它们便可以利用Jini技术去寻找能够提供它们所需要的服务的其它设备。Jini技术适用于Bluetooth,正象它适用于其它网络传输协议一样。

(全文完)
加载更多

专题访谈

合作站点
stat