Symbian OS Internals——设计目标

来源:互联网 发布:如何查看淘宝消费总额 编辑:程序博客网 时间:2024/06/06 01:51
Symbian OS Internals——设计目标
 
在开始设计EKA2的时候,我们给自己制定了一些约束。我们确定了不想抛弃掉的EKA1中的某些部分,这就意味着我们想保证新的内核仍然可以做到以下几点:
1、遵循嵌入式OS的传统
2、适合资源受限的环境
3、模块化:由微内核和用户端服务器组成
4、兼容多种芯片集
5、健壮,可以容忍糟糕的代码
6、完整,保证用户数据的安全
接着,我们制定了新的目标。主要的目标是:新的核心将是实时的,并且提高了整体性能。我们决定如果能在新的操作系统上运行一个GSM协议栈,这个目标就可以达到。一个好处,而且是一个有价值的好处,是这个核心将具备更好的支持高带宽活动比如通讯和多媒体的能力。这个目标可分解为几个子目标和需求:
1、用户线程响应中断的反应时间小于等于1ms
2、核心进程响应中断的反应时间小于等于500μs
3、快速的互斥量操作(Fast mutex operations)
4、必要时,系统调用的时间长度是已确定的
5、系统调用是抢占式的
6、基于信号量(semaphore)和互斥量(mutex)的优先级队列
7、高分辨率的计时器
接着,我们还考虑了其他可以使这个系统更优化的措施,并提出了下列方案:
1、易于移植——虽然EKA1在设计上已经实现了可移植性,但为了更简单地将这个系统移植到新的硬件上,我们还可以再进一步。
2、对恶意代码(而不仅仅是写得很糟糕)的免疫力。
3、支持单核——内嵌的和用户应用代码可以在同一个处理器内核上运行。
4、为开发和调试提供更好的模拟器,这个模拟器可以更真实地模拟硬件环境。
5、更易于编写设备驱动。
当我们考虑这些设计目标的时候,我们知道在设计中有一个很重要的约束,那就是与EKA1ESUER类库的兼容性。EUSER是所有Symbian OS应用到内核的接口,而且存在很多这样的EUSER类库。
==================================================================

说明: 本文由Bequan翻译自Symbian Press的Symbian OS Internals: Real-time Kernal Programming一书。任何人需要转载或引用,请先通过Email(a-pangu@163.com或symbianchn@gmail.com)与Bequan联系,在获得许可后方可转载或引用,否则视为侵权行为。转载或引用时,请在文章中注明上述翻译信息。