SEC. 12.2 AN OVERVIEW OF SYMBIAN OS 5
smartphones as the target platform. It is not a generic operating system
shoehorned into a smartphone, nor is it an adaptation of a larger operating system
for a smaller platform. It does, however, have many of the features of other larger
operating systems, from multitasking to memory management to security issues.
The predecessors to Symbian OS have given their best features. Symbian OS
is object-oriented, inherited from EPOC. It uses a microkernel design, which
minimizes kernel overhead and pushes nonessential functionality to user-level
processes, as introduced in version 6. It uses a client/server architecture, which
mimics the engine model built into EPOC. It supports many desktop features,
including multitasking and multithreading, and an extensible storage system. It
also inherited a multimedia and communication emphasis from EPOC and the
move to Symbian OS.
12.2.1 Object Orientation
Object orientation is a term that implies abstraction. An object oriented
design is a design that creates an abstract entity called an object of the data and
functionality of a system component. An object provides specified data and func-
tionality but hides the details of implementation. A properly implemented object
can be removed and replaced by a different object as long as the way that other
pieces of the system use that object, that is, the interface, remain the same.
When applied to operating system design, object orientation means that all
use of system calls and kernel-side features is through interfaces with no access to
actual data or reliance on any type of implementation. An object oriented kernel
provides kernel services through objects. Using kernel-side objects usually means
that an application obtains a handle, that is, a reference, to an object, then
accesses that object’s interface through this handle.
Symbian OS is object-oriented by design. Implementations of system facili-
ties are hidden; usage of system data is done through defined interfaces on system
objects. Where an operating system like Linux might create a file descriptor and
use that descriptor as a parameter in an open() call, Symbian OS would create a
file object and call the open method connected to the object. For example, in
Linux , it is widely known that file descriptors are integers that index a table in the
operating system’s memory; in Symbian OS, the implementation of file system
tables is unknown and all file system manipulation is done through objects of a
specific file class.
Note that Symbian OS differs from other operating systems that use object
oriented concepts in design. For example, many operating system designs use
abstract data types; one could even argue that the whole idea of a system call
implements abstraction by hiding the details of system implementation from user
programs. In Symbian OS, object orientation is designed into the entire operating
system framework. Operating system functionality and system calls are always
associated with system objects. Resource allocation and protection is focused on
P R E L I M I N A R Y P R O O F S
Unpublished Work © 2008 by Pearson Education, Inc.
To be published by Pearson Prentice Hall, Pearson Education, Inc., Upper Saddle River, New Jersey. All rights reserved.
This publication is protected by Copyright and written permission should be obtained from the publisher prior to any prohibited reproduction,
storage in a retrieval system, or transmission in any form or by any means, electronic,
mechanical, photocopying, recording, or likewise.
评论0
最新资源