The Symbian OS (779886), страница 39
Текст из файла (страница 39)
It supports the separation ofdisplay attributes (layout and drawing) from logical text attributes(styles). It is used, for example, by the Uikon Core API for editable textwindows and, more generally, by applications to format rich text.• The Text Handling component supports the storage of editable textand its formatting attributes, for example, paragraph alignment andcharacter fonts. It is used with the Text Formatting text view APIs.TextRenderingTextHndlng.TextFormattingFigure 7.15 Text Rendering componentsInternet and Web Application Support CollectionThis collection (see Figure 7.16) provides Internet, web and WAP application support.Internet & Web Application SupportBookWAPmarksPushSupport Frmwk.WAPPushMTMHTTPHTTPHTTPHTTPFTPTrans. ProtoFilter UtilitiescolFrmwk.
PluginsPlugins Library EngineFigure 7.16 Internet and Web Application Support componentsTelnetEngine162THE APPLICATION SERVICES LAYERTable 7.14 Internet and Web Application Support ComponentsComponent NameDevelopment NameHTTP TransportFrameworkHTTPHTTP Protocol Plug-insHTTPHTTP Filter Plug-insHTTPHTTP Utilities LibraryINETPROTUTILBookmark SupportBOOKMARK SUPPORTTelnet EngineTELNET EFTP EngineFTPWAP Push FrameworkWAPPUSHWAP Push MTMWAP-BROWSER• The HTTP Transport Framework component enables clients to establish a transport session for HTTP-like protocols, provides core APIs fortransport sessions, transactions, and messages.• The HTTP Protocol Plug-ins component provides dynamically loadedapplication and network protocol handlers, including TCP/IP, HTTP1.1 and WSP 1.2.• The HTTP Filter Plug-ins component provides dynamically loadedplug-ins to configure a transport session before use.
It includes defaultHTTP and WSP filters that encapsulate responses to session events,for example, client authentication, message validation and messageredirection.• The HTTP Utilities Library component stores utility classes commonlyused by Internet protocol parsing components. It contains implementations for URIs, a standardized time format, and simple text parsingutilities.• The Bookmark Support component provides a bookmark database forweb browsers.• The Telnet Engine component provides a Symbian OS Telnet daemonand supports client sessions for communicating with a specified host.• The FTP Engine Symbian OS FTP daemon, supports client sessions forcommunicating with a specified host.
Does not expose public APIs.COMPONENT COLLECTIONS163• The WAP Push Framework component provides an interface betweenthe WAP stack and the messaging infrastructure to support WAP as amessaging transport.• The WAP Push MTM component provides a WAP stack implementation supporting messaging interfaces.Printing Support CollectionThis collection (see Figure 7.17) provides standard dialogs for setting upprint jobs and controlling access by application clients. It is considered alegacy component for most devices.PrintingSupportPrintingServcs.Figure 7.17 Printing Support componentsTable 7.15 Printing Support ComponentsComponent NamePrinting ServicesDevelopment NamePRINT8The OS Services Layer8.1 IntroductionThe OS Services layer (see Figure 8.1) provides the servers, frameworksand libraries that implement the core operating system support for graphics, communications, connectivity, and multimedia, as well as somegeneric system frameworks and libraries (Certificate and Key Management; the C Standard Library) and other system-level utilities (loggingservices).
In effect, it is the layer that extends the minimal base layers ofthe system (the kernel and the low-level system libraries that implementUIFrameworkApplicationServicesOSServicesOS ServicesBaseServicesKernelServices &HardwareInterfaceFigure 8.1 OS Services layer in the system model166THE OS SERVICES LAYERthe basic OS primitives and idioms) into an extensible, programmable,and useful operating system.In terms of the number of components, it is by some margin the largestsingle layer of the system. To bring clear structure to it, the System Modelorganizes the layer into four major blocks by broad technology type (seeFigure 8.2):• Generic OS Services• Comms Services• Multimedia and Graphics Services• Connectivity ServicesThese blocks are relatively self-contained.
(Generic OS Services is usedby the other blocks in the layer; Connectivity Services uses the transporttechnologies of Comms Services.)This chapter describes the Generic, Multimedia and Graphics, andConnectivity Services blocks; the Comms Services block is described inChapter 9.OSServicesGeneric OSServicesComms ServicesMultimedia & GraphicsServicesConnectivityServicesFigure 8.2 Blocks of OS Services components8.2 PurposeSymbian OS is a microkernel operating system.
The kernel is restricted toproviding the minimum of essential services, specifically those requiredto implement process execution and memory access models. These areextended by the remaining (non-kernel) components of the base layers ofthe system, to support bringing up a bare system on hardware, providingaccess to peripherals and a file system, and to support a program executionmodel. Higher-level system services are built on top of this foundation.In Symbian OS, the higher-level system services are located in theOS Services layer.
These services provide the specialized system-levelsupport required by other system components and by higher layers of thesystem, as well as by applications. Thus, for example, graphics support,communications support including networking and telephony, and theconnectivity infrastructure are all provided as OS services.PURPOSE167Generic OS Services BlockThis block provides a small number of generic services for use directlyby applications, as well as some specific programming libraries intendedfor application and system use (including for use by the user interfaceand application support layers above).• The logging and task-scheduling services are used by applications aswell as by system components.• The C Standard Library, providing a basic POSIX environment, is usedby system components (for example, Java) and is also useful to thoseporting software from other platforms.• There are libraries and frameworks supporting cryptographic andcertificate-based security, including the key and certificate stores.Multimedia and Graphics Services BlockThis block provides all graphics services above the level of hardwaredrivers and provides the frameworks supporting multimedia services.• It provides windowing, event handling, bitmap and vector graphicssupport including all font, drawing and bitmap functions, as well aslow-level support for WYSIWYG printing.• It defines a comprehensive set of multimedia APIs and provides aframework for implementation.
It includes camera and broadcasttuner APIs, sound capture and recording APIs, still and moving imagecapture and recording APIs, display and play APIs, and conversionand manipulation APIs.Generic ServicesGeneric LibrariesGeneric OSServicesFigure 8.3 Generic OS Services block168THE OS SERVICES LAYERMultimediaOpenGL ESWindowingFrameworkGraphics & Printing ServicesGraphicsDeviceInterfaceMultimedia & GraphicsServicesFigure 8.4 Multimedia and Graphics Services blockConnectivity Services BlockThis block provides the device-side support for connectivity services, forexample backup and restore, file transfer and browsing and applicationinstallation.
(Data synchronization is provided in the Application Serviceslayer, see Chapter 7.)8.3 Design GoalsWhile the detail has changed considerably, most of the services locatedin the OS Services layer can be traced back to the original, early architecture of Symbian OS. In the earliest designs, the principal communicationstransport technology was serial, although networking support and, inparticular, thorough support for standard Internet protocols had alreadybeen identified as an essential requirement, leading to the design ofa networking infrastructure tightly bound to the communications services.The first work on telephony-specific services, meanwhile, was wellunderway even before the first release of the OS, and relevant requirements were being evolved in collaboration with licensees.