OSGi:Java 动态模块系统的深度解析
1. OSGi 简介
OSGi 最初是开放服务网关倡议(Open Services Gateway Initiative)的缩写,于 1999 年应运而生,旨在满足嵌入式设备市场的需求。当时近 30 家公司参与了该倡议的开发,其中许多公司已经在 Java 语言上有所投入,他们希望利用 Java 来开拓家用嵌入式设备市场。
1999 年是科技行业疯狂的一年,互联网热潮席卷而来,一切都充满了希望。OSGi 的设计者们大胆创新,设想了 Java 平台当时所缺失的一系列特性。尽管 OSGi 诞生于混乱的时代,但其设计展现出了强大的韧性,使其能够扩展到许多使用 Java 软件的市场。
1.1 OSGi 的主要特性
- 热插拔性(Hot - pluggability) :这是 OSGi 专家组设想的特性之一,指系统能够在不中断正在进行的操作的情况下进行更改。如今,高端磁盘阵列是 IT 领域最常见的热插拔设备,它允许在不关闭系统的情况下纠正磁盘故障,确保系统 24 小时可用。在 1999 年左右的家用嵌入式设备中,热插拔性并不常见,设备故障可能会对联网家庭造成连锁反应,重启系统也会带来诸多不便。
- 自动发现(Autodiscovery) :即一个设备能够重用另一个设备中的软件。回顾 1999 年,嵌入式设备的内存和存储资源非常有限,因此设备能够自动发现并重用其他设备中的软件是非常理想的特性。
热插拔性和自动发现都体现了动态行为,这也是 OSGi 将自己定义为 Java 动态模块系统的原因
超级会员免费看
订阅专栏 解锁全文
318

被折叠的 条评论
为什么被折叠?



