WebOS 三月学习使用分享之一


依稀记得六个月之前我还在对UCMDB原理及操作在team里侃侃而谈的分享,如今有人问我安装的故障时,我确实一脸茫然,突然觉得前一阵子看到的一句话很有道理,“经验不是工作的年限,是积累“。


那么今天我就对我前三个月做过WebOS开发做一些简单的分享,顺便巩固并记载下自己的所学习的。


我就不像其他大神一样的去阐述其历史,只说一点,过去他是属于Palm的,现在已被HP收购。


架构,与其他的智能机一样,由Linux做内核,再运用一系列的开源及自己开发内核,解释器及自己等做中间件,然后就第三方软件。在这里我附上一张图,右上角他由不同颜色表明其不同的来源,有PALM的,开源的及第三方。由此可以看出他和Android/IOS等大致相同,细致的差异在哪里我就不去比较了,感兴趣的观众可以自己去搜集相关资料。




主要的系统组件有:LunaSysMgr,  Webkit/V8,  Luna Service Bus, Core System Service(DB8 Database/ Activity Manager/ Node.js/ File Cashe/  Native Services/ Javascript Service/ Media Service / Communications Service: Telephony, WiFi, Blutetooh)


LunaSysMgr:

包括下面几部分

Platform Window Manager,Launcher, Application Manager/ Display Manager,

姑且叫它们平台窗口管理器,启动器, 应用程序管理器, 显示管理器。

平台窗口管理器:负责卡片的生成,提示,系统UI。

启动器:负责运算及初始化工作

应用程序管理器:是对应用整个生命周期的一个管理。

显示管理器:屏幕的控制,光线感应器的管理及距离感应器。


WebKit/V8

WebKit Web Browser Engine,:这是一款著名的浏览器引擎,如firefox/Chrome 都是用的这个内核。

在这个系统中它负责HTML解释执行,CSS的布局及渲染。

V8:JavaScript引擎,编译脚本为ARM/x86的,在就是Generate GC(应该是垃圾收集器)

Broswer Server

建立于WebKit/V8之上,可以分离进程,支持NPAPI(网景API),及Virtually embeddable into other application.


Luna Service Bus

高速点对点的通信,基于UNIX domian sockets

通过集线器管理的(Managed through a hub),建立点对点的连接,允许通过复制流的监控(Strenm replication

安全,消息及订阅语义(subscription semantics),动态服务启动。


DB8 Database

设备及cloud的JSON数据库

在数据库之上的库/服务,并提供以下功能

承载JSON 对象的接口,索引和查询设备,Schema enforcementes,Schema enforcement,访问control,Sync primitives

Activity Manager

主要负责系统的协调工作,控制activity生命周期的标准化接口,动态控制相对优先(进程,网络流),排队及调度activity,基于resource的activity触发(事件/resource触发)

Node.js

提供javascript运行时环境

提供附那些在浏览器中运行的javascript不可用的特性,如Service bus interface/ File System access/ Network IO

还提供服务框架及同步框架

基于V8,支持V8的程序概要分析及debugg


File Cache

管理文件系统的空间,如合并caches, 保障最小空间, 限制最大空间,交叉清理cache(根据对象的开销,大小及生命周期),对象的锁定

Secure cache object id  生成, 文件的保持从cache到reboot.


Native Service:

Transport: EAS, IMAP, POP, SMTP, SKYPE

Message:SMS, MSS, IM

Geo-Location Service, 值得一说的是,这个是负责定位。


JavaScript:

运输作用,通信然后加入列入表中

协同,备份,文件索


其他的的一些系统组件就不再一一赘述了,大致功能如上,有些翻译或许没那么准确,大家见谅。




架构大致带过之后,我们就来说说其开发环境,在这里要申明的是:这个环境是JS方向。(还好以前有记录,不然还要查很久的资料了)。


1.       JDK1.6(最新版本,安装后配置环境变量,CMD中javac –help, java –version 命令正常的话就是可用了)

2.       VirtualBox3.2 ( http://www.virtualbox.org/wiki/Download_Old_Builds_3_2) (3.2版本的VirtualBox, 4.0不支持 webOS SDK1.4)

3.       HPwebOS SDK 1.4 ( https://developer.palm.com/)(CMD 运行  palm-generate, 正常就是安装OK了)

4.       官方建议:Eclipse IDE for JavaScript Web Developers  (http://www.eclipse.org)

5.       EclipsePlug-in  (webOS插件)

(1)     webOS Plug-In( https://cdn.downloads.palm.com/sdkdownloads/eclipse-update-site/site.xml)

(安装正确之后在新建项目中可以找到webOS项目)

(2)    Aptana Plug-In(www.aptana.com)

(增强编辑效果)

上面是从官方链接上细化的出来的,下面是官方的配置链接:

http://developer.palm.com/index.php?option=com_content&view=article&layout=page&id=1661&Itemid=55




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值