AO(活动对象)

AO,Active Object,是Symbian os的其中一个基本概念,也是独特于其他嵌入式手机操作系统的一个概念。你听说过哪个系统也有AO?

可是为什么AO在Symbian中有如此地位?参考以下几点:
 1.效率

-- 同一线程活动对象之间的切换比线程间的切换快将近10倍。
2.资源开销

--线程的内存开销为 4KB的内核空间开销 + 8KB的用户空间开销,而一个活动对象的大小仅为几百字节。
3.处理复杂度

--多线程的切换务必考虑共享资源的处理,多线程是抢占式,必须使用信号亮等措施保护共享资源。而活动对象不是抢占式的,编程更简单,也更安全。
4.共享内存

--活动对象在同一个线程中运行,更容易的共享内存。

和一切辩证的事物一样,有优点就必有其缺点。上面也提到过非抢占式的AO,由此也带来了它的缺点:实时性没有多线程高!
这需要设计者来一个权衡了。

当初的Symbian操作系统应用的手持设备不论在处理器还是内存资源上,和当今的手机是天壤之别,Symbian作为智能手机操作系统的先驱,AO的创新性广泛使用就顺利成章了。

欢迎指正!

posted on 2010-05-24 22:33  魏方  阅读(355)  评论(0编辑  收藏  举报

导航