Remove ads
来自维基百科,自由的百科全书
无线二进位执行环境(Binary Runtime Environment for Wireless,简称BREW)为2001年美国高通(Qualcomm)公司所设计提出的3G系统最佳平台解决方案,可支援cdmaOne/CDMA2000/GSM/GPRS/UMTS/WCDMA,技术上横跨电信、软体开发、手机厂等三大领域[1]。在程式语言支援方面,BREW可让使用C/C++语言开发的应用拥有更好的运行效能,同时支援其他开发语言包括Java、XML和Flash等。目前有美国Verizon Wireless、中国电信、日本KDDI、南韩KTF、泰国Hutchison cat、澳洲Telstra、墨西哥Iusacell、印度Tata、巴西VIVO、阿根廷Movicom、以色列Pelephone、委内瑞拉的Telcel、乌拉圭的Movicom……等数十家电信业者采用。
BREW的执行环境称为BREW AEE(Application Execution Environment),这是一个中间层的应用,具有高效、低成本、可扩展性。一般所见到的BREW例子都是用C写的,不过BREW开发是完全支持C++语言的,2003年宣布支援Java语言[2]。2002年7月份于San Diego举行的BREW开发商大会上,IBM和Insignia展示了BREW环境下的JAVA virtual machine(JVM)。HP也将其MicrochaiVM平台转向了BREW。IBM将在WebSphere Studio Device Developer产品中提供一个BREW开发套件。
BREW SDK至今已发行多套版本,1.0, 1.1, 2.0, 2.1, 3.1, 4.0.4,并且向下相容(backward compatible),目前最新的版本为4.0.4版。SDK是BREW所提供的是一组API函式集合,OEM开发厂商可以利用BREW建立用于无线装置(现是无线电话)的应用软体。
对手机领域来说,BREW是一种轻型客户端(thin client),大约占用150K左右的记忆体空间,介于应用程式软体和底层系统软体(Application Specific Integrated Circuit,ASIC)之间。因此,开发厂商可以于不相关装置电路(device's chipset)或无线介面(air interface)的情况下,独立开发BREW应用程式。CDMA(Code Division Multiple Access)chipsets是QUALCOMM公司的专利(specialty),但是BREW一样可以执行在使用其他无线介面标准的手机上。
BREW SDK是免费提供的,但开发者仍须安装Microsoft Visual C++ 6.0或其后续版本Visual C++.NET,方可使用由SDK提供的BREW Simulator来开发和测试应用程式。BREW Simulator是一支Windows程式,可以类比电话上的AEE(Application Execution Environment)。应用程式可以DLL的形式执行于BREW Simulator中。因为DLL只能用于Windows平台,BREW Simulator可以执行这个DLL。目前市面上的手机大部分采用ARM kernel,非关于DLL档。
BREW的应用程式执行环境(AEE)是一个精巧的软体介面层。设备厂商将它集成在各自的软体中,以支援BREW API和执行环境。在一个新终端设备中提供AEE要求设备厂商只要移植AEE即可。此外,BREW Emulator中提供了一个AEE的Windows port,所以BREW Emulator可以执行针对Windows的小程式。由于AEE占用的随机记忆体和快闪记忆体极小,适用于低端(low end)主流机型。
除了向应用程式提供BREW API服务,AEE同时管理著应用程式的执行,及时回应用户和一些紧急事件,比如说,一个正在执行的BREW应用当有来电呼入时,可以自动立即暂停(suspend);并在通话完毕之后,再自动恢复(resume)工作。
在BREW环境中,Module是基本的组织单位。发展一个BREW 应用程式可以从三个部份来解读,Module, Applet,以及Extension。一个Module可以包含一个以上的Applet,也可以包含一个以上的Extension,如下图所示,Module A拥有一个Applet A, Applet A再引用Extension X;而Module X仅拥有一个Extension;至于Module B则拥有两个Applets,以及一个Extension。有些Module是出厂时的code space(OEM Module image),也有Module是通过下载方式(download)储存于档案系统;这些Module依性质可区分为静态(static)和动态(dynamic),主要包括:dynamic Module(Applet),static Module(Applet)和dynamic extension class(Module)。
下列是 BREW 与 J2ME的比较。brew 有绝对的实力来对抗 j2me,从游戏软体的开发角度来看,BREW有许多的优点。
BREW的开发优势
相较于J2ME之下:
目前大多数的使用者会选择二者兼用,或只用J2ME. J2ME 提供较低廉的成本(无测试成本)。此外,J2ME 在欧洲广泛被使用,BREW 雄霸美国与日本市场。即使在美国,J2ME phones 的市场仍较大。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.