Symbian OS Advanced Development Kernel Chapter EKA2

Source: Internet
Author: User

EKA2 (Kernel Architecture 2) is the most important hardware and kernel service module in Symbian OS, which manages the CPU and memory resources of the mobile phone, and provides a framework for the device driver to manage the corresponding hardware resources. The core of the Symbian OS is a layered structure, which allows it to be ported to different hardware platforms, which must be implemented Assp/variant, which provides the most basic dedicated hardware services for the kernel. The kernel also allows the creation of additional layers, called personalization, to emulate the traditional real-time operating system, so that these operating system programs can run on Symbian OS.

EKA2 includes the following sections: Nanokernel: Mainly used to handle the most basic thread scheduling, synchronization, and clocking functions. Symbian OS kernel: Uses the services provided by Nanokernel to provide the Symbian OS with the core functionality required by the system, including threads, processes, memory blocks, in-process communications, and other operating system objects. Memory model: Provides address space for each process, as well as in-process data transfer, memory allocation, and mapping. It encapsulates access to the Hardware memory Management Unit (MMU), allowing Nanokernel and Symbian OS kernel to be independent of the MMU. Variant DLL: Provides hardware-related services required by kernel, such as clock pulse interrupts and real-time clock access. The system is based on the ASSP (application-specific standard product, the specialized standards products) and has a ASSP DLL to share the responsibilities of the variant DLL. Onboard Support Package BSP provides variant libraries for related hardware. Extension and device driver: used to control peripherals and provide interfaces between peripherals and Symbian OS.

The following figure shows the location of these parts in the system:

Figure 1 Core Schema Diagram (Source: SDL)

The code implementations of these sections are hardware-independent and hardware-dependent. Hardware-related code is divided into different levels to help with porting. These levels include the independent layer (independent), the platform layer (Platform), the model layer (models), the CPU layer, and the two peripheral layers Assp and variant. The independent layer (independent) provides 60% of the basic code of the Nanokernel and Symbian OS kernel, and the platform layer (Platform) is primarily an executable image of the emulator or the actual device, which only has the memory model, It is divided into two types: simulator and real device, model layer supports the memory of each process, and CPU layer provides different code according to processor in OS, Nanokernel, Memory Model, Symbian OS kernel have code on this layer, The assembly code belongs to this layer. As shown in the following illustration:

Figure 2: Kernel source hierarchy Diagram (Source: SDL)

As can be seen from the above figure, Nanokernel code implementation is part of the independent layer, part of the CPU layer; Symbian OS Kernel code implementation is part of the independent layer and the other part is in the CPU layer; memory Model in platform, model, CPU three layer has been implemented.

In addition, Nanoknernel contains most of the core CPU architecture implementations in the CPU layer, such as exception/interrupt handling, context switching mechanisms, and so on. There are also things that are conceptually independent of layer functionality, but are in performance considerations at this level with assembler implementations such as deferred call (DFC) processing and arm-based clock processing. The implementation of the Memory model at the CPU level is dedicated to the CPU.

The variant provides control-specific hardware implementations that are expected by Nanokernel and Symbian OS kernel.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.