The Symbian OS (779886), страница 41
Текст из файла (страница 41)
it might be on external media).The key store is a repository of private PKI keys and provides APIsfor storing and retrieving keys and for managing the store itself. Thecertificate store is a repository of root and user certificates and it providesAPIs for storing and retrieving certificates and for managing the storeitself. Root certificates typically belong to a certificate authority.
Usercertificates belong to and are authenticated by the phone owner, and arealways associated with a private key which is stored in the key store.The security-related components within the Generic Libraries collection sit between the application-level services (such as the secure installersand the Content Access Framework, which is a generic framework forcontrolling content access in a way which is transparent to applications)and the low-level implementation of the cryptographic libraries (seeChapter 10).Other Generic ServicesThe Task Scheduler provides a mechanism for performing time-basedor condition-based tasks by scheduling the launch of an appropriateapplication when the task trigger is met. (This is not a notification servicetherefore, it is an application launcher.) From Symbian OS v9.1, conditions may include Publish and Subscribe variables becoming true. Typicaluses include scheduled connections (connecting to email or message services, for example) and scheduled backup or data synchronization.
NoteGENERIC OS SERVICES BLOCK175that the Task Scheduler is a system server that always runs and whichsaves schedules to a permanent file store to ensure continuity acrossreboots.Before Publish and Subscribe, the System Agent provided the means forstoring and querying system state. From Symbian OS v9.1, most systemstate values become Publish and Subscribe RProperty values to whichclients can subscribe (given appropriate security-model capabilities). TheSystem Agent retains only a few key services, for example, it defines andcreates some default global system properties at startup and it maintainsthe Publish and Subscribe battery strength property.The Event Logger provides an interface for logging and filtered queryingof system events of interest to applications.
Built-in and user-defined eventtypes are supported. Typical uses are for creating call or message lists(a list of ‘Recent Calls’ in a phone application, for example). Eventsare expired when their lifetime is reached. However, the actual loggingengine is optional and is supplied by the licensee (in the variant userinterface on a particular device). If it is not present, calls to the loggingAPIs have no effect.The File Logger, which provides a logging to file service, is deprecatedin Symbian OS v9.1 and should be used only as a debugging tool.
(Itremains in the system for backwards compatibility purposes only.)Component CollectionsComponents are organized into two small collections of servers, framework, and libraries. The common theme of the collections is generalutility.Generic Services CollectionThis collection provides miscellaneous system services including somelegacy components (retained for API compatibility).• The Task Scheduler component is an application-launching serverthat supports creating, querying and editing of time- or conditiontriggered tasks. From Symbian OS v9.1, clients should migrate torevised interfaces.• The Event Logger component is only an interface (i.e.
it is suppliedonly as a wrapper) supporting logging of events, for example, callGeneric ServicesEventLoggerTaskSchedulerFileLoggerSystemAgentFigure 8.7 Generic Services components176THE OS SERVICES LAYERTable 8.1 Generic Services ComponentsComponent NameDevelopment NameEvent LoggerLOGENGONGOINGSystem AgentSYSAGENT2Task SchedulerSCHSVR ONGOINGFile LoggerFLOGGER, COMMSDEBUGUTILITYand message lists and retrieval, filtering and viewing by clients. Thelogging engine itself is assumed to be supplied by the variant userinterface.
If no engine is present, calls to the wrapper succeed buthave no effect.• The System Agent component is a legacy component that performeda number of useful functions for monitoring and reporting systemstate. From Symbian OS v9, the main System Agent functionality istaken over by the Publish and Subscribe service provided by the UserLibrary (see the RProperty class). The System Agent retains a fewkey services only, for example, it defines and creates some defaultglobal system properties at start-up, and it maintains the Publish andSubscribe battery strength property.• The File Logger component is a legacy utility for logging systemor application messages to a log file.
From Symbian OS v9 this isconsidered a debugging utility that is provided only for backwardscompatibility.Generic Libraries CollectionThis collection provides system-level libraries for use by applications andsystem components.• The Certificate and Key Management, Certificate Store and Key Storecomponents provide a framework for certificate and key managementthat supports public key cryptography for RSA, DSA and DH keypairs (including storage and retrieval), assignment of trust status andcertificate-chain construction, validation and revocation.
CertificateGeneric LibrariesCStd.LibraryCrypto.TokenFrmwk.Cert. &KeyMgmt.Cert.StoreKeyStoreFigure 8.8 Generic Libraries componentsMULTIMEDIA AND GRAPHICS SERVICES BLOCK177Table 8.2 Generic Libraries ComponentsComponent NameDevelopment NameCertificate and Key ManagementCERTMANCertificate StoreCERTSTOREKey StoreKEYSTORECrypto Token FrameworkCRYPTOTOKENS, FILETOKENSC Standard LibrarySTDLIBStore provides a single point of access for clients to certificates storedon the device.
Key Store is a repository of private PKI keys that maybe used to sign data, verify signatures, and so on, and provides APIsfor storing and retrieving keys and for managing the store itself.• The Cryptographic Token Framework supports the use of securehardware tokens (i.e. encrypted media cards and file systems), forexample DRM-protected games or films on SD cards or memory sticks,or their equivalent software emulations, for example, downloadedmusic tracks.• The C Standard Library is a subset of the POSIX C library which mapsC function calls in as simple a way as possible to native Symbian OScalls. It is a subset implementation and does not attempt to provide acomplete POSIX environment on Symbian OS.8.7 Multimedia and Graphics Services BlockGraphics has always been central to Symbian OS (see Figure 8.9), whichwas designed to support a sophisticated graphical user interface andsophisticated application graphics.
In Symbian OS, there is no notion ofcharacter-based applications (except for test or development purposes);all applications are intrinsically graphical. Likewise, full-color supporthas always been an integral part of the OS design; even when running on16-bit grayscale devices, 24-bit color modes were supported (which stillremains beyond the capabilities of most phones).Similarly, while the native font format is bitmapped (bitmap fontsare still preferred for small-screen devices, where pixel-perfect design isrequired to optimize for relatively small physical display size), support forFreeType vector fonts was introduced early on. Indeed sophisticated support for non-Roman fonts, including right-to-left and even bi-directionalfonts, was always seen as central to the global aspirations of the OS.178THE OS SERVICES LAYERMultimediaOpenGL ESWindowingFrameworkGraphics & Printing ServicesGraphicsDeviceInterfaceMultimedia &Graphics ServicesFigure 8.9 Multimedia and Graphics Services blockAudio data too was supported from the beginning, with a built-inrecorder application forming part of the original application set for thesystem, something many phones still cannot match.
(A Psion Series 5running the early version of what became Symbian OS beat a cassetteplayer hands-down for nailing that hard-to-master guitar lick.) SymbianOS moved onto phones when the state of the art was a polyphonic ringtone; in contrast, it allowed users to launch a complete sound clip as aphone ring tone (leading to offices full of baaing sheep and baby-gurgleeffects).Increasingly, as Symbian OS has driven into the phone market from itsbase as a more generic OS for the family of connected, PDA-like devicesfrom Psion and as phones themselves have become more sophisticated,support for full-scale multimedia has become essential.The Symbian-based Nokia 7650 was the first camera–phone outsideJapan. The Symbian-based Sony Ericsson P800 played movie clips andthe P900 shipped with a built-in MP3 player.