BREW SDK 版本的区别(下)

简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/6507740 BREW 4.x 极大的增强了BREW应用的内存保护,所有的BREW应用都可以在一个严格的“沙箱”环境中运行,从而保证一个应用导致的内存崩溃不会影响其他的应用,或者手机的底层软件以及系统软件。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/6507740

BREW 4.x 极大的增强了BREW应用的内存保护,所有的BREW应用都可以在一个严格的“沙箱”环境中运行,从而保证一个应用导致的内存崩溃不会影响其他的应用,或者手机的底层软件以及系统软件。基于BREW4.x的应用可以方便的访问文件系统、手机设备以及其他的系统服务。

BREW4.X支持加载ELF文件,这意味着BREW应用可以使用全局变量了(尽管BREW中不推荐使用全局变量)。同时,这也使浮点操作成为可能,而且没有全局数据的扩展类就可以加载到共享的代码空间里,因而可以非常容易地移植其他平台的应用(例如Symbian,Windows Mobile上的应用)到BREW的平台上。

BREW 4.x完全改变了以前版本的系统构架(图11-14),是建立在 “组件服务”之上的,组件服务是新增的一层,用来支持进程,线程和模块的加载。

BREW4.x的内核抽象层即组件服务层,将应用框架与操作系统完全隔离开来,具有操作系统的独立性,支持Rex,Linux等多种嵌入式实时操作系统,为API的移植提供了高度的灵活性。BREW4.x支持模块和执行文件的动态加载,即运行时查询其他服务。

 

 


 

 

BREW4.x再往后演进就是移动平台BMP(BREW Mobile Platform)了。 BMP统一了各种软件技术,形成了单一的开放平台(图11-16)。在兼容现存BREW和扩展类的同时,融合了uiOne和J2ME,引进了多窗口技术,Lua, Flash等,丰富了用户接口和移动互联网的集成。

相对于移动互联网设备,BMP是一个开发的操作系统,为运营商,手机厂商和开发商提供免费的SDK。运营商和手机厂商能够灵活地控制和使用源代码,免费的SDK可以自由的下载使用而没有任何限制。BMP支持多种运行环境,为所有支持的技术提供了相应的仿真器,并且增强了开发工具以及面向互联网的web门户。BMP的应用层源代码对开发商是开放的,可以随意修改,定制和扩展应用,并且移动平台是与下载系统独立的。BMP的基础执行环境是跨系统的,手机厂商可以对其自由扩展。

 

对于用户界面而言,所有的BREW扩展和uiOne全部免费开放给开发商,例如BUIW,SQLite数据库服务,True type 字体引擎,TrigML与Lua的UI引擎等,并计划使用Eclipse作为开发工具的集成环境。应用可以创建多个窗口,由窗口管理器来控制布局、显示堆栈和表现行为等。BMP允许应用间共享显示区域,支持屏幕间切换的渐变效果,更重要的是,应用可以直接显示在待机屏上。

Flash Lite 是BMP中的一个优化过的Flash播放器,开发商可以完全使用Flash技术在手机设备上进行开发。LUA是另一个开源的脚本语言,与TrigML集成在一起,能够方便uiOne的开发,当然也可以使用Lua做任何想做的事情。

QVM 是一个基于标准的MIDP / CLDC的J2ME解决方案的BREW实现,是一个硬件加速的多任务虚拟机,支持大多数的JSR-248 MSA 特性(不考虑具体的商务授权)。由于是通过BREW API 实现的,并且与窗口管理器集成在一起,所以能够拥有和手机自身应用一样的性能。

            BMP中的数据库服务才开始称得上是真正的数据库服务,是一个基于SQL的数据库实现,支持SQL语句查询并拥有数据同步机制。数据库的服务可以方便的对内容进行查找,排序和索引,内容即可以在本地的文件系统上也可以在外存卡上。BMP开始完善的支持触摸屏技术和POSIX API。POSIX (Portable Operating System Interface)是由电子和电气工程师协会(Institute of Electrical and Electronic Enginees,IEEE)提出的一系列标准,用于定义一个可移植的操作系统接口。实际上,Linux为什么与UNIX这么相象, 原因之一就在于Linux遵循POSIX标准.

   BMP 对内容管理提供了强大的支持,IMedia 开始支持OMA 和Janus(微软的DRM机制) 的内容保护。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wireless_com/archive/2010/07/12/5728906.aspx

目录
相关文章
|
6天前
|
编译器 API 定位技术
API和SDK的区别
API 和 SDK 的区别在于:API 是一组定义了软件组件之间交互规范的接口,用于实现不同软件组件之间的通信;而 SDK 是一个全面的工具集合,包含 API、编译器、调试器、文档等,用于特定平台的应用程序开发。SDK 范围更广,内容更丰富,更具体和具象化,适合复杂的开发需求;API 则更加抽象,侧重于功能的定义和调用方式。
|
4天前
|
编译器 API 定位技术
API和SDK的区别
API(应用程序编程接口)和SDK(软件开发工具包)的主要区别在于范围、内容、抽象程度及使用方式。API定义了软件组件间的交互规则,范围较窄,更抽象;而SDK提供了一整套开发工具,包括API、编译器、调试器等,范围广泛,具体且实用,有助于提高开发效率。
|
5月前
|
开发工具
钉钉新版本sdk中如何获取用户手机id
钉钉新版本sdk中如何获取用户手机id
|
2月前
|
缓存 JavaScript 前端开发
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)更新时间(2020-10-29)
|
3月前
|
机器学习/深度学习 人工智能 Java
人工智能平台PAI使用问题之Java SDK支持哪些版本
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
4月前
|
消息中间件 负载均衡 网络性能优化
消息队列 MQ产品使用合集之 终端sdk和云端sdk的区别是什么
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
4月前
|
存储 人工智能 Java
2024创建boot时 项目SDK11不支持所选的版本Java21 请选择较低版本的java 解决方案
2024创建boot时 项目SDK11不支持所选的版本Java21 请选择较低版本的java 解决方案
49 2
|
4月前
|
jenkins 持续交付 开发工具
Android使用Jenkins打包自动维护sdk版本号
Android使用Jenkins打包自动维护sdk版本号
49 0
|
5月前
|
Java 开发工具 Maven
sdk2.9.2的版本缺少方法
在IntelliJ IDEA中,SDK版本2.9.2。当前阿里云Maven仓库被用于获取SDK。需要新SDK
39 0
|
5月前
|
数据采集 缓存 Linux
🔥🔥🔥最稳定好用的跨平台SDK版本管理器(version-manager)
version-manager (vm)是一个全平台的、精简的版本管理工具,旨在无缝管理多种编程语言,包括新兴语言如 vlang、zig 和 typst。与fnm、sdkman等工具不同,vm专注于提供流畅、稳定的体验,通过内置机制隔离和缓存爬虫数据,避免插件需求。它支持代理设置和多线程下载,优化了国内用户下载速度。vm覆盖40+语言和工具的安装、切换及环境管理,简化了资源查找和SDK管理。欢迎访问 <https://github.com/gvcgo/version-manager> 参与项目。演示动图分别适用于MacOS、Windows和Linux。
🔥🔥🔥最稳定好用的跨平台SDK版本管理器(version-manager)

热门文章

最新文章