|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> |
|
10 <!DOCTYPE concept |
|
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-D5EE0A17-2246-4CB3-9CE5-538F1E01F8D4" xml:lang="en"><title>What is Adaptation?</title><shortdesc>Provides a brief overview of hardware adaptation .</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
13 <section id="GUID-66019FCA-913D-4BC1-B823-038A3CCB8602"><title>Adaptation</title><p>Adaptation is the process of adding a hardware or a platform service |
|
14 to the device, it includes:</p><ul> |
|
15 <li><p>the required hardware</p></li> |
|
16 <li><p>a list of device drivers to be written</p></li> |
|
17 <li><p>the list of required Platform services</p></li> |
|
18 <li><p>the process of porting the operating system to the hardware</p></li> |
|
19 <li><p>integration of peripherals possibly created by third parties</p></li> |
|
20 </ul><p>Base porting and device drivers involve platform specific |
|
21 implementation on hardware.</p></section> |
|
22 <section id="GUID-F6B4ED47-12F9-450D-AE96-930939382C7A"><title>The |
|
23 Adaptation Layer and Platform services</title><p>The adaptation layer |
|
24 interfaces between the operating system and hardware: it is a hardware |
|
25 abstraction layer extended with modular functionality. It is partitioned |
|
26 into platform services and client interfaces. The hardware manufacturers |
|
27 implement the platform services in platform-specific instructions. |
|
28 The device driver writers use the client interface in their code to |
|
29 control various hardware. </p><fig id="GUID-3C3C24BE-B6B9-4738-83A4-DF05C3CDC19C"> |
|
30 <title>Adaptation Layer, Platform services and hardware</title> |
|
31 <image href="GUID-2C312536-2410-42D7-B976-F7CF99492DEA_d0e344_href.png" placement="inline"/> |
|
32 </fig><p>The purpose of Platform services:</p><ul> |
|
33 <li><p> to make porting easier,</p></li> |
|
34 <li><p> to enable hardware vendors to supply standard solutions, |
|
35 and</p></li> |
|
36 <li><p> to create a common interface for use by chipset vendors, phone |
|
37 vendors and peripheral vendors.</p></li> |
|
38 </ul><p>The simplest Platform services are sets of APIs running in |
|
39 kernel space and corresponding to discrete items of hardware. Other |
|
40 Platform services form part of frameworks which may extend into user |
|
41 space and higher levels of the operating system. Some Platform services |
|
42 interact with other Platform services within the adaptation layer, |
|
43 forming a logical stack which may cross the boundary between adaptation |
|
44 layer and operating system at several points. A Platform service is |
|
45 not necessarily implemented on hardware: some are implemented wholly |
|
46 or partly as device specific software.</p><p>Implementers are provided |
|
47 with:</p><ul> |
|
48 <li><p>the APIs to be implemented, with an explanation of the intended |
|
49 functionality</p></li> |
|
50 <li><p>information about the associated framework and stack if appropriate</p></li> |
|
51 <li><p>a statement of any associated standards and protocols</p></li> |
|
52 <li><p>information about the tools required</p></li> |
|
53 <li><p> tests to prove the implementation once it has been written</p></li> |
|
54 </ul>They are sometimes also given a reference implementation.</section> |
|
55 </conbody></concept> |