Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.
EPOC Kernel Architecture 2
EPOC Kernel Architecture 2 (EKA2) is the second (the latest at the moment) version of Symbian OS kernel. Its predecessor is EPOC Kernel Architecture 1 (EKA1). Symbian has EKA2 kernel from version 8.1a and onward. The main difference between EKA1 and EKA2 is that EKA2 is real-time when EKA1 did not provide real-time guarantees. Symbian OS and EKA2 are modular.Operating system functionality is provided in separate building blocks, not one monolithic unit. Furthermore, EKA2 is modular too.
- EKA2 is single user. There is no concept of multiple logins to a Symbian OS smartphone, unlikeWindows, MacOS X, UNIX or traditional mainframe operating systems.
- EKA2 is multi-tasking. It switches CPU time between multiple threads, giving the user of the mobile phone the impression that multiple applications are running at the same time.
- EKA2 is a preemptively multi-tasking OS. EKA2 does not rely on one thread to relinquish CPU time to another, but reschedules threads perforce, from a timer tick.
- EKA2 is a priority-based multi-tasking OS with priority inheritance.
- EKA2 allocates CPU time based on a thread’s priority and minimizes the delays to a high-priority thread when a low-priority thread holds a mutex it needs.
- EKA2 is real-time. Its services are (mostly) bounded, that is it completes them in a known amount of time.
- EKA2 can be a ROM-based OS.
- EKA2 is suitable for open but resource-constrained environments. It is designed for mobile phones, and so it needs less of key resources such as memory, power and hard disk than open desktop operating systems such as Windows or Linux.