Sunday, April 12, 2009

Kernel and user library





The kernel runs in privileged mode, owns device drivers, implements the scheduling policy, does power management and allocates memory to itself and user-mode (that is, nprivileged)processes. It runs natively on ARM cores. The kernel implements a message-passing framework for the benefit of user-side servers (such as the networking and telephony stacks and the file system). The user library is the lowest level usermode code which offers library functions to user-mode code and controlled access to the kernel. Here are the main features:
process, thread, program and memory management.
error handling and cleanup framework.
descriptors – strings of characters and buffers of binary data.
container classes – arrays and lists.
active objects, for event-driven multitasking without requiring the overheads of multithreading.
client-server architecture, for simple and efficient inter-process communication. The clientserver architecture supports both thread-relative and process-relative client resource ownership.The latter is to ease porting of code written for other platforms to Symbian OS, and delivers considerably enhanced Java performance .
hardware abstraction layer:


(HAL) presenting a consistent interface to hardware across alldevices.
a kernel-side power model, to allow fine-grained power management.
silent running mode – device can operate with screen switched off.
locale support including currency, time and date formatting.
internal and tightly-coupled RAM support.
the kernel can be extended by the use of DLLs (such as device drivers and kernel extensions)that can link dynamically against the kernel.

No comments:

Post a Comment