Symbian EKA1 与EKA2

EKA2是Epoc Kernel Architecture的全称,作为Symbian OS第二代内核,与第一代EKA1相比提高了内核的实时性,同时只有在Symbian OS 8.1b以后的操作系统上使用,基本上运行在塞班S60第三版或UIQ3.0以上平台。而N70/72这样的手机采用Symbian OS 8.1a平台,2nd FP3功能包上。

  EKA2和EKA1相比的改进有:

  1.内核实时(real-time)增强,多线程处理能力更好,API调用更高效快速,EKA2作为一个真正意义上的32位操作系统。

  2.内存运行保护功能,这样提高了系统可靠性和稳定性,减少错误发生,随插式内存模型,支持更多的ARM处理器指令。

  3.EKA2最主要的优势还在于支援电话具信号堆栈(singalling stacks)。一般而言,Symbian OS的手机通常是执行于分散的处理器,或是同一个处理器,但是必须使用到复杂而且靠不住的“hacks”。这样的“具信号堆栈”实在过于复杂,想将程式码改写,使其能在Symbian OS自然的运作,显然不容易做到。因此,EKA2提供了客制化层级(personality layers),实现一般操作系统的基础基元(basic primitives),允许具信号堆栈在Symbian OS上可拥有更多的不变性。

  EKA2缺点:

  1.全新的内核了两层结构,一层为NanoKernel另一层为Symbian OS,而后者仍然是微内核(Micro Kernel)来保证运行高效性。

  2.EKA2在栈空间上默认情况下减少到8KB,这样程序需要精确计算内存占用,否则会引起严重的Panic错误发生,而导致程序崩溃。

  3.全新的二进制编码方式,使得新程序无法兼容老版本,底层ARM指令有了改变,为移植带来了困难。

  EKA2和EKA1不同之处:

  在Symbian S60第一、二版中我们已经看到了程序入口为多态的Dll,而S60第三版中为EXE这样可执行入口,这样做也是为了适应全新安全机制。

你可能感兴趣的:(多线程,OS,basic,手机,Symbian,平台)