report

Transcription

report
FP7-ICT-2009-5 257103
page: 1 of 229
Target Platforms, target Requirements and Platform IPRs
webinos project deliverable
Target Platforms, target Requirements
and Platform IPRs
November 2011
This work is partially funded by webinos, an EU-funded project under the EU FP7 ICT Programme, No 257103.
This report is a public deliverable of the webinos project. The project members will review any feedback received; updates will
be incorporated as applicable. The webinos project reserves the right to disregard feedback without explanation. Late in the
year, updates to the report may be published on www.webions.org as well as being made available as a live and community
maintainable wiki.
If you want to comment or contribute on the content of the webinos project and its deliverables you shall agree to make
available any Essential Claims related to the work of webinos under the conditions of section 5 of the W3C Patent Policy; the
exact Royalty Free Terms can be found at : http://w3.org/Consortium/Patent-Policy-20040205/.
This report is for personal use only. Other individuals who are interested to receive a copy, need to register to
http://webinos.org/downloads. For feedback or further questions, contact: [email protected]
DISCLAIMER: webinos believes that the statements contained in this publication to be based upon information that we
consider reliable, but we do n o represent upon as such. Opinions expressed are current opinions as of the date appearing on
this publication only and the information, including the opinions contained herein, are subject to change without notice. Use
of this publication by any third party for whatever purposes should not and does not, absolve such third party from using due
diligence in verifyting the publication’s contents. webinos disclaims all implied warranties, including, without limitation,
warranties of merchantability or fitness for a particular purpose. Webinos, its partners, affiliates, and representatives, shall
have no liability for any direct, incidental, special, or consequential damages or lost profits, if any suffered by any third party
as a result of decisions made, or not made, or actions taken or not taken, based on this publicationthat it is accurate or
complete and it should not be relied.
Copyright webinos project © 2011 webinos.org
page: 1 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 2 of 229
Target Platforms, target Requirements and Platform IPRs
Abstract
This document outlines the analysis and process the webinos consortium undertook in order
to identify the most suitable platforms upon which to realize and implement webinos. The
process for analyzing and shortlisting suitable platforms is as follows:
We analysed the technical, commercial and licensing/IPR aspects of 27 operating systems
across 4 domains and 3 web rendering engines. This process provided a SWOT analysis and a
verdict with regard to that operating systems appropriateness for the purposes of webinos.
Additionally this report identifies specific device side integration issues that should be
understood with regard to selecting the most appropriate operating systems. Our
recommendations are that webinos should prioritize implementation on the following
platforms:




Windows 7 Desktop
Mac (desktop)
Android
Linux (Debian) distribution
Meego
Finally there are resourcing, governance, licensing and IPR recommendations provided
which should guide the setting-up of webinos as an open source project. These
recommendations acknowledge that webinos will be borrowing heavily from pre-existing
upstream open source projects and as such there will be pre-existing open source
obligations and requirements to be considered.
page: 2 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 3 of 229
Target Platforms, target Requirements and Platform IPRs
Table of Contents
webinos project deliverable ...................................................................................................... 1
Target Platforms, target Requirements and Platform IPRs ....................................................... 1
INTRODUCTION ......................................................................................................................... 6
Intended Audience................................................................................................................. 6
Document structure............................................................................................................... 6
What is webinos? ................................................................................................................... 7
Objectives of this Report ....................................................................................................... 7
Guidance for Readers ............................................................................................................ 8
Chapter 1 ................................................................................................................................... 9
Introduction ........................................................................................................................... 9
Comparison Criteria & Methodology ..................................................................................... 9
Technical Commercial and Licensing info criteria capture template .................................. 10
Platform-partner assignments ......................................................................................... 13
Chapter 2¶ ............................................................................................................................... 16
Operating Systems Analysis ................................................................................................. 16
PC ..................................................................................................................................... 16
Windows 7 ................................................................................................................... 16
MAC OS-X .................................................................................................................... 28
Debian.......................................................................................................................... 39
FreeBSD ....................................................................................................................... 45
Mobile / Tablet¶ .............................................................................................................. 51
Symbian ....................................................................................................................... 51
Android (mobile) ......................................................................................................... 56
Windows Phone........................................................................................................... 68
iOS................................................................................................................................ 73
Samsung bada.............................................................................................................. 78
page: 3 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 4 of 229
Target Platforms, target Requirements and Platform IPRs
BlackBerry .................................................................................................................... 85
Linux (raw) ................................................................................................................... 90
Ubuntu Unity ............................................................................................................... 96
MeeGo ....................................................................................................................... 100
WebOS ....................................................................................................................... 110
Home Media ................................................................................................................... 114
Google TV .................................................................................................................. 114
Mediaroom ................................................................................................................ 121
MythTV ...................................................................................................................... 127
MeeGo ....................................................................................................................... 132
NetTV ......................................................................................................................... 137
Samsung TV ............................................................................................................... 143
HbbTV ........................................................................................................................ 148
AppleTV ..................................................................................................................... 154
XBMC ......................................................................................................................... 158
Automotive .................................................................................................................... 163
MeeGo IVI (reference implementation for GENIVI) .................................................. 163
Android (AutoLinQ) ................................................................................................... 169
Microsoft Windows Embedded Automotive ............................................................. 175
QNX Car ..................................................................................................................... 181
WEB rendering engines analysis .................................................................................... 186
QT .............................................................................................................................. 186
Mozilla Firefox ........................................................................................................... 193
Chromium .................................................................................................................. 200
Chapter 3 - Shortlisting and Recommendations for platforms¶ ........................................... 204
Objective ............................................................................................................................ 204
Platform Prioritization ....................................................................................................... 204
Discounted Platforms ........................................................................................................ 204
Proposed Platforms ........................................................................................................... 208
Chapter 4 Device-side Implementation Architecture ........................................................... 213
Introduction ....................................................................................................................... 213
page: 4 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 5 of 229
Target Platforms, target Requirements and Platform IPRs
WRT.................................................................................................................................... 214
PZP ..................................................................................................................................... 215
APIs .................................................................................................................................... 217
Chapter 5 - Recommendations for licensing and IPR ............................................................ 219
Introduction ....................................................................................................................... 219
Resourcing scenarios for webinos ..................................................................................... 221
Proposed governance model for webinos open source project ....................................... 222
page: 5 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 6 of 229
Target Platforms, target Requirements and Platform IPRs
INTRODUCTION
Intended Audience
This document provides the target platforms, target requirements and platform IPRs that
are needed to deliver the webinos system.
Document structure
This document is structured in four different Chapters.
Chapter 1 details the Template used to compare the available Desktop, Mobile, Home Media
and Automotive platforms using technical, commercial and licensing criteria. These criteria
are then summarised via a SWOT (strengths, weaknesses, opportunities and threats) analysis
along with a verdict i.e. how appropriate is this platform to form part of webinos.
Chapter 2 details the actual Operating System platforms review. This Chapter forms the bulk
of the Report and covers the following platforms:PC
Mobile/Tablet
WEB rendering engines analysis
 Windows 7
 MAC OS-X
 Debian
 FreeBSD
______________________
 Symbian
 Android - Mobile
 Windows Phone
 iOS
 Samsung bada
 BlackBerry
 Linux (raw)
 Ubuntu Unity
 MeeGo
 WebOS
Automotive



Home media









Google TV
Mediaroom
MythTV
MeeGo
NetTV
Samsung TV
HbbTV
AppleTV
XBMC




QT
Mozilla Firefox
Chromium
MeeGo IVI (reference implementation for GENIVI)
Android (AutoLinQ)
Microsoft Windows Embedded Automotive
QNX Car
Chapter 3 proposes the recommended platforms that will contribute to or be part of
webinos, detailing the proposed platforms and discounted platforms, including justification
and reasoning for both.
Chapter 4 considers the Device side Implementation Architecture, to the extent that this
must be a factor in considering which platforms webinos should focus on or use as part of its
solution.
page: 6 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 7 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 5 provides recommendations for the management of source code created by
webinos with regard to licensing and Intellectual Property Rights (IPR) management. It also
considers some scenarios for further resourcing of webinos post EU funding and proposes a
suggested governance model for webinos, taking into consideration the preferred platforms
against which webinos will be implemented.
What is webinos?
The webinos project has been tasked to define and deliver an Open Source Platform and
software components for the Future Internet in the form of web runtime extensions, and
complementary infrastructure components, to enable web applications and services to be
used and shared consistently and securely over a broad spectrum of converged and
connected devices, including mobile, PC, home media (TV) and in-car units.
Objectives of this Report
Based on the technical, commercial and licensing/IPR requirements and the findings
provided by associated investigations, this Report identifies the most appropriate platforms
which are selected for the later realization of the webinos system.
According to the selected platforms, this task also identifies special requirements to the
architectural design which may be raised by the platform selection. Thus, the risk of
introducing design issues in later webinos work is reduced.
Further to the technical considerations, the task bases its selection of platform (or parts
thereof), considering underlying IPR and licensing models. Only if these are acceptable to a
wider community, can the solution be really successful.
The task also produces recommendations on the IPR, licensing and governance models that
should constitute to best practices in Europe, especially as no prior best practices exist in
this domain.
page: 7 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 8 of 229
Target Platforms, target Requirements and Platform IPRs
Guidance for Readers
We appreciate that this is a dense Report with a huge amount of detail and information. In
order to aid the Reader we propose that Readers who cannot devote the time to read the
complete Report concentrate on the following Chapters:Chapter 1 - all
Chapter 2 – We would recommend that readers read at least the following sections of
Chapter 2 as these sections highlight those platforms that will be prioritized for
implementation of webinos i.e. Windows 7 Desktop, Mac (desktop), Android, Linux (Debian
Distribution) and MeeGo
Chapter 3 – all
Chapter 4 – all
Chapter 5 – all
page: 8 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 9 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 1
Introduction
Based on the preferences of the consortium partners and their customers and the findings
and recommendations provided by our earlier Report on Landscape and IPR Analysis, this
Report will assess and recommend the most appropriate platforms which are selected for
the initial and long term realization of the webinos reference system.
According to the selected platforms, this task will also identify special requirements to the
architectural design which may be raised by the platform selection. Thus, the risk of
introducing design issues later in webinos is reduced.
Further to the technical considerations, the task shall base its selection of platform (or parts
thereof) also considering underlying IPR and licensing models. Only if these are acceptable
to a wider community, can the solution be really successful.
This Report shall also produce recommendations on the IPR, licensing and governance
models that should constitute to best practices in Europe (especially as no prior best
practices exist in this domain) and will be crucial for progressing and "open sourcing"
webinos deliverables.
Comparison Criteria & Methodology
The focus of the document is to provide justification and rationale for the selected primary
& secondary target platforms. It must be stressed that the aim is not to duplicate the work in
webinos Report Landscape, Governance & IPR but leverage and extend it.
The aim of the document is to capture and gauge the know-how of the consortium and more
importantly the market sentiment as this is perceived by the project partners via their
customers and contact with the broader industry. Therefore the criteria was compiled and
reviewed within webinos focusing on the qualitative criteria that were not captured in our
earlier investigations (e.g. market sentiment and industry partner perspective) but also on
the technical side focusing on feasibility (technical know-how within the consortium, source
code availability), interoperability (cross-platform code bases) and estimated commercial
viability. In short, this document goes beyond defining a rigid set of specifications and into a
more pragmatic approach on how webinos should minimize risk in order to deliver a
successful end product in time.
More importantly this document builds on our earlier Reports along with partner insights
and further analysis in the document in order to produce a recommendation for the IPR,
licensing and governance model that will be adopted by webinos to ensure virality,
commercial traction and nourish the creation of business models above it. The remaining of
the section lists all the criteria (technical, commercial, IPR/licensing) that were decided and
considered by the partners for analysis and assessment of the individual platforms (OSes and
Web run-time environments)
page: 9 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 10 of 229
Target Platforms, target Requirements and Platform IPRs
Technical Commercial and Licensing info criteria capture template
Introduction¶
General overview of platform (MAX THREE PARAGRAPHS):
Background - when was it launched?
Ownership - who owns it?
Relevance - what is its relevance for webinos implementation?
Part A1: Technical Information (web rendering engines) ¶
Web components¶
Briefly describe (MAX THREE PARAGRAPHS):
HTML 4 rendering capabilities
HTML 5 rendering capabilities
JavaScript engine capabilities
Widget availability
Briefly describe (MAX THREE PARAGRAPHS):
Digital signature code availability
How are widgets packaged?
WARP implementation
Extensibility framework (feature tags)
Part A2: Technical Information (Operating Systems)
General OS features
Portability
Security
Connectivity
Reliability
Technical
criteria
Usability
Criteria
Product
Diversity
On which devices or platforms is the OS available
How the High level components like Certificate management, Privilege apps
and Cryptography are met?
How well are connectivity technologies including GSM/EDGE, IDEN, CDMA,
EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, and WiMAX are supported?
What is the general developer and end user feedback on the stability of the
platform?
What is ‘Memory footprint’ the amount of memory used by the operating
system In these platforms? How well are technical criteria like Power
management, Multitasking, Multiprocessing, Configuration possibility,
Memory requirements satisfied for webinos?
How well does the platform address usability?
The possibility to innovate and develop new applications
API codebase¶
Is there platform (or 3rd party) support for some of the more critical, and more
sensitive enablers like Bluetooth, RFID, DNS, UPNP, USB?
Note: webinos will require access to a number of low level capabilities as identified in various
Architecture and API specifications. For each of these features it is worth identifying 3rd
party APIs that can be used to implement this capability. For example, if the Bluetooth
support on a particular Linux distribution is poor, this could jeopardise a successful
implementation.
page: 10 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 11 of 229
Target Platforms, target Requirements and Platform IPRs
Part B: Commercial information¶
Device coverage
On how many differing device types can this platform
support?
Platform maturity
How stable (i.e. free from bugs) is this platform?
Market
How widely is this platform deployed in the market and
penetration/availability
products?
Availability
Is there an Implementation available that can be used by
webinos?
Feasibility
Is webinos implementable within a reasonable time frame?
Partner perspective
Who are the customers, existing codebase, market outlook,
resources, exploitation plans?
Risks
What are the risks related to using this platform for webinos
implementation?
Part C: Licensing and Governance¶
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms project mailing lists, forums, bugtracking databases, developer
documentation and tools - available
to all developers?
Is the project roadmap publicly
available?
Transparency of decision
mechanisms – Are project meeting
minutes publicly available to
understand decision-making in the
page: 11 of 229
4. Yes
3. No – discriminates with regard to a. developers, b.
source code or c. time
2. No – discriminates with regard to two of the above
1. No – discriminates with regard to all of the above
? Not known
4. Yes – approved license and permissive (e.g.
Apache, BSD, MIT)
3. Yes – approved license and weak copyleft (e.g.
Eclipse Public License, GNU LGPL v2/v3)
2. Yes – approved license and strong copyleft (e.g.
GNU GPL v2/v3)
1. No – unapproved licensed/proprietary license
? Not known
3. Yes – developer support mechanisms open to all
developers
2. No – developer support mechanisms are limited,
e.g., access to bug-tracking dbase not provided
1. No – there are poor developer support
mechanisms
? Not known
4. Yes – full roadmap available, with explicit call for
contributions to the roadmap
3. Yes – roadmap information available but no call
for contributions or similar
2. No – No formal roadmap exists, but there are
visible committer or contributor requests
1. No
? Not known
4. Yes
3. Yes – there is some information but it is hard to
find and doesn't appear comprehensive
2. No – but the intent is to provide more information
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 12 of 229
Target Platforms, target Requirements and Platform IPRs
project?
and make the process more open
1. No
? Not known
Development
Transparency of contributions and
acceptance process – Is the code
contribution and acceptance process
clear, with progress updates of the
contribution provided (via Bugzilla or
similar)?
Transparency of contributions to the
project – can you identify from
whom source code contributions are
provided?
Accessibility to become a committer
– are the requirements/process to
become a committer documented
and is this an equitable process, i.e.,
can all developers potentially
become committers?
Transparency of committers – can
you identify who committers to the
open source project are? i.e., those
developers that have the authority
to 'commit' source code to the
baseline
Does the contribution license require
a copyright assignment, or copyright
license and/or patent license?
4. Yes – contributions and acceptance process are
clear, with progress status of contributions provided
3. Yes – contributions process and acceptance
process are clear, but no progress status of
contributions provided
2. No – contributions process only, with progress
status of contributions provided
1. No – contributions process only, no progress
status of contributions provided
? Not known
4. Yes – there are good project statistics that provide
this information
3. Yes – but you must manually find and collate the
information from various project sources
2. No – although you may be able to find this
information by checking the copyright notices
attached to each file/contribution
1. No
? Not known
3. Yes – the process is documented and accessible to
all developers
2. No – the process is vague/unclear so we do not
know if it is accessible to all developers
1. No – commit access is restricted to specific
users/members of the Project only
? Not known
3. Yes – there are good project statistics that provide
this information
2. Yes – but you must manually find and collate the
information from various project sources
1. No – this information is not provided
? Not known
4. Yes – project requires a copyright assignment and
patent grant
3. Yes – project requires a copyright license and
patent grant
2. Yes – project requires a copyright license/'sign-off'
process
1. No – no contribution license
? Not known
Derivatives
Are trademarks used to control how
and where the platform is used via
enforcing a compliance process prior
page: 12 of 229
2. No – You can freely distribute to the code and use
the project trademark without completing formal
compliance requirements
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 13 of 229
Target Platforms, target Requirements and Platform IPRs
to distribution?
Are go-to-market channels for
applications derivatives constrained
by the project in terms of approval,
distribution or discovery?
1. Yes – code must go through a formal compliance
process prior to be distributed to other parties
? Not known
4. No
3. Yes – restricted by approval, distribution or
discovery
2. Yes – restricted by two or more of approval or
distribution or discovery
1. Yes – restricted by all, i.e., approval, distribution
and discovery
? Not known
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access
perspective
1. Yes – there are tiered rights depending on
membership status
? Not known
Summary
Total Score
Summary of all governance points added (when
unsure about a question, allocate zero points)
Additional comments
(Any additional comments on the governance model analysis go here - but please be short
and concise, not verbose)
Part D: Summary
Verdict
Is this platform suitable for webinos? Write yes/no conclusion here
SWOT
Swot analysis in relation to webinos:
Strengths
- Strength 1
- Strength 2
Weaknesses
- Weakness 1
- Weakness 2
Opportunities
- Opportunity 1
- Opportunity 2
Risks
- Risk 1
- Risk 2
Platform-partner assignments
Note that the following Partners undertook analysis of software platforms based on the
above template.
page: 13 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 14 of 229
Target Platforms, target Requirements and Platform IPRs
Domain
Platform
Partner
PC
Windows 7
NTUA
PC
OSX
NTUA
PC
Debian
ISMB
PC
FreeBSD
ISMB
Mobile/tablet
Symbian
Impleo
Mobile/tablet
Android
UNICT
Mobile/tablet
webOS
FutureText
Mobile/tablet
Windows phone
FutureText
Mobile/tablet
iOS
Telecom Italia
Mobile/tablet
BADA
Samsung
Mobile/tablet
Blackberry
Telecom Italia
Mobile/tablet
Linux (RAW)
Samsung
Mobile/tablet
Meego
Impleo
Mobile/tablet
Ubuntu Unity
ISMB
Home media
Android/GoogleTV
UNICT
Home media
Mediaroom
DT
Home media
MythTV
Fraunhoffer
Home media
Meego
Fraunhoffer
Home media
Phillips NetTV
Fraunhoffer
Home media
Samsung TV
TNO
Home media
HbbTV
TNO
Home media
XBMC
Fraunhoffer
Home media
Apple TV
DT
Automotive
Meego IVI (Genivi)
BMW
page: 14 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 15 of 229
Target Platforms, target Requirements and Platform IPRs
Automotive
Android (Autolinq)
UNICT
Automotive
Microsoft Auto (Ford sync, Fiat
Blue&Me)
TUM
Automotive
QNX (ConnectedDrive)
BMW
Web rendering engines
Mozilla
UNICT
Web rendering engines
Qt
TUM
Web rendering engines
Chromium
TNO
page: 15 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 16 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 2¶
Operating Systems Analysis
Based on the criteria template defined in section 2, this section provides an analysis of all
base-platforms (Operating Systems and Wed Runtime Engines) which complements the
findings of our earlier Report (Landscape, Governance & IPR), in order to provide the
rationale and justification of the shortlisted platforms that will be targeted primarily during
the implementation phase of webinos. As with the entire scope of this deliverable, the
analysis is geared towards technical, licensing, commercial perspective but focusing more on
integration, feasibility and viability (market traction) perspective of the platforms.
Integration; to ensure coherency and interoperability, feasibility; to ensure that an end
product can be delivered within the timeframe, and viability; to minimize market related
risks in the mid-/long-run of the project.
PC
Windows 7
Microsoft Windows is a series of software operating systems and graphical user interfaces
produced by the Microsoft Corporation . Microsoft first introduced an operating
environment named Windows on November 20, 1985 as an add-on to MS-DOS in response
to the growing interest in graphical user interfaces (GUIs). Microsoft Windows came to
dominate the world's personal computer market, overtaking Mac OS, which had been
introduced in 1984. As of October 2009, Windows had approximately 91% of the market
share of the client operating systems for usage on the Internet (Global Stats ). The most
recent client version of Windows is Windows 7 ; the most recent server version is Windows
Server 2008 R2 ; the most recent mobile OS version is Windows Phone 7 .
Windows 7 is the current major commercial release after Windows Vista and was released
to manufacturing on July 22, 2009, and reached general retail availability on October 22,
2009. It was previously known by the codenames Blackcomb and Vienna. Some features of
Windows 7 are faster booting, Device Stage , Windows PowerShell , less obtrusive User
Account Control , multi-touch, and improved window management. Features included with
Windows Vista and not in Windows 7 include the sidebar (although gadgets remain) and
several programs that were removed in favour of downloading their Windows Live
counterparts.
Windows 7 ships in six editions: Starter (available worldwide with new PCs only), Home
Basic, Home Premium, Professional, Enterprise (available to volume-license business
customers only) and Ultimate (available to retail market with limited availability to OEMs)
In some countries (Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark,
Estonia, Finland, France, Germany, United Kingdom, Greece, Hungary, Iceland, Ireland, Italy,
Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal,
page: 16 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 17 of 229
Target Platforms, target Requirements and Platform IPRs
Romania, Slovakia, Slovenia, Spain, Sweden, and Switzerland), there are other editions that
lack some features such as Windows Media Player, Windows Media Center and Internet
Explorer called names such as "Windows 7 N." Microsoft focuses on selling Windows 7
Home Premium and Professional. All editions, except the Starter edition, are available in
both 32-bit and 64-bit versions.
Webinos sets out to make it possible to use and share applications consistently and securely
over a broad spectrum of converged, connected devices, including mobile, home media (TV),
PC or automotive. As Windows is by far the most popular PC operating system, it is
fundamental that webinos should be provided to Windows-based systems.
Part A1: Technical Information (web rendering engines)¶
Web components¶
Trident (also known as MSHTML ) is the name of the layout engine for the Microsoft
Windows version of Internet Explorer. The currently distributed version is v5.0, which is
included in Microsoft Internet Explorer 9.0.
Since Trident v4.0 in Internet Explorer 8.0, HTML4 is rendered mostly to the W3C
recommendation, apart from a reported incorrect implementation of the style stylesheet
element and the noscript script element.
Trident v5.0 in Internet Explorer 9.0 supports HTML5 to most of the W3C recommendation,
excluding the following element attributes:
 media
 kind
 label
 src
 srclang
And the following DOM attributes

MediaError
And the following Video format support:


Ogg Theora
WebM VP8
And the following audio format support:
 Ogg Vorbis
 WAV PCM
 Speex
In total, i.e. 9 on a x64 windows 7 scores 141 and 5 bonus points out of a total of 450 points
on the HTML5 rendering test provided by http://html5test.com/results.html .
Chakra is a JScript engine developed by Microsoft for Internet Explorer 9 (IE9). A distinctive
feature of the 32-bit version of the engine is that it "JIT compiles scripts on a separate CPU
page: 17 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 18 of 229
Target Platforms, target Requirements and Platform IPRs
core, parallel to the web browser. The engine is also able to access the computer's graphics
processing unit (GPU), in particular for 3D graphics and video.
More references:
http://www.browserscope.org/?category=summary&ua=IE*
http://html5test.com/results.html
http://html5demos.com/
Widget availability
Windows support widgets since Windows Vista and they are called Microsoft Gadgets . They
are lightweight single-purpose applications, or software widgets, that can sit on a Microsoft
Windows user's computer desktop, or are hosted on a web page. According to Microsoft, it
will be possible for the different types of gadgets to run on different environments without
modification, but this is currently not the case. The gadgets are actually HTML files
compressed in a ZIP archive, renamed to .CAB, where the developers can place javascript,
css files etc. Microsoft provides Jscript APIs that expose functionality in the following areas:



Gadget functionality, such as Sidebar and gadget state and event handling.
System functionality, such as file, network, and operating system information.
Presentation functionality, such as gadget background, image, and text handling.
The archives can be digitally signed through the Microsoft .NET Framework SDK and the
provided Crypto API .
The Windows Advanced Rasterization Platform (WARP10 ) is the software rasterizer device
that is a component of Windows Graphics runtime in Windows 7. WARP is based on the
reference rasterizer codebase. Therefore, WARP uses the same software interface to both
Direct3D 10 and DXGI. WARP is included in Windows 7 in the D3d10warp.dll, located in
Windows systems folders. Two versions of WARP are installed on 64 bit machines, an x86
and x64 version. The x64 version might run faster in certain circumstances because the code
generator contained in WARP can take advantage of the additional registers that are
available when users run 64-bit applications. WARP contains the following two high-speed,
real-time compilers:
The high-level intermediate language compiler that converts HLSL byte code and the current
render state into an optimized stream of vector commands for the geometry shader (GS),
vertex shader (VS), and pixel shader (PS) stages of the pipeline.
The high-performance just-in-time code generator that can take these commands and
generate optimized SSE2 , SSE4.1 , x86, or x64 assembly code.
Microsoft gadgets support all Jscript Frameworks like JQuery , Dojo etc. since it is just plain
HTML rendered through the Trident rendering engine.
Windows gadgets provide the feature through custom JavaScript objects that retrieve
system information using the Windows Management Information (WMI). They may be used
page: 18 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 19 of 229
Target Platforms, target Requirements and Platform IPRs
to display information such as the system time and Internet-powered features such as RSS
feeds, and to control external applications such as Windows Media Player. The MSHTML
runtime is configured with the set of permissions given to HTAs or the Local Machine Zone
security configuration.
Part A2: Technical Information (Operating Systems)
General OS features:Portability
Portability of Windows 7 is not officially supported. Some third party implementations can
achieve this through hardware virtualisation on other OSs, but Windows are designed to sit
directly on either IA-32 or x86-64 platforms.
Security
Microsoft Internet Explorer always uses the TLS implementation of the underlying Microsoft
Windows Operating System, a service called SChannel Security Service Provider . Internet
Explorer 8 in Windows 7 and Windows Server 2008 R2 supports TLS 1.2 . Windows 7 and
Windows Server 2008 R2 use the same code (Microsoft Windows Version 6.1 (build 7600)).
There are three certificate stores in Windows .
1. User Account store: A user specific space where certificates are installed into.
2. Service Account store: This store contains all certificates used by the service user
account (network or local).
3. Computer store: Certificated installed in this store are inherited to each and every
user account store.
Certificates are stored into specific regions depending on their use. The available regions
are:









Personal (can be known as My when using scripts to add certs)
Trusted Root Certification Authority (can be known as Root)
Enterprise Trust
Intermediate Certification Authority
Active Directory User Object
Trusted Publishers
Untrusted Certificates
Third Party Root Certification Authorities
Trusted People
Windows 7 introduces HTTP enrolment protocols that enable policy-based certificate
enrolment across Active Directory forest boundaries and over the Internet. These changes
enable new certificate enrolment scenarios that allow organizations to expand the
accessibility of existing public key infrastructure (PKI ) deployments and reduce the number
of certification authorities (CAs ).
page: 19 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 20 of 229
Target Platforms, target Requirements and Platform IPRs
All Windows versions from Windows NT 3 have been based on a file system permission
system referred to as AGDLP (Accounts, Global, Domain Local, Permissions) which in essence
where file permissions are applied to the file/folder in the form of a 'local group' which then
has other 'global groups' as members. These global groups then hold other groups or users
depending on different Windows versions used. This system varies from other vendor
products such as Linux and NetWare due to the 'static' allocation of permission being
applied directory to the file or folder. However using this process of AGLP/AGDLP/AGUDLP
allows a small number of static permissions to be applied and allows for easy changes to the
account groups without reapplying the file permissions on the files and folders.
User Account Control (UAC) is a technology and security infrastructure introduced with
Microsoft's Windows Vista and Windows Server 2008 operating systems, with a more
relaxed version also present in Windows 7 and Windows Server 2008 R2. It aims to improve
the security of Microsoft Windows by limiting application software to standard user
privileges until an administrator authorizes an increase or elevation. In this way, only
applications trusted by the user may receive administrative privileges, and malware should
be kept from compromising the operating system. In other words, a user account may have
administrator privileges assigned to it, but applications that the user runs do not inherit
those privileges unless they are approved beforehand or the user explicitly authorizes it.
The Encrypting File System (EFS ) on Microsoft Windows is a feature introduced in version
3.0 of NTFS that provides file-system-level encryption. The technology enables files to be
transparently encrypted to protect confidential data from attackers with physical access to
the computer. EFS is enabled in all versions of Windows meant for professional use from
Windows 2000 onwards. However, since significant caveats exist for its use, no files are
encrypted by default and must explicitly be invoked by the user (in organizational settings
encryption can also be mandated through Group Policy). Cryptographic file system
implementations for other operating systems are available, but generally incompatible with
the Microsoft EFS.
BitLocker Drive Encryption is a full disk encryption feature included with the Ultimate and
Enterprise editions of Microsoft's Windows Vista and Windows 7 desktop operating systems,
as well as the Windows Server 2008 and Windows Server 2008 R2 server platforms. It is
designed to protect data by providing encryption for entire volumes. By default it uses the
AES encryption algorithm in CBC mode with a 128 bit key, combined with the Elephant
diffuser for additional disk encryption specific security not provided by AES.
BitLocker is available only in the Enterprise and Ultimate editions of Windows Vista and
Windows 7. Users of other versions of Windows that don't include BitLocker could use a 3rd
party encryption program to satisfy the need for full drive encryption (see Comparison of
disk encryption software). In the RTM release of Windows Vista, only the operating system
volume could be encrypted using the GUI and encrypting other volumes required using
WMI-based scripts included in Windows Vista in the Windir\System32 folder. An example of
how to use the WMI interface is in the script manage-bde.wsf, that can be used to set up
and manage BitLocker from the command line. With Windows Vista Service Pack 1 and
Windows Server 2008, volumes other than the operating system volume can be BitLockerprotected using the graphical Control Panel applet as well. The latest version of Bitlocker,
page: 20 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 21 of 229
Target Platforms, target Requirements and Platform IPRs
included in Windows 7 and Windows Server 2008 R2, adds the ability to encrypt removable
drives.
Connectivity
Windows can support GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, and
WiMAX connectivity, provided the appropriate hardware module and device drivers.
Windows provide a number of generic drivers for many connectivity interfaces, although
third party implementations from the hardware manufacturers is proposed. Windows Driver
Foundation (WDF ) is a set of Microsoft tools that aid in the creation of device drivers for
Windows 2000 and later versions of Windows. The primary tools that comprise WDF are the
Kernel Mode Driver Framework (KMDF) and User Mode Driver Framework (UMDF). These
tool kits provide a new object-oriented programming model for Windows driver
development. The primary goal of the Frameworks is "Conceptual Scalability", that is the
characteristics of only requiring a driver developer to learn a few simple concepts to be able
to write a simple driver, and to be able to incrementally learn more when more complex
driver features are required. This differs markedly from the Windows Driver Model (WDM)
that requires driver developers to be fully familiar with many complex technical details
before writing even a simple driver. Microsoft also runs a certification program, WHQL
Testing, through which most drivers are digitally signed by Microsoft as compatible with the
operating system, especially on 64-bit versions. All network interfaces can be transparent to
the application developer, since they can be handled as a unified entity under the Windows
platform and let the OS handle the routing and the ARP requests
Reliability
The reliability of the platform is considered to be rising with each subsequent release and
therefore the perceived reliability of the latest version is what should be expected from the
most mature operating system. Nevertheless, several tools such as the Reliability Monitor
can keep track of the system or program crashes an error on a statistical level. The Windows
System Assessment Tool (WinSAT ) is a module of Microsoft Windows Vista and Windows 7,
which measures various performance characteristics and capabilities of the hardware it is
running on and reports them as a Windows Experience Index (WEI ) score, a number from
1.0 and 5.9 for Windows Vista and from 1.0 and 7.9 for Windows 7. The WEI is due to
increase its maximum score with future updates. The WEI includes five subscores: processor,
memory, 2D graphics, 3D graphics, and disk; the base score is equal to the lowest of the
subscores. Microsoft intends that software publishers list WEI scores to specify hardware
requirements instead of specific technical parameters (such as "256MB of RAM or more").
Microsoft also intends that hardware manufacturers publish the WEI scores of their
computers. However, very few software or hardware vendors have done so to date.
Technical Criteria
Windows 7 features improved multithreading capabilities over its predecessors, reducing
power consumption, and avoiding swapping threads between cores, which prevented them
page: 21 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 22 of 229
Target Platforms, target Requirements and Platform IPRs
from entering lower power states and caused cache thrashing as separate cores raced to
grab data processed by others. The Windows 7 kernel has improved thread affinity, locking
threads to particular cores in order to allow unused CPU cores to enter low power C-states
when they’re not in use called thread parking.
Windows Performance Monitor is a Microsoft Management Console (MMC ) snap-in that
provides tools for analysing system performance. From a single console, the user can
monitor application and hardware performance in real time, customize what data he wants
to collect in logs, define thresholds for alerts and automatic actions, generate reports, and
view past performance data in a variety of ways. Windows Performance Monitor combines
the functionality of previous stand-alone tools including Performance Logs and Alerts (PLA),
Server Performance Advisor (SPA), and System Monitor. It provides a graphical interface for
the customization of Data Collector Sets and Event Trace Sessions. Windows Performance
Monitor performs data collection and logging using Data Collector Sets.
Windows 7 features a hybrid kernel, a kernel architecture based on combining aspects of
microkernel and monolithic kernel architectures. Windows operating systems based on the
NT kernel (including all currently supported versions of desktop Windows) are technically
much more stable than some older versions (including Windows 3.1 and 95/98), as these
older versions do not properly protect the kernel's data structures. Installing unsigned or
beta drivers can lead to decreased system stability. Reboots are usually required after
system and driver updates. Microsoft has its hotpatching technology, designed to reduce
downtimes. In modern, NT-based versions of Windows, programs that crash may be forcibly
ended through the Windows Task Manager by pressing CTRL+SHIFT+ESC or CTRL+ALT+DEL. If
Windows fails to boot properly, it is possible to boot to safe mode in order to recover the
system. Also, for Windows 2000, XP and 2003 the Recovery Console can be utilized, which
was replaced in Windows Vista with the System Recovery Options menu. If the kernel or a
driver running in kernel mode encounters an error under circumstances whereby Windows
cannot continue to operate safely, a "bug check" is thrown. A memory dump is created and,
depending on the configuration, the computer may then automatically restart. Additionally,
automatic restart can be applied to services.
Windows NT family (including 2000, XP, Vista, Win7) most commonly employs a dynamically
allocated pagefile for memory management. A pagefile is allocated on disk, for less
frequently accessed objects in memory, leaving more RAM available to actively used objects.
This scheme suffers from slow-downs due to disk fragmentation (if a variable size paging file
is specified), which hampers the speed at which the objects can be brought back into
memory when they are needed. Windows XP and later can defragment the pagefile, and on
NTFS filesystems, intelligently allocate blocks to avoid this problem. Windows can be
configured to place the pagefile on a separate disk or partition. However, this is not default
behaviour, because if the pagefile is on a separate partition, then Windows cannot create a
memory dump in the event of a Stop Error. Microsoft does not recommend disabling virtual
memory in Windows because of this reason. Also, it is not recommended to place the paging
file on a different partition on the same physical hard disk, as this will cause the drive's
page: 22 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 23 of 229
Target Platforms, target Requirements and Platform IPRs
read/write heads to jump between the Windows and paging file partitions, which causes a
loss of I/O performance that outweighs any gains of having the paging file defragmented.
Windows kernel is modular and there is no current standard memory footprint that can be
attributed to all Windows 7 based systems.
Microsoft designed Windows 7 with a strong focus on reducing the overall power
consumption by investing in key areas of the platform including performance optimizations,
idle resource utilization, device power management, and key end-user scenarios. Energy
efficiency requires investments across the entire platform, not only in the core hardware or
in the operating system. While Windows 7 can have a significant impact on platform energy
efficiency, attached devices, and non-Microsoft and end-user applications, other platform
extensions often have a larger total impact. The complexity and quantity of platform
extensions require a broad approach to energy efficiency beyond focusing on a single
component in the platform. In addition to core investments in Windows 7, Microsoft has
emphasized ecosystem engagements for energy efficiency. Ecosystem partners, including IT
pros, may leverage Windows 7 technical documentation, built-in diagnostic tools, and rich
performance analysis tools to help identify issues across the enterprise.
All of Webinos requirements in this field are met.
Usability Criteria
The Windows user focus is considered mostly consistent. Inconsistencies appear primarily
through backports—software ported from newer operating systems to older ones. For
example, software ported from Vista to XP must follow the Vista or Windows 7 guidelines,
those of the newer system. However, Microsoft continually pushes for consistency between
releases with guidelines for interface design. Their focus is on consistency and usability.
Third-party applications may or may not follow these guidelines, may have their own
guidelines, or may not follow any rules for interface design. By default, Windows only offers
customization of size and color of the graphical elements, and it is typically not possible to
change how the interface reacts to user input. A few third-party programs allow more
extensive customization, like WindowBlinds or LiteStep, but extreme changes are usually out
of reach. It is not possible to customize applications that do not use the default look-and-feel
beyond the options the specific application offers.
Product Diversity
Microsoft is well known for not following standards but rather create its own. During the
past 2 years, this attitude has changed and the company has gradually increased support of
standards. In this context, Microsoft has produced the .NET Framework under the ECMA
standard. The .NET Platform programming languages — including Visual Basic .NET, Visual C#
, Managed Extensions for C++, and many other programming languages from various
vendors — use .NET Framework services and features through a common set of unified
classes. The .NET unified classes provide a consistent method of accessing the platform's
page: 23 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 24 of 229
Target Platforms, target Requirements and Platform IPRs
functionality. Native applications can also be developed using ANSI C/C++, or any other
framework that supports Windows, e.g. Java, Ruby, Pearl and QT.
Microsoft provides the Windows API , which provides advanced interaction with the OS,
providing software developers to use the built-in encryption mechanism APIs, network
services. Implementations are provided for most common Data Exchange mechanisms, such
as Pipes, TCP/UDP package flows. Microsoft also implements its own Microsoft Message
Queuing. MSMQ is essentially a messaging protocol that allows applications running on
separate servers/processes to communicate in a failsafe manner.
Many IT courses are written for participants to learn how to use and manage Windows
systems and networks. Most computer assistance experts have Windows training and
qualifications.
API codebase
Windows 7 Operating System supports all webinos APIs, including Bluetooth, RFID, DNS and
DLNA, either via drivers and hardware modules or via Windows Media Player and other
applications that are provided bundled with the OS. Every hardware manufacturer that
provides products for Windows based systems will also provide the drivers to support them.
Part B: Commercial information
Device Coverage
Portability of Windows 7 is not officially supported. Some third party implementations can
achieve this through hardware virtualisation on other OSs, but Windows are designed to sit
directly on either IA-32 or x86-64 platforms.
Platform Maturity
Windows is being developed since 1981 and is considered a very mature operating system.
In all, the estimated worldwide desktop usage share for Windows is 80.99%, based on
w3counter and 86.3%, based on W3Schools. Windows is easily available worldwide. The
current Windows 7 implementation is perfectly capable of supporting all features proposed
for the webinos platform, while Microsoft provides all the tools necessary for its
implementation on this OS.
Market penetration/availability
In July 2009, in only eight hours, pre-orders of Windows 7 at Amazon.co.uk surpassed the
demand Windows Vista had had in its first 17 weeks. It became the highest-grossing preorder in Amazon's history, surpassing sales of the previous record holder, the seventh Harry
Potter book. After 36 hours, 64-bit versions of Windows 7 Professional and Ultimate editions
sold out in Japan. Two weeks after its release, it was announced that its market share had
surpassed that of Snow Leopard, released two months previously as the most recent update
to Apple's Mac OS X operating system. According to Net Applications, Windows 7 reached a
page: 24 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 25 of 229
Target Platforms, target Requirements and Platform IPRs
4% market share in less than three weeks. In comparison, it took Windows Vista seven
months to reach the same mark. As of March 4, 2010, Microsoft announced that it had sold
more than 90 million Windows 7 licenses. On April 23, 2010, Windows 7 has sold more than
100 million copies in six months which made it Microsoft's fastest selling operating system.
As of June 23, 2010, Windows 7 has sold 150 million copies which made it the fastest selling
operating system in history with seven copies sold every second. Based on worldwide data
taken during June 2010 from Windows Update 46% of Windows 7 PCs run the 64-bit edition
of Windows 7. According to Stephen Baker of the NPD Group during April 2010 in the United
States 77% of PCs sold at retail were pre-installed with the 64-bit edition of Windows 7. As
of July 22, 2010, Windows 7 had sold 175 million copies. On October 21, 2010, Microsoft
announced that more than 240 million copies of Windows 7 had been sold. Three months
later, on January 27th, 2011, Microsoft announced total sales of 300 million copies of
Windows 7.
Availability
The current Windows 7 version of the OS can be used by webinos, while backwards
compatibility can be achieved effortlessly in some cases.
Feasibility
Developing webinos applications for Windows will provide a very strong starting point, as
the majority of software developing companies build applications of this OS. The support for
developing Windows application is strong and they can be developed faster than on most
other OSes. The Windows 7 software market accounts for 29.46% of all Operating Systems,
including mobile Operating Systems, such as Android, Symbian, BlackBerry OS etc. Windows
customers range from home users, to large organisations and countries, therefore providing
diversity equal to the user-base.
Risks
Microsoft does not use open standards, therefore any change made to the OS’
implementation might happen unexpectedly and might not be easily handled, even though
Microsoft has provided sufficient consistency between versions, in order to satisfy the cast
number of developers associated with Microsoft technologies.
Part C: Licensing information
Source code availability
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
page: 25 of 229
2. No – discriminates with regard to
developers and source code
1. No – unapproved
licensed/proprietary license for
some code
3. Yes – developer support
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 26 of 229
Target Platforms, target Requirements and Platform IPRs
lists, forums, bug-tracking databases, developer
documentation and tools - available to all
developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
mechanisms open to all developers
3. Yes – roadmap information
available but no call for
contributions or similar
1. No
Development
Transparency of contributions and acceptance process
– Is the code contribution and acceptance process
clear, with progress updates of the contribution
provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can
all developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent
license?
1. No – contributions process only,
no progress status of contributions
provided
1. No
1. No – commit access is restricted
to specific users/members of the
Project only
1. No – this information is not
provided
1. No – no contribution license
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
2. No – You can freely distribute
to the code and use the project
trademark without completing
formal compliance requirements
4. No
Community
Is the formal community structure flat or tall, i.e., tiered
rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 22
Part D: Summary
Verdict
page: 26 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 27 of 229
Target Platforms, target Requirements and Platform IPRs
The use-base of the Windows OS is large enough that a Windows version of webinos is
crucial for the project’s success. Even though the OS’s source code is not available to users,
nevertheless, developing webinos is not hindered by this. In most cases, access to the OS’s
source code does not affect the implementation of applications and frameworks built for it.
The documentation available for developers is vast and there are millions of third party
contributors to this knowledge base. Third party open source code is also available for
developers, as well as open source code from Microsoft for various uses. It is very likely that
Windows does already include everything that might be needed for a webinos
implementation.
SWOT
Strengths
- Fully-established project
- Mature platform and fully featured
- It will continue to be developed for a long
time
- Extremely big community of users and
developers
- Vast development documentation with
extended resources from both MSDN, as well
as the developing community in general, either
from MSND blogs and other Microsoft sources,
or external content from the community in
general
Opportunities
- The vast majority of desktop PC users will be
reached if webinos is built for Windows
- Probably the majority of webinos applications
will be available in this OS
Weaknesses
- Windows development resources (SDKs,
APIs etc) are controlled by Microsoft and
are not freely available
- Changes in the implementation of the
Windows platform might not be easily
identified when newer versions are
released
- Unclear updates might mask threats to
compatibility
Risks
- In the long run, outdated webinos builds
have to renew the compatibility with
newer versions of Windows, since
backwards compatibility can be withdrawn
by Microsoft with little or no prior notice
.
page: 27 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 28 of 229
Target Platforms, target Requirements and Platform IPRs
MAC OS-X
Introduction
Mac OS X is a series of Unix-based operating systems and graphical user interfaces
developed, marketed, and sold by Apple Inc . Since 2002, Mac OS X has been included with
all new Macintosh computer systems and is the successor to Mac OS 9 , released in 1999,
the final release of the "classic" Mac OS, which had been Apple's primary operating system
since 1984. Mac OS X, whose X is the Roman numeral for 10 and is a prominent part of its
brand identity, is built on technologies developed at NeXT between the second half of the
1980s and Apple's purchase of the company in late 1996. Mac OS X runs on Intel processors
and has gained the UNIX 03 certification since version 10.5. The current version of the
operating system is version 10.6, codenamed ‘Snow Leopard’. One of the major differences
between the previous versions of Mac OS and OS X is the addition of the Aqua GUI , a
graphical user interface with water-like elements. Every window element, text, graphic, or
widget is drawn on-screen using anti-aliasing technology. ColorSync, a technology
introduced many years before, was improved and built into the core drawing engine, to
provide colour matching for printing and multimedia professionals.
The human interface guidelines, published by Apple, are followed by most applications,
giving them a consistent user interface and keyboard shortcuts. In addition, new built-in
services for applications are provided, which include spelling and grammar checkers, special
characters palette, colour picker, font chooser and a dictionary. OpenGL is used for
hardware-accelerated window compositing. This technology, introduced in version 10.2, is
called Quartz Extreme, a component of Quartz . Quartz's internal imaging model correlates
well with the Portable Document Format (PDF) imaging model, making it easy to output PDF
to multiple devices. Other features of note include Exposé, a feature which provides easy
access to application windows; Dashboard, a full-screen group of desktop widgets; Front
Row, a media viewer interface accessed by the Apple Remote; Filevault, an optional
encryption scheme for the user's files; and Quick Look, which allows for dynamic previews of
file contents, including video and multi-page documents.
Mac OS X currently ships in two separate versions: the desktop-oriented version and Mac OS
X Server, the latter being architecturally identical to its desktop counterpart, except that it
includes work group management and administration software tools, in order to provide
simplified access to key network services, including a mail transfer agent, AFP and SMB
servers, an LDAP server, a domain name server, etc. It should be noted, however, that the
two versions will merge and will be no longer sold separately with the release of the next
version of Mac OS X, codenamed ‘Lion’. Furthermore, Apple produces specialized versions of
OS X for use on its consumer devices, such as the iOS operating system for the iPhone, iPod
Touch, iPad and Apple TV, while both operating systems share a common development
environment and programming framework. As to this, webinos support for Mac OS X would
not only provide support for an operating system of growing popularity and market
penetration, but also allow for the simultaneous development for other Apple product lines,
such as mobile devices and media players.
page: 28 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 29 of 229
Target Platforms, target Requirements and Platform IPRs
Part A1: Technical Information (web rendering engines)
Web components
WebKit is a BSD-licensed open source web browser engine integrated in Mac OS X and used
by the built-in web browser, called Safari. Cocoa, the development framework for Mac OS X
applications, includes the WebKit framework, allowing for its use in the development of
third-party native applications.
Web standards compliance and compatibility are two primary goals for the development of
WebKit. Safari 5.0.5 , which is the latest version at the time of this writing, scores 100/100 in
the Acid3 test , which is developed by the Web Standards Project and checks for DOM2
scripting capabilities, HTML4, XHTML 1.0 and CSS 2.1 compliance.
As far as HTML5 is concerned, Safari 5.0.5 provides support for HTML5 media elements,
sectioning elements, AJAX history, the sandbox attribute, partial forms validation support,
HTML5 storage features and geolocation. The following HTML5 features are not supported:
 HTML5 tree building
 SVG and MathML in text/html
 Date-based fields
 Form events
 Microdata
 Seamless iframe elements
 The device element
As far as media format support is concerned, Safari 5.05 provides support for the MPEG-4
and H.264 video codecs, as well as the PCM, MP3 and AAC audio codecs. Support is not
provided for HTML5 subtitles or the Ogg Vorbis and WebM audio and video codecs.
In total, Safari v.5.0.5 on OSX v.10.6.8 scores 253 and 7 bonus points out of a total of 450
points on the HTML5 rendering test1 .
As of 2008, the Javascript engine included in WebKit and Mac OS X is SquirrelFish, which is a
register-based, direct-threaded, high-level bytecode engine, with a sliding register window
calling convention. It lazily generates bytecodes from a syntax tree, using a simple one-pass
compiler with built-in copy propagation2.
Widget availability
Widgets are supported since Mac OS X v10.4 through the Dashboard application. When
Dashboard is activated, the user's desktop is dimmed and widgets appear in the foreground.
Like application windows, they can be moved around, rearranged, deleted, and recreated
(so that more than one of the same Widget is open at the same time, possibly with different
settings). New widgets can be opened, via an icon bar on the bottom of the layer, by
dragging a widget icon out into the layer. After loading, the widget is ready for use.
1
2
How well does your Browser support HTML 5?, http://html5test.com/results.html
Broswerscope - Safari, http://www.browserscope.org/?category=summary&ua=Safari*
page: 29 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 30 of 229
Target Platforms, target Requirements and Platform IPRs
Dashboard widgets are created using HTML, CSS and JavaScript, as they are, at the core,
simply HTML files that are displayed within the Dashboard layer through the WebKit
application framework for rendering widgets. When a Dashboard widget is built, it usually
consists of six files:

The widget's HTML file, which is the actual file that will be displayed in the Dashboard
layer
 The widget's CSS file, used for styling the widget
 The widget's JavaScript file
 The widget's Property List (called “Info.plist”), used to describe the widget’s properties
and metadata (i.e.: name, version, HTML file, etc.)
 The background image of the widget, in PNG format
 The icon that is displayed in the menu bar
Once all of these files are in the root of a directory, it is given a name and the extension
".wdgt", and then it can be opened up in Dashboard as a widget. More complex widgets may
also include a Cocoa widget plugin for platform-specific functionality.
Mac OS X v10.5 ‘Leopard’ includes an application called Dashcode, which is a more userfriendly way of creating widgets. Another new feature of Mac OS X Leopard is called "Web
Clips" which lets users easily create widgets from parts of a webpage.
Part A2: Technical Information (Operating Systems)
General OS features
OS X is available for PowerPC: versions 10.0 through 10.5, IA-32: versions 10.4 through 10.6,
x86-64: versions 10.4 through 10.7
The Darwin core currently includes support for both 32-bit and 64-bit variants of the Intel
x86 processor used in the Mac and Apple TV as well as the 32-bit ARM processor used in the
iPhone, iPod Touch and iPad. An open-source port of the XNU kernel exists which supports
Darwin on Intel and AMD x86 platforms not officially supported by Apple. As of Mac OS X
10.6 ‘Snow Leopard’, support for the PowerPC architecture has been dropped.
Portability
Darwin supports the POSIX API by way of its BSD lineage and a large number of programs
written for various other UNIX-like systems can be compiled on Darwin with no changes to
the source code. However, the same does not apply for the proprietary Apple components
of Mac OS X, mainly relating to the graphical user interface, which are not portable to other
UNIX or POSIX-compliant systems or architectures not officially supported by Apple.
Only the Server version of the operating system supports virtualization as a guest operating
system. The restrictions in the desktop-oriented version are both software-related and
license-related.
Security
Mac OS X provides runtime protection for data such as stack canaries, heap corruption
checks, and sandboxed system services helps to stymie attacks that try to hijack or modify
page: 30 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 31 of 229
Target Platforms, target Requirements and Platform IPRs
software on the system. Furthermore, the 64-bit versions provide enhanced security thanks
to features such as no-execute data on the system heap, as well as architectural advantages
such as passing arguments to functions in registers rather than on the stack.
Mac OS X inherits its permissions model from UNIX. Apple has enhanced this security model
by disabling the root account by default. Running code with the minimum necessary level of
privileges helps protect the system from inadvertent or deliberate damage. There are three
types of user accounts in Mac OS X:
-User. The user account is the least privileged account in the Mac OS X system. The user can
modify settings only for his or her account, not the entire system.
-Administrator. Mac OS X establishes an administrator user account when the system is first
installed. An admin user can perform most of the operations normally associated with the
root user, except directly adding, modifying, or deleting files in the system domain.
However, an administrator can use the Installer or Software Update applications for this
purpose.
Root. Mac OS X (like most UNIX operating systems) has a super user, named root, which has
full permissions for access to all files on the system. Specifically, root can—with a few limited
exceptions—execute any file that has any of it’s execute permissions turned on and can
access, read, modify, or delete any file and any directory. Unlike traditional UNIX systems,
Mac OS X disables this powerful account by default. This precaution helps to limit the extent
of harmful changes that viruses or unauthorized users could make to the operating system.
In a networked environment, Mac OS X can provide authentication using UNIX Pluggable
Authentication Modules , Open Directory , Active Directory, Kerberos and NTLMv2.
Other security features include:
FileVault is a feature that uses encrypted file systems that are mounted and unmounted
when the user logs into or out of the system. The user's home directory is encrypted using
the Advanced Encryption Standard (AES) algorithm with a key derived from the user's login
password. A master password can be set as a precaution against a user losing his or her
password. Content is automatically encrypted and decrypted on the fly. Although early
versions were slow and caused system to temporarily hang when used with disk-intensive
applications, such as sound and video editing, the performance of FileVault has been
improved in more recent versions of Mac OS X.
Keychain is the integrated password management system in Mac OS. It was introduced with
Mac OS 8.6, and has been included in all subsequent versions of Mac OS, including Mac OS
X. A Keychain can contain various types of data: passwords (for Websites, FTP servers, SSH
accounts, network shares, wireless networks, groupware applications, encrypted disk
images), private keys, certificates, and secure notes.
The application-based firewall in Mac OS X makes it easy for non-experts to get the benefits
of firewall protection. The application firewall allows or blocks incoming connections on a
per-application basis rather than on a per-port basis.
The Mac OS X kernel provides mandatory access controls. These controls enforce restrictions
on access to system resources (such as networking, file systems, and process execution) so
that resources are available only to processes that are explicitly granted access. Mandatory
access controls are integrated with the exec system service to prevent the execution of
page: 31 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 32 of 229
Target Platforms, target Requirements and Platform IPRs
applications that aren’t authorized. In the case of the sandboxing facility in Mac OS X,
mandatory access controls restrict access to system resources as determined by a special
sandboxing profile that is provided for each sandboxed application. This means that even
processes running as root can have extremely limited access to system resources.
Connectivity
The networking component of the kernel provides 4.4BSD TCP/IP stack and socket APIs,
support for both IP and DDP (AppleTalk transport), multihoming, routing, multicast support,
server tuning, packet filtering and Mac OS Classic support (through filters). Both IPv4 and
IPv6 are supported natively.
The Cocoa API includes an implementation of the Bluetooth protocol stack and provides
developers with native tools for access to Bluetooth peripherals. The current Mac OS X
hardware product line include 10/100/1000BASE-T Gigabit Ethernet connectivity and
802.11n Wi-Fi wireless networking as a standard feature. Furthermore, the current Mac OS X
hardware product line includes USB 2.0 connectivity, FireWire 800 and Intel’s Thunderbolt
technology. WiMAX, HSDPA/UMTS/GPRS and CDMA/GSM connectivity can be achieved
through third-party software and peripherals
Reliability
OS X is considered a very reliable operating system, by many more reliable than its main rival
Windows. Although crashes and system hangs do occur, they are considered to be rare for
normal use
Technical Criteria
Mac OS X's core is a POSIX compliant operating system built on top of the XNU kernel , with
standard Unix facilities available from the command line interface. Apple has released this
family of software as a free and open source operating system named Darwin , which is
derived from NeXTSTEP, BSD and other free software projects.
Darwin is built around XNU, a hybrid kernel that combines the Mach-3 microkernel, various
elements of BSD (including the process model, network stack, and virtual file system), and an
object-oriented device driver API called I/O Kit.
Some of the benefits of this choice of kernel are the Mach-O binary format, which allows a
single executable file (including the kernel itself) to support multiple CPU architectures, and
the mature support for symmetric multiprocessing in Mach. The hybrid kernel design
compromises between the flexibility of a microkernel and the performance of a monolithic
kernel.
The Darwin kernel environment is composed of several architectural components, namely:
Mach manages processor resources such as CPU usage and memory, handles scheduling,
provides memory protection, and provides a messaging-centered infrastructure to the rest
of the operating-system layers. The Mach component provides untyped interprocess
communication (IPC), remote procedure calls (RPC), scheduler support for symmetric
multiprocessing (SMP), support for real-time services, virtual memory support, support for
page: 32 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 33 of 229
Target Platforms, target Requirements and Platform IPRs
pagers and a modular architecture.
Above the Mach layer, the BSD layer provides “OS personality” APIs and services. The BSD
layer is based on the BSD kernel, primarily FreeBSD, and provides file system support,
networking (except for the hardware device level), the UNIX security model, syscall support,
the BSD process model, including process IDs and signals, FreeBSD kernel APIs, many of the
POSIX APIs and kernel support for pthreads (POSIX threads).
The Mac OS X networking component takes advantage of BSD’s advanced networking
capabilities to provide support for modern features, such as Network Address Translation
(NAT) and firewalls. The networking component provides 4.4BSD TCP/IP stack and socket
APIs, support for both IP and DDP (AppleTalk transport), multihoming, routing, multicast
support, server tuning, packet filtering and Mac OS Classic support (through filters).
Mac OS X provides support for numerous types of file systems, including HFS, HFS+, UFS,
NFS, ISO 9660, and others. The default file-system type is HFS+; Mac OS X boots (and
“roots”) from HFS+, UFS, ISO, NFS, and UDF. Advanced features of Mac OS X file systems
include an enhanced Virtual File System (VFS) design. VFS provides for a layered architecture
(file systems are stackable). The file system component provides UTF-8 (Unicode) support
and increased performance over previous versions of Mac OS.
The I/O Kit provides a framework for simplified driver development, supporting many
categories of devices. The I/O Kit features an object-oriented I/O architecture implemented
in a restricted subset of C++. The I/O Kit framework is both modular and extensible. The I/O
Kit component provides true plug and play, dynamic device management, dynamic (“ondemand”) loading of drivers, power management for desktop systems as well as portables,
as well as multiprocessor capabilities.
Finally, Mac OS X provides a kernel extension mechanism as a means of allowing dynamic
loading of pieces of code into kernel space, without the need to recompile. These pieces of
code are known generically as plug-ins or, in the Mac OS X kernel environment, as kernel
extensions or KEXTs .
On top of Darwin, Apple layered a number of proprietary components, including the Quartz
Compositor and the Aqua interface, as well as the Carbon and Cocoa APIs for software
development.
Processing capabilities
Mac OS X, being a Unix-like system, uses pre-emptive multitasking for all native applications,
although Classic applications are multitasked cooperatively in a Mac OS 9 environment that
itself is running as an OS X process (and is subject to pre-emption like any other OS X
process).
Multi-core and multi-processor execution is supported natively and a programming API
called Grand Central Dispatch is provided. GCD has a multicore execution engine that reads
the queues created by each application and assigns work from the queues to the threads it is
page: 33 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 34 of 229
Target Platforms, target Requirements and Platform IPRs
managing. GCD manages threads based on the number of cores available and the demands
being made at any given point in time by the applications on the system. Because the system
is responsible for managing the threads used to execute blocks, the same application code
runs efficiently on single-processor machines, large multiprocessor servers, and everything
in between. Furthermore, as of version 10.6, Mac OS X includes OpenCL support for
leveraging the computing power of GPUs and multi-core CPUs.
Memory Management
The VM system used in Mac OS X is a descendent of Mach VM, which was created at
Carnegie Mellon University in the 1980s. To a large extent, the fundamental design is the
same, although some of the details are different, particularly when enhancing the VM
system. It does, however, support the ability to request certain paging behaviour through
the use of universal page lists (UPLs). The design of Mach VM centres on the concept of
physical memory being a cache for virtual memory.
At its highest level, Mach VM consists of address spaces and ways to manipulate the
contents of those address spaces from outside the space. These address spaces are sparse
and have a notion of protections to limit what tasks can access their contents. At a lower
level, the object level, virtual memory is seen as a collection of VM objects and memory
objects, each with a particular owner and protections. These objects can be modified with
object calls that are available both to the task and (via the back end of the VM) to the
pagers.
VM objects are cached with system pages (RAM), which can be any power of two multiple of
the hardware page size. In the Mac OS X kernel, system pages are the same size as hardware
pages. Each system page is represented in a given address space by a map entry. Each map
entry has its own protection and inheritance. A given map entry can have an inheritance of
shared, copy, or none. If a page is marked shared in a given map, child tasks share this page
for reading and writing. If a page is marked copy, child tasks get a copy of this page (using
copy-on-write). If a page is marked none, the child’s page is left unallocated.
VM objects are managed by the machine-independent VM system, with the underlying
virtual to physical mappings handled by the machine-dependent pmap system. The pmap
system actually handles page tables, translation lookaside buffers, segments, and so on,
depending on the design of the underlying hardware.
Usability Criteria
The graphics system OpenGL composites windows onto the screen to allow hardwareaccelerated drawing. This technology, introduced in version 10.2, is called Quartz Extreme, a
component of Quartz. Quartz's internal imaging model correlates well with the Portable
Document Format (PDF) imaging model, making it easy to output PDF to multiple devices. As
a side result, PDF viewing and creating PDF documents from any application are built-in
features. As of version 10.6.3, Mac OS X fully supports the OpenGL 3.0 specifications.
Aqua is the GUI and primary visual theme of Apple Inc.'s Mac OS X operating system. It is
based around the theme of water, as its name suggests, with droplet-like elements and
liberal use of translucency and reflection effects. Aqua design elements make up the uniform
appearance of most Mac OS X applications. Its goal is to "incorporate colour, depth,
page: 34 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 35 of 229
Target Platforms, target Requirements and Platform IPRs
translucence, and complex textures into a visually appealing interface" in Mac OS X
applications. Although Aqua is the entire user interface, two notable features of Aqua are
gel-like buttons (such as the ones colored red, yellow, and green that control the windows),
and a Dock, which facilitates the launching of and navigation between applications.
The Apple Human Interface Guidelines, are designed to assist in developing products that
provide Mac OS X users with a consistent visual and behavioural experience across
applications and the operating system. In addition, many built-in services for applications are
provided, which include spelling and grammar checkers, special characters palette, color
picker, font chooser and a dictionary.
Product Diversity
Cocoa is the native object-oriented application programming interface for the Mac OS X
operating system and, along with the Cocoa Touch extension for gesture recognition and
animation, for iOS applications on Apple's iPhone, iPad and iPod Touch product lines.
Essentially, Cocoa is the continuation of several frameworks from the NextSTEP and
OpenStep programming environments developed by NeXT in the '80s and '90s. Cocoa
applications are almost exclusively developed using the development tools provided by
Apple, namely XCode and Interface Builder, using the Objective-C language, although other
programming languages, such as Python, Perl, Ruby and Java are supported through bridging
mechanisms and third-party tools.
API codebase
As far as webinos APIs are concerned, the following technologies are of note:





The WebKit framework is integrated in the Cocoa API and can be used by third-party
developers to integrate the WebKit rendering engine in this applications.
The Bluetooth protocol stack is implemented natively in Mac OS X and available to
developers through the Cocoa framework.
RFID is not natively supported but is featured through third-party peripherals and
software.
DNS services are included in Mac OS X, including mDNSResponder, a multi-cast DNS
responder.
There is no native DLNA server support, however third-party DLNA server software is
available for Mac OS X.
Part B: Commercial information
Device Coverage
Mac OS X runs exclusively on Apple’s Macintosh computers and licensing restrictions (as well
as the lack of BIOS support, since Macintosh computers use Intel’s EFI instead) do not allow
Mac OS X to be used on hardware that is not Apple-branded.
Platform Maturity
page: 35 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 36 of 229
Target Platforms, target Requirements and Platform IPRs
The first version of the Mac OS X line was released on March 24, 2001 and has received six
major upgrades so far. New major upgrade releases have not followed a steady schedule so
far, but the latest major versions tend to be released 20 to 30 months apart. Mac OS X is
considered a very mature and stable operating system, however it should be noted that
Apple tends to deprecate older technologies and APIs faster than other OS vendors, without
necessarily providing for backwards compatibility. As to this, applications in Mac OS X
require steady maintenance and further development in order to keep up to date with OS
changes.
Market Penetration/availability
According to the latest NetMarketShare survey released in May 2011, based on sample data
from visitors to 40,000 web sites operated by their clients, Mac OS X had 5.19% of the global
market share among operating systems. However, data gathered in this fashion by different
firms tends to vary greatly and is considered unreliable. For instance, the W3Counter for
May 2011 shows a larger percentage of 9.19%, based on the last 15,000 page views to each
website tracked by W3Counter (the sample currently includes 47,362 websites). According
to StatCounter, another web traffic analysis firm, in February 2011 Mac OS X shows the
greatest market penetration in Switzerland (17.61%), Luxemburg (15.79%) and the United
States (15.36%). Finally, according to market research firm Gartner, Apple had 10.4% of U.S.
PC shipments in Q3 2010, making it the fourth largest computer maker in the U.S.
Availability
Apple provides all required development tools, APIs and SDKs required for native application
development. Apple highly encourages the use of the supplied Cocoa framework instead of
third-party libraries in order to provide a consistent user interface across all applications.
Cross-platform frameworks, such as Java frameworks, QT and GTK+ are available for Mac OS
X; however they are not officially supported by Apple.
Feasibility
Apple has actively supported open web standards through the development of the open
source standards-compliant WebKit rendering engine. As to this, Mac OS X should prove a
stable platform for web-based applications and the purposes of the webinos platform.
Partner Perspective
who are the customers, existing codebase, market outlook, resources, exploitation plans?
Risks
Apple does not provide a consistent open standards approach throughout the platform and
has the right to ban an application from being distributed on the platform
Part C: Licensing information
Source code availability
page: 36 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 37 of 229
Target Platforms, target Requirements and Platform IPRs
Access¶
Is source code freely available to all developers, at
the same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project
mailing lists, forums, bug-tracking databases,
developer documentation and tools - available to
all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
2. No – discriminates with regard to
developers and source code
1. No –OSI-approved license for
Darwin/proprietary license for OS X
2. No – developer support
mechanisms are limited for anyone
who is not a program member
3. Yes – roadmap information
available but no call for contributions
or similar
1. No
Development
Transparency of contributions and acceptance
process – Is the code contribution and acceptance
process clear, with progress updates of the
contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can
you identify from whom source code contributions
are provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e.,
can all developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e.,
those developers that have the authority to
'commit' source code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent
license?
1. No – contributions process only, no
progress status of contributions
provided
1. No
2. No – the process is vague/unclear
so we do not know if it is accessible to
all developers
1. No – this information is not
provided
4. Yes – project requires a copyright
assignment and patent grant
Derivatives
Are trademarks used to control how and where
the platform is used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in terms of
approval, distribution or discovery?
1. Yes – code must go through a formal
compliance process prior to be
distributed to other parties
2. Yes – restricted by approval and
distribution
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 22
page: 37 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 38 of 229
Target Platforms, target Requirements and Platform IPRs
Part D: Summary
Verdict
OS X is popular platform with a very strong following. The development tools available for it
are substantial and the documentation available is extensive. It is very likely that it does
already include everything that might be needed for a webinos implementation.
Nevertheless, since webinos will be a platform on which further applications will be built,
Apple might refuse to allow webinos to provide a platform for the installation of applications
that are not included directly in its store. If any development is to be made on Mac OS X or
other Apple OSes, webinos might have to form a special licensing and distribution
agreement with Apple that protects Apple from the potential of bypassing its terms for the
development and distribution of applications.
SWOT
Swot analysis in relation to webinos:
Strengths
- Mac OS X is well-established project with
major hardware support and a fairly large
development community, mainly based on
applications that fall in the specifications of the
applications that will be developed on webinos
- Apple provides a lot of open source resources
and good development documentation.
- The OS X’s following show very strong brand
loyalty.
- The platform is mature, fully featured and is
and will continue to be mostly open source for
the foreseeable future.
Opportunities
- Apple products are expanding their reach
rapidly and might continue to do so in the
future. This means that an entry in desktop OS
of Apple can easily support the combined use
of applications with other Apple products, like
the iPhone and iPad. Due to the brand loyalty,
users will intuitively wish to combine their user
experience between Apple products and
hence, a strong potential exists for a successful
webinos market penetration in those
platforms.
page: 38 of 229
Weaknesses
- The market share of Mac OS X as a
desktop operating system is significantly
smaller than Microsoft Windows.
- For applications that the developer
wants to distribute through the Apple
store, these have to go through a process
of approval by Apple before they becomes
available. There is also a yearly fee for
joining the Mac Developer Program. This
would also mean that Apple will keep 30%
of the revenues from the application sales.
Risks
- Development of applications for Mac OS
X is required to be done through the Mac
Developer Program, which means that
Apple has to approve every application
before it becomes available on the store.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 39 of 229
Target Platforms, target Requirements and Platform IPRs
Debian
Introduction
Debian GNU/Linux is a Linux-based operating system launched in 1993 by Ian Murdock and
currently developed by the "Debian Project", an independent decentralized organization of
more than 3 thousand individuals, and is not backed by a company like other Linux
distributions.
It is one of the most popular and influential Linux distributions, as well as the base of other
popular distributions such as Ubuntu and Linux Mint.
According to Distrowatch.com's statistics, Debian and its derivatives are by far the most
popular family of Linux-based operating systems.
Part A2: Technical Information
General OS features
Portability
There is at least one stable Debian release for Intel x86/IA-32, Motorola 68k, Sun SPARC,
Alpha, Motorola IBM/PowerPC, ARM, MIPS, HP PA-RISC, IA-64, S/390 and AMD64, while
there are not yet released ports for ppc64, SuperH, armhf, m32r and AVR32 platforms (more
details here).
Security
A significant number of products that may be of help to implement a security infrastructure
are already available at different levels: from the already mentioned OpenSSL and GnuTLS,
to libxml (MIT license) and expat (MIT license) for parsing XML-based syntaxes, Linux-PAM
(dual licensed, GNU GPL and BSD license) for dynamic authorization of application and
services through pluggable authentication modules, the krb5 (MIT license) Kerberos protocol
implementation, etc.
Connectivity
In most cases ppp (BSD license and GPL mixture) needs to be used for establishing point-topoint connections with any supported technology. Furthermore wvstreams (LGPL v2.1 and
GPL v2 mixture), NetworkManager (GPL v2+ and LGPL v2+ mixture) and ModemManager for
D-Bus (GPL v2+) should be considered.
To sum up supported technologies:
- GSM/EDGE: gammu (GPL v2), gsmlib (LGPL v2+), gnokii (GPL v2+)
- iDEN
- CDMA: BitPim (GPL v2+ with parts under other open source licenses)
- EV-DO
- UMTS
- Bluetooth: BlueZ (GPL v2+, LGPL v2.1+ and MIT license mixture)
page: 39 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 40 of 229
Target Platforms, target Requirements and Platform IPRs
- WiFi: wpa_supplicant (GPL v2 and BSD license mixture), wicd (GPL v2, GPL v2+ and BSD
license mixture), Wireless Tools (GPL v2+ and LGPL v2.1+ mixture)
- LTE
- WiMax (very limited support): madwimax (GPL v2)
Reliability
Linux has a good fame for its reliability, yet the concept of reliability itself is quite fuzzy and
difficult to measure. Here is a quite dated article attempting to measure Linux' reliability. On
the other hand, the latest surveys (by sold units) give indications that Linux has 40 to 70%
server OS market share and over 90% market share when it comes to supercomputers.
Technical Criteria
Multi-threaded: the Linux kernel used in the current Debian release (6.0.1, March 2011)
implements NPTL that provides a 1:1 threading model to be used via the POSIX Threads API.
TLS: the two main implementations available are OpenSSL (dual-licensed, OpenSSL license equivalent to Apache License 1.0 - and SSLeay license - equivalent to 4-clause BSD license)
and GnuTLS (LGPL v2.1+), but there are other options as well.
IPv6: supported at system level, but some applications may not yet support it (more details
here).
Standards
Linux strives to be fully compliant with the latest POSIX and SUS (Single UNIX Specification)
releases. Debian does also strive to follow and comply with the LSB (Linux Standard Base) more information here. The GCC compiler collection strives to be compliant with the latest
standards of the supported programming languages (C, C++, Objective-C, Fortran, Java, Ada,
and Go). Most free/open source software available for Linux tries to adhere to standards
when they are available. Kernel size: it is highly dependent on the actual hardware and
kernel configuration. It can vary from a few hundreds of kilobytes to a few dozens of
megabytes.
Usability Criteria
It is highly dependent on the system configuration. The most important aspect, in this sense,
is likely to be the chosen desktop environment: GNOME, KDE, XFCE and LXDE are examples
of easy-to-use desktop environments that should be perfectly suited to unexperienced
users. Many well known applications that can also be found on other platforms are available
as well, such as Firefox, Google Chrome, OpenOffice.org, VLC, etc.
Product Diversity
The Linux ecosystem in general is absolutely open for the development of new solutions at
any level of the system. However, there is a strong bias towards free/open source software
that in practice makes commercial/proprietary products second-class citizens in the Linux
world. Nevertheless there are examples of closed source applications that have had some
success, like Skype, the Adobe Flash Player or the Intel C++ Compiler.
page: 40 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 41 of 229
Target Platforms, target Requirements and Platform IPRs
API codebase
Debian, like most Linux distributions, does not place any restriction on APIs. As of today
there are libraries for basically everything that might ever be needed, and for each task
there are usually several viable options to choose from. As an example, here's a short list of
useful software packages providing APIs for a handful of technologies that webinos might
want to directly support:




Bluetooth: The aforementioned BlueZ is the official Linux Bluetooth protocol stack and it
offers an extensive API and a D-Bus interface.
RFID: librfid (GPL v2) offers an API to read RFID data from some readers, other related
software is RFIDIOt (GPL) and RFDUMP (GPL).
DNS: the "resolver library" offered by the BIND project (BSD license) is the de-facto
standard to perform DNS queries, even though there are alternatives.
DLNA: libdlna (LGPL v2.1+) provides DLNA support and APIs. Another options is the
Coherence framework (MIT license).
Part B: Commercial information
Device Coverage
Linux works on a relatively high number of platforms, ranging from embedded devices to
supercomputers. Hardware support is generally good, even though the most advanced
features supported by the latest hardware is not always available through free/open source
drivers.
Platform Maturity
The beginning of the development of the Linux kernel dates back to 1991, with many
userspace components having their roots in the '70s and '80s. Linux follows the UNIX design,
which goes back to the late '60s. In this sense the platform is incredibly mature. On the
other hand, due to its fragmented and decentralized design and development processes,
and also to the availability of several and often incompatible options to handle a given task,
the overall system is sometimes lacking when it comes to consistency, backward and
forward compatibility and separation of different abstraction layers. Much of the
"harmonizing" work is left to the distribution makers and to the end users.
Market penetration
Debian, as well as most other Linux distributions, is distributed free of charge. The latest
surveys indicate that Linux has a market share as a desktop OS somewhere in between 0.5%
and 5%, which, despite being relatively low, in absolute terms (i.e., number of users) is
actually high. Moreover, the Linux community is extremely active when it comes to
participating to free/open source projects, to the point that, as of today, the Sourceforge.net
page: 41 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 42 of 229
Target Platforms, target Requirements and Platform IPRs
software directory has 48587 Linux-related projects and only 42299 Windows-related
projects.
Availability
Debian distribution is available at http://www.debian.org/distrib/
Feasibility
There is absolutely no reason why a webinos implementation for Debian could not be done
today
Partner perspective
Open source communities which might increase of project's impact
Risks
The end user configuration (especially concerning the desktop environment varies greatly)
and the unavailability of a native html rendering engine
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
4. Yes – approved license and
permissive (e.g. Apache, BSD,
MIT)
3. Yes – developer support
mechanisms open to all
developers
4. Yes – full roadmap available,
with explicit call for contributions
to the roadmap
4. Yes
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
page: 42 of 229
3. Yes – contributions process
and acceptance process are
clear, but no progress status of
contributions provided
4. Yes – there are good project
statistics that provide this
information
3. Yes – the process is
documented and accessible to all
developers
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 43 of 229
Target Platforms, target Requirements and Platform IPRs
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
2. Yes – but you must manually
find and collate the information
from various project sources
1. No - no contribution license
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
1. Yes – code must go through a
formal compliance process prior
to be distributed to other parties
4. No
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 38
Part D: Summary
Verdict
Debian is a full-featured platform and provides an excellent development environment in
general. More than 29,000 free/open source software packages are available (see Debian
Packages) and it is very likely to support everything that webinos might ever need.
Like most Linux distributions, the degree of customizability and configurability that Debian
allows is exceptionally high.
In light of the above results, this platform seems to be suitable to fulfil webinos needs, even
if the bias towards free/open source software in the Linux community might also be
problematic for third party developers of proprietary software for webinos.
SWOT
Swot analysis in relation to webinos:
Strengths
- Debian is a well-established project with a
large and active, inclusive and cooperationincline community. Its governance model is
transparent, open and unencumbered by
the interests of a single or a small group of
companies.
- The platform is mature, fully featured and
is and will continue to be fully free/open
source for the foreseeable future. It is very
page: 43 of 229
Weaknesses
- The market share of Debian as a desktop
operating system is small when compared to
Microsoft Windows and Apple Mac OS X.
- Due to the ever evolving and decentralized
nature of design and development of Linux
software, the system occasionally suffers
from redundancies, lack of integration
and/or backward/forward compatibility
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 44 of 229
Target Platforms, target Requirements and Platform IPRs
likely that it does already include everything
that might be needed for a webinos
implementation.
Opportunities
- Developing a webinos implementation for
Debian would, in practice, make it trivial to
have ports to other Linux distributions, and
especially Debian derivatives like Ubuntu
and Linux Mint, and make it sensibly easier
to do the same with other UNIX-like
operating systems.
- It could also be very important for the
development of a server-side webinos
infrastructure, where usage of these systems
is much more widespread.
- Given the high level of active contribution
of the Linux community to free/open source
projects, it could also help in getting skilful
individuals involved, especially when it
comes to gaining/maintaining support for
exotic platforms or adapting to unforeseen
real-world scenarios, as well as having
external people to spread the word.
page: 44 of 229
issues.
Risks
- Since free/open source ecosystems tend to
be in continuous, quick and, at times,
divergent evolution, especially when it
comes to desktop technologies, it is of great
importance to build a community of talented
and devoted developers to keep developing
and maintaining the software, otherwise
there is a concrete risk of moving fast
towards a form of obsolescence whose most
evident symptoms would be the lack of
integration with the underlying system and
incompatibilities with the latest system
components.
- Furthermore, special attention should be
payed to the licensing terms and governance
models of the various components to be
used, especially when it comes to viral
licenses, such as the GPL, and the possibility
for third-party developers to distribute
proprietary products.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 45 of 229
Target Platforms, target Requirements and Platform IPRs
FreeBSD
Introduction
FreeBSD is a free/open source UNIX-like operating system descended from AT&T UNIX via
BSD UNIX. The first release was published in November 1993 and it is currently being
developed by the "FreeBSD Project", a group of over 400 active developers and thousands of
contributors, and partially backed by the FreeBSD Foundation, a US-based non-profit
organization devoted to support the FreeBSD Project, its development and its community.
FreeBSD is probably the most popular non-Linux UNIX-like operating system and is the base
of other popular BSD operating systems, such as PC-BSD and GhostBSD.
According to Distrowatch.com's statistics, FreeBSD and its derivatives are by far the most
popular family of BSD operating systems.
Part A2: Technical Information
General OS features
Portability
The list of supported architectures is available here. At the moment of writing, i386, AMD64,
and PC98 are fully supported.
Security
A huge number of products that may be of help to implement a security infrastructure are
already available at different levels: from the already mentioned OpenSSL and GnuTLS, to
libxml (MIT license) and expat (MIT license) for parsing XML-based syntaxes, OpenPAM (BSD
license) for dynamic authorization of application and services through pluggable
authentication modules, the krb5 (MIT license) Kerberos protocol implementation, etc.
Connectivity
In most cases the ppp utility needs to be used for establishing point-to-point connections
with any supported technology.
To sum up supported technologies:
- GSM/EDGE: gammu (GPL v2), gsmlib (LGPL v2+), gnokii (GPL v2+)
- iDEN
- CDMA
- EV-DO
- UMTS
- Bluetooth: Netgraph framework (part of FreeBSD)
- WiFi: wpa_supplicant (GPL v2 and BSD license mixture), see also the Wireless Networking
section of the FreeBSD handbook
- LTE: no documentation about support. Unknown.
- WiMax (very limited support): lvwimax (GPL v2)
page: 45 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 46 of 229
Target Platforms, target Requirements and Platform IPRs
Reliability
Although the concept of reliability is quite fuzzy in general, FreeBSD is well known for being
capable of very long uptime scores when powering a server3.
Technical Criteria
1. Multi-threaded: FreeBSD 8 supports a 1:1 threading model.
2. TLS: the two main implementations available are OpenSSL (dual-licensed, OpenSSL license
- equivalent to Apache License 1.0 - and SSLeay license - equivalent to 4-clause BSD license)
and GnuTLS (LGPL v2.1+), but there are other options as well.
3. IPv6: According to the IPv6 section in the FreeBSD Handbook, FreeBSD supports IPv6.
ARM, PowerPC, ia64, and Sparc64 are mostly supported, while support for MIPS and S/390 is
experimental.
4. Standards:
4.1. FreeBSD strives to be fully compliant with the latest POSIX and C99 standards through
the FreeBSD C99 and POSIX® Conformance Project.
4.2. The GCC compiler collection strives to be compliant with the latest standards of the
supported programming languages (C, C++, Objective-C, Fortran, Java, Ada, and Go).
4.3. Most free/open source software available for FreeBSD tries to adhere to standards
when they are available.
5. Kernel size: It is highly dependent on the actual hardware and kernel configuration. It can
vary from a few hundreds of kilobytes to a few dozens of megabytes.
Usability Criteria
It is highly dependent on the system configuration. The most important aspect, in this sense,
is likely to be the chosen desktop environment: GNOME, KDE, XFCE and LXDE are examples
of easy-to-use desktop environments that should be perfectly suited to unexperienced
users. Many well known applications that can also be found on other platforms are available
as well, such as Firefox, OpenOffice.org, VLC, etc.
Product Diversity
The FreeBSD ecosystem in general is absolutely open for the development of new solutions
at any level of the system. However, unlike what usually happens in Linux ecosystems, there
is a strong bias towards BSD licensed software, especially at a system level, and the FreeBSD
project is much more in control of which software ends up being easily available on FreeBSD
systems. Furthermore, not many commercial/proprietary products are natively available for
FreeBSD, yet it features a Linux binary compatibility level that allows to run a wide variety of
software built for Linux under FreeBSD without performance penalties.
API codebase
3
Netcraft Upstime statistics, http://uptime.netcraft.com/perf/reports/Hosters
page: 46 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 47 of 229
Target Platforms, target Requirements and Platform IPRs
FreeBSD does not place any restriction on APIs. As of today there are libraries for basically
everything that might ever be needed, and for each task there are usually several viable
options to choose from. As an example, here's a short list of useful software packages
providing APIs for a handful of technologies that webinos might want to directly support:




Bluetooth: The aforementioned Netgraph framework is the official FreeBSD Bluetooth
protocol stack and it offers an extensive API.
RFID: librfid (GPL v2) offers an API to read RFID data from some readers, other related
software is RFIDIOt (GPL) and RFDUMP (GPL).
DNS: the "resolver library" offered by the BIND project (BSD license) is the de-facto
standard to perform DNS queries, even though there are alternatives. See also the
Domain Name System section of the FreeBSD handbook.
DLNA: libdlna (LGPL v2.1+) provides DLNA support and APIs. Another option is the
Coherence framework (MIT license).
Part B: Commercial information
Device Coverage
FreeBSD works on a relatively high number of platforms, ranging from embedded devices to
supercomputers. Hardware support is generally decent, yet the latest and/or not really
widespread hardware may be unsupported or only partially supported.
Platform Maturity
FreeBSD is an incredibly mature product, especially as a server platform. However, it is very
likely that users need to use third-party software that is not as mature as the "FreeBSD
core".
Market penetration
FreeBSD is distributed free of charge. The FreeBSD market share on the desktop is minimal,
to the point that most surveys don't even name it, yet it enjoys quite some popularity in the
server market, where it is usually credited 1% to 5% market share.
Availability
FreeBSD distribution is available at http://www.freebsd.org/where.html
Feasibility
There should be no technical reason why webinos could not be implemented for FreeBSD.
Partner perspective
Since Mac OS is based on BSD, perhaps an implementation that could run on Mac OS X could
also be distributed in the FreeBSD community.
Risks
page: 47 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 48 of 229
Target Platforms, target Requirements and Platform IPRs
FreeBSD is mostly used as a server OS and the use of webinos seems unimportant.
Nevertheless, FreeBSD or any other BSD derivative OS can be used on the server side.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
4. Yes – approved license and
permissive (e.g. Apache, BSD,
MIT)
3. Yes – developer support
mechanisms open to all
developers
2. No – No formal roadmap
exists, but there are visible
committer or contributor
requests
3. Yes – there is some
information but it is hard to find
and doesn't appear
comprehensive
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
3. Yes – contributions process
and acceptance process are
clear, but no progress status of
contributions provided
3. Yes – but you must manually
find and collate the information
from various project sources
3. Yes – the process is
documented and accessible to all
developers
2. Yes – but you must manually
find and collate the information
from various project sources
1. No - no contribution license
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
1. Yes – code must go through a
formal compliance process prior
to be distributed to other parties
4. No
Community
page: 48 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 49 of 229
Target Platforms, target Requirements and Platform IPRs
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 34
Part D: Summary
Verdict
FreeBSD is a full-featured platform and provides an excellent development environment in
general. More than 22,000 free/open source software packages are availableand it is very
likely to support everything that webinos might ever need4.
On the other hand, the degree of customizability and configurability that FreeBSD allows is
exceptionally high. FreeBSD, however, tends to be more difficult to configure than most
Linux systems.
In light of the above results, this platform seems to be suitable to fulfil webinos needs.
SWOT
Swot analysis in relation to webinos:
Strengths
- FreeBSD is a well-established project with a
strong following, a long tradition and a very
active community. Its governance model is
open and unencumbered by the interests of a
single or a small group of companies.
- The platform is very mature, full-featured
and is fully free/open source. It is very likely
that it does already include everything that
might be needed for a webinos
implementation.
Opportunities
- The main advantage in developing a
FreeBSD implementation would be to allow a
potential webinos server-side infrastructure
to share at least part of the codebase with
the client-side implementation, and having
that available for companies and/or server
farms that already use FreeBSD, thus
potentially attracting skilful system
administrators and security-minded
developers that usually work on large scale
systems.
4
Weaknesses
- The market share of FreeBSD as a desktop
operating system is minimal, and even in
the server arena it is not comparable to
Linux.
- Despite being generally more stable than
most Linux distributions when it comes to
backward/forward compatibility, there may
still be consistency, redundancy and
integration problems regarding software
that is not directly developed by the
FreeBSD Project, and that constitutes a
major part of the platform.
Risks
- Special attention should be payed to the
licensing terms and governance models of
the various components to be used,
especially when it comes to viral licenses,
such as the GPL, and the possibility for
third-party developers to distribute
proprietary products.
FreeBSD Port Information, http://www.freebsd.org/ports/index.html
page: 49 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 50 of 229
Target Platforms, target Requirements and Platform IPRs
page: 50 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 51 of 229
Target Platforms, target Requirements and Platform IPRs
Mobile / Tablet¶
Symbian
Introduction
To quote from http://licensing.symbian.org/
In 2009, we established the Symbian Foundation to make the Symbian
platform available open source and royalty-free. In November 2010 we
announced that the foundation would ramp down its operational activities
as a result of changes in global economic and market conditions.
Symbian is no longer an active Open Source Project.
As such it is not a contender for considering as a platform on which webinos can be built. No
attempt shall, therefore, be made on the technical merits of the platform.
It is worth, however, doing a retrospective analysis of the merits and weaknesses of the
platform, as there may be lessons for webinos that can be applied to the organisation setup
Part A1: Technical Information (web rendering engines)
N/A
Part B: Commercial information
Device Coverage
Symbian was only ever targeted at the mobile profile.
Platform Maturity
Symbian, is/was easily one of the most mature platforms on the market, having been in
market almost 10 years, having foundations, in and even older Psion platform
Market penetration/availability
Within that profile, at its peak it had 46.6% of the Smartphone market. Symbian will
continue to be used by Nokia for their mid-tier handsets. Detailed figures are given below
Availability
The Symbian source code is not longer available as open source
Feasibility
Technically it would be entirely feasible to implement webinos on top of the Symbian
platform, reusing the QT components
Partner Perspective
page: 51 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 52 of 229
Target Platforms, target Requirements and Platform IPRs
The partner perspective is unanimously negative
Risks
Symbian is not realistically been considered as option for webinos implementation
Market penetration facts and figures
According the a Gartner report http://www.gartner.com/it/page.jsp?id=1466313 from 2010
Company
Symbian
Android
iOS
Research In Motion
Microsoft Windows
Mobile
Linux
Other OS
Total
3Q10
Units
29,480.1
20,500.0
13,484.4
11,908.3
2,247.9
3Q10 Market Share
(%)
36.6
25.5
16.7
14.8
2.8
3Q09
Units
18,314.8
1,424.5
7,040.4
8,522.7
3,259.9
Q09 Market Share
(%)
44.6
3.5
17.1
20.7
7.9
1,697.1
1,214.8
80,532.6
2.1
1.5
100.0
1,918.5
612.5
41,093.3
4.7
1.5
100.0
In 2009 Symbian still held 44.6% of the market, dropping 8 points in the subsequent year to
36.6% 2010.This loss was largely attributable to the phenomenal gains made by Android in
this same time frame. It is worth re-enforcing that despite the publicity Android and Iphone
receives and the obvious decline of Symbian, both in terms of absolute sales figures and the
shutdown of the open source project - Symbian was in 2010 still the highest selling
Smartphone worldwide, 50% higher than its closest competitor, Android.
Throughout its lifetime it shipped 450 million units between 2002-20105.
Ecosystem adoption
Formerly, in the 2004-2009 time frames, Symbian was widely adopted by a variety of
handset manufacturers, including Nokia, Sony Ericsson, Motorola, Fujitsu, Panasonic and
NEC.
Paradoxically, almost coinciding with the opening up of the ecosystem and the creation of
the Open Source Symbian Foundation, this support had dwindled to only Nokia
Application developers
Symbian developers were small in number but relatively loyal. Symbian was a notoriously
difficult platform to develop for requiring not only strong C++ knowledge and an
understanding of where Symbian deviated from the basics of standard C++.
5
Tradeoffs of Open Innovation Platform Leadership:The Rise and Fall of Symbian Ltd.,
http://siepr.stanford.edu/system/files/shared/documents/2011-03_WestWood_SIEPR.pdf
page: 52 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 53 of 229
Target Platforms, target Requirements and Platform IPRs
Developer on the Symbian platform, as a result, tended to be (a) very good (b) very
supportive of a platform that that had invested considerable time in mastering.
Customization possibilities
The commercial Symbian license and latterly the Symbian foundation license, had a tightly
defined compliance process 6 which was intended to ensure the guaranteed interoperability
of applications over different Symbian releases.
The design of the User Interfaces layer was less tightly controlled, allowing those with the
inclination the opportunity to give a rich and differentiated user experience. The technical
complexity of working with the platform, at this level of sophistication however, meant that
this opposition could only be exploited by the most ambitious and resource rich of the
device manufacturers.
Although the compliance suite put strict constraints on the minimum set of capabilities that
must be present and interoperable on the phone, the platform was relatively permissive in
terms of new capabilities that could be added to enhance or customise the feature sets
available
Part C: Licensing and Governance
This section is filled in considering Symbian before it was shut down. It is instructive to
consider the Governance and Licensing as it was before its collapse, to identify whether this
had an influence on its demise
Access
Is source code freely available to all developers, at
the same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all
developers?
Is the project roadmap publicly available?
4. Yes
3. Yes. Symbian code was
predominately released under the
OSI provided eclipse public license
3. Yes – developer support
mechanisms open to all developers
3. Yes – full roadmap available, but
input to it is limited to Symbian
6
Symbian Foundation Device CompatibilityVerificationProcess and Promise,
http://www.symlab.org/wiki/index.php/Symbian_Foundation_Device_Compatibility_Verification_Pro
cess#Compatibility_Promise_and_Verification_Scope
page: 53 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 54 of 229
Target Platforms, target Requirements and Platform IPRs
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
members
4. Yes
Development
Transparency of contributions and acceptance
process – Is the code contribution and acceptance
process clear, with progress updates of the
contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can
you identify from whom source code contributions
are provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can
all developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e.,
those developers that have the authority to 'commit'
source code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent
license?
1. No – contribution process was
largely closed
2. No – although you may be able to
find this information by checking
copyright files etc.
2. No – process is vague. The
starting position of Symbian was
Nokia was primary committer on
almost all projects
2. Yes – but you must manually find
and collate the information from
various project sources
3. Yes - copyright license and patent
license is covered by the Symbian
memberships
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in terms of
approval, distribution or discovery?
1. Yes. Compliance and trademarks
were enforced
3. Yes – restricted by approval
Community
Is the formal community structure flat or tall, i.e., tiered rights
depending on membership status
1. Yes here are tiered
memberships
Summary
Total Score 32
Is Platform open source or proprietary?
Symbian was an open source platform. As of April 2011 it is a Nokia owned proprietary
platform which Nokia make available to customers on a commercial basis
Part D: Summary
Verdict
Symbian's outlook is extremely weak. The Symbian foundation has been shut down, and
Nokia has re-aquired the assets.
page: 54 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 55 of 229
Target Platforms, target Requirements and Platform IPRs
Symbian only future appears to be supporting Nokia's own range of mid range handsets.
Due to Nokias historical strength in this market, absolute number of shipped handsets is
likely to be healthy, but developers will obviously be limited to a single vendor
SWOT
Swot analysis in relation to webinos:
Strengths
- Mature well proved technology
- Optimised for mobile, high
performance
Opportunities
- none
page: 55 of 229
Weaknesses
- Symbian is hard to program
Risks
- Community engagement beyond Nokia was never
proven
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 56 of 229
Target Platforms, target Requirements and Platform IPRs
Android (mobile)
Introduction
The Open Handset Alliance (OHA) led by Google, officially announced open-source Android
mobile operating system on November 5th, 2007.
Ownership
The ownership of the Android open source project is held by Google and the Android project
is distributed under Apache 2 license.
Relevance
The current version is Android 3.1 which is an incremental platform release that refines
many of the features introduced in Android 3.0. Android is freely available to all device
makers so webinos can be pre-loaded on devices.
Webinos will need to compete with native apps and web apps by demonstrating clear
differentiating value for webinos applications.
Part A1: Technical Information (web rendering engines)
The Android browser is based on WebKit an open source web engine used also by Google
Chrome, Maxthon 3, Safari (both desktop and mobile), Shiira, iCab 4, OmniWeb 5.5+,
Epiphany, Adobe AIR, Midori, Adobe Dreamweaver CS4 and CS5, Android browser, Palm
webOS browser, Symbian S60 browser, OWB, Steam, Rekonq, Arora, Flock (version 3+).
Android also has support for the following web rendering engines:
Name
Reference
Source
dolphin
http://browser.mgeek.mobi/
closed
skyfire
http://www.skyfire.com/en/product/android closed
opera mobile
http://www.opera.com/mobile/
closed
opera mini (no HTML5, no Adobe
http://www.opera.com/mobile/
closed
flash support)
The above are complete products which don't necessarily have available open reusable web
rendering engine codebase.
WebKit Security
Concerning the attack surface of Android, we can note that remote attacks are realized by
gaining access to WebKit. A WebKit vulnerability could allow someone entry into a device
through the browser and enable them to extract sensitive data. At the end of 2010 there
was probably the most important targeted vulnerability of WebKit and Android later fixed by
page: 56 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 57 of 229
Target Platforms, target Requirements and Platform IPRs
Android 2.27. In fact, WebKit was not able to validate correctly floating-point data. This
allowed remote hackers to execute arbitrary code or cause an application crash. Because of
this the Android devices with a version < 2.2 are still affected by this vulnerability. Even if
WebKit is shared by several OSs, mobile and not, an attack to WebKit doesn't mean a cross
attack to different OSs8. In fact, the type of malware in WebKit is exploit code and each
platform implements several functions in different ways. For this reason we can say that
authors of malware won't be able to figure out how to launch cross-platform attacks
relatively easily.
Web components
HTML 4
rendering
capabilities
HTML 5
rendering
capabilities
JavaScript
engine
capabilities
The results of Acid3 test on Android web browser with default settings
rendering are:
- version 2.3 result: 93/100
- version 3.1 result: 100/100 with incorrect rendering
The following table describes the capabilities of Android browser concerning
HTML5 rendering
tested by html5test.com
The global score of Android 2.3.3 is 182 for Android 3.1 is 151.
More references:
http://www.browserscope.org/?category=summary&ua=Android*
http://html5demos.com/
Android 2.2 introduced a new open source JavaScript engine: Google V8 the
same engine present in Google Chrome.
WebKit JavaScript Core, WebKit SquirrelFish Extreme ("Nitro" in Safari) and
Google V8 differ significantly in their execution models. In fact, the first one
executes JavaScript bytecode; the second one uses interpreted bytecodes
augmented with JIT compilation to machine language and the last one
introduces an efficient method for accessing objects’ properties and the
bytecode is compiled into architecture-specific machine code before
executing it.
We think that it is possible to replace the engine following the same
experience of Google V8, even if it's not a simple substitution.
Widget availability
Android home-screen widgets are Java applications (not JavaScript).
Webinos widgets are based on the structure of W3C Widgets with some enhanced features.
As pointed out below Aplix WRTC, Obigo X10 and Opera 11.5 (all closed source) support
W3C widgets. In particular Obigo X10 claims a "Tight integration with Android - Seeamless
widget execution (vs. native widgets) - Support for full-screen mode + 'floating' mode".
There is an open source project called android-widget that works on an "Implementation of
the W3C Widget specification for android."
7
Pressure to improve Android security is building up,
http://nakedsecurity.sophos.com/2010/11/08/pressure-to-improve-android-security-is-building-up/
8
Will WebKit Be iOS' Achilles' Heel?, http://www.macnewsworld.com/story/72681.html
page: 57 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 58 of 229
Target Platforms, target Requirements and Platform IPRs
Digital signature code availability
Android provides a package named android.content.pm for the signature of code
How are widgets packaged?
Android supports widget packaging as well as activity, service, and receivers and so on.
In fact, as for a generic Android Application, the Android Asset Packaging Tool (aapt) builds
an apk file for the developed widget. It is a zipped file composed of the files
AndroidManifest.xml, class.dex, resource.arsc and the directories “res” and “META-INF”.
The aapt tool, as the other tools of Google Android SDK is under OpenSource Apache
Software Licence 2.0 (ASL).
WARP implementation
The following list represents android user agents that claim to support the Widget Access
Request Policy.
Aplix Web runtime android 2.1+ closed source
Opera 11.5 Beta
android 1.6+ closed source
OBIGO X10
android 2.2.x closed source
For more information see:Widget Access Request Policy - 20 April 2010
Widget Access Request Policy - draft 07 June 2011
Widget Access Request Policy - Implementation report
WidgetImplementation
Call for Implementation: WARP spec
Implementation
No native android implementation found
Extensibility framework (feature tags)
Netscape Plugin Application Programming Interface (NPAPI) is a cross-platform plugin
architecture used by many web browsers and in WebKit Android too. For this browser
engine the simplest drawing models is called Bitmap Model. It is a piece of memory that you
can hand to the plugin and the plugin will call back on a set of functions that you have
registered with it.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
page: 58 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 59 of 229
Target Platforms, target Requirements and Platform IPRs
Android is designed to run on many different types of device.
A device is “Android compatible” if it can correctly run apps written for the Android
execution environment, defined by the Android Compatibility Definition Document 9 and
pass the Compatibility Test Suite 10. The CDD represents the "policy" aspect of Android
compatibility.
Each release of the Android platform provides a new Compatibility Definition Document
(CDD).
Android applications are written in Java but may include code in C/C++ and code in other
scripting languages.
Concerning Java, Android executes only .dex bytecode, so the compatibilty with Java
standard it’s possible only at source code level. However the support of Android to Java SE
appears more complete if compared to JAVAME-CDC, even if AWT and Swing are not
available.
Android provides a support for scripting languages, named Scripting Layer for Android
(SL4A), supporting JavaScript, Python, Perl, JRuby and Lua.
The Android Native Development Kit (NDK), provides support for developing in C/C++. First
of all, we remind that C++ is a common denominator for the most important mobile OSs, so
the possibility to port an existing application developed in C++ to Android it’s very
important. The standard capabilities of Android for C++ are very simple. Even if we can use
gdb tool on command line to debug our C++ source code it’s possible to configure Eclipse to
do the same11.
The first step is to encapsulate the C++ source code into shared libraries for interfacing to
Java by Java Native Interface (JNI).Finally, there are few but very important limitations
concerning support of C++ in Android. The first important limitation is that Android doesn’t
support C++ exceptions, RTTI and Standard C++ Library due to performance limitations and
memory usage. There is an attempt to solve this problem12. The Standard Template Library
(STL) in not provided in Android, but there are open source versions like STLPort. Another
limitation concerns the Reference Parameters for Function. In fact, even if Java objects are
passed by reference to a function, the pointer to the object is passed by value to the native
function. If the object is immutable, such as an instance of the Integer class, then the native
function cannot legally pass back integer data to that object.
Security
- Rooting: it is the process by which a user regains administrative access. Even if Android is
an open source operating system with a Linux kernel, and user must operate using
permission and policy established. By Rooting Android an user gain full control over the
system and application by-passing Android rules, for example: improve performances,
9
Android Compatiblity, http://source.android.com/compatibility/index.html
Android CompatibilityDownloads, http://source.android.com/compatibility/downloads.html
11
Using Eclipse for Android C/C++ Debugging, http://mhandroid.wordpress.com/2011/01/23/usingeclipse-for-android-cc-debugging/
12
Improved Android NDK, http://www.crystax.net/android/ndk.php
10
page: 59 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 60 of 229
Target Platforms, target Requirements and Platform IPRs
modify system files, update Android version...Root access circumvents the security
restrictions of Android and there is no way to know what an application will do by this new
capability. A malicious root application can: replace the Gmail application with a modified
version, delete files, download and install a different modified ROM, gain access to your
Market account and make purchases on your behalf, replace keyboard with a version that
logs keystrokes...
- Self-signing: self signing of an application is allowed. An important issue around Android
self-signing is: given an app self-signed by a user, a second user can change the binary and
then re-sign the resulting app. So, it seems that signing the code does not prove who a user
is and it does not prove that the code has not been modified by anybody else. Android's
security architecture is based on the concept that it's not important who is the author, but
that the author of an application is the same author of another. Protecting the signing key, it
shows that it was self-signed by a specific user and not modified by others. When a user
upload a new version of the .apk, the market can verify that it is really from that user, and
not modified by anyone else.A user can publish two applications that that share a common
repository, or run in the same process signing them with the same private key. But, the
latest Android incident shows that applications installed directly from the Google market
could still be affected by malware.
The question is if Android applications should only allowed keys certified by trusted
authorities and not be allowed to be self-signed.
. Standards: Mobile OS use the most common standards for accessing and managing
networking, e-mails, messaging and communication. The most important language in
Android is Java, that even if uses a subset packages of Java SE (with extensions) permits to
reuse a lot of secure software developed and used in other platforms.
All Android applications (.apk files) must be signed with a certificate whose private key is
held by their developer. This certificate identifies the author of the application. The
certificate does not need to be signed by a certificate authority: it is perfectly allowable, and
typical, for Android applications to use self-signed certificates. The purpose of certificates in
Android is to distinguish application authors. This allows the system to grant or deny
applications access to signature-level permissions and to grant or deny an application's
request to be given the same Linux identity as another application
Connectivity
Android supports connectivity technologies including GSM/EDGE, IDEN, CDMA, EV-DO,
UMTS, Bluetooth, Wi-Fi, LTE and WiMAX and uses the "connectivity manager" to identify
automatically the best available transport network. Android manages available connection
taking in account the user preferences related to available network (e.g. use wifi, after
umts...).
An application may ask for using a specified network 3GPP or WLAN. The Connectivity
Manager:
monitors all network connections as Wi-Fi, GPRS, UMTS, etc. and, sends broadcast intents if
the state of a network connectivity changes and when connectivity to a network is
unavailable, tries to use another network and finally, provide an API that allows applications
page: 60 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 61 of 229
Target Platforms, target Requirements and Platform IPRs
to query the coarse-grained or fine-grained state of the available networks. Applications are
notified when there are changes in network connectivity.
Reliability
In a recent test performed by a third-party warranty company it was announced that the
iPhone 4 had a non-accident malfunction rate of 2.1 percent against the 2.3 percent of
Android and Research in Motion's BlackBerry device with 6.3 percent13.
Technical Criteria
We think that is very important in terms of performance of the platform to know the
amount of the minimum memory available for kernel and user space. For each platform
released, Google provides a Compatibility Definition Document (CDD).
- version 2.3 requires 128 MB
- version 2.2 requires 98 MB
- version 2.1 requires 92 MB10
Usability Criteria
The interaction styles are still in their infancy, so gestural user interface still needs to be
explored and improved. Below we report the results available in
http://www.emich.edu/compsci/projects/Master_Thesis_-_Benjamin_Speckmann.pdf
concerning Android platform:
- Acts on the assumption of unexperienced user
- Good usability
- High applications level
- Good diver configuration
More references: http://www.martinlijanto.com/thesis/case2.php
- User Interface Criteria: speaking about interface, it's obvious comparing Android to iPhone
and its iOS. A test provided by Spyre Studios Ref shows that Android and iOS are very similar
in terms of usability14. There are applications on both platforms that are well designed, and
poorly designed applications.The above test shows that comparing iPhone with a similar
hardware device both of these mobile operating systems can well perform in terms of
usability even if Android won the test for 9 - 7.5.
Product Diversity
13
IPhone More Reliability Than Android, But More Fragile,
http://www.mobiledia.com/news/76535.html
14
Android vs iOS,A usability battle, http://spyrestudios.com/android-vs-ios-a-usabilitybattle/?utm_source=twitterfeed&utm_medium=twitter
page: 61 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 62 of 229
Target Platforms, target Requirements and Platform IPRs
In July 2010 the Android Market features the highest percentage of free apps compared to
the other mobile markets.
In fact, about 60% are free applications, double the amount of Apple's App Store (Nokia's
Ovi Store 26%, BlackBerry's App World 26%, Windows Marketplace 22%).
Even if the total number of applications of the Apple App Store (381,062) is greater than the
Android Market (200,000), the growing trend of the Android market is better (28,000 new
apps in April 2011, versus Apple 11,000).
So, what these numbers show is that a very large community of developer is active on
Android platform and probably it will be greater in the next days.
This can be explained not only by the large distribution of Android devices, but also by the
easy way to innovate and develop new application using all the Android capabilities and
connected devices.
API codebase
Bluetooth: Supported. The Bluetooth APIs let applications: scan for other Bluetooth, devices,
query the local Bluetooth adapter for paired Bluetooth devices, establish RFCOMM
channels/sockets, connect to specified sockets on other devices, transfer data to and from
other devices.
NFC & RFID: The android.nfc package provides access to Near Field Communication (NFC)
functionality, allowing applications to read NDEF message in NFC tags. A "tag" may actually
be another device that appears as a tag.
DNS: Android chooses the DNS servers using the script located at
“/system/etc/dhcpcd/dhcpcd-hooks/20-dns.conf. The DNS configuration can rely on the
DHCP client and is node-scoped. Each time new configuration data is received by the host
from a DHCP server the DHCP client rewrites the global configuration data with the most
recent information received.
DLNA: Android does not include DLNA support natively but there are several applications in
the market that allow it to use DLNA technology15. No standard API for DLNA on Android but
supported in most devices.
Crypto and Certificate libraries: Android provides classes and interfaces for cryptographic
applications implementing algorithms for encryption, decryption, or key agreement16. It also
provide a library to generate, administer and verify X.509 certificates
DRM: Android provides a DRM framework by which an application can manage its rightsprotected content according to the license constraints. Applications can use different DRM
schemes but it is the device manufacturer who decides which DRM schemes a specific
device supports.
15
Skifta, Wikipedia, http://en.wikipedia.org/wiki/Skifta
Android Developers, javax crypto, http://developer.android.com/reference/javax/crypto/packagesummary.html
16
page: 62 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 63 of 229
Target Platforms, target Requirements and Platform IPRs
UPnP: An Android UPnP client provides a mean to stream music, videos or photos from an
UPnP enabled media server or control an UPnP enabled media. Android Market provides a
lot of UPnP clients but no open source solutions are available.
Media capture capability/codecs: The network protocols for audio and video playback RTSP
(RTP, SDP), HTTP progressive streaming, HTTP live streaming draft protocol (Android 3.0 and
above) are supported by Android17.
TV and set top box control: this feature is connected to DLNA. In fact, even if Android as a
remote is not a new feature, now it's possible to use it to send content to a TV-connected
set-top box. Skifta for Android is certified by the Digital Living Network Alliance (DLNA).
Android can stream onboard media to any DLNA source, including TVs, stereos, PCs and
Sony's PS3.
Vehicle: Available Android apps are vehicle agnostic and allow drivers to share information
about their cars. Google services like Google Voice could be tweaked for a whole new range
of product integration. For example, Android recognizes when it is on a dashboard thereby
switching to a voice-activated mode. So, if in one hand we will see an increasing number of
vehicle-oriented applications, on the other hand Android will adapt itself to the vehiclecontext.
Payment: Android supports two methods of payment. The first method is the in-App billing
service used by the Android Market. Each step of the transaction is signed by a system based
on private-key/public-key. A second method is actually in a beta phase: the Google Wallet.
It's a free application based on the NFC technology and no source code is available.
Platform attestation API: general, very strong sensor framework (i.e. many sensors are
available -> enabling user cases e.g. location, position, NFC, gyroscope, acc/ter, camera etc)
exposed through ext. set of APIs has very good support for different screen sizes & form
factors from tablet screen res. to QVGA.
Part B: Commercial information
Device Coverage
Due to the open-source and royalty-free nature of the OS, a majority of handset makers and
ODMs manufacture Android handsets. This includes 1st-tier makers such as Samsung,
Motorola, LG, HTC and Sony Ericsson, low-cost assemblers such ZTE and Asus, as well as
small 3rd- and 4th-tier makers. As of May 2011, Google reported that there are more than
310 Android device models manufactured and sold around the world18. Android is supported
17
Android Developer Guide, Media formats, http://developer.android.com/guide/appendix/mediaformats.html
18
Android Momentum Mobile and More, http://googleblog.blogspot.com/2011/05/androidmomentum-mobile-and-more-at.html
page: 63 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 64 of 229
Target Platforms, target Requirements and Platform IPRs
on wide range of device price points from high-end devices (e.g. HTC Blast concept phone,
http://www.sleetherz.com/android-news/htc-blast-specs-high-end-android-phone-with-15ghz-processor/2872/) to sub 100 Euro models made by many small Chinese ODM. Recent
versions of the OS support Smartphone and tablet form-factors.
Platform Maturity
Since its introduction Google released 8 OS versions. Current versions of Android show
strong and stable performance and rich API. However the platform continues to evolve very
fast, introducing new API and making some API obsolete.
Market penetration
Android OS showed unprecedented growth since its introduction of the first handset in
October 2008. At Google IO event in May 2011 Google announced that in a little more than
two and a half years 100 million Android devices were activated around the globe. The OS
continues strong growth with 400,000 new Android devices activated every day as of May
201118.
Availability
Free development tools, wide availability of community support and open submission
application submission process won Android significant mind-share with mobile application
developers. Android is second only to Apple in developer mind-share.
As of May 2011, there are 200,000 free and paid applications available in Android
Market1818.
Feasibility
At the time of writing Android is relatively open allowing customization by handset makers
and operators. In order to minimize effects of fragmentation Google runs compatibility test
program. Handset makers and operators generally can replace the home screen application,
pre-load applications and make UI customizations. Google however watches closely that preloaded applications will not harm long-term interests of the company and react aggressively
when handset makers attempt to use competing software on the platform (Skyhook sued
Google for non-competitive practices in September 201019. Handset makers or operators
that do not wish to use Google applications on the device, including Android Market, are not
obliged to adhere to Google certification rules. For example China Mobile created its own
branch of the OS called OMS. OMS replaces Google proprietary applications with
applications provided by China Mobile and its partners.
Partner perspective
19
Skyhook sues Google, http://gigaom.com/2010/09/15/skyhook-sues-google-in-a-location-battleroyale/
page: 64 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 65 of 229
Target Platforms, target Requirements and Platform IPRs
Android will continue to play leading role in mobile platforms expanding to tablets,
connected TVs and car infotainment.
Risks
Android evolves very fast, and that sense it presents a moving target. Webinos run-time will
need to be ported to new OS versions to remain relevant.
Google exerts tights control over handset makers and Android Market. If webinos will be
deemed competitive to Google interests, Google may prevent handset makers to pre-load
webinos run-time on their devices. Google can also potentially prevent distribution of
webinos run-time through Android Market (less probable).
Part C: Licensing and Governance
For WebKits' JavaScriptCore and WebCore components are available under the GNU LGPL
v2.1, while the rest of WebKit is available under a BSD-style license.
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSI-approved
license?
Are developer support mechanisms - project mailing lists,
forums, bug-tracking databases, developer documentation
and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
1. No discriminates with
regard to developers and
source code and time
4. Yes – approved license and
permissive (e.g. Apache, BSD,
MIT)
2. No – limited developer
support mechanisms
1. No
1. No
Development
Transparency of contributions and acceptance process – Is
the code contribution and acceptance process clear, with
progress updates of the contribution provided (via Bugzilla or
similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented
and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source code
page: 65 of 229
1. No – contributions
process only, no progress
stages of contributions
provided
2. – No, although you may
find this info by checking
copyright notices in files
1. – No commit access
restricted to specific groups
1. – No this information is
not provided
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 66 of 229
Target Platforms, target Requirements and Platform IPRs
to the baseline
Does the contribution license require a copyright assignment,
or copyright license and/or patent license?
3. Yes – project requires a
copyright assignment and
patent grant
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process prior
to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
1. Yes-code must go through
formal compliance process prior
to being distributed to other
parties
2. Yes - restricted
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 21
Part D: Summary
Verdict
Is this platform suitable for webinos? Yes
SWOT
Strengths
- Android is widely supported in the mobile industry
and will continue to play leading role in
Smartphones and tablets. Despite potential risk of
Google preventing adoption of webinos on Android
platform, Android is recommended to become
primary platform for webinos implementation on
mobile devices.
- Android offers strong native and web application
frameworks. webinos will need to compete with
native apps and web apps by demonstrating clear
differentiating value for webinos applications.
- Android enjoys strong support from all ecosystem
players. There is broad selection of devices at all
possible price points and wide availability of
developers with expertise necessary to develop
webinos run-time on the OS.
- Since Android is freely available to all device
makers, availability of webinos can be considered as
differentiating feature for device makers and be
pre-loaded on devices.
Opportunities
page: 66 of 229
Weaknesses
- Android evolves very fast, and that
sense it presents a moving target.
Webinos run-time will need to be
ported to new OS versions to remain
relevant.
Risks
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 67 of 229
Target Platforms, target Requirements and Platform IPRs
- Android offers strong API and reasonably open
governance regime allowing customization of the OS
and installation of webinos run-time and webinos
apps as a post-load software.
- Android also offers a significant market
penetration and support across a range of devices
with these soon to be extended to other domains in
scope for webinos (i.e. automotive and TV)
page: 67 of 229
- Google exerts tights control over
handset makers and Android Market.
If webinos will be deemed
competitive to Google interests,
Google may prevent handset makers
to pre-load webinos run-time on
their devices.
- Google can also potentially prevent
distribution of webinos run-time
through Android Market (less
probable).
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 68 of 229
Target Platforms, target Requirements and Platform IPRs
Windows Phone
Introduction
Windows Mobile is a mobile operating system developed by Microsoft that was used in
Smartphones and mobile devices, but is being currently phased out to specialized markets. It
is superseded by Windows Phone 7. The current and last version is “ Windows Mobile 6.5 ".
It is based on the Windows CE 5.2 kernel. Windows OS is programmed in ‘C++’ language.
Developers have several options for deploying mobile applications. These include writing
native code with Visual C++, writing Managed code that works with the .NET Compact
Framework. In context of Webinos, it is more relevant to discuss the Mango version of
windows phone. Windows Phone 7.5 (codenamed 'Mango') is a major software update for
Windows Phone, the mobile operating system by Microsoft. It was announced on May 24,
2011 and expected to be released in mid-October 2011. Windows Mobile is owned by
Microsoft. Windows Mobile/Mango is often seen to be the 'third platform' by the industry,
especially the Operators (after Apple and Android). Hence, the platform is significant to
Webinos.
Part A1: Technical Information (web rendering engines)
Web components
Mango will include IE9 which is capable of HTML5 rendering which includes support for
JavaScript
Widget availability
Unclear as at time of writing
Part A2: Technical Information (Operating Systems)
General OS features
Portability
Nokia, Samsung, HTC, ZTE are expected but details still unclear
Security
Unclear at time of writing
Connectivity
Device specific
Reliability
Because of the commitment from MSFT and Nokia and the existing developer relationships
on both platforms, this platform will be significant for developers
page: 68 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 69 of 229
Target Platforms, target Requirements and Platform IPRs
Technical criteria
Microsoft has announced a list of 500 features but this level of detail is unknown at the time
of writing
Usability Criteria
Mango places a heavy emphasis on usability and integration with other services like
Facebook, Twitter, LinkedIn, Facebook checkins, photo tagging, Facebook chat and face
detection.
Product Diversity
Microsoft products have been open and developer friendly. We could expect the same from
Mango release
The Windows Phone 7 mobile OS includes a completely new over-hauled UI inspired by
Microsoft's "Metro Design Language". It includes full integration of Microsoft services such
as Windows Live, Zune, Xbox Live and Bing, but also integrates with many other nonMicrosoft services such as Facebook and Google accounts. The new OS platform has
received some positive reception from the technology press. As Windows Phone 7 is a new
platform, there is no backwards compatibility with Windows Mobile applications and some
power-user features that were in Windows Mobile will not be present until near-future
updates. Encryption may only be possible if you use a removable flash storage card and a
third-party provider
Supported platforms: Silverlight, Microsoft XNA
Kernel type Windows CE 7.0
API codebase
Is there platform (or 3rd party) support for some of the more critical, and more sensitive
enablers like Bluetooth, RFID, DNS, UPNP, USB?
Unknown at the time of writing but this is expected to be device specific.
Part B: Commercial information
Device coverage
See above
Platform maturity
Early stage platform
Market penetration/availability
Early stage platform
Availability
page: 69 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 70 of 229
Target Platforms, target Requirements and Platform IPRs
No
Partner perspective
Nokia
Risks
The platform is early and unknown. It needs to capture mindshare from the iPhone and
Android. It is not clear how successfully this will be achieved
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the same time?
Is source code available under a permissive OSI-approved license?
Are developer support mechanisms - project mailing lists, forums, bug-tracking
databases, developer documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting minutes publicly available
to understand decision-making in the project?
2
2
?
1
1
Development
Transparency of contributions and acceptance process – Is the code contribution and
acceptance process clear, with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you identify from whom source code
contributions are provided?
Accessibility to become a committer – are the requirements/process to become a
committer documented and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who committers to the open source
project are? i.e., those developers that have the authority to 'commit' source code to the
baseline
Does the contribution license require a copyright assignment, or copyright license and/or
patent license?
1
1
1
1
?
Derivatives
Are trademarks used to control how and where the platform is used via enforcing a
compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the project in
terms of approval, distribution or discovery?
1
1
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
Summary
Total Score 12
Additional comments
1) Microsoft EULA may be applicable in some cases but unclear as at time of writing
page: 70 of 229
Target Platforms, target Requirements and Platform IPRs
?
FP7-ICT-2009-5 257103
page: 71 of 229
Target Platforms, target Requirements and Platform IPRs
2) For each handset manufactured with WP7 OS, MSFT collects a licensing fee. While the
exact fee charged per handset is undisclosed, it is thought the price falls somewhere
between $8 and $15.14 MSFT claims to deliver a superior product and therefore charges a
premium above competitors (e.g., Google, which licenses the Android OS for free).
3) Windows Phone will be significant but at the time of writing it is unclear how the alliance
with Nokia will play out in terms of devices that the customer buys
4) Nitobi, maker of the PhoneGap mobile cross-platform application development
framework, and Microsoft announced a new beta of PhoneGap for the Windows Phone 7
“Mango” release. JavaScript APIs to use Windows Phone Mango features like:
• Access Device Information (UDDI and more)
• Add and search Contacts
• Connection status (network/WiFi connection status)
• Alerts/Notification (alert and confirm)
• Media Capture (Image and Audio)
• Camera
• Accelerometer
• Geolocation
This is a good indicative list of possible directions and possibilities for Mango20.
5) Microsoft is moving Windows Phone in a contrarian direction, focusing less on apps and
more on building features like search and social stuff directly into the OS21.
6) The company outlined its three focus areas for Mango:
• Communications
• Apps
• Internet
Features like multitasking, better cloud integration and better platform tools are all part of
Mango’s roadmap22
7) While Microsoft/IE9 scores high on HTML5 compatibility, the meaning and inclusion of
HTML5 is unclear
20
Nitobi Launches PhoneGap for Windows Phone Mango,
http://www.eweek.com/c/a/Application-Development/Nitobi-Launches-PhoneGap-forWindows-Phone-Mango-848724/
21
Microsoft Mango preview, http://technologizer.com/2011/05/27/microsofts-mangopreview/
22
Microsoft unveils Mango, the latest version of Windows Phone
http://mashable.com/2011/05/24/windows-phone-mango/
page: 71 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 72 of 229
Target Platforms, target Requirements and Platform IPRs
Web workers, the file API, local storage, or other aspects of the spec.
Not do they cover CSS or other standards that have nothing to do with HTML5 but are
somehow lumped under HTML5 by the likes of Apple, Google, and Microsoft.
http://www.theregister.co.uk/2010/11/01/w3c_html5_conformance_tests/
http://w3c-test.org/html/tests/reporting/report.htm
Part D: Summary
Verdict
Unclear
SWOT
Swot analysis in relation to webinos:
Strengths
- A significant platform(after Apple
and Android)
Opportunities
- could mature into a significant
platform
page: 72 of 229
Weaknesses
- Many elements unknown
Risks
- Webinos is based on Open source which is not the
primary emphasis of Mango
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 73 of 229
Target Platforms, target Requirements and Platform IPRs
iOS
Introduction
iOS (is the mobile operating system powering Apple handsets, touch players and tablets; its
core derived by FreeBSD (UNIX operating system) based on microkernel XNU Mach based on
Darwin OS. iOS has four levels of abstraction: the Core OS layer, the Core Services layer, the
Media layer and the Cocoa Touch layer.
The first version to intruduce multitasking was Version 4 (iOS4). Last available version is iOS
4.3 release 1Q11. iOS 4.3 introduced the Nitro JavaScript engine in Safari
Part A1: Technical Information (web rendering engines)
iOS also has support for the following web rendering engines:
Name
opera mini
iCab Mobile
Atomic Web Browser
iBrowse
Reference
Source
http://app2.me/2878 closed
http://app2.me/2944
http://app2.me/2945
http://app2.me/2946
Web components
HTML 4 rendering code base
The results of Acid3 test on iOS web browser with default settings rendering are:
Version Result
iPad2
100/100
HTML 5 rendering code base:
According to html5test.com Blackberry os 7 browser has a score of 277 with 3 bonus points.
For informations about html5 not supported elements check
http://docs.blackberry.com/en/developers/deliverables/20957/HTML5_support_1326451_1
1.jsp.
New version increased HTML5 support: in particular:








Accelerometer & Gyroscope support through the DeviceOrientation API
WebSockets API from HTML5
Updated HTML5 Form Support
Partial XHR-2 Support
Print Support through AirPrint
New JavaScript data types
New DOM events
Enhanced SVG and Canvas support
page: 73 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 74 of 229

Target Platforms, target Requirements and Platform IPRs
It should be noticed that Flash is not supported on iOS23
Javacript engine
Last version of iOS introduced the Nitro Javascript engine. It increased the performance of
Javascript24.
Widget availability
iOS support only following web apps paradigms:


web pages based
hybrid apps based (e.g. PhoneGap style)
Web Pages based
it is possible to integrate web pages within iOS with a simple paradigm; in particular it is
possible to insert bookmarks within main menu of iPhone; using the dedicated css that styles
the pages with iOS themes it is somehow possible to develop a web application. Given the
good support of HTML5 caching techniques it is then possible to develop a web apps25. At
moment there is no support for W3C widgets.
Hybrid application
iOS APIs support web view in order to consume web content within a native application.
PhoneGap created a porting of its layers on iOS. Following APIs are at moment supported
within PhoneGap:








ACCELEROMETER
CAMERA
COMPASS
CONTACTS
GEOLOCATION
NOTIFICATION (SOUND)
NOTIFICATION (VIBRATION)
STORAGE
23
Safari on iPhone & iPad 4.2: Accelerometer, WebSockets & better HTML5 support,
http://www.mobilexweb.com/blog/safari-ios-accelerometer-websockets-html5
24
ios-4-2-1-vs-ios-4-3-new-nitro-javascript-engine-shows-up-to-three-fold-performanceimprovement, http://www.iosnoops.com/2011/03/08/ios-4-2-1-vs-ios-4-3-new-nitrojavascript-engine-shows-up-to-three-fold-performance-improvement/
25
How to make an HTML iPhone App, http://sixrevisions.com/web-development/html5iphone-app/
page: 74 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 75 of 229
Target Platforms, target Requirements and Platform IPRs
After some problems raised by Apple, PhoneGap based applications were accepted in Apple
Store26.
Digital signature code availability
Not supported
Widget packaging:
Not supported
WARP implementation
not supported
Extensibility framework (feature tags)
Plug in are not supported by Mobile Safari .JavaScript (or XUL) extensions are not supported
but some simple extension have being tried through use of Bookmark27.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
The OS is available only for Apple devices
Security
Unknown
Connectivity
Device specific; main connectivity standards are supported by the os; support for LTE is
expected with the new iOS 5
Reliability
According to recent tests, iOS platform is the more reliable on the mobile devices market13
Technical criteria
Multi-threading and TLS are supported
Product criteria
26
Phonegap-officially-permitted-on-the-app-store, http://nachbaur.com/blog/phonegapofficially-permitted-on-the-app-store
27
Iphuelin, http://www.ipuhelin.com/en/safariplus/
page: 75 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 76 of 229
Target Platforms, target Requirements and Platform IPRs
Nowadays Apple App store hass the reachest in term of applications available (more than
350K)28.
API codebase








Bluetooth: supported
Nfc: NA
DNS: supported
DLNA: downloadable
Crypto: supported
DRM: NA
Database: supported
Barcode: NA
Part B: Commercial information
Device coverage
Platform maturity
Market
penetration/availability
Availability
Feasibility
Partner perspective
Risks
iOS is available only on Apple smartphones
Commercial
According to Gartner data, iOS smartphones have a market
penetration of 16.7% with about 13 million devices
PhoneGap is an open source project (available also for iOS)
and could be a starting point for a Webinos Wrt
Yes
iOS will continue playing a leading role in mobile market
Hardly an implementation of a Webinos platform will be
accepted on the Apple Store
Part C: Licensing information
iOS platform is proprietary. Apple does not license iOS for installation on third-party
hardware.
Access
Is source code freely available to all developers, at the same time?
Is source code available under a permissive OSI-approved license?
Are developer support mechanisms - project mailing lists, forums, bug-tracking
databases, developer documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting minutes publicly available
to understand decision-making in the project?
1
1
?
3
?
Development
Transparency of contributions and acceptance process – Is the code contribution and
acceptance process clear, with progress updates of the contribution provided (via
Bugzilla or similar)?
28
Apple vs. All the Rest: Every Mobile App Store Compared,
http://www.pcmag.com/article2/0,2817,2382944,00.asp#fbid=wnVQdlCP1kE
page: 76 of 229
Target Platforms, target Requirements and Platform IPRs
1
FP7-ICT-2009-5 257103
page: 77 of 229
Target Platforms, target Requirements and Platform IPRs
Transparency of contributions to the project – can you identify from whom source code
contributions are provided?
Accessibility to become a committer – are the requirements/process to become a
committer documented and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who committers to the open source
project are? i.e., those developers that have the authority to 'commit' source code to the
baseline
Does the contribution license require a copyright assignment, or copyright license and/or
patent license?
1
1
1
?
Derivatives
Are trademarks used to control how and where the platform is used via enforcing a
compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the project in
terms of approval, distribution or discovery?
1
1
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
?
Summary
Total Score 11
Part D: Summary
iOS has all the most advanced web technologies; anyhow, the extendibility as well as the
restriction in acceptance criteria as well as the unique source of installable application limits
its feasibility and flexibility as a research target platform.
Verdict
Is this platform suitable for webinos? No
SWOT
Swot analysis in relation to webinos:
Strengths
- A very stable and
reliable platform
- High performance
devices
Opportunities
- The richest app store
nowadays
page: 77 of 229
Weaknesses
- Closed source
- A single app store controlled by Apple
Risks
- Probably an implementation of the Webinos platform would not
be accepted on the Apple store, drastically limiting its diffusion
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 78 of 229
Target Platforms, target Requirements and Platform IPRs
Samsung bada
Introduction
Samsung bada is a Samsung proprietary mobile application platform targeted at a range of
mid to low-end Smartphones and feature phones. Samsung describe the goal of bada as not
to compete with traditional high end Smartphone operating systems (like Android OS), but
to extend the lower end of the market for Smartphones and thus allow conventional mobile
phone users access to “Smartphone like” features.
Samsung bada is a mobile platform with a configurable kernel. Bada itself can sit upon either
a Samsung proprietary kernel or Linux kernel. On the top of these OS kernels the bada
platform provides device, service, and framework layers.
The current release of the bada SDK is release 1.2.1. This was released during late December
2010, and was the 3rd release of the platform made by Samsung. This latest release
introduced a few new features such as conditional application launching, memory leak
detection, Wi-Fi EAP support, a web application model and a Flash application model.
Since the release of 1.2.1 bada 2.0 was announced by Samsung at Mobile World Congress
2011, it will be launched sometime during the second half of 2011. Some of the new
features expected to be released during the lifetime of the bada 2.0 platform are
multitasking, push notification messages, NFC support, Wi-Fi Direct, FlashLite 4 support,
Flash-based interactive lock screen, text-to-speech and speech-to-text, and HTML5 support
Part A2: Technical Information (Operating Systems)
General OS features
Portability
Samsung bada has been Samsung's proprietary platform. Porting applications from or to
bada is not officially supported
Security
Samsung bada provides Key management for encryption, decryption, digital signatures,
verifying signatures, and hashes. It also provides Cryptographically Secure Pseudo Random
Number Generator (CSPRNG).
Connectivity
Samsung bada supports communications between devices or between devices and servers.
The Wi-Fi functionality in bada supports both infrastructure and ad-hoc modes. Other highlevel networking functionality includes Bluetooth, while lower level tools include both an
HTTP toolkit and a sockets toolkit for maximum networking control
Reliability
page: 78 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 79 of 229
Target Platforms, target Requirements and Platform IPRs
The underlying technology of Samsung bada has a long history of almost 10 years. During
this time it was Samsung's proprietary platform called SHP, and was deployed in many
successful feature phone devices.
Based on the original SHP proprietary platform, bada has introduced many more new
features such as an open developer API, multipoint-touch, 3D graphics, enhanced user
experience, and the ability to support application downloads and installation from a central
app store called Samsung Apps.
Samsung bada has generally proven to be reliable in its past non-open incarnations, and also
with its enhanced new features as an open platform.
Technical Criteria
Samsung bada in the version 2.0 is a full-fledged Smartphone platform and has support for
multitasking. Multiple applications can run simultaneously depending upon the amount of
free RAM that the phone has and also how quickly it switches between them. Samsung bada
supports multi-threading. There are two thread models: a worker thread and an event
thread. The Mutex and Semaphore classes are supported to synchronize between threads.
Usability Criteria
The Samsung bada platform is Service Oriented, meaning that it is differentiated from other
platforms by its support for service-centric features like social networking, commerce,
remote content management and location-based services – all hosted on a cloud
infrastructure referred to as the bada Server. The bada SDK includes most tools that
developers would expect and need to create applications, such as a compiler, debugger, a
device “simulator”, unit testing framework, testing tools such as code coverage or
performance analyser, documentation, and sample applications. Bada has a rich collection of
features to enable the creation of a variety of applications, satisfying diverse and innovative
application requirements.
Product Diversity
The bada SDK includes most tools that developers would expect and need to create
applications, such as a compiler, debugger, a device “simulator”, unit testing framework,
testing tools such as code coverage or performance analyser, documentation, and sample
applications. Bada has a rich collection of features to enable the creation of a variety of
applications, satisfying diverse and innovative application requirements.
API codebase
Bluetooth
The bada platform provides the following Bluetooth features:




General Access Profile (GAP) support
Object Push Profile (OPP) support
Serial Port Profile (SPP) support
Point-to-point connection support
page: 79 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 80 of 229
Target Platforms, target Requirements and Platform IPRs
Wifi
Samsung bada provides a rich set of methods for managing Wi-Fi devices and accounts, and
communicating over a Wi-Fi channel. The Wifi namespace consists of different classes like
WifiManager, AdhocService and WifiNetAccountInfo.



WifiManager - the WifiManager, WifiBssInfo and WifiSecurityInfo classes
provide functionality for local Wi-Fi device and network.
AdhocService - the AdhocService and AdhocPeerInfo classes provide
methods for communication over an adhoc network.
WifiNetAccountInfo - the WifiNetAccountInfo and WifiSecurityInfo
classes provide methods for Wi-Fi account information.
DNS
The Dns class in bada provides the simple domain name resolution functionality. Both
GetHostByAddress() and GetHostByName() requests can be made in an asynchronous mode.
It also contains the IDnsEventListener event handler for listening DNS events. DNS translates
host names into IP addresses and vice versa.
DLNA
Samsung bada wave provides application called AllShare based on DLNA technology. It is a
simple application that will let users stream media to and from your phone onto a TV or
computer.
DRM
Samsung bada handles rights management automatically for licensed and valid DRM
content. The DrmInfo class lets you get DRM information from DRM-protected files, such as
DRM info type, DRM info method, right status, permission type and right constraints. The
ConstraintInfo class contains the current right constraint information for DRM-protected
content. The value of ConstraintInfo is updated after the DRM rights instance has been
consumed by a player or a viewer.
Commerce API
The Store namespace in bada facilitates mobile commerce services. The main components
of this namespace are Item Service and Purchase Service.
Item Service
Item service provides functionalities related to item information query. Applications can get
their item information (e.g. name, price, description) from Samsung Apps.
ItemInfo class contains the item information.
Purchase Service
Purchase service provides functionalities related to item purchase. Application vendors can
sell their additional features to the payer. They can also query the purchase details.
PurchaseInfo class contains the purchase information.
page: 80 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 81 of 229
Target Platforms, target Requirements and Platform IPRs
Media processing APIs
The Media namespace defines interfaces and classes that let the application to integrate
audio, video, and image processing functions easily. The Image class provides methods for
encoding and decoding images. The Player class provides methods for playing audio and
video from media file stored in a device or streaming media or data over the network.
AudioRecorder and VideoRecorder classes can be used to add audio or video recording
features to the application through MIC or Camera devices. The Camera class provides
methods to use the camera on the device to display live preview of the scene and capture a
still image from the preview. The DrmInfo and the DrmConstraintInfo classes provide DRM
information and content information of the DRM file. The MediaCapability class provides
capability information of various classes in the Media namespace.
Sensor APIs
The SensorManager class provides methods to add or remove the sensor's listeners, check
the sensor availability, set intervals, and get the maximum or minimum interval. Supported
sensors include Acceleration sensor, Magnetic sensor, Proximity sensor, Tilt sensor, Weather
sensor etc.
Part B: Commercial information
The bada platform was first announced on 10 November 2009 and released with the first
bada-based phone, the Samsung Wave S8500 on June 1 2010.
Over the summer 2010 various bada mass-devices were launched such as the Samsung 723,
575, 533, 525.The second Samsung bada flagship device the Wave II S8530 was released in
November 2010.
Further bada devices are planned to be launched by Samsung during 2011 including the
Wave 578 mobile phone which was announced by Samsung at MWC in early 2011.
While the Android OS is becoming more and more dominant in the Smartphone market,
Samsung has reported that it has shipped around 5 million bada based devices as of the first
quarter of 2011. Thus the bada platform despite being proprietary has actually
outperformed total shipments of Windows Phone 7 devices by more than a million units.
Device coverage
Samsung is the only company selling devices based on the bada platform.
Platform Maturity
Samsung bada has a long history of almost 10 years. During this time, it has been deployed
in many successful handsets. Samsung bada is proven to be reliable with its success history
and also enhanced with its new features.
Market penetration/availability
page: 81 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 82 of 229
Target Platforms, target Requirements and Platform IPRs
The Samsung Wave S8500 was the first Smartphone based on bada, and was the
cornerstone of the company’s commitment to ‘Smartphone democratization’ during the
early stages of bada. With the launch of the Wave, Samsung started constructing a total ecosystem around bada platform including the Samsung Apps store.
The Samsung Wave II device was released in late 2010, and the third bada device to be
launched will be the Wave 578 sometime later in 2011.
The Samsung App store had reached more than 100 Million downloads by March 2011 by
comparison the Apple application store has had 14 Billion downloads as of June 2011.
Availability
The bada SDK includes copyright software licensed are provided to developers as open
source. Samsung bada claims that full technical support for bada application development is
available.
Samsung Apps provides a variety of mobile applications specially developed for Samsung
bada phones
Feasibility
Although Samsung bada provides full technical support for bada application development,
developing webinos applications for bada will still face challenges such as the device
availability, licensing issues.
Partner perspective
Bada is aiming at providing customers a wider choice of Smartphones with cost-effective yet
powerful bada-powered phones.
Risks
Bada is a proprietary platform. The availability of bada device and application are far less
than its competitors Android and Apple iPhone
Part C: Licensing information
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
page: 82 of 229
1. No – discriminates with regard
to all of the above
Not known
3. Yes – developer support
mechanisms open to all
developers
4. Yes – full roadmap available,
with explicit call for contributions
to the roadmap
4. Yes
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 83 of 229
Target Platforms, target Requirements and Platform IPRs
decision-making in the project?
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
4. Yes – there are good project
statistics that provide this
information
3. Yes – the process is
documented and accessible to
all developers
Not known
2. Yes – project requires a
copyright license/'sign-off'
process
Derivatives
Are trademarks used to control how and where
the platform is used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in terms of
approval, distribution or discovery?
1. Yes – code must go through a formal
compliance process prior to be
distributed to other parties
3. Yes – restricted by approval,
distribution or discovery
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 31
Additional comments
Samsung bada is a proprietary closed-source application platform with open APIs to third
party developer and is currently not licensable to any other parties. Samsung have full
control over the bada platform due to its closed nature.
Part D: Summary
Verdict
As bada is under company proprietary license, it probably not suitable for an open source
project like webinos.
SWOT
page: 83 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 84 of 229
Target Platforms, target Requirements and Platform IPRs
Swot analysis in relation to webinos:
Strengths
- Samsung bada provides rich collections of
features and services with high reliability and
performance. Comparing with its
competitors, bada outperforms on highquality multimedia, easy to use user interface
and flexible customization options etc.
- Samsung bada represents great challenges
and unprecedented opportunities to
developers. With supports for a wide range
of devices, bada benefits from active
developer community and well-grown
Samsung Apps app store. It offers opensourced SDK, full technical supports, great
rewards and returns to application
developers.
Opportunities
The vision of Samsung bada is “Smartphones
for everyone”. The global distribution and
coverage of Samsung mobile phones and
Samsung Apps (the application store), will
boost bada application developers' business
opportunities.
page: 84 of 229
Weaknesses
A main concern on using this platform in
Webinos project is its company proprietary
license.
Risks
The developers shall be aware of the
increasing dominance of Google's Android
platform in mobile world that bada is facing.
There are already a huge number of
applications available for Apple iPhone and
Android devices - and these numbers are
growing extremely fast. Bada, on the other
hand, with only a handful devices released,
certainly has a catch-up to do in order to
create similar momentum on the apps front.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 85 of 229
Target Platforms, target Requirements and Platform IPRs
BlackBerry
Introduction
Blackberry is the commercial name of many devices produced by the Canadian company
Research in Motion (RIM). All devices have a proprietary operating system called Blackberry
OS.
RIM recently released a new OS called Blackberry Tablet OS together with RIM's first tablet
called Blackberry Playbook; this new OS will be able to run both Blackberry and Android apps
thanks to application players.
Part A1: Technical Information (web rendering engines)
Starting from version 6.0 BB browser - Blackberry Mobile - is based on WebKit an open
source web engine used also by Google Chrome, Maxthon 3, Safari (both desktop and
mobile), Shiira, iCab 4, OmniWeb 5.5+, Epiphany, Adobe AIR, Midori, Adobe Dreamweaver
CS4 and CS5, Android browser, Palm webOS browser, Symbian S60 browser, OWB, Steam,
Rekonq, Arora, Flock (version 3+).
BB also has support for the following web rendering engines:
Name
Reference
Source
opera mini http://www.opera.com/mobile/ closed
Web components
HTML 4 rendering code base
The results of Acid3 test on BB web browser with default settings rendering are:
Version Result
6.0
100/100
HTML 5 rendering code base:
According to html5test.com Blackberry OS 7 browser has a score of 277 with 3 bonus points.
For information about html5 not supported elements check
http://docs.blackberry.com/en/developers/deliverables/20957/HTML5_support_1326451_1
1.jsp.
JavaScript engine
According to Blackberry info JavaScript is fully supported up to version 1.6, while JavaScript
1.8 is partially supported.
Widget availability
page: 85 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 86 of 229
Target Platforms, target Requirements and Platform IPRs
Blackberry Webworks is a platform for developing applications using web technologies,
offering also support for web frameworks like JQuery and PhoneGap29.
Digital signature code availability
Webworks applications’ signing is supported; applications that use controlled APIs require
signatures from the Blackberry Signing Authority Tool30.
Widget packaging
Widget packaging supports an extension of w3c packaging. The resources are compiled in a
.cod file that can be installed on the phone30
WARP implementation
Blackberry supports W3C Widget Access Request Policy 31.
Extensibility framework
It's possible to extend the framework with Webworks APIs declaring them in the widget
manifest32.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
The OS is available only for RIM devices.
Security
Security is a key aspect for Blackberry phones and is provided at many levels
(communication with the enterprise server, data storage,) and has received many third party
certifications33. Application signing is needed for distribution.
Connectivity
Device specific, but all connectivity standards are supported by the OS.
29
Blackberry Webworks development,
http://us.blackberry.com/developers/browserdev/opensource.jsp
30
Signing .cod Files for Blackberry Widgets,
http://docs.blackberry.com/en/developers/deliverables/20770/Signing_cod_files_for_BB_Widget_ap
plications_836006_11.jsp
31
Blackberry, Allowig Access to external resources and APIs,
http://docs.blackberry.com/en/developers/deliverables/20770/Allowing_access_to_external_resourc
es_and_APIs_834696_11.jsp
32
Blackberry Webworks API Reference, http://www.blackberry.com/developers/docs/webworks/api/
33
Blackberry Approvals and Certifications,
http://us.blackberry.com/ataglance/security/certifications.jsp
page: 86 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 87 of 229
Target Platforms, target Requirements and Platform IPRs
Reliability
The platform is stable.
Technical Criteria
Multi-threading and multi-processing are supported, as well as TLS instead IP-v6 is still
unsupported34.
Product Diversity
It's possible to develop new apps and sell them through the Blackberry app store ; there are
more than 25000 applications available today.
API codebase








Bluetooth: supported (package net.rim.device.api.bluetooth).
Nfc: supported (package net.rim.device.api.io.nfc).
DLNA: not supported.
Crypto: supported (package net.rim.device.api.crypto).
DRM: supported (package net.rim.device.api.drm).
Database: SQLite supported (package net.rim.device.api.database).
Barcode: supported (package net.rim.device.api.barcodelib).
UPnP: not supported.
Part B: Commercial information
Device coverage
Blackberry is only targeted at RIM mobile devices
Platform maturity
Blackberry is one of the most mature platforms on the market, having been in market
almost 10 years
Market penetration/availability
According to Gartner data, Blackberry Smartphones have a market penetration of 14.8%
with about 11.9 million devices, but is losing market shares
Availability
PhoneGap is an open source project (available also for BlackBerry) and could be a starting
point for a Webinos implementation
34
Blackberry Enterprise Server Support for IPv6,
http://btsc.webapps.blackberry.com/btsc/search.do?cmd=displayKC&docType=kc&externalId=KB050
94
page: 87 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 88 of 229
Target Platforms, target Requirements and Platform IPRs
Feasibility
High risk of obstacles in implementation
Partner perspective
Risks
Since the OS is closed source, some features of webinos platform may not be implementable
Part C: Licensing information
Access
Is source code freely available to all developers, at the same time?
Is source code available under a permissive OSI-approved license?
Are developer support mechanisms - project mailing lists, forums, bug-tracking
databases, developer documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting minutes publicly available
to understand decision-making in the project?
1
1
?
1
1
Development
Transparency of contributions and acceptance process – Is the code contribution and
acceptance process clear, with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you identify from whom source code
contributions are provided?
Accessibility to become a committer – are the requirements/process to become a
committer documented and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who committers to the open source
project are? i.e., those developers that have the authority to 'commit' source code to the
baseline
Does the contribution license require a copyright assignment, or copyright license and/or
patent license?
1
1
1
1
?
Derivatives
Are trademarks used to control how and where the platform is used via enforcing a
compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the project in
terms of approval, distribution or discovery?
1
1
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
Summary
Total Score 10
Part D: Summary
page: 88 of 229
Target Platforms, target Requirements and Platform IPRs
?
FP7-ICT-2009-5 257103
page: 89 of 229
Target Platforms, target Requirements and Platform IPRs
Verdict
Is this platform suitable for webinos? No
SWOT
Swot analysis in relation to webinos:
Strengths
- A significant platform with a well defined
Smartphone market
Opportunities
- Business UC can get attractions
- Implement already widget specification
natively so adoption of webinos web
technologies can potentially be well
received
page: 89 of 229
Weaknesses
- The platform is closed with no possibility to
influence it
Risks
- Missing API to link WRT to device APIs
- Security model is difficult to be changed
- Low level system not accessible
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 90 of 229
Target Platforms, target Requirements and Platform IPRs
Linux (raw)
Introduction
Linux is an open operating system that offers rich functionality and scalability to handset
developers and manufactures. It is evolving into a major standard for mobile device
operating systems as handset manufacturers are discovering that traditional proprietary
platforms no longer provide the flexibility they require to differentiate themselves, and are
too costly and difficult to extend to provide the innovative services required by mobile
operators.
With its excellent record of success within mobile embedded systems, Linux has been
selected as the core technology for the LiMo (Linux Mobile) Foundation Platform. The LiMo
Foundation is an organization aiming to establish a globally competitive, Linux-based mobile
operating system for Smartphone mobile devices. The scopes of LiMo Foundation Platform
are to easily cross-platformize with other categories such as consumer electronics and
automotive, and to engage the large community of Linux developers into the mobile arena.
The foundation was founded in January 2007 and has more than 50 member organizations.
It is an independent, non-profit organization.
The LiMo Platform is being developed to enable the design, development and deployment of
mobile phone devices based on a modular, plug-in architecture built around an open
operating system with a secure run-time environment for the support of downloaded
applications.
Currently the LiMo platform only uses open source components and is built on top of them.
It is planned that a new release, LiMo 4 code, will become available for public download
from July 2011. LiMo 4 delivers complete middleware and base application functionality. It
makes broad use of the leading open source technologies and is positioned to support the
realisation of openness and choice within mobile consumer propositions. At the CTIA 2011
show in Orlando, LiMo is announcing that LiMo 4 will be able to support at least 4 classes of
devices: flagship Smartphones, mid-tier Smartphones, entry-level Smartphones and tablets.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
While not originally designed to be portable, Linux is now one of the most widely ported
operating system kernels. Linux been ported to not only super computers but also various
handheld devices. Some operating systems developed for mobile phones use modified
versions of the Linux kernel including Google Android, HP webOS, and Nokia Maemo. LiMo
itself offers common platform for application portability across various LiMo powered
devices.
Security
page: 90 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 91 of 229
Target Platforms, target Requirements and Platform IPRs
Linux is and has always been a very secure operating system. Although it still can be attacked
when compared to Windows, it is much more secure. LiMo 4 provides basic libraries
associate with security, e.g. open ssh, openssl.
Connectivity
LiMo open source packages has offered bluez - Official Linux Bluetooth protocol stack. Apart
from this, LiMo currently has very limited support for connectivity
Reliability
The majority of Linux variants and versions are notoriously reliable and can often run for
months and years without needing to be rebooted
Technical criteria
Linux supports true pre-emptive multitasking (both in user mode and kernel mode), virtual
memory, shared libraries, demand loading, shared copy-on-write executables, memory
management, the Internet protocol suite, and threading.
Usability criteria
Although the majority Linux variants have improved dramatically in ease of use, comparing
with some other operating systems, e.g. Windows, it is still not an easy to use system for
new computer users. LiMo itself has provided flexible and powerful user interface - there is a
choice of two UI frameworks - EFL (Enlightenment Foundation Libraries) and GTK+. It also
provides multitouch gesture support.
Product Diversity
LiMo platform provides a common technology base that allows cost-efficient development
and deployment of differentiated handsets and services
API codebase












page: 91 of 229
LiMo open source packages currently offers
alsa library - Advanced Linux Sound Architecture
BlueZ libraries and tools - Official Linux Bluetooth protocol stack and
tools
WebKit - open-source web browser layout engine.
Security libraries, e.g. open ssh, openssl
cario 2D - Cairo is a 2D graphics library with support for multiple
output devices.
Gtk library - gtk 2.14.4 GIMP Tool
video codec, e.g. libtheora, libvorbis
GSteamer - Gstreamer Core plug-in
image libraries. e.g. libpng, libjpeg
X11 libraries
Databases, e.g. sqlite, sqliteodbc, unixODBC
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 92 of 229
Target Platforms, target Requirements and Platform IPRs
More API codebases are available at http://opensource.limofoundation.org/index.php/limoopen-source.html
Part B: Commercial information
Device coverage
The first LiMo handset was released in 2008. By February 2010, with new LiMo handsets
from ELSE, NEC and Panasonic, the launch of the new devices brings the total number of
LiMo compliant handsets announced to fifty, according to the Foundation.
Platform maturity
LiMo platform is not a full, retail-ready OS package.
Market penetration/availability
Comparing with high volume releases for Google Android or Apple iPhone, the penetration
of Limo handset has not been high enough to pull it out of the analyst firms’ “other”
category.
Availability
LiMo does not impose any commercial restrictions on use of the LiMo Platform and the
source code is full available to developers
Feasibility
LiMo only handles things that are tucked below what the user actually sees. User experience
items, such as the interface, are the responsibility of those developing the device.
Partner perspective
Device-makers and operators embrace the technology in any real way, support also failed to
grow among the application developer community, as the device user numbers failed to be
large enough to generate interest.
Risks
Due to the lacks of support among the application developer community and maturity of the
platform itself, application development over LiMo platform probably will face a long cycle.
Part C: Licensing information
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIpage: 92 of 229
4. Yes
4. Yes – approved license and
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 93 of 229
Target Platforms, target Requirements and Platform IPRs
approved license?
permissive (e.g. Apache, BSD,
MIT)
3. Yes – developer support
mechanisms open to all
developers
4. Yes – full roadmap available,
with explicit call for contributions
to the roadmap
4. Yes
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
3. Yes – the process is
documented and accessible to
all developers
Not known
3. Yes for LiMo non-common
module – project requires a
copyright license and patent
grant.
1. No for LiMo common module
– no contribution license
Derivatives
Are trademarks used to control how and where the platform is used via
Not
enforcing a compliance process prior to distribution?
known
Are go-to-market channels for applications derivatives constrained by the project 4. No
in terms of approval, distribution or discovery?
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 33
Additional comments
LiMo Foundation itself does not operate an ‘app store’ but instead works with its members
to ensure that their own app stores and distribution strategies will support apps and services
page: 93 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 94 of 229
Target Platforms, target Requirements and Platform IPRs
created for LiMo handsets. Developers will be able to distribute their applications on the
numerous application stores.
LiMo’s common code is a set of modules being built through member contributions. The
common code is contributed under LiMo’s Foundation Public License and is royalty-free. The
additional (differentiated) modules are can be contributed under common open source
licenses or under a RAND-type (Reasonable and Non Discriminatory) license.
Contributors to the LiMo platform grant patent licenses in respect of their contributions
It is important to note that any company is eligible to join LiMo, and that LiMo's IPR policy is
published and specified in the LiMo bylaws and website.
Part D: Summary
Verdict
Is this platform suitable for webinos? No.
SWOT
Swot analysis in relation to webinos:
Strengths
- Being an open source Linux offers the
opportunity to standardize platforms
deployed in networks, reducing the amount
of time necessary to deploy applications and
services and thereby reduce operating
expenses. Different from traditional
proprietary platforms, it give operators a
flexible, open platform they can tailor to
meet their development platform
requirements.
- A typical installation of embedded Linux
requires only about two megabytes, which is
therefore a good candidate for use as
operating system of resource limited
devices. Furthermore, as mobile phones
incorporate greater amounts computing
device features, Linux is emerging as an
ideally suited platform to develop this
functionality.
- LiMo 4 has promised a good collection of
features and interfaces for mobile
application development. It is designed to be
hardware independent so that companies
that create LiMo-powered handsets have the
flexibility to choose any hardware solution to
meet their needs. Choosing Linux as the core
page: 94 of 229
Weaknesses
Though the time of establishment of LiMo
foundation is relatively early, its software is
slow in Android in rate of development. The
issue with LiMo is that it focuses on
standardising middleware and not the
service delivery layer, unlike Android, Qt and
WebKit open source efforts. Unfortunately,
middleware requires more expertise and
efforts than upper level application
development.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 95 of 229
Target Platforms, target Requirements and Platform IPRs
technology for the platform, LiMo offers a
foundation platform for next generation
devices - Linux platform is well ideally suited
to developing next generation intelligent
device functionality.
- With support and participation of global
mobile industry leaders and aiming to deliver
an open and globally consistent handset
software platform based upon Mobile Linux,
Limo leads the way towards a broadly
accepted operating system.
Opportunities
- LiMo 4 enables flexible separation of the
device platform and the service propositions
proving operators and device manufacturers
the opportunity to shape attractive user
propositions for consumers and thereby,
secure sustainable long-term value.
- LiMo’s membership includes support and
participation of 10 global mobile operators,
who collectively represent a subscriber base
of nearly 1 billion mobile subscribers
worldwide. In addition, support for WAC
runtime means that developer will benefit a
potential subscriber base of 3 million
through WAC compliant app stores.
- Neutral support for a broad range of
application. This means that developers do
not have to learn a whole new programming
paradigm to deploy your applications on the
LiMo Platform.
- LiMo presents a very natural opportunity to
transfer developer's Linux skills into the
mobile marketplace.
page: 95 of 229
Risks
Although LiMo continued to add new
members, and develop the LiMo stack, e.g.
releasing the LiMo-sponsored BONDI Web
SDK for interoperable web widgets, the
Android phenomenon appears to have
stifled the group's momentum. LiMo was hit
especially hard when Motorola abandoned
the Limo in favour of Android.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 96 of 229
Target Platforms, target Requirements and Platform IPRs
Ubuntu Unity
Introduction
Ubuntu Unity is a shell interface for the GNOME desktop environment launched in June
2010 by Canonical, Ltd. for its Ubuntu operating system and especially designed for
netbooks and related touch-based devices, but also used on the desktop.
Unity is not a full desktop environment and is designed to be used with existing GTK+
programs.
It is part of the Ayatana project, an initiative to improve the user experience within Ubuntu.
Part A2: Technical information
General OS features
See ISMB_26_Debian_NEW.
API codebase
Being just a shell environment, Unity has no influence on which APIs it is possible to use.
Hence, please refer to ISMB_26_Debian_NEW for Linux APIs.
It does however offer a C API and a Python API to interact with the shell environment.
Part B: Commercial information
Device coverage
These are the hardware requirements for the 3D version of Unity, while the 2D version Unity
will be available as a fallback starting from the upcoming Ubuntu "Oneiric Ocelot" 11.10,
thus probably available here once published.
Platform Maturity
Unity is a relatively new technology, hence cannot be reasonably considered mature,
nevertheless it is the default shell environment on Ubuntu "Natty Narwhal" 11.04 and will
completely replace the default GNOME shell in Ubuntu "Oneiric Ocelot" 11.10.
Market penetration/availability
Ubuntu, including Unity, is distributed free of charge. Since Ubuntu "Natty Narwhal" 11.04,
the first Ubuntu release shipping with Unity, was released only a couple of months ago, at
the time of writing, the market share of Unity is negligible at this point
Availability
Feasibility
page: 96 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 97 of 229
Target Platforms, target Requirements and Platform IPRs
Unity should not constitute a problem of any sort for a webinos implementation and should
not require any particular effort for things to work. That said, in order to have the best
possible integration with the Unity shell, it may be needed to write a small amount of Unityspecific code, and that is very unlikely to be problematic.
Partner perspective
A possible partnership is with the open source communities embracing Ubuntu, thus it might
increase the project's impact. Moreover, Canonical may be also interested in embracing the
project.
Risks
Any development done specifically for Unity is restricted by the core Ubuntu versions and
thus any implementation of webinos cannot be directly targeting Unity.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
4. Yes – approved license and
permissive (e.g. Apache, BSD, MIT)
3. Yes – developer support
mechanisms open to all developers
2. No – No formal roadmap exists,
but there are visible committer or
contributor requests
3. Yes – there is some information
but it is hard to find and doesn't
appear comprehensive
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
page: 97 of 229
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
4. Yes – there are good project
statistics that provide this
information
3. Yes – the process is
documented and accessible to
all developers
2. Yes – but you must manually
find and collate the information
from various project sources
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 98 of 229
Target Platforms, target Requirements and Platform IPRs
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
3. Yes – project requires a
copyright license and patent
grant
Derivatives
Are trademarks used to control how and where
the platform is used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in terms of
approval, distribution or discovery?
1. Yes – code must go through a formal
compliance process prior to be
distributed to other parties
4. No
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 38
Part D: Summary
Verdict
Even if the above investigation suggests it as a good candidate, the risks that are implied
from the platform immaturity and the unclear license agreement should be taken into
account.
SWOT
Swot analysis in relation to webinos:
Strengths
- Being the default desktop shell for Ubuntu, both
on desktops and tablets/netbooks, Unity is getting
shipped to a large number of users worldwide with
regard to its young age. This kind of early feedback
is likely to reduce the possibility of having
fundamental design mistakes and of having subtle
bugs lying around for significant amounts of time.
- The code base is relatively small, given the
number of active developers, and relies heavily on
the very mature GNOME platform, hence keeping
flexibility without sacrificing feature support.
- It is backed by a large and active development
team led by Canonical, which is investing
significantly on the development of this
technology.
- It does not require, at least now, any special
effort for applications to work with it.
Opportunities
- At this early stage of development it's difficult to
page: 98 of 229
Weaknesses
- Unity is not yet a mature product and
is likely to evolve significantly in the
near future; hence its future is pretty
much uncertain.
- Its market share, as of today, is
minimal.
Risks
- Unity is released mostly under GPL
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 99 of 229
Target Platforms, target Requirements and Platform IPRs
say which are the actual opportunities for webinos,
however one thing that can be said about Unity is
that if tablets shipping with traditional Linux
distributions are to become popular, it will
probably be a major player when it comes to user
interfaces in that area.
page: 99 of 229
v3+, yet the main development trunk
in the public code repository does also
include the LGPL v3+ text, making it
unclear whether it is the whole
product to be dual-licensed or if the
LGPL v3+ applies only to parts of the
product.
- The contributor agreement gives
Canonical copyright ownership over
contributions and allows Canonical to
make the contribution available to the
public under arbitrary license terms.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 100 of 229
Target Platforms, target Requirements and Platform IPRs
MeeGo
Introduction
MeeGo is a merger of two open source projects Maemo (based on Debian GNU Linux) and of
Moblin (based on Red Hat's Fedora Linux) and is supported by Intel and Nokia.
From MeeGo’s own site https://meego.com/about
The MeeGo project provides a Linux-based, open source software platform
for the next generation of computing devices. The MeeGo software platform
is designed to give developers the broadest range of device segments to
target for their applications, including netbooks, handheld computing and
communications devices, in-vehicle infotainment devices, smart TVs, tablets
and more – all using a uniform set of APIs based on Qt. For consumers,
MeeGo will offer innovative application experiences that they can take from
device to device.
The MeeGo project is hosted by The Linux Foundation.

MeeGo includes:
Performance optimizations and features which enable rich
computational and graphically oriented applications and
connected services development
 No-compromise internet standards support delivering the best web
experiences
 Easy to use, flexible and powerful UI/app development environment
based on Qt
 Open source project organization managed by the Linux Foundation
 State of the Art Linux stack optimized for the size and capabilities of
small footprint platforms and mobile devices, but delivering broad
Linux software application compatibility
MeeGo currently targets platforms such as netbooks/entry-level desktops,
handheld computing and communications devices, in-vehicle infotainment
devices, connected TVs, and media phones. All of these platforms have
common user requirements in communications, application, and internet
services in a portable or small form factor. The MeeGo project will continue
to expand platform support as new features are incorporated and new form
factors emerge in the market.
MeeGo is Linux based therefore largely GPL code. Its current primary contributors are Nokia
and Intel. However, as shall be discussed, uncertainty and lack of stability surrounding
Nokia's platform strategy, casts a cloud over this alliance.
Contrast the following news items for a flavour of the mixed messages surrounding MeeGo
Nokia support.
http://www.deccanherald.com/content/172494/nokia-phase-symbian-platform-2016.html
http://www.fonehome.co.uk/2011/06/29/the-death-of-meego-how-why-and-when/
page: 100 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 101 of 229
Target Platforms, target Requirements and Platform IPRs
http://www.techeye.net/mobile/nokia-demonstrates-its-meego-support
http://www.techaloud.com/2011/06/meet-the-nokia-n9-the-first-and-probably-last-meegodevice-from-nokia/
Relationship between QT and MeeGo
Understanding the relationship between QT and MeeGo is essential to understand the
technical capability of the platform, but more importantly, the governance, value and
roadmap of the MeeGo project.
According to the formal architecture definition https://meego.com/developers/meego-api
QT features as part of the MeeGo API as part of the cross platform UI framework, but it is
important to note that this does not mean that it is "essential" to use QT to create a MeeGo
application.
The subtlety here is that if QT is a mandatory interface for 3rd party developers, developing
on the MeeGo platform, but QT is run under a different ecosystem, as far as the Application
Developer ecosystem is concerned, it the governance of QT not MeeGo that is the significant
determinant on application capability and roadmap.
Part A1: Technical Information (web rendering engines)
The web developer has a number of options open, for the integration of HTML rendering,
and building enhanced browser components.
Web Components
QT
The QT WebKit browser components exist as part of the MeeGo API for developers to use
for rendering HTML content.
Full source code is available to this browser component, under the normal QT license.
We presume that the default browser, available for the N9 device is also based upon QT
This browser supports a number of claimed technologies support
- CSS 3
- DOM Level 3
- HTML over TCP/IP
- HTML5
- Javascript 1.8
- Webkit 2 based
- XHTML
- XML
Flash support is not included, but already many major web sites deliver video content
through HTML5 technology, so for example, the YouTube app on the phone is a web
application leveraging the browser.
page: 101 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 102 of 229
Target Platforms, target Requirements and Platform IPRs
A full list of up to date HTML 5 functionality supported by the QT browser components can
be found on http://developer.qt.nokia.com/wiki/Qt_Webkit_HTML5_Score
A detailed paper http://sf2011.meego.com/program/sessions/meego-browser-touch-whenchromium-meets-qt presented at the MeeGo conference, claims Chromium port to MeeGo
utilising element of QT.
It is however unclear whether this relates to an "in development" browser for MeeGo or
whether this is the browser supported in the N9 device.
Chrome
According to https://meego.com/downloads/releases/1.0/meego-v1.0-netbooks
For a fast and rich Internet experience the MeeGo Netbook user
experience integrates Google Chrome or, if you prefer a fully
open source browser solution, Google Chromium is also provided.
Soon we will be releasing the MeeGo Handset user experience
which will use the Fennec Mozilla Browser.
The Google Chrome browser is the default supported browser on the MeeGo netbook
platform.
From a governance and licensing perspective, it is important to note the subtle difference
between the Chrome browser and fully open sourced Google Chromium browser.
Mozilla
Fennec was the default browser provided on the previous incarnation of Maemo on the
launched N900 device.
With the release of the N9, Fennec is no longer the default browser.
Discussions on the developer boards
https://groups.google.com/forum/#!topic/mozilla.dev.apps.firefox/wKHxRuMHY1U seem to
imply that development continues on the previous Maemo browser, upgrading it to a
MeeGo compliant stack.
Interestingly, according to http://shootspeak.com/2011/06/29/fennec-gives-nokia-n9-theability-to-display-flash-content/ the Fennec browser supports flash content, unlike the
default N9 browser.
As with all Mozilla products, developers can get full access to the source code from Mozilla's
source code repository.
See information on Mozilla trademarks and licensing, for limitations on how this code can be
used.
Opera
page: 102 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 103 of 229
Target Platforms, target Requirements and Platform IPRs
Opera is a commercial company producing proprietary software. A developer therefore
cannot access the browser code, unless it has a commercial agreement to do so with Opera
Summary of web support
MeeGo is well supported by a number of different browser technologies. Chrome, Opera
and Firefox derive from completely different code bases, however all support high levels of
compliance against HTML4, HTML5 and Firefox capability.
Chrome and Firefox provide the source code to the requisite technology. Opera stands out
as being proprietary software
QT technology is built in by default into the MeeGo Platform, both as the base of the default
browser and as source code components that can be re-used by application developers.
JavaScript engine
Chrome versions of the MeeGo browser make use of the V8 JavaScript engine.
The QT browser makes use of the standard WebKit JavaScript (Javacore) engine. Although
QT appears to be evaluating a more complete integration of the V8 engine into the QT stack
Widget availability
The N9 device appears to have lost the more visible support of widget technology from it UI
and homescreen 35. However, QT supports this as a beta release technology36.
Meaning essentially, it is functionality that can be available to developers who are prepared
to invest the effort. But it is not available in a product ready form to end users
Specifically, we presume solid implementations of Widget packaging, Digital Signatures and
WARP are all available as part of the Widget Gallery Preview release.
Extensibility framework (feature tags)
Qt has documented ability to add new objects to the root level JavaScript objects37 This
capability simply has to be combined with feature tag parsing in the widget config.xml to
give full extensibility functionality
Part A2: Technical Information (Operating Systems)
35
N9 and MeeGo loss of widgets, http://mobiletablets.blogspot.com/2011/06/n9-andmeego-harmattan-loss-of-widgets.html
36
WebKit SDK with WRT, http://wiki.meego.com/SDK/Docs/1.1/Web_SDK_with_WRT and
Maemo 6 UI preview widgets gallery, http://mymaemo.com/c/maemo-6-ui-previewwidgets-gallery-1008.html
37
WebKit Fancy Browser, http://doc.qt.nokia.com/4.5/webkit-fancybrowser.html
page: 103 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 104 of 229
Target Platforms, target Requirements and Platform IPRs
General OS features
Portability
Porting from MeeGo to other platforms is supported by the recommended use of the QT
cross platform porting library. Nokia provide guidelines for porting to the MeeGo platform38.
As MeeGo is based on the Debian platform, the real world effort of porting to a MeeGo
device is not significantly different from porting to general Linux platforms.
Security
The MeeGo security architecture is documented at
http://wiki.meego.com/Security/Architecture Full details of the architecture can be viewed
from the above link. From the perspective of webinos, i.e. creating a flexible web based
execution environment on top of the operating system the following should be taken note of
Trusted Execution Environment: MeeGo supports a TEE. This gives high levels of assurance
on the integrity of the core platform
Access control and manifests: MeeGo makes user of the widespread notions of application
manifests, which declare applications intent to use capability, and access control list based
policy mechanism for determining which applications can use which capability.
Secure software distribution: in many ways this is the most sensitive element. What
applications come from where and what can they do. The platform itself demonstrable has
the capability to enforce these rules very strongly. However as the document states
Each MeeGo software source is supposed to check its applications for robustness and
security compliance against their own security policies. There are many different ways a
software vendor can accomplish this, and that effort specifically falls outside the scope of
this document.
Device security policy: similarly, at the next level of abstraction up, there exist on the MeeGo
platform a set of rules that determine what capability different classes of application have
access to39.
The implications of the above are
a) Unlike Android - MeeGo as a platform is not tied to a specific application ecosystem
b) the restrictions that a vendor (device integrator of the MeeGo platform) may impose on
the platform, could be varied. The security framework seems to imply them to be quite solid.
Connectivity
38
WebKit Porting Guide, http://wiki.meego.com/MeeGo_Porting_Guide
39
MeeGo Secure Architecture Software Distribution,
http://wiki.meego.com/Security/Architecture#Secure_Software_Distribution
page: 104 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 105 of 229
Target Platforms, target Requirements and Platform IPRs
Device specific and platform agnostic. MeeGo being formally well supported by Nokia is well
provided for in the connectivity area.
Reliability
While the platform was considered cutting edge in terms of its pioneering spirit, the current
commercial status makes it less favourable to developers only the N9 device has been
released to date, therefore it is hard to evaluate the platform in great detail
Technical Criteria
MeeGo is based upon the Debian Linux distribution; therefore it inherits many of the
qualities of the Debian stack
Product Diversity
Supports most features one would expect of a Web based mobile platform but current
commercial focus is unclear
Capability
Description
Information source
Multithreaded
Supported
natively and
at the QT
level
Supported.
http://www.multicoreinfo.com/2011/04/atommeego/
Source
code
repository
MeeGo
repository
http://wiki.meego.com/images/MeeGoCompliance-Spec-1.1.0.0.pdf
https://bugs.meego.com/show_bug.cgi?id=9352
MeeGo
repository
N/A
TLS
IPv6
Not
Supported.
Usability Criteria
MeeGo promote the use of QT for the UI framework. QT is well proven and used across
many devices and operating systems.
The UI of the N9 has generally been well received by the technical press.
Product Diversity:
Similarly, the fact that only the Nokia N9 has been released to date on the MeeGo platform
means that evidential support for product diversity is very low indeed.
API codebase

Bluetooth: Supported. The "Bluetooth
APIs"http://bugreports.qt.nokia.com/browse/QTMOBILITY-633 is supported in
the local connectivity API
page: 105 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 106 of 229










Target Platforms, target Requirements and Platform IPRs
NFC & RFID: Unclear at present time. Forum discussions
http://forum.meego.com/showthread.php?t=1191 imply it is not yet there.
However NFC is indicated to be present in Linux 2.6 distribution
http://www.linuxfordevices.com/c/a/News/Inside-Contactless-Open-NFC/
DNS: Supported
DLNA: No indications of current support
Crypto and Certificate libraries: Crypto libraries are supported by the OpenSSL
package
DRM: Information unclear at present
UPnP: Supported on the multimedia stack
https://meego.com/developers/meego-architecture/meego-architecturedomain-view
Media capture capability/codecs: is provided through the GStreamer component
http://en.wikipedia.org/wiki/GStreamer
Audio&Video
Video codec support: H.263, MPEG4-SP & ASP, H.264 BP/MP, WMV9 / VC-1 and
Mkv (Matroska).
Audio codecs: MPEG-4 AAC , eAAC/C+,MP3 , WMA , Dolby Digital Plus , FLAC.
Part B: Commercial information
Device Coverage
Despite claiming support for phones, netbooks, TC and in Car, MeeGo to date has only been
released for a single phone, the Nokia N9. MeeGo has strong heritage in the Maemo and
Moblin platforms. The release of the N9 phone proves it is (in Nokias’ eyes) the platform is
mature enough for release Independent reviews of some of the other MeeGo platforms
claim that it still needs some work40 .
Market penetration/availability
There is only one MeeGo device that has been released to date. The N9 was officially
released on 20th of June 201141.Many anticipated it will be the first and last MeeGo. There
are rumours that the N9 may not even reach the UK42. It is too early to see any sales figures
for the device. Although MeeGo supports software releases for Tablets (media phone),
Netbooks, in vehicle, Smart TV in addition to phones. To date there are no commercially
available devices supporting these platforms. Nor are there publicly committed products
supporting these OS variants
Availability
40
Intel shows off more of its MeeGo Table UI, http://www.engadget.com/2011/02/14/intelshows-off-more-of-its-meego-tablet-ui-still-needs-lots-of/
41
Nokia N9 Officially Announced, http://thenokiablog.com/2011/06/20/nokia-n9-official/
Nokia N9 will not get UK release, http://www.t3.com/news/nokia-n9-will-not-get-ukrelease?=58055
42
page: 106 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 107 of 229
Target Platforms, target Requirements and Platform IPRs
The MeeGo software stack is publicly available on the MeeGo website
Feasibility
MeeGo is a mature platform with good web framework and security support. Webinos
implementation is very feasible
Partner perspective
See above
Risks
The biggest risk for MeeGo is the lack of industrial support to maintain and evolve the
platform. Nokia appears to be pulling back from the platform. Recent rumours indicate that
Intel may also be pulling back from the platform
Ecosystem adoption
Application developers
The n9 comes with a few key applications pre-installed43
The ovi store however, does not as yet even support an option for selecting the N9.
Therefore it is impossible to identify how many third party applications exist for the
N9/MeeGo platform
Device manufacturers
Only a single mobile manufacturer (Nokia) with claims that they will only support this single
device, due to the new Windows Mobile 7 strategy.
Developers
Device availability and range
As of May 2011, Google reported that there are more than 310 Android device models
manufactured and sold around the world18.
Android is supported on wide range of device price points from high-end devices (e.g. HTC
Blast concept phone44) to sub 100 Euro models made by many small Chinese ODMs.
Recent versions of the OS support Smartphone and tablet form-factors.
43
Nokia N9 must have apps, http://swipe.nokia.com/applications/
44
HTC Blast Specs : High-End Android phone with 1.5GHz processor,
http://www.sleetherz.com/android-news/htc-blast-specs-high-end-android-phone-with-1-5ghzprocessor/2872/)
page: 107 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 108 of 229
Target Platforms, target Requirements and Platform IPRs
Customization possibilities
The MeeGo platform is comprised of many components, each coming with its own licensing
terms. Although as Linux based platform, a significant number of these are GPL based
Technically this means that MeeGo is theoretically infinitely customisable.
The real world restrictions on this could be:
The restriction on use of the MeeGo trademark https://meego.com/about/trademark, which
is in turn dependent upon the specifics of the MeeGo compliance program
http://wiki.meego.com/Quality/Compliance
Any restriction on access to application ecosystems. However, as the volume of MeeGo apps
is still small at the moment, this is not a significant constraint.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the same
time?
Is source code available under a permissive OSI-approved
license?
Are developer support mechanisms - project mailing lists,
forums, bug-tracking databases, developer documentation
and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting
minutes publicly available to understand decision-making in
the project?
4. Yes
2. Yes – strong copyleft
3. Yes – developer support
mechanisms open to all
developers
1.No
4. Yes
Development
Transparency of contributions and acceptance process – Is
the code contribution and acceptance process clear, with
progress updates of the contribution provided (via Bugzilla
or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented
and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source code
to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
2. contributions process only
with progress status of
contributions provided
3. Yes but you must manually
find and collate from various
sources
3. Yes – the process is
documented and accessible to
all developers
3. Yes – but you must
manually find and collate the
information from various
project sources
2. Project requires sign-off
process
Derivatives
page: 108 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 109 of 229
Target Platforms, target Requirements and Platform IPRs
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
1. Yes it is intended that there
will be a formal compliance
process
4. No
Community
Is the formal community structure flat or tall, i.e., tiered
rights depending on membership status
2. No– the community structure
appears flat
Summary
Total Score 33
Part D: Summary
Verdict
From a technical, licensing and governance perspective MeeGo is an ideal match for webinos
requirements. MeeGo also has publicly declared aspirations to cross device interoperability
that exactly match the webinos visions.
The biggest concern for MeeGo is the future support of its primary sponsors - specifically
now it's officially merged with LiMo into the "Tizen" project (announced 27 September
2011), which seems a politically-driven move without tangible OEM commitments.
SWOT
Swot analysis in relation to webinos:
Strengths
- Based upon technically mature
technologies
- MeeGo has been pre-optimised to the
mobile profile
- Well proven community and governance
model
Opportunities
- Replacing MeeGo UI layer with web
technology
page: 109 of 229
Weaknesses
- Nokia and Intel support looks unlikely
Risks
- MeeGo UI components appear heavily
dependent upon Nokia. Yet Nokia’s support for
MeeGo seems weak. Indeed if another handset
manufacturer adopted MeeGo it could be in
Nokia’s commercial interest to hamper
MeeGo’s growth
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 110 of 229
Target Platforms, target Requirements and Platform IPRs
WebOS
Introduction
WebOS is a mobile operating system developed by Palm and later acquired by HP. It runs on
the Linux kernel. WebOS is deemed to be the first Operating system designed to take
advantage of connectedness. Operating systems before WebOS have had to continuously
evolve to take advantage of increased connectedness. Although this evolution is good, most
operating systems are building on platforms that were never designed to be mobile and
connected to the web 100% of the time. However Palm WebOS is the first operating system
to take full advantage of web development technologies and platforms to provide
consumers with a seamless experience between the web and mobile apps.
The first device that used WebOS was Palm Pre released by Sprint in June 2009.
Current ownership of WebOS is unclear
Unlike other platforms that rely on a PC in some way, Palm’s WebOS is designed to deliver
applications optimized for a completely mobile experience. Hence, it is functionally similar to
Webinos goals and hence significant for Webinos.
Part A1: Technical Information (web rendering engines)
Web components
WebOS supports HTML4 being a Web based platform. Based on evidence from usage and
game development examples (http://www.youtube.com/watch?v=gYPXp_ipGe4), WebOS
supports HTML5. WebOS also supports other features of HTML5 such as local storage
(http://www.weboshelp.net/webos-tutorials/156-palm-webos-html5-database-storagetutorial)
Mojo is an application framework based on the HTML5, CSS, and JavaScript standards. The
Mojo Application framework is basically a set of JavaScript libraries that wrap the webOS
API. In addition to Mojo, Palm has included the Prototype JavaScript framework with their
SDK. It is not part of Mojo but is included to help you with some parts of the JavaScript
development. It appears that Palm's javascript engine is a customised version of the Google
v8 engine (https://developer.palm.com/distribution/viewtopic.php?f=11&t=403).
Widget availability
Prior to the current uncertainty around WebOS, there was some initial traction achieved by
developers and as at Sep 2010, there were more than 5000 widgets/apps45. The concept of a
'widget' is a central part of WebOS, but these widgets are more in line with traditional visual
45
WebOS surpasses 5000 Apps, http://www.precentral.net/webos-surpasses-5-000-apps
page: 110 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 111 of 229
Target Platforms, target Requirements and Platform IPRs
interface type widgets46. However, widgets/ apps are available through the Palm App
Catalog, which is an online marketplace for applications for Palm mobile devices running
webOS but not Palm OS. Apps can be packaged in the emulator using the appinfo.json file
https://developer.palm.com/index.php?...rticle&id=1758 and also through the Eclipse
framework.
Part A2: Technical information
General OS features
Portability
Palm Pre, Pixi, and Veer phones and the HP Touchpad tablet. On August 18, 2011, HP
announced that it would discontinue production of all webOS related hardware devices. HP
is presently considering licensing webOS software to other manufacturers for placement on
their hardware devices
Security
Original PalmOS does not allow for encryption or timed auto-lock, New Palm webOS enables
these features. Both operating systems can connect to an Exchange server through
ActiveSync. Remote Delete is available through Outlook Web Access. Encryption may only be
possible if you use a removable flash storage card and a third-party provider
Connectivity
Device specific(and platform agnostic
Reliability
While the platform was considered cutting edge in terms of its pioneering spirit, the current
commercial status makes it less favourable to developers
Technical criteria
N/A
Usability Criteria
Uses visual widgets extensively and also WebKit (layout engine used by browsers for
rendering)
Product Diversity
Supports most features one would expect of a Web based mobile platform but current
commercial focus is unclear
46
Wediges WebOS guide, http://www.precentral.net/widgets-webos-guide-widgetizing-your-webosdevice
page: 111 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 112 of 229
Target Platforms, target Requirements and Platform IPRs
API codebase
The API supports Bluetooth, RFID, DNS, and DLNA
Part B: Commercial information
Device coverage
Palm Pre, Pixi, and Veer phones and the HP Touchpad tablet.
Platform maturity
Technically mature platform
Market penetration/availability
Low traction, future uncertain
Availability
There is an implementation it is unclear if it can be used by Webinos
Feasibility
Unclear
Partner Perspective
See above
Risks
Unclear status is a risk for Webinos
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the same time?
Is source code available under a permissive OSI-approved license?
Are developer support mechanisms - project mailing lists, forums, bug-tracking
databases, developer documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting minutes publicly available
to understand decision-making in the project?
0
4
3
?
3
Development
Transparency of contributions and acceptance process – Is the code contribution and
acceptance process clear, with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you identify from whom source code
contributions are provided?
Accessibility to become a committer – are the requirements/process to become a
page: 112 of 229
Target Platforms, target Requirements and Platform IPRs
?
3
2
FP7-ICT-2009-5 257103
page: 113 of 229
Target Platforms, target Requirements and Platform IPRs
committer documented and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who committers to the open source
project are? i.e., those developers that have the authority to 'commit' source code to the
baseline
Does the contribution license require a copyright assignment, or copyright license and/or
patent license?
2
?
Derivatives
Are trademarks used to control how and where the platform is used via
enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the
project in terms of approval, distribution or discovery?
1
1
? Not
known
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
Summary
Total Score 19
Additional comments
Part D: Summary
Verdict
Considering the unknowns and the timescales, the platform is not suitable
SWOT
Swot analysis in relation to webinos:
Strengths
- A pioneer
Opportunities
- May be relevant in
future
page: 113 of 229
Weaknesses
- Unknown status
Risks
- may be irrelevant due to other players if no clear strategy
appears in near future
Target Platforms, target Requirements and Platform IPRs
?
FP7-ICT-2009-5 257103
page: 114 of 229
Target Platforms, target Requirements and Platform IPRs
Home Media
Google TV
Introduction
Google TV is a Smart TV platform used as a framework by several manufactures (Intel, Sony,
and Logitech) and TV provider (DISH Network).The official presentation of this platform is
dated April 10, 201047. Google TV corresponds to the HoneyComb MR1 release of Android
and, as for the other releases of Android, the Android SDK provides tools and APIs for
developing applications by Java. The main difference between Android and Google TV is that
live TV is only available on Google TV. Other differences are that a Google TV devices doesn't
provide an own display; UI controls are different and a number of features and hardware
are different.
It's probably that Google plans to merge the Android Open Source Code for three different
platforms: Google TV, Android 3.0+ for tablets (Honeycomb), and Android 2.3 for
Smartphones (Gingerbread) in a unique platform able to adapt itself to the specific device
(TV, Smartphone or tablet 48).
The following table describes other available Smart TV platforms:
Name
MythTV
Blobbox
LG Smart TV
Mediaroom
MeeGo for
Smart TV
Philips NetTV
Samsung
Smart TV
Viera Cast
Vudu
XBMC Media
Center
Yahoo!
Connected TV
- Yahoo! GoTV
AppleTV
Companies
Open Source Project
TVBLOB, Telesystem,
Tiscali TvBox
LG Electronics
Microsoft
Linux Foundation, Intel,
AMD
Philips
Samsung
Source
open
closed
Ref
http://www.mythtv.org
http://www.blobbox.tv/
closed
closed
open
http://whylgtv.lge.com/archives/2108
http://www.microsoft.com/mediaroom/
https://meego.com/devices/smart-tv
closed
closed
http://www.nettv.philips.com/
http://www.samsung.com/uk/smarttv/
Panasonic
closed
Wal-Mart
XBMC Foundation
closed
open
http://www.panasonic.co.uk/html/en_GB/21
15692/index.html
http://www.walmart.com/cp/vudu/1066144
http://sourceforge.net/projects/xbmc/
Yahoo!
closed
http://connectedtv.yahoo.com/
Apple
closed
http://www.apple.com/appletv/
47
Here comes Google TV, http://googleblog.blogspot.com/2010/10/here-comes-google-tv.html
What is Googles Ice-cream Sandwich, http://gizmodo.com/5800358/what-is-androids-ice-creamsandwich and Google Tv to beomce part of Android code branch
http://gtvsource.com/2011/03/31/google-tv-to-become-part-of-android-code-branch/
48
page: 114 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 115 of 229
Target Platforms, target Requirements and Platform IPRs
Concerning present version of Google TV we think that it's not the best platform in relation
to webinos.
First of all for it is not a mature platformand we are not sure that manufacturers will support
the platform. Another aspect of the platform that is not clear is the performance of Android
in the future release of Google TV. We know the capabilities of Android in t devices such as
Smartphones and tablets, but the world of Smart TV is very new for this platform and may
suffer the same problems encountered for tablets.
Our analysis could be more optimistic in the case Android 4.0 which will supposedly be a
unique and high-performing platform for Smartphone, tablet and set-top-box.
Part A1: Technical Information (web rendering engines)
Google TV 2.0 uses Chrome 5 as internet browser and supports Adobe Flash Player 10.1.
Chrome is based on WebKit and uses Google V8 as JavaScript engine.
Web components
As described in Chapter 2, Android for Mobile.
HTML 4
rendering code
base
HTML 5
rendering code
base
JavaScript
engine
The result of Acid3 test on Chrome 5 with default settings rendering is
100/100.
The following table describes a comparison between Chrome 5 and other
Android browsers concerning HTML5 rendering (tested by
http://www.browserscope.org/)
Total score for Android 2.3 is 184
Total score for Android 3.0 is 222
Total score for Android 3.0 is 222
Total score for Android 3.2 is 222
Total score for Chrome 5.0.375 is 243
Google TV 2.0 uses the JavaScript engine Google V8. More references:
Chapter 2, Android for Mobile.
Widget availability
As described in Chapter 2, Android for Mobile.
Digital signature code availability
Widget packaging
As described in Chapter 2, Android for Mobile.
As described in Chapter 2, Android for Mobile
WARP implementation
As described in Chapter 2, Android for Mobile
Extensibility framework (feature tags) As described in Chapter 2, Android for Mobile
Part A2: Technical Information (Operating Systems)
As described in Chapter 2, Android for Mobile.
General OS features
As described in Chapter 2, Android for Mobile.
page: 115 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 116 of 229
Target Platforms, target Requirements and Platform IPRs
Portability
Android applications that don't depend on unsupported features may work with Google TV,
Android 3.1 and Android previous versions. An application developed for a version of
Android previous Android 2.3 must be modified in order to be compatible with Android 3.0
and 3.1 and Google TV too. TV display is much larger than every Android display and
landscape orientation has a different aspect ratio.
The distance between the user and the display is much greater than a typical Android display
so, in order to migrate an application from Android, or another OS (mobile or not), we have
to take into account these constraints. More references: As described in Chapter 2, Android
for Mobile
Security
In Android we can identify a device or user by the TelephonyManager.getDeviceID() that is
not available on Google TV. Instead, it provides a system constant
Setting.Secure.ANDROID.id that we can set during the initialization phase of the device49.
Google TV requires secure sockets as a transport layer to protect user keystrokes from being
recorded by sniffing applications or other devices. The encryption prevents the leakage of
secret information such as usernames, passwords, credit-card data, and so on. Google TV
uses a pairing process to establish the identities of client applications based on the Pairing
Protocol.
Client applications that communicate with Google TV must use the Google TV Pairing
Protocol for the pairing process. The client needs to establish a pairing session on the next,
consecutive port of the server. For example, if Google TV announced itself at port 9551 then
the pairing server listens on 9552.The client should set up the pairing session for 4 digit
hexadecimal encoding. If the pairing succeeds, the client should store the server's certificate
obtained from the pairing session in a secure, local key store, and use it for subsequent
connection attempts with the same Google TV. A variety of key management systems are
available to help you manage the key store. The Google TV Remote Android application uses
Bouncy Castle, which is an open-source key management system.
The trusted certificate is specific to the particular client application. Other applications on
the same client device will need to go through the pairing process and get their own
certificates.
Connectivity
SIP/VOIP is unsupported. Cell-based data (for example, 3G) unsupported 50.
More references: Chapter 2, Android for Mobile
Reliability
49
Google Developer Documentation, Telephony Module,
http://developer.android.com/reference/android/telephony/TelephonyManager.html
50
Google TV, Android features, - http://code.google.com/intl/itIT/tv/android/docs/gtv_android_features.html#Software
page: 116 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 117 of 229
Target Platforms, target Requirements and Platform IPRs
- User Interface Criteria: we can view the display of a Google TV from a distance and for this
reason the UI needs to be large enough to permit to the user to easily interact with menus
and buttons (he moves a remote control that is less accurate than a touch on the screen) an
to see the text inside the UI controls. This UI controls must satisfy the "10-foot UI": a user
that is sitting about ten feet away from its own TV must clearly view buttons and texts.
More references: Chapter 2, Android for Mobile
API codebase












Bluetooth: Unsupported (ref).
NFC & RFID: Unsupported (ref).
DNS: As described in UNICT_26_mobile-android
DLNA: As described in UNICT_26_mobile-android
Crypto and Certificate libraries:
DRM: As described in UNICT_26_mobile-android
UPnP: As described in UNICT_26_mobile-android
Media capture capability/ codecs: More references: Google TV media formats.
Tv and set top box control: Google TV 2.0 provides a new content provider
named Channel Listing Content Provider that provides accessing to the available
television channels. This is an extra capability that is unavailable in Android 3.1.
The Anymote Protocol (source code) is a messaging protocol that applications
on a remote device (mobile phones, tablets) can use to interact with Google TV.
The Anymote Protocol works together with "Google TV Pairing Protocol" (source
code). This protocol can be used to manage pairing sessions between a mobile
phone and Google TV where the client contacts the server, and the server issues
a challenge for the client to complete. Both Anymote and Pairing protocol are
under Apache license 2.0.
Vehicle: Not applicable.
Payment: As described in UNICT_26_mobile-android
Platform attestation API: As described in UNICT_26_mobile-android
The following devices and corresponding API present in Android 3.1 are not available in
Google TV
Hardware
Feature
Bluetooth
A2DP - Wireless keyboard
Camera
GPS
Microphone
NFC
Sensors
Orientation-Movement-Automatic Screen brightness
Telephony
Phone dialling - SMS- 3G
Touchscreen
More references: Google TV features
Another unsupported software is live wallpaper.
page: 117 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 118 of 229
Target Platforms, target Requirements and Platform IPRs
Part B: Commercial information
Device coverage
Only Sony and Logitech distribute this platform.
Even if selling trends are not positive51 manufacturer partners are optimistic because of the
new features of the Google TV 2.x52.
Platform Security
Google TV it is not a mature platform. Its official presentation is dated April 10, 201047 and
Google TV 2.0 has been presented at Google I/O 2011. We think that Google TV based on
Android 4.0 will be the right Android platform for this kind of smart TV.
Market penetration
At the moment there is not complete information about market penetration.
Availability
At this moment the only device available are the Logitech revue and two models of the Sony
internet tv.
Feasibility
Much of the applications of the Android Market could be executable in a Google TV device,
but only few applications are exclusively designed for it.
We think that if the future release (4.0?, which is due to arrive later in 2011) of the Android
will be able to really adapt itself to the device, than it's probably that the number of
applications "good" for Google TV will increase.
Risks
It seems that this platform shows a lot of problems to be for televisions what Android is for
mobile devices.
If the television company will not focus themselves on Google TV we suspect that Google
will drop this project in the future.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
1. Not at present
51
Logitech Fourth-Quarter Net Drops 89% on Lower Regional Sales,
http://www.googletvforum.org/forum/more-news-your-google-tv-news-team/1668-logitech-fourthquarter-net-drops-89-a.html
52
Despite Setbacks, Sony Is Optimistic About Google TV,
http://www.nytimes.com/2010/12/21/technology/21sony.html
page: 118 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 119 of 229
Target Platforms, target Requirements and Platform IPRs
Is source code available under a permissive OSI-approved
license?
Are developer support mechanisms - project mailing lists,
forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes – approved license and
permissive (e.g. Apache, BSD,
MIT)
2. limited developer support
mechanisms
3. Yes – roadmap information
available but no call for
contributions or similar
? Not known
Development
Transparency of contributions and acceptance process – Is the
code contribution and acceptance process clear, with progress
updates of the contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you identify
from whom source code contributions are provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented and
is this an equitable process, i.e., can all developers potentially
become committers?
Transparency of committers – can you identify who committers
to the open source project are? i.e., those developers that have
the authority to 'commit' source code to the baseline
Does the contribution license require a copyright assignment, or
copyright license and/or patent license?
1. No, contributions
process only
? Not known
1. No commit access
restricted to specific
users/groups
? Not known
4. Yes – project requires a
copyright assignment and
patent grant
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process prior
to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
2. No – You can freely distribute
to the code and use the project
trademark without completing
formal compliance
requirements
4. No
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 23
Part D: Summary
Verdict
Is this platform suitable for webinos? No
page: 119 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 120 of 229
Target Platforms, target Requirements and Platform IPRs
SWOT
Swot analysis in relation to webinos:
Strengths
- It's possible to use the same platform for
mobile device and television, so user can
interact with a very strong connected
ecosystem. More in Chapter 2, Android for
Mobile
Opportunities
- The future version of Android (4.0) seems to
merge the actual three Android platforms in a
unique environment able to adapt itself to
devices.
- If this will be true, it represents an important
opportunity for webinos, because a portion of
code that is developed for Android doesn't need
to be adapted for executing it in a tablet rather
than in a top-box or Smartphone.
page: 120 of 229
Weaknesses
- Unlike Honeycomb, which is not open
source, Ice Cream Sandwich alias Android
4.0 should be open sourced for
developers. But it is only a forecast.
- The fragmentation of actual Android
platform represents a weakness for
webinos because the same code needs to
be developed and test for Smartphone,
tablet and set-top-box.
Risks
- It's possible that Google will not support
this platform if the manufacturer
companies will not distribute it
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 121 of 229
Target Platforms, target Requirements and Platform IPRs
Mediaroom
Introduction
Microsoft Mediaroom is a complete end-to-end solution for IPTV in managed Telco and
Cableco environments and the latest update of the Microsoft TV IPTV Edition platform
software, intended for use in a set-top box to access on-demand as well as live television
programming on a Microsoft IPTV network. It was launched in early 2006 and is a product of
Microsoft TV, which is a division within the Microsoft Corporation.
Development of applications is only possible with the Microsoft Mediaroom Presentation
Framework (MPF). This Framework enables developers to build connected TV applications
that extend the Mediaroom TV experience. Service providers and third party partners can
build client-side applications using Web services to incorporate streaming Web video, RSS
feeds, and other elements. This content can be blended with the existing core user interface
as well as broadcast, on-demand, or digitally recorded video streams. Service providers and
third party developers can create applications that integrate with the underlying content
and interface, or they can create applications that overlay or replace video. MPF applications
can run on the servers where the pertinent data and content resides, or they can make
remote calls to external servers to deliver content to viewers. MPF applications can mash up
data from Mediaroom clients and servers, the Internet, and private data sources.
Actually it is not very relevant for webinos implementation because it is a closed proprietary
platform.
Part A1: Technical Information (web rendering engines)
Web components
Mediaroom Presentation Framework
The Mediaroom Presentation Framework is an implementation to render Mediaroom
applications. It is developed by Microsoft and does not lean at any other open standard. It
supports
-Actions
-Animations
-Events
-Lists
-Buttons
-Panels
to present a rich user interface to the user. Mediaroom Presentation Framework
applications are developed with ASP.NET Language. The Presentation Framework converts
the APSX code to xml code, which is then rendered by the Mediaroom client on the Set-TopBox.
Microsoft Mediaroom Browser
The Microsoft Mediaroom Browser is a Tasman Rendering-Engine of Microsoft, which
supports the following standards:
page: 121 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 122 of 229
Target Platforms, target Requirements and Platform IPRs
-XHTML 1.0 Strict.
-CSS 1.0.
-CSS 2.1.
-CSS 3.0 partial.
-ECMAScript. ECMAScript Edition 3 interpreter is provided by Windows CE 5.0.
-XML.
-DHTML.
-DOM1, DOM2 events.
-AJAX.
-HTTP/HTTPS.
-Microsoft Media Server (MMS) protocol (mms://).
-Proxy support.
-Session Cookies (Limited support is available. A session exists only during the lifetime of an
individual application. Therefore, the cookie is useful only when navigating from one page to
another within the browser session. Exiting the page and returning to PF application page
terminates the session.)
The Microsoft Mediaroom Browser does not support the following standards:
-HTML5
-Persistent cookies.
-Plug-ins.
-Java.
-ActiveX controls.
-Flash.
-Silverlight.
-BMP image format.
-DOM2 mutation events.
-HTML frames.
Widget availability
The Mediaroom platform does not support widget functionality.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
The Microsoft Mediaroom platform relies on Microsoft Windows CE 5, which is optimized
for devices with minimal storage. For general information about Microsoft Windows CE see
[2]. However, the Mediaroom Presentation Framework does not support all capabilities,
features and device APIs of Microsoft Windows CE.
The Mediaroom client is usually deployed on Tatung, Cisco or Motorola Set-Top-Boxes
Security
page: 122 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 123 of 229
Target Platforms, target Requirements and Platform IPRs
It supports security mechanism for certificates and DRM.
Connectivity
The connectivity is actually limited to LAN adapters, but it will be extended in the next years
to Wi-Fi in the Home Network and UMTS/LTE for mobile purposes.
Reliability
No statement for this point can be provided.
Technical criteria
Actual Set-Top-Boxes have 256 MB RAM, while older models have 128 MB RAM. In the
actual models the operating system is using about 67MB of the memory after boot up while
in the old models the operating system is using about 17MB. No further statement for this
point can be provided.
Usability Criteria
The platform addresses usability at a high level in the end user area by the rich user
interface design.
Product Diversity
The possibility to innovate and develop new applications is very low, because it is a
proprietary platform. Developers need a service provider to provide new applications. There
is no possibility to provide applications via a URL by the developer, because the end user
cannot enter a URL.
API codebase
The platform provides basic UPnP functionality but there is no support for Bluetooth, RFID,
DNS or USB. 3rd party support is not available on the Mediaroom platform. The Mediaroom
Presentation Framework builds the bridge between the Graphical User Interface and the
underlying device capabilities. It provides native support to navigate with a remote control
through the Graphical User Interface. Also Tune-In functions are supported natively by the
Presentation Framework.
Part B: Commercial information
Device coverage
There are several Set-Top-Boxes on the market which are Mediaroom enabled, e.g. MR303
of Deutsche Telekom.*Moreover Microsoft products such as XBOX360 or Windows Phone 7
(for multiscreen and remote control services) can be used with Mediaroom.
Platform maturity
Mature. It is developed by Microsoft and world-wide deployed by several service providers.
page: 123 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 124 of 229
Target Platforms, target Requirements and Platform IPRs
Market penetration/availability
There are 26 TV providers world-wide which offer IPTV via Mediaroom
Availability
No. Applications cannot be distributed without a service provider
Feasibility
Low. It requires dedicated hardware and software.
Partner perspective
Development of applications is restricted to Mediaroom partners only.
Risks
Webinos Mediaroom applications could not be provided to everybody world-wide because
there is not in every country a service provider which could deploy the application in the
Mediaroom ecosystem.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at
the same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project
mailing lists, forums, bug-tracking databases,
developer documentation and tools - available to
all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
1. No - Source code is not available for
developers now or in future.
1. No – proprietary license
2. Mediaroom partners only have
access to forums, mailing lists and
much developer documentation.
1. No
1. No
Development
Transparency of contributions and acceptance process – Is
the code contribution and acceptance process clear, with
progress updates of the contribution provided (via Bugzilla
or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented
and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who
page: 124 of 229
? Not known
1. No
1. No – commit access is
restricted to specific
users/members of the Project
only
1. No – this information is not
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 125 of 229
Target Platforms, target Requirements and Platform IPRs
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source code
to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
provided
1. No – no contribution
license
Derivatives
Are trademarks used to control how and where the
platform is used via enforcing a compliance process
prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval,
distribution or discovery?
? No possibility to distribute the
platform without being Microsoft
partner
4. No
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 16
Additional comments
There is no possibility to deploy a Mediaroom application without the service providers
Mediaroom infrastructure. The URL of the Mediaroom application must be provided by the
Mediaroom IPTV ecosystem to the Set-Top-Boxes.
Part D: Summary
Verdict
In conclusion, the Mediaroom platform is not suitable for the webinos project.
SWOT
Swot analysis in relation to webinos:
Strengths
- web based platform
- content oriented
Opportunities
- webinos could provide second
screen interaction mechanisms
- integration with a market-proven
end-to-end solution
Weaknesses
- unsupported by TV devices
- requires complex IPTV infrastructure for delivering
content to devices
- interactive applications are controlled by service
provider and access to developer tools requires
membership
Threats
- growing support for Web-based (e.g. HTML5) TV
platforms
References
[1] Mediaroom Website: http://www.microsoft.com/mediaroom/
page: 125 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 126 of 229
Target Platforms, target Requirements and Platform IPRs
[2] Microsoft Windows CE: http://msdn.microsoft.com/en-us/library/ms905511.aspx
page: 126 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 127 of 229
Target Platforms, target Requirements and Platform IPRs
MythTV
Introduction
The project was founded by Isaac Richards in 2002 and is designed to run on Linux/Unix
systems. Isaac Richards stepped down as founder and leader in 2010 and three core
developers stepped in as a trial advisory council. MythTV still runs on a "scratch an itch"
open source model, with developers working individually or in small groups on whatever
personal projects they think are most important. Conflicts are usually resolved one-on-one,
but if they escalate, these three developers hold a vote and go by the consensus of the
entire group.
Relevance is to extent existing and popular Home Media Software solutions to be Webinos
enabled. This will support the growth of Webinos enabled software. MythTV's backend
(PVR) is the default backend of XMBC.
Hence extending MythTV has an impact to other Home Media solution which made use of
MythTV technologies.
Part A1: Technical Information (web rendering engines)
Web components
MythTV's official plugin "MythBrowser" is based on a full featured WebKit Browser.
HTML 4 rendering capabilities
full support, compare WebKit engine
HTML 4 rendering code base, test results at http://en.wikipedia.org/wiki/Acid3, live test at
http://acid3.acidtests.org/ (with WebKit browser)
HTML 5 rendering capabilities
supported partially (HTML5 is not jet finished).
HTML 5 rendering code base, test results at http://www.browserscope.org/, live test at
http://html5test.com/results.html (with WebKit browser)
JavaScript engine capabilities
WebKit's JavaScript engine, JavaScriptCore, based on KJS which is a framework separate
from WebCore and WebKit.
MythTV uses QtWebKit and requires Qt4.4.0 or later versions.
There are hooks available which can replace MythBrowser by a Mozilla's Firefox, just by
replacing the binaries. A Wrapper can be used to adopt parameters passed to another
browser like Firefox in kind of starting problems.
Widget availability
MythUI Widget Types are based on XML and are intended for theme development. MythUI
Widgets are not compliant to W3C widgets and are part of MythTV's UI library called
libmythui. Nevertheless, due to the WebKit browser (MythTVBrowser), a deployment of
page: 127 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 128 of 229
Target Platforms, target Requirements and Platform IPRs
Webinos Widgets or W3C compliant Widgets is possible.
For instance Aplix's WebVM is implemented as a WebKit plugin in C.
Digital signature code availability depends on WebKit’s
Widgets are dependent on WebKit’s and used extension. W3C widgets are packaged as ZIP
compliant to W3C's "widget packaging" spec.
WARP implementation
unknown, compare WebKit’s featurelist
Extensibility framework (feature tags)
unknown
Part A2: Technical Information (Operating Systems)
General OS features
MythTV is an application not an OS. MythTV is designed to run on Linux/Unix Systems, hence
should run on most Linux Distributions (Debian, Ubuntu, Fedora, SUSE, etc.). Some Linux
Distribution release special MythTV enabled versions of their distributions.
Sample Linux Distribution - Mythbuntu (based on Ubuntu Linux) and Mythdora (based on
Red Hat's Fedora Linux Distribution)
API Codebase
Not relevant for MythTV as this depends on the underlying hardware and used Operating
System.
Part B: Commercial information
Device coverage
?
Platform maturity
Depends on the chosen Linux distribution.
MythTV offers a stable version. Depends on the source code branch (stable, testing..., etc...)
Market penetration/availability
Free for download / penetration is difficult to mature. MythTV comes with a big community
(sample indicator: www.mythTVtalk.com/forum -> Threads: 14,429 Posts: 56,838 Members:
19,802 ) and enhanced integration options which indicates that it is used quite often.
Availability
?
Feasibility
page: 128 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 129 of 229
Target Platforms, target Requirements and Platform IPRs
Yes, Webinos adoption is feasible in a limited time frame. Medium afford
Partner perspective
Private households; other application projects like XMBC, which reuse/adopts to MythTV's
backend by default; Several Linux Live Distribution.
Risks
Community of developers and supporters of Linux and/or MythTV can decrease or increase
for whatever reason.
Limited visibility/support by TV manufactures
MythTV owns no patents of its own, but given that MythTV borrows code from several other
open source projects, some of this is beyond MythTV's control.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
2. Yes – approved license and
strong copyleft (e.g. GNU GPL
v2/v3)
3. Yes – developer support
mechanisms open to all
developers
2. No – No formal roadmap exists,
but there are visible committer or
contributor requests
Not known
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
page: 129 of 229
3. Yes – contributions process
and acceptance process are
clear, but no progress status of
contributions provided
4. Yes – there are good project
statistics that provide this
information
3. Yes – the process is
documented and accessible to all
developers
3. Yes – there are good project
statistics that provide this
information
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 130 of 229
Target Platforms, target Requirements and Platform IPRs
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
1. No – no contribution license
Derivatives
Are trademarks used to control how and
where the platform is used via enforcing a
compliance process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in
terms of approval, distribution or discovery?
2. No – You can freely distribute to the code
and use the project trademark without
completing formal compliance requirements
4. No
Community
Is the formal community structure flat or
tall, i.e., tiered rights depending on
membership status
2. No – there is no formal membership or
discrimination between the rights of
members and non-members from a
development/access perspective
Total Score 33
Part D: Summary
Verdict
Again, MythTV is an application not a platform. In conclusion, Myth TV is a good media
home platform for webinos. We are more or less free to choose the underlying Linux
Operating System. In addition we will have an impact on Home Media systems which
derivate form MythTV. The already existing Web browser plugin simplifies possible
integration.
SWOT
Swot analysis in relation to webinos:
Strengths
- flexible in respect to the underlying
Linux OS.
- Nearly no limitations with the
respect to creativity, technology and
GNU GPL.
- big community (sample indicator :
mythTVtalk.com forum Threads:
14,429 Posts: 56,838 Members:
19,802
Opportunities
- MythTV seems to be manageable.
- MythTV shows interest in Webinos.
page: 130 of 229
Weakness
- GPL
- MythTV requires Linux - no OS support (e.g.
Windows)
Risks
- some relics exist (closed developer Mailing list)
but MythTV is willing to discuss.
- MythTV pre Foundation status.
- Community of developers and supporters of Linux
and/or MythTV can decrease or increase for
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 131 of 229
Target Platforms, target Requirements and Platform IPRs
whatever reason.
- limited visibility/support by TV manufactures
- MythTV owns no patents of its own, but given
that MythTV borrows code from several other
open source projects, some of this is beyond
MythTV's control.
page: 131 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 132 of 229
Target Platforms, target Requirements and Platform IPRs
MeeGo
Introduction
MeeGo is not yet launched, it was announced in 2009. MeeGo is a merger of two open
source projects Maemo (based on Debian GNU Linux) and of Moblin (based on Red Hat's
Fedora Linux) and is supported by Intel and in former times in addition by Nokia.
MeeGo is also available for mobiles and vehicles, hence is would be very interesting to have
the same platform in use when thinking about TVs and Set-Top-Boxes.
Part A1: Technical Information (web rendering engines)
Web components
Unclear what "MeeGo for TV" will provide. Other MeeGo Derivates use chromium or
Fennec.
HTML 4 rendering capabilities
Unclear. Integration of Fennec or Chromium seems to be realistic.
HTML 5 rendering capabilities
Unclear. Depends on the Browser (It could be Fennec or Chromium)
JavaScript engine capabilities
Unclear. Integration of Fennec or Chromium seems to be realistic.
Widget availability
Digital signature code availability
unknown.
How are widgets packaged?
Unknown.
WARP implementation
unknown.
Extensibility framework (feature tags)
unknown.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
Intel Atom based systems, ARM7 based architectures. Linux only, QT for UX across different
platforms.
page: 132 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 133 of 229
Target Platforms, target Requirements and Platform IPRs
Security
Openssl , multithreading, multiprocessors allow app execution in different privileged layers
and offer Linux like crypto features.
Connectivity
WLAN: Linux wireless subsystem (IEEE-802.11) is supported.
Bluetooth: Bluetooth is provided by the BlueZ software stack.
Reliability
Unknown, MeeGo for TV is not yet released
Technical criteria









MeeGo for TV is designed to run on devices with limited resources, hence the
footprint of e.g. memory etc. is adapted to its target platforms (TVs or Set-TopBoxes etc.
The Linux power management frameworks and APIs include:
CPU frequency control (support for the different voltage and frequency
operating points) via the cpufreq infrastructure
CPU idle state management (different levels of sleep) through the cpuidle
infrastructure
Clock management through the clock framework
Suspend/resume
Runtime power management
HW voltage/current regulator control via the regulator framework
PM_QOS (power management quality of service) framework for making and
listening to PM QoS requests
Energy Management :
Battery charging and monitoring is support by Linux’s sysfs class. Energy
management related functions can be handled by developers.
API codebase
In respect to MeeGo in general:
Cellular is supported be oFono. MeeGo 1.2 supports SMS for CDMA, GPRS, GSM/UMTS
WLAN: Linux wireless subsystem (IEEE-802.11) is supported.
Bluetooth: Bluetooth is provided by the BlueZ software stack. Access to an USB stack is
available; RFID and NFC are currently not supported by any MeeGo derivative.
Part B: Commercial information
Device coverage
MeeGo for TV is not yet released so zero coverage at this point in time
page: 133 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 134 of 229
Target Platforms, target Requirements and Platform IPRs
Platform maturity
Not applicable
Market penetration/availability
Not applicable
Availability
Is there an Implementation available that can be used by webinos?
Feasibility
Unknown. Integration of Webinos is to be considered to be feasible in a limited timeframe
Partner perspective
Unknown
Risks
MeeGo for TV's release date is unclear
Part C: Licensing and Governance
Could look the same as for MeeGo IVI and MeeGo for mobiles
Access
Is source code freely available to all developers, at the same
time?
Is source code available under a permissive OSI-approved
license?
Are developer support mechanisms - project mailing lists,
forums, bug-tracking databases, developer documentation and
tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting
minutes publicly available to understand decision-making in the
project?
Not known
3. Yes – approved
license and weak
copyleft (e.g. Eclipse
Public License, GNU
LGPL v2/v3)
Not known
Not known
Not known
Development
Transparency of contributions and acceptance process – Is the
code contribution and acceptance process clear, with progress
updates of the contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you identify
from whom source code contributions are provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented and
page: 134 of 229
Not known
Not known
Not known
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 135 of 229
Target Platforms, target Requirements and Platform IPRs
is this an equitable process, i.e., can all developers potentially
become committers?
Transparency of committers – can you identify who committers
to the open source project are? i.e., those developers that have
the authority to 'commit' source code to the baseline
Does the contribution license require a copyright assignment, or
copyright license and/or patent license?
Not known
Not known
Derivatives
Are trademarks used to control how and where the platform is
used via enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval, distribution or
discovery?
Not known
Not known
Community
Is the formal community structure flat or tall, i.e., tiered rights
depending on membership status
Not known
Summary
Total Score
3 (could be around 39 in case of its
release)
The value in brackets indicated an estimated value - calculated by just having an eye on
MeeGo for Mobiles and MeeGo IVI.
Additional comments
Part D: Summary
Verdict
MeeGo TV is currently not suitable because it is not available. However, MeeGo would be a
good base Operating System for possible Webinos implementations. The integration of
Home Media software solutions like MythTV and XMBC should be feasible.
SWOT
Swot analysis in relation to webinos:
Strengths
UX optimized for different EndDevices using QT.
MeeGo has a strong supporter Intel.
Opportunities
To have the same OS available for
mobiles, vehicles and Set-Toppage: 135 of 229
Weaknesses
Intel just focuses on x86 Atom (CE-x100 platforms)
processors and ARMv7.
Threats
MeeGo, pushed by Nokia and Intel recently lost Nokia
as supporter. Intel claims to keep on supporting
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 136 of 229
Target Platforms, target Requirements and Platform IPRs
Boxes/TVs would simplify the
integration (synergy effects).
page: 136 of 229
MeeGo. Nevertheless, companies using MeeGo are
concerned about MeeGo's further development and
existence.
MeeGo for TV sets is not released yet.
There is uncertainty as to QT’s future. Nokia,
responsible for QT, recently left the MeeGo partners.
When thinking of an integration of Home Media
solutions like XMBC and MythTV, we have to check if
the processing power of ARM and Atom processors is
high enough to provide sufficient quality of user
experience.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 137 of 229
Target Platforms, target Requirements and Platform IPRs
NetTV
Introduction
Net TV was launched by Philips in 2009. It is available on selected Philips Blu-Ray players and
iDTVs. Services and apps are adapted to TV devices and can be launched via a portal page
(restricted to Philips partners). Moreover it is possible to address Web sites directly. Philips
is the creator of NetTV. In addition to Philips TV, Loewe and Sharp use NetTV.
Extending NetTV would bring Webinos straight forward to a wide range of off the shelf
devices.
Part A1: Technical Information (web rendering engines)
jointSPACE ( http://jointspace.sourceforge.net/ ) an open source system can be activated on
the latest firmware versions.
Web components
For jointSPACE there is no pre-installed open source browser. Samples mainly include
Remote Applications.
Due to the sandbox model it is unlikely to run a browser directly on the TV. A remote
browser, e.g.
WebKit - WebKit for DirectFB (http://git.directfb.org/?p=programs/WebKit.git;a=summary ,
last change 20 Nov 2010) is more likely. WebKitDFB is WebKit on top of DirectFB without
using GTK+ or Qt. Python binding are also available:
http://www.gnu.org/software/pythonwebkit/.
HTML 4 rendering capabilities
Opera embedded (fully support of HTML4), compare to acid test
HTML 5 rendering capabilities
Opera embedded (wide support of HTML5), compare to acid test
JavaScript engine capabilities
Opera's JavaScript interpreter
Widget availability
Widgets are currently not supported on Net TV, although the embedded Opera browser
would allow this (Opera Widgets).
For jointSPACE widget availability depends on the WebKit implementation.
Digital signature code availability
currently not supported
How are widgets packaged?
Currently not supported
page: 137 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 138 of 229
Target Platforms, target Requirements and Platform IPRs
WARP implementation
currently not supported
Extensibility framework (feature tags)
currently not supported
Part A2: Technical Information (Operating Systems)
General OS features
In factory default, Net TV’s operating system is closed and applications can only be
submitted in partnership with Philips.
To use the open source jointSPACE, it needs to be activated on Philips NetTVs with the key
combination: 5646877223 (="jointspace" using multitap digit entry).
jointSPACE is an Open Source project that will allow every user/supplier to develop
applications for Philips TV displays. jointSPACE is based on the SPACE architecture which was
developed by Philips to ease internal development. At a certain point in time, Philips decided
to open its architecture to allow everyone developing code for the TV target.
jointSPACE addresses this by opening and extending the current TV architecture:
jointSPACE proposes a single platform to develop applications (any Linux PC or device
capable of running Linux/DirectFB technologies)
jointSPACE publishes the essential TV APIs used in the SPACE architecture
jointSPACE provides a portable prototyping software that includes and illustrate the
essential of the SPACE architecture
jointSPACE will extend the TV architecture to allow:
Executing TV applications on a remote system, rendering and being controlled on the TV
Executing application on a remote system, controlling the TV APIs remotely.
jointSPACE will continuously provide new technologies/libraries to ease and improve the
development of new applications
jointSPACE will extend the TV API to allow controlling more TV functionalities
(http://sourceforge.net/apps/mediawiki/jointspace/index.php?title=Introduction).
Multi-threaded
System consists of applications, each a separate process using a shared Linux and DirectFB
infrastructure. The TV only supports one rendering remote application at a time, but
supports multiple control applications at a time
Performance benchmarking
page: 138 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 139 of 229
Target Platforms, target Requirements and Platform IPRs
Applications are running on the remote device but,
Drawing primitives are executed on the TV (font rendering, other DirectFB drawing
primitives, Write, Flip,...)
Remote Applications are running at the lowest priory (very nice value)
Frame rate is limited
Depends on TV selected use case and load
Usually defined by the GFX window size/format of the application
GFX data is copied over the network: GFX data is RLE compressed but the BW of the network
defines the limit for e.g. 25FPS at 320X200x16Bits => up to 3 MBytes/s (24Mbits/s)
TLS (version?)
IPv6
Portability: On which OS is the framework available, openness of the Platform?
jointSPACE offers a Remote API . It exposes a subset of SPACE APIs over the network using
Voodoo technology.
Those APIs are clustered in few groups:
 Remote Control (jslibrc based on DiVIne API)
 Remote Rendering and Remote Screen (based on DirectFB graphical API)
 Remote Discovery (voodoo player API)
 Remote Content and Data(jslibapi based on FusionDale)
The Remote API is meant for Remote Applications, such as the samples, which are available
for download.
Security: How the High level components like Certificate management, Privilege apps and
Cryptography are met?
Security/Robustness rules imply application integrity
Only start applications that have been verified to run on the system
Use hash based algorithm (sha1) to verify application
Required for all executable code that could tamper with the system
Restricted to code that could access security data (key, license
Connectivity: How well the connectivity technologies including GSM/EDGE, IDEN, CDMA, EVDO, UMTS, Bluetooth, Wi-Fi, LTE, and WiMAX are supported?
Remote applications are using the IP network (wired or wireless) to communicate with the
TV.
Remote applications can be controlled with the TV remote.
page: 139 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 140 of 229
Target Platforms, target Requirements and Platform IPRs
Standards: How well standards concerning programming languages, special features, Data
exchange and Networking criteria’s supported?
Remote API exposes a subset of SPACE APIs over the network using Voodoo technology.
Reliability: Reliability is very much dependent on the user experience how well the platform
can cope with this?
Total window/surface/font memory pool is limited (4MB for 2k9)
The TV only supports one rendering remote application at a time, but supports multiple
control applications at a time.
User Interface Criteria: How well the User Interfaces can be met?
Depends on WebKit DirectFB
Product Diversity: The possibility to innovate and develop new applications.
Limited due to sandbox model and focus on remote applications
API codebase
Is there platform (or 3rd party) support for some of the more critical, and more sensitive
enablers like Bluetooth, RFID, DNS, UPNP, USB?
As jointSPACE is based on DirectFB technologies, the first API to understand is the one the
various DirectFB packages:






DirectFB 1.4
SaWMan 1.4
FusionDale 0.8.1
DiVIne 0.4.0
Next to this, jointSPACE exposes 3 core APIs:
plfApi: the Platform control API used by applications to control the HW platform
features (FrontEnd (Tuner, Demux), A/V decoding and rendering, USB, IP, etc)
 papi: an internal "clean" API toward HW suppliers that can be used to glue
existing HW functionalities
 amApi: the Application manager API, used to communicate between
applications
(http://sourceforge.net/apps/mediawiki/jointspace/index.php?title=Documentation)
Part B: Commercial information
Device coverage
jointSPACE is available 2k9 8000 range, 2k9 9000 range and 2k10 7000,8000 and 9000
ranges. (total installed base?)
Platform maturity
NetTV is a commercial product, thus is stable. The SDKs for remote applications are being
updated regularly
page: 140 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 141 of 229
Target Platforms, target Requirements and Platform IPRs
Market penetration/availability
See Device coverage
Availability
Mainly the Remote API can be used
Feasibility
Feasible regarding remote applications, useful for prototyping TV use-cases
Partner perspective
Implementations can be used by all customers with covered devices.
Risks
jointSPACE activation relies on Philips’ acceptance, applications are limited to remote
functionality.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSI-approved
license?
Are developer support mechanisms - project mailing lists,
forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
4. Yes – approved license and
permissive (e.g. Apache, BSD,
MIT)
3. Yes – developer support
mechanisms open to all
developers
3. Yes – roadmap information
available but no call for
contributions or similar
Not known
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
page: 141 of 229
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
4. Yes – there are good project
statistics that provide this
information
3. Yes – the process is
documented and accessible to
all developers
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 142 of 229
Target Platforms, target Requirements and Platform IPRs
developers potentially become committers?
Not known
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
1. No – no contribution license
Derivatives
Are trademarks used to control how and where the platform is used via
enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the project
in terms of approval, distribution or discovery?
Not
known
Not
known
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 28
Additional comments
Part D: Summary
Verdict
Is this platform suitable for webinos? NetTV is suitable for demo purposes only.
SWOT
Swot analysis in relation to webinos:
Strengths:
- Open source project
Opportunities:
- Remote API availability for cross-platform
applications, hosting is possible on multiple
platforms
Weaknesses:
- Small community, mainly Philips
driven development
- activation is governed by Philips
Threats:
- jointSPACE is not enabled by default
- Effort needed to run jointSPACE on
other TV vendors/platforms
- single-vendor solution
.
page: 142 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 143 of 229
Target Platforms, target Requirements and Platform IPRs
Samsung TV
Introduction
Samsung announced Smart TV on CES 201153. Samsung Smart TV is the new member of the
internet connected TVs of Samsung. It is not to be confused with Philips Smart TV
(http://www.ifa.philips.com/pressreleases/Philips_Smart_TV/), LG Smart TV
(http://www.lg.com/global/smarttv/index.jsp) or the smart TV products of others. For
reference purposes, the reader may refer to the Samsung TV section, which presents
Samsungs Internet@TV solution from last year.
From the App Development Guide (part of the SDK):
Samsung Smart TV is a web-based application running on an application engine installed in
digital TVs connected to the Internet. The Samsung Smart TV service makes it possible to
extend the functions of the TV by applying a variety of web functions to it, so that users can
obtain useful information and interesting content on their TV screens. Users can check
internet services such as news, weather, stock, UCC with simple operation.
It loosely builds on last year’s platform (in contrast to the Yahoo platform of the year
before).
Part A1: Technical Information (web rendering engines)
Much of the information below is retrieved from the Samsung SDK, found at
http://www.samsungdforum.com/.
Web components
Rendering is done with the Samsung proprietary Maple browser, which supports CSS1 and
CSS2, a subset of CSS3 plus the CSS TV profile 1.0. It has a JavaScript engine built-in that
supports JavaScript 1.6.
The BMP, JPEG, PNG and GIF image formats are supported.
Applications are written in HTML+CSS+JavaScript. In addition, the platform supports both
Flash and Adobe AIR.
Apps can be fullscreen, ticker tape or sidebar format (latter prohibited in Europe).
Widget availability
Widgets are supported through the Widget API (Common.API.Widget).
53
Samsung 2011 CES wrapup, http://www.samsung.com/us/article/samsung-2011-ceswrap-up-products-for-a-smarter-life.
page: 143 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 144 of 229
Target Platforms, target Requirements and Platform IPRs
Part A2: Technical Information (Operating Systems)
General OS features
The Smart TV is built on top of the proprietary (Linux based?) television firmware. Not much
is known about the internals.
Portability
Samsung TVs from 2011 onward, series D6000 and up, selected Blue-Ray players and home
media entertainment systems. See also page one of http://www.samsung.com/us/pdf/appsand-product-table.pdf
Security
Unknown
Connectivity
WLAN and/or LAN depending on model
Reliability
Both the SDK and internet comments point to the fact that the current implementation in
not very mature as it suffers from memory leaks. (Even APIs are introduced to have the
developer do its own garbage collection.)
Technical Criteria
Unknown
Usability Criteria
Aimed at 10-foot interaction
Product Diversity
New apps are possible, e.g. through the Samsung App Store (complete overview of current
apps can be found at http://www.samsung.com/us/pdf/apps-and-product-table.pdf). The
platform itself is not extendable, as it is closed source and under full control of Samsung.
Since 2009 there is an initiative for an open source firmware (http://www.samygo.tv/) but
this is for experienced users only and actively opposed by Samsung.
API codebase
Applications communicate with the TV through the Device API, which may be different per
firmware, TV or supported feature. Nearly all TV capabilities can be programmatically
addressed, e.g.:


Volume and channel control
EPG info
page: 144 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 145 of 229
Target Platforms, target Requirements and Platform IPRs
 binding to keys on the remote control
 HAS (HTTP Adaptive Streaming)
 and many more
In addition, the File API allows communication with disks connected through USB
Part B: Commercial information
Device coverage
2011+ Samsung TVs from the D7000-, D8000- en D9500-series, selected Blue-Ray players,
home media entertainment sets. Full overview at http://www.samsung.com/us/smarttv/
(click overview open at bottom.
Platform Maturity
Immature
Market penetration/availability
Samsung has a huge market share in connected TVs
Availability
An SDK is available, TVs are available. Note that the DeviceAPI is not extendable, so all
extensions are AJAX based.
Feasibility
Medium
Partner perspective
Unknown, Samsung internal
Risks
Immature platform that can only be extended through AJAX.
Part C: Licensing and Governance
Please keep in mind in the following that the Samsung Smart TV technology is proprietary
and fully owned by Samsung, and that only an application API has been made available.
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
page: 145 of 229
1. No
? Not known
1. No – there are poor developer
support mechanisms (and the
community is quite small as well)
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 146 of 229
Target Platforms, target Requirements and Platform IPRs
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
1. No
1. No
Development
These questions seem to assume development of the platform itself, not the apps. As the
Samsung Smart TV is closed and proprietary, all answers are somewhat boring :-). Note that
while the platform is Linux-based, the answers below only regard the specifics of the final
platform, not the Linux foundation.
Transparency of contributions and acceptance process – Is the code contribution
and acceptance process clear, with progress updates of the contribution provided
(via Bugzilla or similar)?
Transparency of contributions to the project – can you identify from whom
source code contributions are provided?
Accessibility to become a committer – are the requirements/process to become a
committer documented and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who committers to the open
source project are? i.e., those developers that have the authority to 'commit'
source code to the baseline
Does the contribution license require a copyright assignment, or copyright license
and/or patent license?
? Not
known
1. No
? Not
known
? Not
known
? Not
known
Derivatives
Are trademarks used to control how and where the platform is used via
enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the
project in terms of approval, distribution or discovery?
? Not
known
? Not
known
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
? Not
known
Summary
Total Score 5
Additional comments
None.
Part D: Summary
Verdict
This platform is unsuited for creating a webinos PZP. However, it should be investigated if it
were possible to create some sort of webinos proxy, possibly javascript based.
SWOT
Swot analysis in relation to webinos:
page: 146 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 147 of 229
Target Platforms, target Requirements and Platform IPRs
Strengths
- Coding is done in HTML+CSS+JavaScript,
which nicely fits the targeted average
webinos developer.
Opportunities
- Samsung has a huge market share in
connected TV's
page: 147 of 229
Weaknesses
- Lack of maturity, both of the platform and of
the SDK.
- Platform is proprietary closed source, making
it impossible to extend in a secure manner
(webinos shouldn't be implemented as
JavaScript library)
Risks
- Lack of platform consistency within Samsung;
this is the third platform in 3 years time
- platform is proprietary and closed source
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 148 of 229
Target Platforms, target Requirements and Platform IPRs
HbbTV
Introduction
HbbTV was formed as a quick go-to-market activity between the French H4TV and the
German broadcasters and quickly gained support from the European Broadcasting Union
(EBU). In 2009 a draft standard was published and sent to ETSI for adoption as an ETSI
standard. It has been published in June 2010 as TS 102 796: "Hybrid Broadcast Broadband
TV". The HbbTV specification is developed by the HbbTV consortium and is expected to
become one of the main platforms for interactive TV services in Europe.
Part A1: Technical Information (web rendering engines)
HbbTV is a system for browser-based, interactive TV applications combined with DVB
signalling protocols, for so called Red Button services. The specification describes how the
interactive applications are signalled and announced over DVB networks and how specific
content related stream events are announced. The HbbTV specification does not specify the
operating system or client platform itself on the receiving device. Therefore, the usability of
the HbbTV platform for webinos is mostly related as a means to carry certain types of
interactive application information to the receiving device and manages the life cycle of the
application.
Web components
HbbTV positions itself as an interactive TV solution that is based on web-technology. It
combines technologies fromthe DVB forum (TS 102809) for the signalling and
announcement of interactive applications over digital TV.
The Consumer Electronics Association with parts of its CEA-2014 standard (CE-HTML),
providing an adoption of HTML4 and CSS for the TV as the main technology for the , which is
also used by the OpenIPTV forum. CE-HTML itself is standardised by the Consumer
Electronics Association (CEA, http://www.ce.org/).
The Open IPTV Forum's Declarative Application Environment (DAE) defining a TV-oriented
application environment, including application lifecycle management and dedicated TV
device APIs (http://www.oipf.tv/docs/Release2/OIPF-T1-R2-Specification-Volume-5Declarative-Application-Environment-v2_0-2010-09-07.pdf)
Widget availability
Refer to CE-HTML for UI aspects, the OIPF DAE for Device API issues
(http://www.oipf.tv/docs/Release2/OIPF-T1-R2-Specification-Volume-5-DeclarativeApplication-Environment-v2_0-2010-09-07.pdf) and to DVB for issues on the signalling and
announcement of applications using the Application Information Table (AIT) and Event
Information Table (EIT) through the DSM-CC/object carousel
(http://www.etsi.org/deliver/etsi_ts/102800_102899/102809/01.01.01_60/ts_102809v0101
01p.pdf)
page: 148 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 149 of 229
Target Platforms, target Requirements and Platform IPRs
Part A2: Technical Information (Operating Systems)
HbbTV relies heavily on CE-HTML for UI aspects (CEA-2014-A), the OIPF DAE for aspects
concerning Device APIs and DVB specifications for the signalling and announcement of
applications through the broadcast channel.
General OS features
Portability
Currently there are only closed source proprietary implementations from vendors, and no
open source initiatives
Security
HbbTV works with TLS and SSL root certificates of Thawte and Verisign. The security aspects
can be found in chapter 11 of the specifications:
http://www.etsi.org/deliver/etsi_ts/102700_102799/102796/01.01.01_60/ts_102796v0101
01p.pdf
Connectivity
HbbTV is targeted at hybrid devices. A hybrid device has the capability to be connected to
two networks in parallel. Specifically the specification mandates support for DVB networks
and leaves support for Internet optional, because Web applications can be transported
within the stream, thus offline usage is allowed
Reliability
Unknown
Technical Criteria
Unknown
Usability Criteria
See CE-HTML. Further are some requirements about “red button” appearance (depending
on type of application).
Product Diversity
HbbTV is not an open marketplace for 3rd party developers to bring applications on the TV
to consumers like with Android or Apple. Application development would have to be
organized by the broadcasters (for broadcast-related applications) or device vendors (for
broadcast-independent applications).
API codebase
Access to lower level functionality is not supported.
page: 149 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 150 of 229
Target Platforms, target Requirements and Platform IPRs
Part B: Commercial information
Device coverage
HbbTV can be received on a number of set top boxes and a few TVs.
Platform maturity
Immature. The wide scale support of the HbbTV system by TV manufacturers is very
uncertain. There are many competing technologies in other countries, for instance MHEG,
YouView and MHP. Further, most TV vendors focus on their own interactive Connected TV
platforms and operating systems, as this is a possible revenue generator for them.
Market penetration/availability
The HbbTV service is operational in Germany with broadcasters ZDF, ARD, arte, ProSieben,
SAT1 and RTL. In France Normandie TV launched in April 2011. Many more pilot projects in
Europe are started by broadcasters. In Czech Public Broadcaster CT starts pilots with set top
box provider Antik and in Spain Mediaset and Telefonica pilot HbbTV.
Availability
None. Interactivity is managed by the broadcaster of a TV channel. Broadcast-related
applications cannot be distributed or created independent from the owner of the TV
channel. Most device vendors use the same browser for broadcast-related and broadcastindependent applications (e.g. applications, which are started from a portal). Therefore, if a
device has open internet functionality, its browser can be used to access any Web page
based on CE-HTML.
Feasibility
Medium. Transporting applications through the HbbTV framework requires dedicated
hardware and software for DVB networks and systems. However, HbbTV devices can be
used for any Web page (if enabled) to render web pages.
Partner perspective
The development of HbbTV is most advanced in Germany. Exploitation is done by
professional partners.
Risks
The HbbTV system may not reach Pan European maturity if the TV market remains
fragmented.
Part C: Licensing and Governance
Access
page: 150 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 151 of 229
Target Platforms, target Requirements and Platform IPRs
Known implementations of the platforms are closed source. There is an unofficial test
available, see https://github.com/mitxp/HbbTV-Testsuite#readme. The HbbTV consortium is
working on an official test suite. Other HbbTV members provide professional test suites.
Open source code is not available. Many parties provide platform and middleware software.
The HbbTV consortium is a legal entity since May 2011 and open to membership. The cost of
membership is €7,000 per year. Member can participate in meetings and contribute to the
development of the specification. The steering board currently comprises ANT Software,
EBU (European Broadcasting Union), France Televisions, Institut für Rundfunktechnik,
OpenTV, Philips Electronics, Samsung, SES Astra, Sony Corporation and TF1.
The HbbTV organisation has modelled its IPR policy on that of the DVB project, to which
many members of the HbbTV consortium also belong. Members will be required to notify
the steering group chairman of any essential patents held within 90 days of the publication
of a specification being published. A patent pool has not yet been established. IPR license
fees are unknown.
Is source code freely available to all developers,
at the same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project
mailing lists, forums, bug-tracking databases,
developer documentation and tools - available to
all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are
project meeting minutes publicly available to
understand decision-making in the project?
1. No
? Not known
2. No – developer support mechanisms
are limited
3. Yes – roadmap information available
but no call for contributions or similar
except when member of HbbTV.
3. Yes – there is some information but it
is hard to find and doesn't appear
comprehensive. Most is members/only.
Development
As mentioned above there is no open source code available.
Transparency of contributions and acceptance process – Is the code
contribution and acceptance process clear, with progress updates of the
contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you identify from whom
source code contributions are provided?
Accessibility to become a committer – are the requirements/process to
become a committer documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who committers to the open
source project are? i.e., those developers that have the authority to 'commit'
source code to the baseline
Does the contribution license require a copyright assignment, or copyright
license and/or patent license?
page: 151 of 229
Target Platforms, target Requirements and Platform IPRs
not
applicable
not
applicable
not
applicable
not
applicable
not
applicable
FP7-ICT-2009-5 257103
page: 152 of 229
Target Platforms, target Requirements and Platform IPRs
Derivatives
Are trademarks used to control how and
where the platform is used via enforcing
a compliance process prior to
distribution?
Are go-to-market channels for
applications derivatives constrained by
the project in terms of approval,
distribution or discovery?
? Not known
1. Yes, Interactivity is managed by the
broadcaster of a TV channel. Applications cannot
be distributed or created independent from the
owner of the TV channel.
Community
Is the formal community structure flat or tall, i.e., tiered rights depending on
membership status
not
applicable
Summary
Total Score 9
Part D: Summary
Verdict
In conclusion, the HbbTV platform is only of moderate suitability for webinos. Application
development and distribution is controlled by broadcasters and a TV broadcast system is
required. The spirit of HbbTV is to tie interactive applications to specific TV channels. A
possibility would be to use broadcast-independent applications relying on the CE-HTML
capabilities of the end-user device. Furthermore, there are no native hooks for home
networking or cross device communication.
Another barrier is the lack of open source implementations.
SWOT
Swot analysis in relation to webinos:
Strengths
- web based platform
- support by TV devices
- content oriented
Opportunities
- application development for
HbbTV gains momentum in the
industry
- many trials and pilots are
started
- webinos could provide second
screen interaction mechanisms
page: 152 of 229
Weaknesses
- requires complex TV broadcast infrastructure for
transporting data to devices via the HbbTV framework.
Because HbbTV devices are CE-HTML compliant devices,
this weakness can be mitigated by using broadcast
independent applications.
- no native mechanisms for cross device communication.
- interactive applications are bound to TV channels and
controlled by the broadcaster
Threats
- Android as TV platform
- evolving Web standards (e.g. HTML5)
- Long term support for system is unsure. No ownership
or final responsibility for system.
- Patent pool has not been established yet. IPR license
fees unknown
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 153 of 229
Target Platforms, target Requirements and Platform IPRs
for broadcasters
- Browsers, which are used for
HbbTV applications, can be used
for any Web applications,
because of CE-HTML support
References:
http://www.ard.de/ratgeber/multimedia/hbbtv//id=13302/nid=13302/did=1567970/1gwjv12/index.html
http://www.broadbandtvnews.com/2011/04/14/normandie-tv-launches-hbbtv-pilotservice/
http://www.zdnet.de/news/lebensart_lifestyle_digital_pro_sieben__sat_1_und_rtl_starten
_hbbtv_livebetrieb_story-39001025-41537118-1.htm
http://www.digital-room.de/news/Smart-tv-schwacher-Standard-HbbTV
page: 153 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 154 of 229
Target Platforms, target Requirements and Platform IPRs
AppleTV
Introduction
Apple TV is a digital media receiver designed to play digital content originating from the
iTunes Store, Netflix, YouTube, Flickr or any Mac OS X or Windows computer running iTunes.
Apple launched the first version of Apple TV in March 2007 with a 40G hard disk and later
with a 160G version.
The Second generation Apple TV was released on September 1, 2010. It has an Apple A4
(ARM Cortex-A8) processor, Apple A4 (PowerVR SGX535) graphics chip, 256M of memory, 8
GB NAND Flash for Cache. It connects via WiFi and Ethernet and supports Micro-USB, HDMI,
infrared receiver, optical audio connectivity. It uses a modified version of iOS. Its primary use
case could be seen as a way to access your iTunes content on a TV like device. The
resurgence of interest in Apple TV could be seen as an extension of the current 'Apple halo
effect' and the potential motivation could be to attract new customers to the Apple
platforms and also at the same time to maintain existing users.
Actually it is not very relevant for webinos implementation because it is a closed proprietary
platform.
Part A1: Technical Information (web rendering engines)
Web components
HTML 4/5 rendering code base. The device has no browser. Its UI is similar to the Apple
products and is based on iTunes.
JavaScript engine
-none
Widget availability
Not available
Part A2: Technical Information (Operating Systems)
General OS features
Portability
The operating system is only available on Apple devices.
Security
No information
Connectivity
Wi-Fi and LAN are supported for the home network. UMTS, WiMax, Bluetooth or LTE is not
supported
page: 154 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 155 of 229
Target Platforms, target Requirements and Platform IPRs
Reliability
No information
Technical criteria
No information
Usability criteria
The platform addresses a very good usability in form of a nice graphical user interface
API codebase
There is no official API, because it is closed source. But, it is a modified iOS 4. Thus, it could
be possible to use the official iOS API to develop applications and install the via the Cydia
paket manager.
Part B: Commercial information
Device coverage
None. Only AppleTV devices (official)
Platform maturity
Very stable
Market penetration/availability
Widely spread through low prices
Availability
No
Feasibility
Actually it is not possible to implement webinos for the official AppleTV. It could be possible
to implement it for the hacked version. But the market penetration for a hacked AppleTV
could be very low and the implementation time frame could be very high.
Partner perspective
No information
Risks
No official possibility to get the webinos implementation running on AppleTV devices.
Part C: Licensing and Governance
Access
page: 155 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 156 of 229
Target Platforms, target Requirements and Platform IPRs
Is source code freely available to all developers, at the same time?
Is source code available under a permissive OSI-approved license?
1. No
1. No –
unapproved
licensed
1. No – Not for
AppleTV
Are developer support mechanisms - project mailing lists, forums, bugtracking databases, developer documentation and tools - available to
all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project meeting minutes
publicly available to understand decision-making in the project?
1. No
1. No
Development
Transparency of contributions and acceptance process – Is the code
contribution and acceptance process clear, with progress updates of
the contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you identify from
whom source code contributions are provided?
Accessibility to become a committer – are the requirements/process
to become a committer documented and is this an equitable process,
i.e., can all developers potentially become committers?
Transparency of committers – can you identify who committers to the
open source project are? i.e., those developers that have the authority
to 'commit' source code to the baseline
Does the contribution license require a copyright assignment, or
copyright license and/or patent license?
? Not known
1. No
? Not known
1. No – this
information is not
provided
? Not known
Derivatives
Are trademarks used to control how and where the platform is used via
enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the
project in terms of approval, distribution or discovery?
? Not
known
? Not
known
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 9
Part D: Summary
Verdict
Currently, it is a closed platform i.e. there is currently no opportunity for third part
developers to create content for the platform. Thus, it makes no sense to use the Apple TV
platform for the webinos project.
SWOT
Swot analysis in relation to webinos:
Strengths
page: 156 of 229
Weaknesses
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 157 of 229
Target Platforms, target Requirements and Platform IPRs
- very good UX and UI
- content oriented
Opportunities
- Apple has a big following. Thus, a
good availability to customers is
provided.
page: 157 of 229
- platform is closed and proprietary. No official way
to implement own code.
- no OS support (only iOS)
Threats
- Apple plans to release own TV devices with the
Apple TV platform. The Apple ecosystem could be
more popular.
- evolving Web standards (e.g. HTML5)
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 158 of 229
Target Platforms, target Requirements and Platform IPRs
XBMC
Introduction
XBMC is a Media Centre application originally developed as Media Player for Microsoft Xbox
Platform. Started in 2002 by two private programmers, the application grew bigger and
became a whole Media Centre called XBMC since 2010. It is now developed by a group of
volunteer Open Source developers and managed by the non-profit organization XBMC
Foundation. The XBMC Foundation was established as a non-profit entity on January 16,
2009. Since then there haven’t really released much information about the Foundation.
Relevance is to extent existing and popular Home Media Software solutions to be Webinos
enabled. This will support the growth of Webinos enabled software.
Part A1: Technical Information (web rendering engines)
Web components
There is no native web browser available for XBMC at the time.
Some plugins enable browsing but are restricted e.g. to browsing specific XBMC related
forums.
As well plugins for accessing different internet media services like YouTube, Netflix or
Pandora Radio are available.
With built-in web scrapers metadata information e.g. cover art or reviews for available
media content can be downloaded. The scrapers use sites like themoviedb.org, imdb.com,
thetvdb.com and others.
HTML 4 rendering capabilities
no information available
HTML 5 rendering capabilities
no information available
JavaScript engine capabilities
no information available
Widget availability
Digital signature code availability
no information available
How are widgets packaged?
No information available
WARP implementation
no information available
Extensibility framework (feature tags)
no information available
page: 158 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 159 of 229
Target Platforms, target Requirements and Platform IPRs
Part A2: Technical Information (Operating Systems)
General OS features
XBMC is an application, it is not an OS. Therefore most OS features depend on the
underlying OS.
XBMC is programmed mainly in C++ with Python Scripts as plugins.
Portability
XBMC runs on Windows, Linux and MacOS, Remote controls are available for iPhone and
android mobiles.
Security
Depends on the underlying OS.
Connectivity
Depends on the underlying OS. Windows as well as Linux is an option.
Technical Criteria
Depends on the underlying OS. Windows as well as Linux is an option. Memory requirements
are satisfied for webinos.
Usability Criteria
Depends on the underlying OS. Windows as well as Linux is an option. XBMC is designed to
run on big screens (TV / Monitors); hence the usability is optimized for remote controls and
big UIs.
Product Diversity
API codebase
XBMC has a built-in UPnP-server and UPnP-client, both are compatible with DLNA CERTIFIED.
Everything else can be installed and used by developers themselves.
Part B: Commercial information
Device coverage
Available for devices running Linux, Mac OS X, Microsoft Windows with most processors like
x86, x86-64, ARM or Power PC. It needs 3D capable GPU.
Video decoding can be done by CPU as well as GPU with hardware-accelerated video
decoding support
Platform maturity
page: 159 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 160 of 229
Target Platforms, target Requirements and Platform IPRs
?
Market penetration/availability
For availability see device coverage. Market penetration is high due to many commercial
products that are developed using XBMC as the base of their own adjusted Media Centre.
Popular ones are Plex and Boxee
Availability
The source code is open, thus can be used. XBMC is an application on its own therefore
cannot be used directly as base for the webinos platform. Further it lacks in desired web
support because not offering a browser
Feasibility
Yes. Effort medium
Partner perspective
Code can be used for developing own platform with desired functionality. Commercial XBMC
derivates exist.
Risks
Unidentified
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes
2. Yes – approved license and
strong copyleft (e.g. GNU GPL
v2/v3)
3. Yes – developer support
mechanisms open to all developers
3. Yes – roadmap information
available but no call for
contributions or similar
3. Yes – there is some information
but it is hard to find and doesn't
appear comprehensive
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
page: 160 of 229
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
4. Yes – there are good project
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 161 of 229
Target Platforms, target Requirements and Platform IPRs
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
statistics that provide this
information
3. Yes – the process is
documented and accessible to
all developers
3. Yes – there are good project
statistics that provide this
information
1. No – no contribution license
Derivatives
Are trademarks used to control how and where the platform is used via
enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives constrained by the
project in terms of approval, distribution or discovery?
? Not known
4. No (besides
the logo)
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 36)
Part D: Summary
Verdict
XBMC is suitable for Webinos; however there is more integration work to be done in
comparison to MythTV. XBMC has no relevant Browser integration yet. In conclusion, XBMC
is a good media home platform for webinos. We are more or less free to choose the
underlying Operating System as Linux, Windows and MAC OS X are supported. In addition
we will/could have an impact on Home Media systems which derivate form XBMC (Plex
etc..). However the lack of an already integrated Web browser complicated a possible
integration. However, integrating Webinos to XBMC is definitely feasible.
SWOT
Swot analysis in relation to webinos:
Strengths
- Open Source
- Big developer community
- Many platforms supported
page: 161 of 229
Weaknesses:
- No W3C Widgets and no native browser
- Extensibility only with Python / XML
- browser plugin is still missing.
- Many platforms mean also a lot of special
conditions.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 162 of 229
Target Platforms, target Requirements and Platform IPRs
Opportunities:
- Usage of available code for many
platforms/devices to enable audio/video
delivery from physical media or internet
stream
page: 162 of 229
Threats:
-
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 163 of 229
Target Platforms, target Requirements and Platform IPRs
Automotive
MeeGo IVI (reference implementation for GENIVI)
Introduction
MeeGo is an open source, Linux project, which unites Intel's Moblin and Nokia's Maemo
efforts. It was announced during the Mobile World Congress 2010. The MeeGo IVI (invehicle infotainment) is an optimized MeeGo distribution for in-car headunits. As of
September 2011 the most current version is 1.2 released on May 19th 201154. The Genivi
consortium has chosen MeeGo IVI as a base platform for their reference implementation in
August 201055. Genivi adds additional software packages to MeeGo IVI in order to be
compliant with their specification56.
During MeeGo SF 2011 the Linux Foundation announced, that they will gain access to
Genivi's compliance specification56 in order to have MeeGo IVI 1.3 and further releases fully
compliant57. In contrast to MeeGo, Genivi is not an open source project. The objective
among the project partners including numerous OEMs and first and second tiers in the
automotive industry is to reuse and share code56.MeeGo IVI plays a critical role for webinos
success inside the automotive domain, as it is the only significant open-source project in this
field and has been adopted by the industry (cf. Genivi).
Part A1: Technical Information (web rendering engines)
Web components
MeeGo IVI uses Fennec as its web browser. Fennec is the mobile version of Mozilla’s Firefox.
According to Mozilla Fennec supports HTML4 as well as HTML5 and implements W3C's
Geolocation and Device Orientation API. It fully supports JavaScript58. Fennec's rendering
engine is based on Firefox 4 Beta59.
Widget availability
Fennec does not support W3C's Widget spec. However, it supports Mozilla's Add-on
architecture 60.
54
MeeGo Invehicle, https://www.meego.com/devices/in-vehicle
What does GENIVI’s selection of MeeGo mean?,
https://meego.com/community/blogs/jahoffmann/2010/what-does-genivi%E2%80%99s-selectionmeego-mean
56
MeeGo ivi latest working group developments,
http://sf2011.meego.com/program/sessions/meego-ivi-latest-working-group-developments
57
MeeGo ivi Working Group Minutes, http://wiki.meego.com/images/2011-06-07MeeGoIVIWGroupMeeting.pdf
55
58
Mozilla Cutting edge, https://www.mozilla.org/en-US/mobile/features/#cuttingedge
Mozilla Platforms, https://wiki.mozilla.org/Mobile/Platforms
60
Mozilla, Fennec Features, https://wiki.mozilla.org/Mobile/Fennec#Features
59
page: 163 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 164 of 229
Target Platforms, target Requirements and Platform IPRs
Part A2: Technical Information (Operating Systems)
General OS features
Portability
MeeGo IVI supports ARM and Intel Atom Architecture. A list of supported boards is available
at http://wiki.meego.com/In-vehicle#Platforms
Security
The MeeGo security architecture is documented at
http://wiki.meego.com/Security/Architecture andhttp://meego.gitorious.org/meegoplatform-security.
Connectivity
MeeGo IVI has support for GSM/EDGE, UMTS, Bluetooth and Wi-Fi, LTE. Support for LTE,
CDMA and WiMAX has been announced for the October 2011 release (v 1.3)61.
Reliability
As MeeGo IVI has not been largely deployed on consumer products, there is no credible
information about the reliability available.
Technical Criteria
MeeGo IVI is specifically optimized for devices with limited resources.
Usability Criteria
MeeGo IVI's user interface is optimized for touch inputs62.
Product Diversity
There is no specific SDK for developing MeeGo IVI applications available. The standard
MeeGo SDK can be used63.
API codebase
The IVI edition provides the same API codebase as the other MeeGo editions. A special
Vehicle API was not part of 1.2 and previous versions. A common vehicle API for QT
61
MeeGo roadmap, http://www.slashgear.com/meego-roadmap-tips-no-cdma-or-lte-support-untiloct-2011-16114418/
62
MeeGo touch, http://meego.gitorious.org/meegotouch
Introducing MeeGo ivi, http://www.devshed.com/c/a/Smartphone-Development/IntroducingMeeGo-IVI-Ignition-Switch/2/
63
page: 164 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 165 of 229
Target Platforms, target Requirements and Platform IPRs
applications is on the roadmap for the upcoming 1.3 release scheduled for October 201164.
MeeGo IVI provides access to a Bluetooth65 and USB stack. RFID and NFC are currently not
supported, but addressed for upcoming releases66. The source code to these components is
available.
Part B: Commercial information
Device coverage
MeeGo IVI is specifically designed for ivi-systems. In general, MeeGo is suited for a wide
range of devices (Tablets, PC, Netbooks, and Smartphones)
Platform maturity
Due to the young age of MeeGo IVI the platform lacks some features. Current bugs for
MeeGo IVI are listed at67.
Market penetration/availability
MeeGo IVI is not widely used yet. There are two MeeGo IVI in-vehicle systems (Hawtei and
Geely) and one after-market solution (ICP Deutschland) available68.
Availability
The source code of MeeGo IVI is available at http://meego.gitorious.org/ and
binary files are available at https://meego.com/downloads/releases/in-vehicle.
Feasibility
The webinos integration onto MeeGo IVI seems feasible within the project timeframe.
Partner Perspective
MeeGo IVI is used by the Genivi consortium as its reference implementation. The platform is
sponsored by Intel. According to the participation in IVI working group meetings Intel, LG,
Nokia, Pelagicore and Visteon seems to be the most active contributors to the IVI releases .
Risks
Availability of supported devices is currently very limited.
64
MeeGo Roadmap http://wiki.meego.com/In-vehicle/Roadmap/API
MeeGo Bluetooth, http://meego.gitorious.org/maemo-bluetooth
66
Bugfixes, MeeGo, https://bugs.meego.com/show_bug.cgi?id=7333
67
Current Bugs, MeeGo
https://bugs.meego.com/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__o
pen__&product=MeeGo+IVI&content=
68
Shipping MeeGo ivi Products, http://wiki.meego.com/In-vehicle#Shipping_MeeGo_IVI_Products
65
page: 165 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 166 of 229
Target Platforms, target Requirements and Platform IPRs
Part C: Licensing and Governance
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms
- project mailing lists, forums, bugtracking databases, developer
documentation and tools - available
to all developers?
Is the project roadmap publicly
available?
Transparency of decision
mechanisms – Are project meeting
minutes publicly available to
understand decision-making in the
project?
4: MeeGo IVI source code is available.
3: For kernel components GPLv2 is used. Platform
itself is OSI-compliant and allows companies to build
proprietary extension on all levels. As MeeGo IVI
makes strong use of upstream projects, there is no
general licence for MeeGo IVI. Licences are handled
on a package level.
3: All documents are available at wiki.meego.org,
mailing list archives are available.
4: The roadmap is available
4: The meeting minutes of the working group are
available
Development
Transparency of contributions and acceptance process – Is
the code contribution and acceptance process clear, with
progress updates of the contribution provided (via Bugzilla
or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source code
to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4: Development process and
contribution acceptance can
be monitored
3: Contributions can be
identified using the git
protocols and the bug tracking
system.
4: The process for becoming a
committer is described
2: Information has to be
aggregated from the git
repositories of the different
MeeGo projects
2: The project requires a
copyright license/'sign-off'.
The process is described
Derivatives
Are trademarks used to control how and where
the platform is used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for applications
page: 166 of 229
1. Yes – code must go through a formal
compliance process prior to be
distributed to other parties is described
0: No channels are available at present.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 167 of 229
Target Platforms, target Requirements and Platform IPRs
derivatives constrained by the project in terms
of approval, distribution or discovery?
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2: There is no formal membership or discrimination
between the rights of members and non-members
from a development/access perspective .
Summary
Total Score 36
Part D: Summary
Verdict
MeeGo has gained some negative press after Nokia’s announcement of using Windows
Phone 7 in favour of Symbian and potentially MeeGo. However, MeeGo is still heavily
backed up by Intel, as it tries to expand its ecosystem beyond the microprocessor business
69
. Furthermore, MeeGo IVI is the only relevant open source platform for in-car headunits
and was picked up by the Genivi consortium for its reference implementation.
Although the MeeGo IVI lacks some relevant features for an IVI-platform such as a common
vehicle API, these open points have been addressed for the 1.3 release due in October 2011.
The access to Genivi's compliance specification will enable the Linux foundation to build a
fully Genivi-compliant operating system, as new competitors (e.g. Canonical) are introducing
new base platforms for Genivi70. Having a Genivi compliant platform as a basis for webinos
will enhance webinos chances to be picked up by other automotive companies. Taking the
long development cycles inside the automotive domain (around seven years) and the
relatively young age of MeeGo (around 2 years) into account, it is not surprising that there is
only a minor selection of MeeGo IVI based devices available.
SWOT
Swot analysis in relation to webinos:
Strengths
- MeeGo is heavily backed up by
Intel.
- Only fully fleshed out and true
open source operating system
for IVI-systems.
Opportunities
- Genivi uses MeeGo as a basis
for their reference
implementation.
Weaknesses
- currently no standardized vehicle API available.
- Not heavily in productive use yet.
Risks
- after Nokia's commitment to Windows Phone 7. The
acceptance by developers and market penetration is
being unclear.
69
Intel support for MeeGo, http://www.ftd.de/it-medien/it-telekommunikation/:betriebssystemmeego-intel-kaempft-um-mobilen-hoffnungstraeger/60056220.html
70
Canonical joins GENIVI, http://www.h-online.com/open/news/item/Canonical-joins-GENIVIcreates-Ubuntu-IVI-Remix-1242314.html
page: 167 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 168 of 229
Target Platforms, target Requirements and Platform IPRs
- Linux Foundation gained access
to the Genivi compliance
specification.
- Genivi might drop MeeGo as a reference open source
implementation in favour of Ubuntu after Canonical
announced a Genivi compliant Ubuntu version for
summer 2011
References for MeeGo IVI analysis
http://wiki.meego.com/In-vehicle/working-group
https://www.meego.com/about/licensing-policy
http://lists.meego.com/listinfo/meego-ivi
https://bugs.meego.com/
http://forum.meego.com/forumdisplay.php?f=9
http://wiki.meego.com/In-vehicle/Roadmap
http://wiki.meego.com/In-vehicle/working-group
https://www.meego.com/about/contribution-guidelines
https://www.meego.com/about/compliance/platform-compliance
https://www.meego.com/about/trademark
https://www.meego.com/about/contribution-guidelines/signed-process
http://wiki.meego.com/Contributing_to_MeeGo
page: 168 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 169 of 229
Target Platforms, target Requirements and Platform IPRs
Android (AutoLinQ)
Introduction
Continental Automotive announced AutoLinQ™ at the Telematics Detroit 2009 Conference71.
AutoLinQ is an open, end-to-end vehicle connectivity platform that will enable vehicle
owners to safely connect to what matters in their lives. AutoLinQ extends the vehicle
ownership experience by creating an “always connected” environment where users can
have meaningful interaction with their vehicles from home, from the office, or from their
mobile devices72. AutoLinQ’s architecture is comprised of 4 system elements called “Views”
and provides vehicle owners with information that is relevant to their location. These
“Views” can be configured and combined to create a unique version of the AutoLinQ
platform, to suit individual requirements of end customers and OEMs. For example, through
AutoLinQ mobile view, vehicle owners can ask questions or send commands from their
mobile phone to their vehicle, including options like checking the status or location of a
vehicle. While at home, vehicle owners can access real-time vehicle status or remote
diagnostic information from an account on their laptop. Or, while on the road, vehicle
occupants will be able to access real-time location-based information and content that is
relevant to the driving situation.
Part A1: Technical Information (web rendering engines)
Web components
AutoLinQ allows web pages interacting with the vehicle and allows applications to query
vehicle data. However, before the application is allowed to access vehicle data, the driver
must have already agreed to allow access. This control will be in place when the user first
adds the application. If the user does not allow, the javascript command will return "no
access". If the command is not available for that particular car, the JavaScript command will
return "not available".
Some new JavaScript commands have been added to the AutoLinQ Browser (the full list is at
http://www.autolinq.net/api/).
Currently there isn’t information about HTML rendering features.
Widget availability
Support for developing ‘automotive extended’ widgets using vehicle data. It is not specified
whether such widgets are specific Android Apps or browser based widgets.
Part A2: Technical Information (Operating Systems)
General OS features
Portability
71
72
AutoLinQ press announcement, http://www.autolinq.de/en/press.aspx
About LinQ, http://www.autolinq.de/en/press.aspx
page: 169 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 170 of 229
Target Platforms, target Requirements and Platform IPRs
All Android-related portability issues (see Chapter 2, Android for Mobile) should also apply in
AutoLinQ, although at this stage of development an explicit set of supported devices cannot
be listed.
Security
The platform is optimized for automotive environments and includes critical security and
administrative features such as firewalls and VPNs, vehicle authentication, service portfolio
management, service delivery and reporting
[http://www.inrix.com/pressrelease.asp?ID=97]. Safety parameters enforced by the API
and/or the OEM
Connectivity
Support of 3G for extra-vehicle connection and of Bluetooth, Wi-Fi for intra-vehicle
connection.
Reliability
It is difficult to assess the reliability level of the AutoLinQ platform as Continental does not
provide any information but public documentation is limited to presenting some functional
features of the platform. However, since AutoLinQ platform is based on Android, it is
reasonable to assume that the reliability level of the AutoLinQ platform corresponds to that
of Android (see Chapter 2, Android for Mobile).
Technical criteria
System details not known. AutoLinQ run's within a touchscreen display that is 800x480
native resolution with a diagonal dimension between 6.5 to 7.0 inches. The browser itself
will not be running full screen, but rather it will be running in a window that is 660x400
(http://www.autolinq.net/api/).
Usability Criteria
The fundamental concern on which designers are working on is the users' safety. HMI
equipment includes High-resolution graphics, touch-screen, voice activation, text-to-speech
and steering wheel-mounted control technologies.
Product Diversity
The core system is founded on Android which lets developers create a wide range of
applications like the ones to improve the vehicle control through interaction with the car's
sensors or to entertain passengers
API codebase
Continental expects to release a SDK that will extend the open Android™ API and provide
developers with the tools they need to create automotive-specific Android™ applications.
This open API will be freely available for use by the development community. It will enable
page: 170 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 171 of 229
Target Platforms, target Requirements and Platform IPRs
developers, OEMs, and other entrepreneurs to create ‘automotive extended’ apps and
widgets using vehicle data - within safety parameters enforced by the API and/or the OEM
[http://www.autolinq.de/en/faq.aspx].
The AutoLinQ APIs enable developers to write applications that leverage the state of the
vehicle, such as the fuel level, or whether the doors are locked.
Although Continental announced to begin demonstrating applications, via an application
store, to automotive customers in the second half of 2010 and making the AutoLinQ SDK
freely available for use by the development community by the end of the first quarter of
2010, till now, there is not any practical evidence of this promise.
Part B: Commercial information
"Continental decided to base its AutoLinQ architecture on the Android™ operating system
because the company wants to leverage a large and well established developer community.
Recent forecasts from analyst firm Gartner say Android is expected to power 18 percent of
all Smartphones sold globally in 2012 – addressing approximately 94 million users. This is up
from a share of less than 2% of all Smartphones sold in 2009. The development community,
which has designed approximately 10,000 applications so far, also is expected to grow with
the market."[http://www.autolinq.de/en/faq.aspx]
Device coverage
AutoLinQ’s architecture is comprised of 4 system elements called “Views”. These “Views”
(Home, Mobile, Car and Partner) can be configured and combined to create a unique version
of the AutoLinQ platform, to suit individual requirements of end customers and OEMs.
Platform maturity
There is an alpha version of SDK which has been made available only to key partners and
developers.
Market penetration/availability
Continental is in the early stages of development. The company is currently working with
automotive customers, partner companies and the Android™ development community.
Availability inside a car may be possible in the next product generation
[http://www.autolinq.de/en/faq.aspx]. Continental announced the availability of the alpha
release of the AutoLinQ SDK. This alpha release is being made available to key partners and
developers. A public release of the SDK will be available in the coming months. There is not
yet concrete information about the public release of the SDK.
Availability
The Alpha version of SDK consists of the following components:
Automotive API, AutoLinQ Emulator, Vehicle (sensors) Simulator and HMI Design Guidelines
[http://www.autolinq.de/en/developers_overview.aspx]
page: 171 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 172 of 229
Target Platforms, target Requirements and Platform IPRs
Feasibility
Webinos implementation may be not so difficult thank to the Android base system
Partner perspective
A few key partners are: Deutsche Telekom, INRIX, NAVIGON, NAVTEQ, secunet, SVOX,
Ygomi. Quite a few more are in the works. The objective is to create mutually beneficial
partnerships across the complete value chain resulting in the delivery of unmatched value to
Automotive manufactures and consumers alike [http://www.autolinq.de/en/partners.aspx].
Risks
Webinos apps can be seen as in competition with native AutoLinQ applications. Possible
restrictions in distribution of webinos run-time and apps.
Part C: Licensing information
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms project mailing lists, forums, bug-tracking
databases, developer documentation and
tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms –
Are project meeting minutes publicly
available to understand decision-making
in the project?
0: Not known. There is no public information
about the licensing policy for AutoLinQ
operating system. In addition, it is not specified
whether the source code of the platform will be
available or not.
0: Not known.
2: No – developer support mechanisms are
limited.
3: Yes – roadmap information available but no
call for contributions or similar.
1: No.
Development
Transparency of contributions and acceptance process – Is the
code contribution and acceptance process clear, with progress
updates of the contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project – can you identify
from whom source code contributions are provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented and
is this an equitable process, i.e., can all developers potentially
become committers?
Transparency of committers – can you identify who committers
to the open source project are? i.e., those developers that have
the authority to 'commit' source code to the baseline
page: 172 of 229
0: Not known.
0: Not known.
2: No – the process is
vague/unclear so we do
not know if it is
0: Not known.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 173 of 229
Target Platforms, target Requirements and Platform IPRs
Does the contribution license require a copyright assignment, or
copyright license and/or patent license?
0: Not known.
Derivatives
Are trademarks used to control
how and where the platform is
used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for
applications derivatives
constrained by the project in
terms of approval, distribution
0: Not known
3: Yes – restricted by approval. Continental will create an
application certification process to ensure application
conformance to established safety standards, and
conformance to OEM style guidelines
[http://www.autolinq.de/en/faq.aspx]. Its central
element is the AutoLinQ market place, where Continental
and Deutsche Telekom, or other suppliers, can provide
certified supplementary applications for uncomplicated
downloading
[http://www.telekom.com/dtag/cms/content/dt/en/822952?printversion=true
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Currently, yes – there are tiered rights
depending on membership status.
Summary
Total Score 12
Part D: Summary
Verdict
Some technical and commercial details are still missing in order to evaluate its impact on the
webinos platform selection and adoption. The evolution of the AutoLinQ development
should be monitored during the next months of webinos project, while considering it as a
secondary choice for automotive platform selection.
SWOT
Swot analysis in relation to webinos:
Strengths
Android-based platform that offers automotive
API and relatively open governance regime
could be an easy-to-adapt webinos run-time
installation and webinos apps environment
Opportunities
Exploit the whole codebase and efforts spent in
developing Android webinos runtime and
applications.
page: 173 of 229
Weaknesses
- Lack of enough documentation and
resources about the platform.
- Webinos apps can be seen as in
competition with native AutoLinQ
applications. Possible restrictions in
distribution of webinos run-time and
apps.
- The platform is not publicly available.
Risks
Competition with native apps can be seen
as a negative issue by Continental.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 174 of 229
Target Platforms, target Requirements and Platform IPRs
page: 174 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 175 of 229
Target Platforms, target Requirements and Platform IPRs
Microsoft Windows Embedded Automotive
Introduction
Windows Embedded Automotive (also previously known as Windows CE for Automotive,
Windows Automotive, and Windows Mobile for Automotive, Microsoft Auto) is an
embedded operating system based on Windows Embedded for use on computer systems in
vehicles. Windows Embedded Automotive 7 is the most current release. The operating
system is developed by Microsoft through the Microsoft Automotive Business Unit that was
formed in August 1995. The first automotive product built by Microsoft was marketed as
AutoPC. Ford Sync and Fiat Blue&Me were based on Microsoft Auto, as well.
Part A1: Technical Information (web rendering engines)
Web components:
The publicly available information about the exact browser features in Windows Auto is
limited. According to Microsoft’s developer documentation Windows Embedded Automotive
7 contains Internet Explorer 773 , which is optimized for embedded use and misses some
features of the desktop version74.
The browser supports the following document types:
• Adobe Flash Lite (Flash Lite 3.1/Flash 10.1) and User interface customization with
Silverlight for Windows Embedded
• HTML, Dynamic HTML (DHTML), and CSS data formats
• Jscript 5.8
The exact support features of HTML 5 and JavaScript could not been verified.
Widget availability
There is no public information available, if Windows Auto supports browser widgets.
Part A2: Technical Information
General OS features
Windows Embedded Automotive 7 is based on Windows Embedded Compact 7. The
operating system provides the following features:
Portability
Only on Microsoft Platforms
Security
73
Internet Explorer Embedded (Windows Embedded Compact 7) http://msdn.microsoft.com/enus/library/ee487632.aspx
74
http://msdn.microsoft.com/en-us/library/gg155886.aspx
page: 175 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 176 of 229
Target Platforms, target Requirements and Platform IPRs
Security and encryption technologies, Internet client technologies
Connectivity
TCP/IP and Bluetooth wireless technology, GPS, Wi-Fi, DNS
Reliability
Consists of process monitor, reliability service, provides backup installer
Technical criteria
Small footprint (300 KB, 700 components), 32-bit native real-time support unified kernel
Product Diversity
The possibility to innovate and develop new applications
File and memory management, device and service management, threads and process
management, and networking stacks
Video, hard disk support, XML, Internet servers, graphic displays, database support,
Multilanguage support
Enables Variance Frequency Processors (VFP) support in ARM processors, Dual-core support
(SMP, ARMv6)75.
API codebase
Applications that are written for Windows Embedded Automotive 7 can use an array of
C/C++ APIs. The base Windows Embedded Compact 7 system exposes an API for its services
(including memory and process management, file systems, network, and registry access).
The automotive-specific platform components expose APIs for support of functionality such
as speech, hands-free telephony, text-messaging, media playback, and radio. There is
additional support DirectX.
In order to built wireless-connection services Windows Embedded Automotive provides a
library called CellCore, which includes:


Radio Interface Layer handles the communication between the CellCore system
software and the radio hardware.
Telephony programming elements that are applicable to CellCore: Extended
TAPI (ExTAPI), Assisted TAPI, and Telephony Service Provider (TSP) API.
75
Technical companion to Windows Embedded Automotive,
http://download.microsoft.com/download/0/A/1/0A1E07D6-7562-4566-AACFE04DF4FF8879/A%20Technical%20Companion%20to%20Windows%20Embedded%20Automotive%20
7%20(final).pdf
page: 176 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 177 of 229
Target Platforms, target Requirements and Platform IPRs

Wireless Application Protocol (WAP) API defines both a communications
protocol and an application environment.
Using the WAP Wakeup feature, an asynchronous application can be available to process
incoming messages, yet be neither running nor loaded in memory.
SMS providers enable the SMS client to determine the application that should receive an
incoming SMS message. This service associates message types with an SMS provider by
modifying the registry.
Enhanced Messaging Service (EMS) processing is disabled by default, but can be activated.
SMS API supports sending messages of up to 160 characters to mobile-based devices.
The Subscriber Identity Module (SIM) Manager API is used to access information stored on
the SIM card.
Windows Embedded 7 supports the following networking features:


DNS, TCP/IP version 4 and version 6, and WinSock
Local Area Network (LAN) IEEE 802.3 and 802.5, Wi-Fi IEEE 802.11
Part B: Commercial information
Market penetration/availability
Microsoft Auto is the platform used by Microsoft and Ford to engineer the in-car
communication and entertainment system, Ford Sync, while Fiat has used Microsoft Auto for
more than two years as the platform for their Blue&Me and Blue&Me Nav technology. As
mentioned in our D 2.3 Ford Sync has been installed on more than 2.5 million vehicles
according to Ford and Blue&Me is installed in more than 1,000,000 vehicles. The Windows
Embedded Automotive Development Kit (WE-ADK-07) costs $6,295 and the StartUp/Software Support (SS-40) costs $5,80076.
Besides Ford and Fiat, Microsoft lists the following OEMs and 1st tiers as additional
customers of Microsoft’s automotive products: KIA, Smart Car2Go, Alpine, Pioneer75.
Availability
The current The Windows Embedded Automotive version of the OS can be used by webinos.
Feasibility
The support for developing Windows application is strong and they can be developed faster
than on most other OSs.
Partner perspective
76
Qualnetics, Windows Embedded Automotive Development KIT [6] http://qualnetics.com/we-adk/
page: 177 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 178 of 229
Target Platforms, target Requirements and Platform IPRs
Fiat has used Microsoft Auto for more than two years as the platform for their Blue&Me and
Blue&Me Nav technology. As mentioned in our D 2.3 Ford Sync has been installed on more
than 2.5 million vehicles according to Ford and Blue&Me is installed in more than 1,000,000
vehicles.
Risks
Microsoft does not use open standards, therefore any change made to the OS’
implementation might happen unexpectedly and might not be easily handled.
Part C: Licensing information
Development tools and runtime licenses are sold through Microsoft Authorized Embedded
Distributors. The Windows Embedded Automotive is not OSI compatible. Further
information on the licensing model on Windows Embedded Automotive is available
athttp://www.microsoft.com/windowsembedded/en-us/evaluate/bringing-a-windowsembedded-device-to-market.aspx.
Source code availability
Parts of the source code of Windows Embedded CE 7.0, which forms the foundation of
Windows Embedded Automotive, are available under the Windows Embedded Shared
Source Initiative77. Components available shared source are listed at
http://www.microsoft.com/windowsembedded/en-us/develop/windows-embedded-ce-6sample-code.aspx. . The OS core components such as kernel library, file system, device
manager and storage manager are not available77. The evaluation of the platform is free of
charge for 180 days. After that period licence fees for the platform and the development
tools apply.
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms project mailing lists, forums, bugtracking databases, developer
documentation and tools - available to
all developers?
Is the project roadmap publicly
available?
Parts of the source code of Windows Embedded
CE 7.0, are available under the Windows
Embedded Shared Source Initiative77
1. No – unapproved licensed Microsoft Auto is not
OSI compatible
2. No – developer support mechanisms are
limited. There is no specific community structure
apart from MSDN
2. No – No formal roadmap. The roadmap for
Windows Embedded Automotive is not publicly
available. Silver and gold members of Microsoft's
77
Windows Embedded CE Shared Source Licensing Program,
http://www.microsoft.com/resources/sharedsource/licensing/winembedcesslp.mspx
page: 178 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 179 of 229
Target Platforms, target Requirements and Platform IPRs
Transparency of decision mechanisms –
Are project meeting minutes publicly
available to understand decisionmaking in the project?
Windows Embedded Partner program (WEPP)
have limited access to the roadmap78.
2. No – but the intent is to provide more
information and make the process more open
Development
Transparency of contributions and acceptance process – Is
the code contribution and acceptance process clear, with
progress updates of the contribution provided (via Bugzilla
or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer documented
and is this an equitable process, i.e., can all developers
potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source code
to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
contributions and acceptance
process are not so clear
1. No
1. No – commit access is
restricted to specific
users/members of the Project
only
1. No – this information is not
provided
Copyright required for
commercial projects
Derivatives
Are trademarks used to control how and where
the platform is used via enforcing a compliance
process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in terms
of approval, distribution or discovery?
1. Yes – code must go through a formal
compliance process, Microsoft
Automotive is a trademark of Microsoft.
4. No - No App store for Windows
Embedded Automotive 7 available but
intent to provide one
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
2. No – There is no specific
community structure apart from
MSDN
Summary
Total Score 17
Part D: Summary
Verdict
Though windows Embedded offers a comprehensive suite of operating systems and tools
that can help device manufacturers reduce time to market and already used by Fiat and Ford
78
Windows Embedded Partners Benefits, http://www.microsoft.com/windowsembedded/enus/partners/windows-embedded-partner-benefits-plan.aspx
page: 179 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 180 of 229
Target Platforms, target Requirements and Platform IPRs
Sync. Microsoft Auto is not OSI compatible and lacks the apps store that would benefit the
application developers. There is no specific community structure apart from MSDN.
SWOT
Strengths
- Older versions of the platform have been
successfully used in products by Fiat and
Ford.
Opportunities
- Can attract a large developer base due to
using the .NET framework for application
development.
page: 180 of 229
Weaknesses
- Development Tools runs only on Microsoft
platform they are not Platform Independent.
- Not Open Source Initiative(OSI) compatible.
- IE is the only available browser for the
platform and lacks the support for standards
- Support for JavaScript and HTML 5 unclear
Risks
- OEMs are looking into open source
alternatives for their software components
to cut licensing costs
- Microsoft could restrict access to the
source code
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 181 of 229
Target Platforms, target Requirements and Platform IPRs
QNX Car
Introduction
QNX is a POSIX-conform proprietary real-time operating system (RTOS) for embedded
devices and is the foundation of a wide range of ivi-systems (including Audi, BMW, GM,
Chrysler, Porsche, Hyundai)79. A pre-defined software stack for ivi-systems is provided under
the name QNX car80. Research In Motion (RIM) acquired QNX from Harman International, a
first tier supplier in the automotive domain, in April 2010. The source code for QNX was
made publicly available in September 2007, but is not accessible under an open-source
licence81.
Part A1: Technical Information (web rendering engines)
Web components
QNX car includes a WebKit rendering engine and supports the following features82 :
 HTML parsing (HTML 4.01).
 CSS parsing (CSS 2.1 and parts of CSS 3).
 JavaScript interpreting (JavaScript 1.5, also 1.7 and ECMA-262 3rd edition.
 Document Object Model (DOM Level 1 and 2).
 XML parsing (XHTML 1.1 and XML).
 XSLT and XPath 1.0.
 HTML canvas and AJAX.
 SMIL 2.2 or 2.3.
 Image formats: jpeg, gif, png.
 HTTP 1.1, HTTP Cookies.
 SSL3/TLS1.0.
 SSL Root Certificates Support: VeriSign, Entrust, Thawte, Baltimore.
 Support of externally supplied fonts.
Support for HTML 5 is scheduled for the fourth quarter of 201183.
Widget availability
There is no information available, if QNX Car supports W3C's widget specification. During the
QNX Automotive Summit 2010 QNX announced that they plan to offer an application
framework based on browser and Web technology with a strong focus on HTML 5.
Part A2: Technical Information (Operating Systems)
79
QNX Operating Systems, http://www.qnx.com/products/neutrino-rtos/index.html
QNX Automotice solutions, http://www.qnx.com/solutions/industries/automotive/
81
QNX Software Licensing, http://www.qnx.com/legal/licensing/index.html
82
QNX Features,
http://www.qnx.com/developers/docs/6.4.1/webkit/dev_guide/overview.html#features
80
83
QNS ppt, HtML http://www.qnx.com/news/events/germansummit/presentations/qnx_sebastien_marineau.pdf
page: 181 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 182 of 229
Target Platforms, target Requirements and Platform IPRs
General OS features
Portability
The OS supports ARM, PPC, MIPS, SH and x86 processor architecture84. It is specifically
designed for ivi-systems.
Security
As a real-time operating system QNX has strong focus on privileged apps and should easily
match webinos requirements regarding security85.
Connectivity
QNX Car supports Bluetooth, GSM/EGDE, WiFi, UMTS and CDMA. Support for WiMax and
LTE is unknown.
Reliability
As QNX car is usually OEM branded, it is not recognized as a single product. Therefore, no
customer feedback is available.
Technical Criteria
According to QNX is optimized for embedded use and fulfils the webinos requirements
regarding footprint and performance86.
Usability Criteria
The user interface (controls and GUI) is optimized on in-car usage. Different control
elements (touch vs. ergocommanders) are used depending on OEM preferences.
Product Diversity
QNX has announced a program to specifically build applications for QNX car87.
API codebase
Although QNX Car incorporates Bluetooth, DNS and USB technology. It could not been
verified if the source code of these stacks are available and can be modified for a webinos
implementation. Other relevant APIs like DLNA (UPNP) are officially not supported by QNX
Car, but are under consideration.
Part B: Commercial information
84
QNX Hardware Support,
http://www.qnx.com/developers/hardware_support/qnx4/qnx4hardware.html?category=PlatProc
85
QNX Security, http://www.qnx.com/download/download/22541/Certicom_QNX_FIPS.pdf
86
QNX Neutrino Benchmarks, http://www.qnx.com/download/group.html?programid=19795
87
[9] http://www.qnx.com/products/qnxcar/index.html#screen
page: 182 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 183 of 229
Target Platforms, target Requirements and Platform IPRs
Device Coverage
QNX car is specifically designed for ivi-systems. QNX RTOS - the basis of QNX Car- is used as
well for industrial, network/telecom, defence and medical products as well.
Platform maturity
QNX RTOS can be considered as stable.
Market penetration/availability
QNX claims that 20 million vehicles are equipped with QNX technology . QNX is used in more
than 200 vehicle models80.
Availability
QNX is available at http://community.qnx.com/sf/sfmain/do/home
Feasibility
Support from QNX seems necessary to integrate webinos components into the QNX car
platform.
Partner perspective
QNX Car is optimized on a contract base for OEMs. The customers of QNX in the automotive
domain are (selection): Audi, BMW, Daimler, GM, Chrysler, Porsche, Hyundai80.
Risks
It could not been verified, which parts of the platform are not available as source code,
which can jeopardize the implementation of webinos components
Part C: Licensing and Governance
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms project mailing lists, forums, bugtracking databases, developer
2: QNX distinguish between three user groups
with different licences and privileges:
commercial, partner (PSLA) and academic
(NCEULA)88. Only NCEULA is free of charge and
not all sources for QNX are available
1: All three licence types (CSLA, PSLA, NCEULA)
are not OSI-compatible
1: Developer support mechanisms are available,
but access to specific supports features are
restricted depending on the membership level
88
QNQ Licensing, Commercial, Partner and Academic Licensing Agreements,
http://licensing.qnx.com/csla/; http://licensing.qnx.com/psla/; http://licensing.qnx.com/nceula/
page: 183 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 184 of 229
Target Platforms, target Requirements and Platform IPRs
documentation and tools - available to
all developers?
Is the project roadmap publicly
available?
Transparency of decision mechanisms –
Are project meeting minutes publicly
available to understand decision-making
in the project?
and acceptance to certain projects (e.g., QNX
Car)89
1: Public roadmap is outdated. It is stated, that
PSLA customers have access to the roadmap90.
1: Decision-making is not present to NCEULA
customers.
Development
Transparency of contributions and acceptance
process – Is the code contribution and acceptance
process clear, with progress updates of the
contribution provided (via Bugzilla or similar)?
Transparency of contributions to the project –
can you identify from whom source code
contributions are provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e.,
can all developers potentially become
committers?
Transparency of committers – can you identify
who committers to the open source project are?
i.e., those developers that have the authority to
'commit' source code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent
license?
0: This information could not been
verified.
0: This information could not been
verified.
1: Commit access is restricted to specific
users/members of the Project only.
How to become a accepted as a
committer to the project QNX Car is
unclear.
1: This information is not provided
0: Only Members of the QNX
community (customer, partner,
academic) are able to modify and add
code and are allowed to share
modifications within the community.
Derivatives
Are trademarks used to control how
and where the platform is used via
enforcing a compliance process prior to
distribution?
Are go-to-market channels for
applications derivatives constrained by
the project in terms of approval,
distribution or discovery?
1: QNX is a trademark of QNX Software Systems
GmbH & Co. KG (QNXSSKG), a subdivision of RIM.
A written permission from QNXSSKG is required
to use the trademark91.
0: Go-to-market channels are controlled by
OEMs. There is no specific QNX Car app store.
However, QNX provides an app store solution for
OEMs.
Community
Is the formal community structure flat or tall,
i.e., tiered rights depending on membership
1: As described in previous sections tiered
rights are depending on the membership
89
QNX Developer Support, http://community.qnx.com/sf/sfmain/do/home
QNX Public Roadmap,
http://community.qnx.com/sf/wiki/do/viewPage/projects.qnx_car/wiki/WhatComing
91
QNS Legal Licensing Terms, http://www.qnx.com/legal/licensing/web_terms/qwt2_04.jul06-09.pdf
90
page: 184 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 185 of 229
Target Platforms, target Requirements and Platform IPRs
status
level.
Summary
Total Score 10
Providing a score of "openness" for QNX Car is misleading to some extent, as the platform is
not marketed as an open source project.
Part D: Summary
Verdict
QNX has been heavily used inside the automotive domain and is a proven base platform for
ivi-systems. In the last decade QNX main focus has been on automotive products. RIM's
acquisition of QNX might extend QNX's focus to other domains including tablets (cf.
Blackberry Playbook) and Smartphones which are relevant for webinos as well.
However, QNX licensing model interferes with webinos goals to establish an open source
community and to build on top of open source projects. Coupling webinos to a proprietary
operating system for the automotive domain might lower its acceptance rate by OEMs, as
they, in cooperation with their first tiers suppliers, are looking more and more into open
source alternatives for ivi-systems (cf. Genivi with MeeGo or Continental with Android). QNX
licensing model makes it almost impossible to use within webinos.
SWOT
Swot analysis in relation to webinos:
Strengths
- highly adopted inside the automotive domain
- fulfils automotive requirements regarding real-time
execution
Opportunities
- QNX might gain influence in other domains outside
the automotive domain after its acquisition by RIM
page: 185 of 229
Weaknesses
- source code not available under
an open-source licence
Risks
- OEMs are looking into open
source alternatives to cut costs
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 186 of 229
Target Platforms, target Requirements and Platform IPRs
WEB rendering engines analysis
QT
Introduction
The Qt framework was originally developed by a Norwegian company Trolltech, which has
been acquired by Nokia in the beginning of 2008. Following the acquisition Nokia holds all
the rights to the platform, which is distributed under commercial and open-source licenses.
Qt development is increasingly shared with public and the project governance is moving to
open model, making Qt development as open as other free software projects as Linux. Nokia
plans to make Qt the primary application development framework used on its range of
Symbian- and MeeGo-based products.
Qt is a cross-platform application and UI framework used in many system types, ranging
from coffee machines to medical equipment92.
Part A1: Technical Information (web rendering engines)
Qt SDK combines the Qt framework with tools designed to streamline the creation of
applications for Symbian and Maemo, MeeGo (Nokia N9) in addition to desktop platforms,
such as Microsoft Windows, Mac OS X, and Linux.
• Qt framework - intuitive APIs for C++ and CSS/JavaScript-like programming with Qt Quick
for rapid UI creation
Web components
The Qt WebKit is an integration of WebKit with Qt. An open source HTML rendering
component integration with Qt. NPAPI support with Qt 4.5
• Qt WebKit supports open web standards, such as HTML5, CSS3, JavaScript and SVG.
• It brings consistent browser environment across desktops and devices
• It combines web content & services and enrich the functionality and boost up the
performance with Qt C++ or QML.
• Supports for full page zooming with appropriate rescaling of fonts and images.
Feature improvements to the Qt WebKit Integration, including test suites for CSS3 and
HTML5 features such as CSS animations, CSS transforms, HTML5 offline capabilities and
HTML5 canvas element; JavaScript DOM API for gestures; tactile feedback in CSS; HTML5
geolocation API; and HTML5 media improvements such as full-screen video playback on
devices93.
Widget availability
92
Qt at Nokia http://qt.nokia.com/, http://doc.qt.nokia.com/qt-mobilitysnapshot/qnetworkconfiguration.html
93
Qt Library, http://qt.nokia.com/products/library/qtwebkit/
page: 186 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 187 of 229
Target Platforms, target Requirements and Platform IPRs
Yes. There is widget availability in Qt. Qt provides tools to develop widgets Qt Designer and
Qt Creator.
Qt Designer is Qt's tool for designing and building graphical user interfaces (GUIs) from Qt
components. You can compose and customize your widgets or dialogs in a what-you-see-iswhat-you-get (WYSIWYG) manner, and test those using different styles and resolutions.
Widgets and forms created with Qt Designer integrated seamlessly with programmed code,
using Qt's signals and slots mechanism, that lets you easily assign behaviour to graphical
elements. All properties set in Qt Designer can be changed dynamically within the code.
Furthermore, features like widget promotion and custom plugins allow you to use your own
components with Qt Designer.
Qt Creator is a complete Cross-platform IDE included in the Qt SDK. The IDE allows
programmers to create, build, debug and run Qt applications across all supported
platforms94.
Part A2: Technical Information (Operating Systems)
Qt is a cross-platform application and UI framework. Using Qt, you can write web-enabled
applications once and deploy them across desktop, mobile and embedded operating
systems without rewriting the source code. Qt is available for the following platforms:
Portability
Windows Desktop , Windows CE and Windows Mobile, Linux/X11, Embedded Linux, Mac OS
X, Symbian, Maemo/MeeGo
Security
Qt has web security classes that provides access to the security domains defined by web
sites
Connectivity
WLAN, 2G, CDMA2000, W-CDMA/UMTS, HSPA, Bluetooth, WiMAX.
Product Diversity
Yes, the possibility to innovate and develop new applications is a cross-platform application
framework that is widely used for developing application software with a graphical user
interface (GUI).
General features
Modules for general software development and that Qt supports:
The Tore module contains the core non-GUI classes, including the event loop and Qt's signal
and slot mechanism. It also includes platform independent abstractions for Unicode,
94
Qt Designer Manual, http://doc.qt.nokia.com/stable/designer-manual.html
page: 187 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 188 of 229
Target Platforms, target Requirements and Platform IPRs
threads, mapped files, shared memory, regular expressions, and user and application
settings.
The Tui module contains the majority of the GUI classes. These include a number of table,
tree and list classes based on the model-view-controller design pattern. Also provided is a
sophisticated 2D canvas widget capable of storing thousands of items including ordinary
widgets.
The QtMultimedia module implements low-level multimedia functionality.
The QtNetwork module contains classes for writing UDP and TCP clients and servers. It
includes classes that implement FTP and HTTP clients and support DNS lookups. Network
events are integrated with the event loop making it very easy to develop networked
applications95.
API codebase
The new Qt APIs, not only enable Qt developers to include standard mobile functionality in
their applications, but also provide useful application functionality across desktop platforms.
Qt is separated into modules Qt intuitive API includes Core, GUI, SQL database, XML,
Networking, OpenGL, Qt WebKit, and Multimedia Classes
Qt Mobility - Various mobility APIs enable you to create dynamic navigation applications or
even just support standard mobile applications such as messaging, contacts and multimedia.
Reuse code - Use code you wrote for one platform to target another. Build and run
applications for multiple target platforms.
Qt provides API’s for96:
Bearer Management
API
Camera API
Contacts API
Document Gallery
API
Feedback API
Landmarks API
Location API
Maps/Navigation API
Application Notification, System’s Connectivity State
Provides a framework to use Camera device features when
supported by the platform
Introspect available contact data allowing applications to work with
a variety of contact types from a variety of platforms
Enables applications to search, filter and manipulate the meta-data
of files in local file system
Allows applications to produce tactile feedback
As part of the Location API, it allows applications to create, retrieve,
update and delete landmarks
Determine the current location and stream location updates
Provides an API to access maps, landmarks and route information for
navigation
95
Qt Reference Documentation, All Modules http://doc.qt.nokia.com/4.7-snapshot/modules.html
Qt Mobility Project APIs Overview, http://doc.qt.nokia.com/qtmobility-1.0-beta/
96
page: 188 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 189 of 229
Messaging API
Multimedia API
Organizer API
Publish and
Subscribe API
Sensors API
Service Framework
System Information
API
Versit API
Target Platforms, target Requirements and Platform IPRs
Supports working with a variety of message types (SMS, MMS,
email)
Play and record media
Provides an interface to create, update, delete and share various
organizer items such as events and to-do items
A hierarchical data representation that can be shared between
system components
Access to hardware sensors
Service Framework (Out-of-process) allows applications to invoke a
service provider on a different process
Access and be notified of changes in underlying system information.
Includes things like battery and network status
Read and Write Versit documents, such as Vcards, iCal
Part B: Commercial information
Device coverage
Qt can be run on the devices which support Windows Desktop , Windows CE and Windows
Mobile, Linux/X11, Embedded Linux, Mac OS X, Symbian, Maemo/MeeGo
Platform maturity
According to Nokia, every effort has been made to release the Qt SDK 1.1 bug free; however,
if users do encounter a bug they are asked to report it through the Qt bug tracker and can
find in help with reporting bugs they may encounter with the Qt guide for reporting bugs.
Bugs can be reported under the link http://bugreports.qt.nokia.com to improve the
Platform.
Market penetration/availability
After Nokia's commitment to Windows Phone 7. The acceptance by developers and market
penetration is being unclear. But Qt is most notably used in Autodesk Maya, Adobe
Photoshop Elements, OPIE, Skype, VLC media player, VirtualBox, and Mathematica, and by
the European Space Agency, DreamWorks, Google, HP, KDE, Lucasfilm, Panasonic, Philips,
Samsung, Siemens, Volvo and Walt Disney Animation Studios.
Availability
Qt is available as open source software.
Feasibility
The webinos integration onto MeeGo IVI seems feasible within the project timeframe.
Partner perspective
Nokia announced that it is going to drop Symbian technologies and base their future
Smartphones on Microsoft platform instead in February 2011. One month later Nokia
page: 189 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 190 of 229
Target Platforms, target Requirements and Platform IPRs
announced the sale of Qt's commercial licensing and professional services to Digia PLC,
although Nokia will remain the main development force behind the framework.
Risks
Nokia announced that it is going to drop Symbian technologies and base their future
Smartphones on Microsoft platform.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
4. Yes, Must provide source code
changes to Qt
3. Yes – approved license and
strong copyleft (e.g. GNU GPL
v2/v3)
3. Yes, Developer support
available
4. Yes – full roadmap available,
with explicit call for contributions
to the roadmap
2. No – but the intent is to provide
more information and make the
process more open
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
2. No – although you maybe
able to find this informationby
checking copyright files/notices
1. No commit access limited to
specific users
2. Yes – but you must manually
find and collate the information
from various project sources
3. Yes – project requires a
copyright license and patent
grant
Derivatives
Are trademarks used to control how and
where the platform is used via enforcing a
compliance process prior to distribution?
page: 190 of 229
2. No- you can freely distribute the code and
use the project trademark without
completing formal compliance requirements
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 191 of 229
Target Platforms, target Requirements and Platform IPRs
Are go-to-market channels for applications
derivatives constrained by the project in
terms of approval, distribution or discovery?
4. No
Community
Is the formal community structure
flat or tall, i.e., tiered rights
depending on membership status
2. No – there is no formal membership or
discrimination between the rights of members and
non-members from a development/access perspective
Summary
Total Score 36
Governance
Qt source code and the source code changes are accessible via Gitorious, which is a popular
community software source code repository. All Qt releases are available on that repository.
There is no difference between the commercial version and the Open Source versions,
except with regard to the license terms applied to those versions. Qt community is formed
around active developer forum, mailing list and suite of developer tools provided at no cost
to developers. There is no formal Qt community membership implying agreements or fees,
except that commercial users pay fees to use the code under commercial terms.
Contribution
Contributions to Qt are via a copyright and patent license to Nokia - previously contributions
mandated copyright assignment. The process for approval of contributions and
reviewing/committing contributions to the codeline is controlled by Qt personnel only.
Part D: Summary
Verdict
Yes. Qt is a cross-platform application framework that is widely used for developing
application software with a graphical user interface (GUI). It has many tools and intuitive
APIs for C++ and CSS/JavaScript-like programming that are used for the development. Qt is
free and open source software. Nokia opened the Qt source code to the community on
Gitorious various ports.
Nokia announced that it is going to drop Symbian technologies and base their future
Smartphones on Microsoft platform so how this would affect is not clear.
SWOT
Strengths
- Qt's ease of development, established development
community.
- Considerable number of developers with Qt
experience.
- Qt supports Hybrid Development Model
- Remote compilation service - simple and standardized
environment for building Qt apps and creating
page: 191 of 229
Weaknesses
- Few standardized APIs required
like vehicle API
- Projects contain hundreds of
source files
- Developers often don't know
name/location of the file
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 192 of 229
Target Platforms, target Requirements and Platform IPRs
installation packages for Symbian and Maemo devices.
- Qt framework and class library
- Reuse code - Build and run applications for multiple
target platforms.
- Qt library encompasses all functions needed to build
robust high end applications.
Opportunities
- Nokia is increasing the opportunity and lowering
barriers to entry by supporting individual developers,
reducing investment costs and providing crossplatform app development for Symbian and Maemo
devices with the Qt SDK 1.0.
page: 192 of 229
Risks
- Nokia announced that it is going
to drop Symbian technologies and
base their future Smartphones on
Microsoft platform
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 193 of 229
Target Platforms, target Requirements and Platform IPRs
Mozilla Firefox
Introduction
The term Mozilla refers to the Mozilla Application Suite which is a cross-platform integrated
Internet suite initially developed by Netscape Communications Corporation. From 1998 to
2003 it was managed by the Mozilla Organization and then by the Mozilla Foundation.
In the late 2004 Mozilla Foundation moved the effort on the development of Firefox (a web
browser) and Thunderbird (an e-mail and news client) leaving the Mozilla Application Suite
at the last official version 1.7.13, released as free and open source software under three
licenses: MPL, GNU GPL or GNU LGPL.
A community-driven Internet suite named SeaMonkey started on the base of the same
source code.
Referring to Webinos, the most important among Mozilla Foundation's products is Firefox: a
free and open source web browser which uses the Gecko layout engine to display web
pages.
Also the source code of Mozilla Firefox as that of all other Mozilla Foundation's products is
tri-licensed under the Mozilla Public License, GNU GPL or GNU LGPL.
Firefox's current stable release is version 5.0 (June 21, 2011).
Part A1: Technical Information (web rendering engines)
Web components
For what concerns HTML 4 rendering, the results of Acid3 test are good (>90/100) on Firefox
from version 3.5. Mozilla doesn't support SVG fonts preferring the Web Open Font Format
(WOFF). For this reason Firefox reaches a top score of 97/100 on this test (see here). Fennec,
the mobile version of the browser gets results slightly worse than Firefox.
From version 4, Firefox was based on the Gecko 2.0 engine, which added or improved
support for HTML5, CSS3, WebM, and WebGL. It also included a new JavaScript engine
(JägerMonkey) and better XPCOM APIs.
Firefox for mobile versions use the same Gecko layout engine as their Firefox counterparts.
References for HTML 5 tests:
http://html5test.com/index.html
http://www.browserscope.org/user/tests/table/agt1YS1wcm9maWxlcnINCxIEVGVzdBiBsqY
GDA?v=3&layout=simple
Other tests at http://www.browserscope.org/
Widget availability
Mozilla makes its own cross-platform widgets for HTML forms, and does not use a 3rd-party
cross platform toolkit, nor the native widgets that a platform provides. The widgets are
drawn using GFX, Mozilla's abstraction of a drawing toolkit. They are styled with CSS,
page: 193 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 194 of 229
Target Platforms, target Requirements and Platform IPRs
including minor per-platform tweaks to allow them to look like the native platform's native
widgets. This allows full CSS and DOM support of all HTML widgets across all platforms,
without requiring each platform to separately support every part of CSS and DOM.
There have been a number of requests for native widget support but at this time there are
no plans to support a second widget set beyond the cross-platform widgets. In the future,
widgets may be defined with XBL.
Currently digital signature code is not available and there isn't an implementation of WARP.
References:
https://developer.mozilla.org/en/Mozilla_Embedding_FAQ/Embedding_Gecko#What_widge
t_toolkit_does_Mozilla_use.3f
Part A2: Technical Information (features)
General features
Portability
Browsers compiled from Firefox source code may run on various operating systems;
however, officially distributed binaries are meant for the following: Microsoft Windows
(2000, XP, Server 2003, Vista or 7), Mac OS X 10.5, Mac OS X 10.6 and Linux (with the
following libraries installed: GTK+ 2.10 or higher, GLib 2.12 or higher, Pango 1.14 or higher,
X.Org 1.0 or higher (1.7 or higher is recommended), libstdc++ 4.3 or higher). The mobile
version is compatible with Android 2.1 and above.
Security
- Firefox uses a sandbox security model, and uses the same origin policy to limit scripts from
accessing data from other web sites (this policy could be overridden). It uses TLS 1.0 (aka SSL
3.1) or if the server is TLS intolerant SSL 3.0 to protect communications with web servers
using strong cryptography when using the HTTPS protocol. It also provides support for web
applications to use smartcards for authentication purposes.
- The Mozilla Foundation offers a "bug bounty" to researchers who discover severe security
holes in Firefox. Official guidelines for handling security vulnerabilities discourage early
disclosure of vulnerabilities so as not to give potential attackers an advantage in creating
exploits.
Reliability
Firefox gets a good ranking in "proper page loads" tests. Crash rates can be used as a
measure of reliability. Firefox crashes are mainly due to external software (plugins), C++
implementation (C++ is prone to memory-related bugs), nasty low-level code in which errors
are very difficult to reproduce.
Technical criteria
page: 194 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 195 of 229
Target Platforms, target Requirements and Platform IPRs
Official recommended hardware requirements are a Pentium 4 or newer that supports SSE2
and 512 MB RAM for the Windows version or Macintosh computer with an Intel x86
processor and 512 MB RAM for Mac version. The mobile version requires a phone with an
ARMv7 processor and approximately 17MB internal or SD storage. It runs best on devices
with at least 512MB of RAM.
Usability criteria
Mozilla software uses Test Pilot, an open source user research program, to collect data on
usability. See here for a usability study.
Product Diversity
Firefox supports add-ons which basically are of four types: extensions, plugins, themes and
language packs. Extension and plugins can change effectively the browser behaviour:
- Extensions add new functionality to Mozilla applications such as Firefox and Thunderbird.
They can add anything from a toolbar button to a completely new feature.
- Plugins are shared libraries that users can install to display content that the application
itself can't display natively. Mozilla plugins are written using NPAPI, the cross-browser API
for plugins. The main source of documentation for NPAPI is the Gecko Plugin API Reference.
API codebase
The Mozilla Public API consists of a collection of services and components which are
accessed via XPCOM interfaces. Mozilla's XPCOM layer consists of a component model
(called XPCOM) and the infrastructure necessary to support dynamic registration,
instantiation and manipulation of XPCOM components.
XPCOM has multiple language bindings, letting its components be used and implemented in
JavaScript, Java, and Python in addition to C++. Interfaces in XPCOM are defined in a dialect
of IDL called XPIDL.
To minimize some of the XPCOM formality and simplify the development of extensions
Firefox (from the version 3) includes the FUEL APIs (JavaScript library).
For a list of API see Mozilla - API & Language References
A complete list of public available API and services can be found here: http://wwwarchive.mozilla.org/projects/embedding/PublicAPIs.html.
Part B: Commercial information
Device coverage
For a list of supported mobile devices see http://support.mozilla.com/en-US/kb/will-firefoxwork-my-mobile-device.
Platform maturity
page: 195 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 196 of 229
Target Platforms, target Requirements and Platform IPRs
The project has a big and well organized developers community that works constantly on
bugs discovering/correction.
Market penetration/availability
As of February 2011, Firefox is the second most widely used browser, with approximately
30% of worldwide usage share of web browsers. Market share overview could be found at
StatCounter: http://gs.statcounter.com/#browser_version-ww-monthly-201105-201105-bar
(May 2011)
Availability
Source code is available at:
https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest/source/.
At https://developer.mozilla.org/En/Developer_Guide/Source_Code there are the
instructions to start working with Mozilla source code
Feasibility
Firefox source code is mainly written in C and C++. These programming languages have been
chosen for Webinos implementation.
Partner perspective
Mozilla has developed a range of partnerships with individuals and organizations interested
in creating and distributing customized versions of Mozilla's branded products. For further
information see http://www.mozilla.org/en-US/about/partnerships.html.
Risks
Problems to keep the pace with the Mozilla’s new rapid release plan
.Part C: Licensing and Governance
Access
Is source code freely available to all
developers, at the same time?
Is source code available under a
permissive OSI-approved license?
Are developer support mechanisms project mailing lists, forums, bugtracking databases, developer
documentation and tools - available to
all developers?
Is the project roadmap publicly
available?
page: 196 of 229
4: Yes
3: Yes – approved license and weak copyleft.
Firefox's source code is tri-licensed under the GNU
GPL, GNU LGPL, or Mozilla Public License:
recipients can choose which terms under which
they want to use or distribute the software.
3: Yes – developer support mechanisms open to all
developers
3: Yes – roadmap information available but no call
for contributions or similar
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 197 of 229
Target Platforms, target Requirements and Platform IPRs
Transparency of decision mechanisms
– Are project meeting minutes publicly
available to understand decisionmaking in the project?
4: Yes
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4: Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
3: Yes – but you must manually
find and collate the information
from various project sources
3: Yes – the process is
documented and accessible to
all developers
2: Yes – but you must manually
find and collate the information
from various project sources
3. Project requires a copyright
assignment and patent grant
Derivatives
Are trademarks used to control how and where the platform is
used via enforcing a compliance process prior to distribution?
Are go-to-market channels for applications derivatives
constrained by the project in terms of approval, distribution or
discovery?
2 – No you can freely
distribute the code
3: Yes – restricted by
approval
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 38
Part D: Summary
Verdict
Due its large diffusion, cross platform nature and effort to improve security and privacy
protection support made by Mozilla, it's still worth considering Mozilla products as a primary
target for Webinos web-runtime implementation.
SWOT
Swot analysis in relation to webinos:
Strengths
Firefox has many security and privacy
feature. The last introduced is the Do Not
page: 197 of 229
Weaknesses
There are two main weakness points: the first
is the lack of W3C widget support that
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 198 of 229
Target Platforms, target Requirements and Platform IPRs
Track feature, developed by Mozilla as a
response to FTC inquiries about
consumers' privacy online. This feature
that let users set privacy preferences is
part of the conceptual components
depicted in the 3.5 Deliverable (Privacy
Policy Architecture section).
Opportunities
Due the large diffusion of Mozilla products
the introduction of the support for
Webinos widgets, which are "W3C
enhanced widgets", the lack of a W3C
widget support could be a big opportunity
to disseminate the "Webinos concept" to
developers and end users.
References:
increases the effort required to develop a
Webinos runtime implementation and the
second is the new rapid release process
announced by Mozilla in April 2011 that makes
complicated to keep pace for projects like
Webinos. With the new plan Mozilla will
release a new version of the browser every
three months.
Risks
There are several ways to extend Firefox and
its components, choosing the right one is very
important due to the rapid release process
started by Mozilla.
Mozilla Certificate Manager:
http://www.mozilla.org/projects/security/pki/psm/help_21/certs_help.html
Privacy & Security Preferences - SSL:
http://www.mozilla.org/projects/security/pki/psm/help_21/ssl_help.html
Overcome security threats for Ajax applications:
http://www.ibm.com/developerworks/library/x-ajaxsecurity/index.html
Reliability Benchmarks - Proper Page Loads: http://www.tomshardware.com/reviews/webbrowser-performance-standard-html5,3013-13.html
Limits of reliability: http://blog.mozilla.com/nnethercote/2011/02/09/limits-of-reliability/
Firefox usability study: http://mozillalinks.org/2007/02/firefox-usability-study/
Mozilla Test Pilot: https://testpilot.mozillalabs.com/faq.php
External resources for plugin creation:
https://developer.mozilla.org/en/Plugins/External_resources_for_plugin_creation
Getting Started with Firefox Extensions:
https://developer.mozilla.org/en/XUL_School/Getting_Started_with_Firefox_Extensions
http://blog.mozilla.com/blog/2011/06/21/mozilla-delivers-new-version-of-firefox-first-webbrowser-to-support-do-not-track-on-multiple-platforms/
http://blog.mozilla.com/blog/2011/03/02/mozillas-comments-in-response-to-the-ftcsinquiry-on-privacy/
https://developer.mozilla.org/devnews/index.php/2011/04/07/new-development-channelsand-repositories-for-rapid-releases/
http://news.cnet.com/8301-30685_3-20074590-264/rapid-release-firefox-meets-corporatebacklash/
page: 198 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 199 of 229
Target Platforms, target Requirements and Platform IPRs
http://blog.mozilla.com/standards/2010/04/30/mozilla-at-w3c-review-of-web-applicationswg-charter/
page: 199 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 200 of 229
Target Platforms, target Requirements and Platform IPRs
Chromium
Introduction
The Chromium web browser is tightly interleaved with Google’s Chrome browser. The first
version of the Chromium source code was released in September 2008; Chromium 1.0 was
released later that year in December. Chromium is the open source project that results in
releases of Google Chrome hence al Chromium releases are development releases. However
other developers have released Chromium version using the source code of the project.
The current release of Chromium is release 12, which is stable for all supported platforms.
Part A1: Technical Information (web rendering engines)
Web components
Chromium uses the WebKit open-source rendering engine for the rendering of HTML.
HTML 4 rendering code base, test results at http://en.wikipedia.org/wiki/Acid3, live test at
http://acid3.acidtests.org/ (with chrome browser)
HTML 5 rendering code base, test results at http://www.browserscope.org/, live test at
http://html5test.com/results.html (with chrome browser)
Since Chromium version 12, Google’s own V8 JavaScript engine is used:
http://code.google.com/p/v8/.
Widget availability
As covered in WP2.3, Chrome family technologies, Google Chrome offers an application
store where users can download web applications. For more information on this topic please
read the “Security Framework” paragraph on the WP2.3 report.
Part B: Commercial information
The commercial information has already been outlined in WP2.3 under the “Chrome family
of technologies” section.
Part C: Licensing and Governance
Access
Is source code freely available to all developers, at the
same time?
Is source code available under a permissive OSIapproved license?
Are developer support mechanisms - project mailing
lists, forums, bug-tracking databases, developer
documentation and tools - available to all developers?
Is the project roadmap publicly available?
page: 200 of 229
4. Yes
4. Yes, BSD
3. Yes – developer support
mechanisms open to all developers
2. No – No formal roadmap exists,
but there are visible committer or
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 201 of 229
Target Platforms, target Requirements and Platform IPRs
contributor requests
3. Yes – there is some information
but it is hard to find and doesn't
appear comprehensive
Transparency of decision mechanisms – Are project
meeting minutes publicly available to understand
decision-making in the project?
Development
Transparency of contributions and acceptance process –
Is the code contribution and acceptance process clear,
with progress updates of the contribution provided (via
Bugzilla or similar)?
Transparency of contributions to the project – can you
identify from whom source code contributions are
provided?
Accessibility to become a committer – are the
requirements/process to become a committer
documented and is this an equitable process, i.e., can all
developers potentially become committers?
Transparency of committers – can you identify who
committers to the open source project are? i.e., those
developers that have the authority to 'commit' source
code to the baseline
Does the contribution license require a copyright
assignment, or copyright license and/or patent license?
4. Yes – contributions and
acceptance process are clear,
with progress status of
contributions provided
1. No
3. Yes – the process is
documented and accessible to
all developers
2. Yes – but you must manually
find and collate the information
from various project sources
3. Yes – project requires a
copyright license and patent
grant
Derivatives
Are trademarks used to control how and
where the platform is used via enforcing a
compliance process prior to distribution?
Are go-to-market channels for applications
derivatives constrained by the project in
terms of approval, distribution or discovery?
2. No – You can freely distribute to the code
and use the project trademark without
completing formal compliance requirements
4. No
Community
Is the formal community structure flat or tall, i.e.,
tiered rights depending on membership status
1. Yes – there are tiered rights
depending on membership status
Summary
Total Score 36
Additional comments
Chromium uses 3rd party libraries that are distributed together with Chromium. These 3rd
party libraries can have other licenses; the Open Source Initiative recognizes not all of them.
A complete list of the 3rd party libraries with their respective licenses can be found on:
http://code.google.com/chromium/terms.html.
No information is available at the governance of the Chromium project. It is to be expected
that employees of Google do the steering of the project.
Only little information is available on the Chromium roadmap. Detailed information can be
found in the bug-tracking tool at http://code.google.com/p/chromium/issues/list.
page: 201 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 202 of 229
Target Platforms, target Requirements and Platform IPRs
New features can be requested through this tool or in the discussion groups. It is unclear
how is decided what features requests will make it into the next version although
developers can choose independently to implement features if they like. For an outsider, it is
not clear what the decision-making processes are. Only outdated meeting notes are
available on the developer website. Maybe following the developer newsgroups for some
time would give a better understanding of these processes.
Google trademarks Chromium. There are some formal, generic, guidelines on which 3rd
parties need to comply if they want to use Chromium brand features. None of them are
technical requirements. Also see: http://www.google.com/permissions/guidelines.html.
To publish apps via the Chrome web shop developers have to pay a developer registration
fee of $5,00 which is needed to verify the account.
A developer may use Chrome Web Store Payments but this is not mandatory. For the use
the Chrome Web Store Payments Google charges a fee of 5% and a small fixed fee per
transaction. The minimum price a developer can charge for an application is €1,49.
If the developer does not use the Chrome Web Store Payments, or offers the app for free,
Google does not charge a fee.
The full details of the Web Store Development Agreement can be read on the website:
https://chrome.google.com/webstore/intl/en/dev_tos_text.html.
For Chromium it is possible for non-Google personnel to become committer. Everyone is
invited to make contributions to Chromium. The processes for contributing are well
documented. Someone can become a source code committer after contributing between 10
or 20 non-trivial patches and when being supported by 3 other committers.
It is not clear who the committers are and for what organizations they are working. All
committers get an @chromium.org account that they use for their chromium related tasks.
It is not clear how many non-Google employees or how many code changes that are shared
by non-Google developers will actually make it into the project.
See also: http://www.chromium.org/getting-involved/become-a-committer
Part D: Summary
Verdict
Chromium targets PC platforms only, which make the platform suitable only for PC type
Webinos clients. Other platforms like mobile, tabs, cars and television are not supported by
Chromium.
The Chromium project is an active and well documented project that creates a modern,
state-of-the-art browser for PC platforms. The development is primarily driven by Google's
effort and it is unclear in what way other organizations are involved.
page: 202 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 203 of 229
Target Platforms, target Requirements and Platform IPRs
The possibility of making extensions that can be called from within HTML pages, via so-called
content scripts, make Chromium interesting as a base platform to built Webinos upon but
further investigation of the possibilities is needed:
http://code.google.com/chrome/extensions/content_scripts.html
It remains unclear how the Chromium community structure works and if the project is open
to work together with other projects like Webinos.
SWOT
Chromium's Strengths are that it is an active
project, that it performs well in compliance
tests, and that is is well documented.
Webinos Opportunity is in extending a good
browser with innovative webinos features
which would make a great combination.
page: 203 of 229
Chromium's Weaknesses are that the
development process is opaque and that it
is owned by a single company (Google).
The main Threat is that Google can
unilaterally change the rules rendering
webinos activity useless.
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 204 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 3 - Shortlisting and Recommendations for platforms¶
Objective
Webinos will exist as a web-based application platform. A web based application, like a web
browser, to which it is related, must sit on top of a native operating system (the host
operating system). This means to achieve the cross platform vision, the core runtime needs
to be re-implemented on several distinct host operating systems. Webinos has limited
resources, and the number of operating systems in the market, across the four screens in
consideration, is quite significant. Therefore, careful prioritization needs to be made on
where the webinos community collectively invests its initial development efforts. This
prioritization needs to be made on technical, commercial and partner sentiment criteria.
We have used the following criteria to evaluate the suitability of the platforms for prioritized
webinos development:







Device penetration numbers: If the full webinos software stack was available
tomorrow, how many devices could run webinos, on this particular platform?
Strategic view on platform future: What is the strategic view of the future of
the platform? How will the level of market penetration grow (or shrink)?
Cross vertical porting: Is this platform strong in on more than one vertical (PC,
mobile, tablet, car, TV)?
Freedom to implement: Does the platform present any restrictions on
implementing the full webinos stack?
Probability (and need) of core platform absorption: Is there any possibility of
getting webinos features absorbed into the core platform?
Consortium member sentiment: What are the perception, interest and skills of
the immediate industrial partners working on this?
Technical effort, capabilities and dependencies: How much effort will it be to
implement on any particular platform?, Does the platform support all the
functions required by webinos? And These considerations need reconciling with
the architecture, which is addressed in the section below.
Platform Prioritization
In the preceding sections, a thorough analysis has been made of each of the operating
systems on a device by device type basis. In order to establish the priority subset of
platforms for further evaluation within webinos, we started by discounting those platforms
that do not warrant consideration on commercial grounds, and those that can be discounted
because there are barriers to commercial adoption that discourages a large investment in
porting at this stage.
Discounted Platforms
When it comes to considering concrete implementations, the evaluation undertaken clearly
allows us to discount certain platforms (at least for initial consideration).
page: 204 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 205 of 229
Target Platforms, target Requirements and Platform IPRs
Windows Phone 7
Windows Phone 7 is problematic for the following reasons:
Device
penetration
Unproven in market at present
Strategic view
High dependency on the success of the Nokia-Microsoft relationship,
which needs a rapid ramp up of phone models and volumes and the
acceptance of these phones in the market.
Cross Device
Port
Windows Phone 7 is significantly different from Windows 7, that said it
comes from the same technology base (Silverlight), therefore porting
across is possible but will require some effort
Freedom to
implement
Windows Phone 7 is considerably more locked down than previous
versions of the operating system
Core platform
absorption
It is almost impossible for 3rd parties, more so Open Source organisations
to influence the core code base of the Operating System platform
Partner
sentiment
No webinos consortium partner listed Windows Phone 7 as a high priority
consideration
Technical effort
The technical limitations and constrained APIs will present a considerable
barrier to implementing a webinos runtime on top of Windows Phone 7
Windows Phone 7 is not a priority port for webinos. It may be considered further down the
line when we complete the Windows 7 desktop port.
iOS (iPhone)
iOS is problematic for the following reasons:
Device
penetration
Within the Smartphone market iPhone it is very strong coming second only
to Android in terms of absolute Smartphone device sales
Strategic view
Apple's strong position with the phone market and consumer electronics
generally, is unlikely to weaken over the next few years.
Cross Device
Port
iOS works across mobile and tablet domains. Apple has products in both the
TV and desktop space. The technology (iOS vs. OSX) is not identical and
requires porting, but we can expect this to get better over time.
Freedom to
implement
This is the Achilles heel for iOS platforms. Apple explicitly prohibits runtimes
and virtual machines from the iOS platform. It also prohibits distribution of
apps via non iTunes distribution mechanisms. In practice this means that
although it technically possible to create a rich webinos runtime environment
on iOS, it will be impossible to distribute it.
It is almost impossible for 3rd parties, more so Open Source organisations to
influence the core code base of the iOS Operating System. The only
Core platform
conceivable strategy is to get the webinos components included into the
absorption
WebKit code base. However, this would take considerable time and is by no
means guaranteed
page: 205 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 206 of 229
Target Platforms, target Requirements and Platform IPRs
Partner
sentiment
No webinos consortium partner listed iOS as a high priority consideration.
This is primarily due to the commercial realisation that distribution will be
impossible
Technical
effort
There are no significant technical impediments to creating a webinos runtime
on iOS, but due to the commercial constraints, this platform would only run
on the Jail broken iPhone.
iOS is not a high priority for webinos porting. We recommend a number of combined
strategies to be pursued over the lifetime of the webinos project to attempt to embrace the
Apple technologies within the webinos platform. These are: We focus on other platforms, and lobby for inclusion of webinos components in
the WebKit components on which the iPhone browser is based.
 We fully collaborate with W3C aiming to get webinos technologies embraced as
a recognised standard.
 We focus on building the developer and consumer base to create pressure for
webinos inclusion.
 We examine how we could reuse webinos technologies within the PhoneGap
framework. This allows applications to be created on point basis (no generic
runtime) but will provide a webinos developer a route to market, if they have
developed a webinos application.
To investigate implementing a PZP and API host on iPhone. This would allow it to host
webinos services, and therefore allow individual applications on iOS to interoperate within
the webinos ecosystem. But would not allow it to run a full webinos application, through a
generic webinos runtime.
Samsung Bada
Samsung Bada is problematic for the following reasons:
Device
penetration
Making good progress in the market
Strategic view
Bada's strategic weakness is that it "belongs" to only a single player in the
market- i.e. Samsung. Its strategic strength is unlike all other platforms
considered, this is not a high end smart device, but a mass market device
Cross Device
Port
There is no evidence currently that Bada will run on non phone devices
Freedom to
implement
There is no evidence that Samsung is creating commercial controls on the
types of applications that can be accepted on a Bada device
Core platform
absorption
It is unlikely to be able to influence the Samsung proprietary OS
Partner
sentiment
No strong support has been expressed for Bada at this time
Technical effort
It should be possible to create a rich webinos runtime with many of the
APIs present on a Bada device
page: 206 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 207 of 229
Target Platforms, target Requirements and Platform IPRs
Bada is a promising platform; however, the current decision is not to prioritise it as a
"collective use" of EU funded development, for the simple reason that it is partisan to a
single consortium member only.
External parties and internal parties will be encouraged to do a Bada port. However, this will
not come from the EU investment, but will be part of the open source webinos foundation
activity.
BlackBerry
BlackBerry is problematic for the following reasons:
Device
penetration
Blackberry is positioned very strongly in the Smartphone market
Blackberry is likely to remain strong in the mobile market. Some strategic
concerns however must be raised over its developer ecosystem. RIM
historically was a strong advocate of the J2ME development environment.
Strategic view This is a strategic risk as J2ME is rapidly declining in both developer and end
user sentiment. There are also question marks raised by RIMs support of
Dalvik on its new Playbook (based on the QNX operating system), apparently
at the expense of J2ME support.
Cross Device
Port
Clearly RIM is embracing a cross device strategy in part, with its release of
both phone and tablet devices. However, the lack of a rich development
environment that spans these two is a problem for developers.
Freedom to
implement
Currently there is no evidence that RIM is constraining developers for overtly
commercial reasons.
Core platform
It is unlikely to be able to influence RIM's proprietary OS.
absorption
Partner
sentiment
No strong support has been expressed from the consortium members for
Blackberry support.
Technical
effort
Technically it is NOT possible to implement the required web-runtime hooks
through the phone's J2ME interface. Furthermore the virtual machine
sandboxing between the Dalvik runtime and the lack of NDK support on the
playbook mean that a runtime cannot be implemented on a RIM playbook
either
Blackberry will not be one of the prioritised webinos platform ports. When Dalvik is released
for commercially available Blackberry devices we may evaluate the possibility of porting our
Android implementation to these devices. There are rumours of a C++ interface being
exposed to developers for the QNX platform. It will be worth re-evaluating the landscape
again at this time
Home Media Platforms
The following platforms have been discounted because either they technically do not
possess the necessary flexibility to write a web runtime, PZP or the full API suite or because
the current ecosystem is too closed for the webinos development community we wish to
attract
page: 207 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 208 of 229
Target Platforms, target Requirements and Platform IPRs
Mediaroom: limited capability and closed ecosystem
NetTV: although open source code base, closed ecosystem
CE-HTML: is a standard rather than a platform therefore does not provide market
opportunity.
Samsung TV: only offers a web based development environment. This is not sufficiently
powerful to implement a full WRT.
HBBTV: is not sufficiently flexible.
AppleTV: is a closed ecosystem.
Automotive platforms
The following platforms have been discounted because either they technically do not
possess the necessary flexibility to write a web runtime, PZP or the full API suite. Or because
the current ecosystem is too closed for the webinos development community we wish to
attract.
Microsoft Windows Embedded Automotive: is a powerful platform, however, there is limited
roadmap information available at present. It makes sense to wait until windows 7 mobile
proves itself, and to see whether there is any alignment with the embedded strategies
before we commit
QNX: is a proprietary platform. It will be almost impossible to get access to the required
functions capability, from the context of an open source project
Proposed Platforms
By a process of elimination, the platforms that need to be assessed in greater details, in no
particular order are.
 Windows 7 Desktop
 Mac (desktop)
 Android
 Linux (Debian) distribution
 MeeGo
Each of these platforms will be compared against the evaluation criteria described above.
Device Penetration
Note these high, medium, low and none figures below are given as relative measures for the
current size of the market, and are qualitative indications only.
Our conclusion is that Windows 7 is the widest penetrated platform in the PC space, while
Android is the widest penetrated platform in the mobile space. Other than that, all other
platforms are partially available across the 5 screens that we consider in the table below.
page: 208 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 209 of 229
Target Platforms, target Requirements and Platform IPRs
PC
Tablet
Mobile Automotive TV
Windows 7 high
low
low
low
low
Mac
medium none
none
none
low
Android
low
medium high
low
low
Linux
low
low
low
low
low
MeeGo
none
none
low
none
none
Quantitative estimates of market figures have been be gleaned from the following source
materials
- Windows PC: 350M licenses sold in the last 18 months (http://www.microsoftwatch.com/content/windows_7/windows_7_sales_scrub_vista_curse.html)
- Windows tablet: Windows has less than 5% of tablet sales in Q2 2011
(http://www.androidtablets.net/forum/android-tablet-news/19352-android-tablets-chew30-out-ipads-marketshare.html)
- Windows Mobile: estimated 5M handsets sold up to end Q2 2011
(http://wmpoweruser.com/canalys-only-1-5-million-windows-phones-shipped-in-q2-2011/)
- Windows automotive: based on industry discussions
- Windows TV: based on industry discussions
- Apple PC: 3.76 Million Macs sold in Q2 2011
(http://www.yourdailymac.net/2011/04/apple-q2-sales-18-65-million-iphone-4-69-millionipads-3-76-million-macs/)
- Apple tablet: the iPad has consistently over 50% market share and predicted to continue so
for 2011 (http://www.ipadforums.net/apple-ipad-news/40786-ipad-marketshare-continuesimpress.html)
- Apple mobile: Apple has around 25% share of the Smartphone market
(http://www.linuxfordevices.com/c/a/News/ABI-Research-Q2-2011-smartphone-study-plusHTC-Sensation-teardown/)
- Apple: automotive: based on industry discussions
- Apple: TV: based on industry discussions
- Android PC: initial entry into PC space did not meet with success
- Android tablet: Android has 30% market share of tablets in Q2 2011
(http://www.androidtablets.net/forum/android-tablet-news/19352-android-tablets-chew30-out-ipads-marketshare.html)
- Android mobile: Android has over 45% of Smartphone market share
(http://www.linuxfordevices.com/c/a/News/ABI-Research-Q2-2011-smartphone-study-plusHTC-Sensation-teardown)
- Android automotive: based on industry discussions
- Android TV: based on industry discussions
- Linux PC: Linux has very low penetration among connect PC users (2%)
(http://en.wikipedia.org/wiki/Usage_share_of_operating_systems)
- Linux tablet, mobile, automotive, PC: based on industry discussions
- MeeGo: only 1 mobile device announced, scheduled for Q4 2011. MeeGo can be ported on
the N900 which is where the "low" figure on mobile comes from
Strategic view on platform future
page: 209 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 210 of 229
Target Platforms, target Requirements and Platform IPRs
Windows
7
Windows has been the dominant operation system for 20+ years. Even on the
most pessimistic trajectory, Windows will be a significant player for many years.
Investment in a Win7 webinos stack is well justified
Mac
Mac has been going from strength to strength. Not only in PC and laptop
penetration, but its derivative mobile and TV instance needs to be monitored
carefully
Android
Android on phones has been going through phenomenal growth over the past
year. Tablets TV, PCs and In-car variants are strongly rumoured
Linux
Linux has still not broken through into the consumer market, being largely the
preserve of server and techno-uber geeks. However, the consumer centric
offerings are improving considerably, and the no PC ecosystems are crying out
for a strong competitor to Android and iOS
MeeGo
MeeGo can be characterised as a Mobile pruned Linux distribution. The recent
Nokia announcements have been unfortunate and have weakened its position
considerably. And it has yet to prove itself as a consumer platform with traction.
There are strong (but non-provable) rumours that there will be some significant
industry movement on these platforms in the next few months
Our conclusion is that, besides MeeGo whose future is uncertain, all other platforms have an
expected longevity that makes them suitable for use in the webinos implementation.
Cross vertical porting
All of these platforms give a strong cross device coverage, which can be summarised in the
table below:
PC
Windows 7 yes
Mac
yes
Android
emerging
Linux
yes
MeeGo
yes
Tablet
yes
variant
yes
variant
yes
Mobile
portable
variant
yes
variant
yes
Automotive
portable
no
yes
variant
yes
TV
yes
no
variant
variant
yes
Reviewing the platform coverage of each in detail:
Windows 7: Windows 7 is strongly positioned for PC, Tablet and TV (using is Windows Media
Centre product). The current mobile proposition, Windows Mobile 7 has been discounted as
a priority in the analysis above. However, despite the significant technical differences
between desktop and mobile, we can be encouraged by the fact that it comes from the
same family of technologies and therefore porting should be possible either at a later date,
or by a new consortium partner. A similar argument can be extended to the Windows
Embedded. The Windows automotive embedded platform has been de-prioritised as above,
but if we develop core desktop assets, motivated parties will be able to reuse and re
purpose these assets for this platform at a later date.
Mac: Mac as webinos platform, is deemed very important, primarily because it is the
development environment of choice for web developers. As a PC platform, it is therefore
page: 210 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 211 of 229
Target Platforms, target Requirements and Platform IPRs
essential. As described above the mobile iOS platforms and AppleTV are not priority port
considerations, due to commercial limitations on distributions. But the fact that these
technologies come from the same technology base (as above) means that if PC Mac is in
scope, the effort and cost of porting the Apple flavours or mobile, tablet and TV technologies
should be significantly reduced.
Android: is deemed mandatory for its mobile and tablet impact. Although not significantly
impacting the market yet, we can presume that TV and in car implementations will make
rapid inroads into the market.
Linux: Linux distributions come in many flavours, tweaked to different device types and
indeed vertical applications. Developed binaries are not always portable between different
Linux distributions, however, proficient Linux developers should be able to port between
them relatively easily. Linux, whilst not particularly impressive in terms of absolute numbers
in any one of the categories, has a strong technical presence in each of the device types in
which we are interested.
MeeGo: MeeGo claims to have a discrete (but highly portable) distribution for each of the
device types that we have in scope. Current sentiment is that not all of these platform
distributions are product ready
Freedom to implement
Windows 7: unlike Windows mobile 7, even though it is closed source, it is technically highly
extensible, with very few ecosystem controls built into the OS.
Mac: similar to Windows, in sharp contrast to the mobile variant (iOS) the Mac is open for
the technical extensions, and there are no overt Apple control points.
Android: of all the above, Android is the most tightly controlled. The marketplace
constraints and the exposed APIs can be limiting.
Linux: Totally open platform with no ecosystem controls. Technically fully extensible with
open source code accessible.
MeeGo: based largely on Linux code base, therefore flexible. The MeeGo security scheme
implies that ecosystem controls could be introduced, but this is assessed on a device by
device basis and does not reflect on the platform itself.
Our conclusion is that most platforms are open with the exception of Android where there
are tight marketplace constraints and technical API limitations in place.
Probability (and need) of core platform absorption
Windows, Mac and Android, being all controlled by singular commercial actors in the
market, are very difficult to influence. For a third party to get core code changes accepted
into the stack is almost impossible
MeeGo and Linux by contrast as genuine open source initiatives, are in principle open to 3rd
party contributions. Indeed their long term survival, to some extent, depends on it.
page: 211 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 212 of 229
Target Platforms, target Requirements and Platform IPRs
The good news is, as shall be discussed in greater depth in the technical section, the current
proposed architecture, does not assume that significant core platform changes are required
on the host operating system to port webinos
Consortium member sentiment
In order to provide a more pragmatic view but also in order to capture the real market
sentiment webinos has performed an independent survey across the industry (Operators
and Manufacturers) partners. Detailed results of this survey can be found in Section 4:
Industry partners viewpoint. Here follows an overview of the captured answers to provide a
better context within the discussion and justification of the chosen shortlisted platforms.
Partner/Domain PC
Mobile
Samsung
Android
Telecom Italia
(minimum) Windows &
Linux
-
Telefónica
-
DT
BMW
SEMC
Windows
-
Android or native
Linux
Android or native
Linux
Android
Android
Home
media
Linux
based
-
Automotive
-
-
-
MeeGo IVI
-
-
Technical effort, capabilities and dependencies:
In order to assess the technical effort to port the webinos framework to the host operating
system, we need to first consider the technical architecture.
Based upon the architectural work from WP-3 a set of proposals for implementation
technology has been superimposed onto the implementation architecture
This information is to be found in the appendix of this document.
page: 212 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 213 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 4 Device-side Implementation Architecture
This section outlines a proposed architecture for a concrete implementation of the webinos
components that need to be installed on device.
Introduction
This is a very brief introduction to the architecture for the initial webinos platform.
Implementation:-
The Personal Zone is implemented as a server on every webinos device (aka personal zone
proxy or PZP) together with a cloud based server acting as the Personal Zone Hub or PZH.
The servers are implemented with node.js which allows for programming in JavaScript and
comes with a rich set of libraries and a supportive community. The PZP establishes a secure
connection with the PZH via JSON RPC over TLS using public key certificates to authenticate
each party. This assumes a separate mechanism for registering a device with the PZH that
creates and exchanges the certificates.
A web page (either a hosted application or a locally installed one) loads a webinos.js script
that creates and adds a webinos object to the page's window object. The webinos object
hosts the webinos interfaces as defined by work package 3 and serializes them via JSON RPC
over the websockets protocol to the corresponding handlers on the PZP. The webinos.js
script is responsible for sanity checks on method arguments. If the method invocation fails
these tests, an error is returned, or an exception is raised as defined by the WP3 API
specifications. The script uses the JSON RPC message id to match asynchronous responses
from the PZP to the call back mechanism defined in the WP3 API specifications.
In future we could make use of a browser extension to inject webinos.js into every web page
via a handler for the page's load event. The handler would add a script element into the
page's DOM. A browser extension will also allow us to extend the browser chrome, e.g. to
add the UI for selecting a persona for use with a website. We could also consider optimizing
the communication path between the script and the PZP should that prove to be a
bottleneck. In the short term at least, the websocket API provides an efficient mean to pass
asynchronous messages over a persistent connection. A JavaScript library is available from
Dave Raggett to transparently add the websockets API for browsers without native support.
This isn't needed for the chromium browser, but would be useful for demonstrating webinos
with other browsers, e.g. Opera.
As a starting point we plan to create a proof of concept implementation for a single webinos
API as way to learn how to map the WebIDL definitions into working code. The aim is to
decouple work on the message transfer for the APIs from the implementation of the APIs as
node.js script modules. In some cases, we expect to write native code extensions for node.js
e.g. to access existing native libraries such as avahi for mDNS and bluez for bluetooth-based
services. The initial proof of concept implementation will require strong JavaScript skills
together with the ability to exploit and extend the node.js libraries.
page: 213 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 214 of 229
Target Platforms, target Requirements and Platform IPRs
WRT
Key functions:






Executes all UI for webinos application
Executes most JavaScript code for webinos application
Should be able to handle both packaged widgets, and hosted applications
Injects webinos root object into JavaScript execution context, so calls can be
made
Intercepts critical security events for mediation by the security manager
Implement and webinos specific chrome (UI) functions we believe are necessary
Design criteria
We should make the WRT component as light as possible to give us maximum compatibility
with many different browser vendors
Proposed Implementation
A WebKit codebase is preferred with implementations on several platforms
Either QT or Chromium are suggested for PC, as they have Windows, Mac and Linux variants.
The Linux variant should be well suited to both STB and in car devices with minimal porting
V8 is the preferred JavaScript engine, being pre-integrated to Chromium and an option for
QT
page: 214 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 215 of 229
Target Platforms, target Requirements and Platform IPRs
Android is more difficult. Android will require a different WRT strategy using the inbuilt
webview component and NPAPI and JNIRegisterNativeMethod for plugins
Binding to the PZP should be done if possible through standard plugin architectures. Worst
case is we have to hack into the JavaScript engine directly.
PZP
The PZP manages the connection to the PZH
The PZP acts in place of the PZP when the PZH is not visible
The PZP hosts all of the capability listed below.
Design criteria
We should try to make this component as "portable" as possible across operating systems
Proposed Implementation
The PZP shall be implemented as one or more node.js applications.
The PZH should also be implemented as a node.js application.
- Note Android devices will have to be rooted. This is fine for
early implementations. When proven - we shall port core
functions to dalvik - or C through the NDK
Subcomponent: Session Manager
The Session manager shall create TLS sessions between PZP and PZH using the pre-shared
certificates.
We will use the standard node.js libraries to establish TLS sessions and get access to
certificate stores.
Subcomponent: Messaging Manager
The Session manager must be able to


receive messages: process incoming messages
route messages: which implies that it keeps a register of the active sessions and
last know physical address or each person, device, service.
 process messages: pass messages directly locally registed services for action
The messagsing processing and routing code shall be written in Javascript, and hosted by
node.js
Subcomponent: Widget Manager
The Widget manager must be able to
page: 215 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 216 of 229
Target Platforms, target Requirements and Platform IPRs



securely store a wgt file
process a wgt file accordign to W3C + webinos rules and validate certificates
process feature elements and warp elements - passing infromation to WRT and
the policy manager as required
 process "service" elemental on the manifest
 recieve messages bound for this application, passing to the service element as
required
 deal with the nested widget concepts
The core manager should be wrapped in node.js functions. However, we may decide to
reuse exising C code - and integrate via node.js native extensions
Subcomponent: Context Manager
The Context manager must be able to
 receive context events from other parts of the architecture
 securely store all context events and data
 full fill context query requests, using either PZP or PZP stores
 guarantee no unauthorised access is allowed to the context inerface
The Context Manager should be implemented in Javascript using node.js and make use of
secure or encrypted storage
Subcomponent: Sync Manager
The Sync manager must be able to
 resynchronise JSON data between the PZP and PZH
The sync manager should be written in JavaScript on node.js
Early implementations may make use of 3rd part sync libraries
Subcomponent: Local Discovery Manager
The Local discovery manager must


promiscuously explore local data connections for webinos recognisable devices
deal with bearer level connectivity to these devices so that the messaging
manager can route over the
 host device drivers where necessary
The local discovery manager will interface directly to low level OS specific APIs and be low on
portability.
Subcomponent: Policy Manager
The Policy manager must



provide a mediation interface, so that all components may defer decision to the
access logic
interpret the set of policy rules active on the PZP
implement real-time PEP logic and enforce the constraints
page: 216 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 217 of 229
Target Platforms, target Requirements and Platform IPRs
The policy manger must present a JavaScript interface that can be used by the node.js logic
The implementation of PEP enforcement and logic can be in either C or JavaScript
Subcomponent: API Discovery Manager
The API manager must

host all available APIs that can be accessed either locally (WRT) or remotely
(other PZPs)
 must efficiently process the local API and return results
 must be able to process JSON RPC commands coming from the messaging
manager and route them the correct API
 must be able to process JavaScript commands issues locally, mapping them to
the correct API
Most API will be implemented as native C/C++ code on the specific platform (be non portable)
(We may add other implementation later – e.g. Perl, Ruby etc)
C API headers should use the V8 conventions for JavaScript types and map these to native C
data types.
The V8 mappings should map directly via the NPAPI bridge
The JSON RPC message handler should also have a deterministic mapping to the V8 typed C
APIs
APIs
Module
Notes
Components Identified
Attestation
Porting
Effort
High
Security sensitive
TCG/TPM components, ARM
trust centre, Use existing
code like TrouSerS JTSS
Authentication
Context
Low
Low
Events
Low
AppLauncher
Messaging
High
Med
Use standard libs
Abstracted interface pure logic code
Abstracted interface pure logic code
needs integrating per OS
Must hook onto default
PIM - App specific
Nfc
Payment
High
Low
Sensors
Discovery
Med
Low
page: 217 of 229
Generally goes straight
to web service
Abstracted interface pure logic code
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 218 of 229
Target Platforms, target Requirements and Platform IPRs
Tv
High
Userprofile
Low
Vehicle
High
Webinos core
Widget
Low
Low
W3C calendar
Low
W3C contacts
Low
WAC devicestatus
High
Devicestatus
vocabulary
WAC
Deviceinteraction
W3C
DeviceOrientation
W3C File
W3C File API: Writer
W3C File API:
Directories and
System
W3C Gallery
High
W3C Geolocation
W3C Media Capture
Med
High
page: 218 of 229
Platform and media
dependent
Abstracted interface pure logic code
Abstracted interface pure logic code
Med
Abstracted interface pure logic code
PIM dependent - simple
mapping
PIM dependent - simple
mapping
lots of very device
specific functions
lots of very device
specific functions
hooks to UI
Low
simple api
Low
Low
Low
use standard C libs
use standard C libs
use standard C libs
Med
"Need 3rd party lib for
media metadata, or use
native functions"
Not complicated
Always hard
Chrome /QT
C file.h
C file.h
C file.h
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 219 of 229
Target Platforms, target Requirements and Platform IPRs
Chapter 5 - Recommendations for licensing and IPR
Introduction
A governance model is the method by which decisions are made and implemented in the
webinos open source project. We advocate an open and transparent governance model for
webinos which also compliments the use of an open source license(s) for the open source
webinos project. Our research indicates that those projects that have lasted the test of time
are, in the main, managed as meritocracies i.e. effort and contributions to the project are
rewarded with responsibility and authority in the project.
Ideally webinos will have low barriers to entry for small companies and individuals such that
they can easily use webinos code to create applications.
This openness needs to be balanced with the need to discourage single-company dominance
of the platform as this can lead to other parties becoming frustrated and ultimately leaving
the project. Additionally we need to find ways to discourage free-riders such that companies
not only consume the outputs of webinos but actually contribute to the project either in
terms of time or money. And as we have identified in our research, the project itself should
be as meritocratic as possible such that the best ideas win, not those nominated from
organisations with the deepest pockets. We acknowledge that the best way to achieve this
will be to ensure that webinos is the best available solution in the market which meets the
needs (scratches the itches) of as many corporations and developers as possible in order to
facilitate early, broad and deep adoption of webinos by the all relevant industries e.g.
mobile, home media and automotive. Therefore providing an early, complete and featurerich webinos solution must be a priority of the project.
In summary the ideal solution to achieve strong participation and support for webinos is a
set of incentives and disincentives, largely embodied via:• governance model: who decides what for the project
• licensing model: who can do what with the source code
• trademarks and marketing: who can do what with the commercialisation of the webinos
trade-marked source code and platform
However we appreciate that there are a number of real-world constraints that must be
taken into consideration, one of the most important of which is the long-term resourcing
model for webinos.
Presently webinos is part-funded by the EU, and there needs to be a sustainable model
identified to support the webinos OSS project after the EU funding has completed.
As we see from our research for WP2.3 all successful open source projects derive income
and funding from one or more corporate entities either formally via revenue streams
(Mozilla), membership fees (Eclipse) or informally via developer resources and corporate
sponsorship (Apple/Google for WebKit, Google for Android, Nokia for Qt). Therefore an
page: 219 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 220 of 229
Target Platforms, target Requirements and Platform IPRs
important question for webinos is – what resourcing will be required for webinos as an open
source project, and how will this resourcing need be met.
Secondly there are the real-world constraints of using existing OSS projects and their
respective license regimes that need to be identified for webinos. In our research to date we
have identified the following platforms which may be used to support the webinos
platform:Platform/domain
Web Runtime
QT
Mozilla
PC Domain
Windows 7
Linux/variants
Mobile Tablets
Android
Linux (raw)
Home Media
MythTV
MeeGo
Automotive
MeeGo IVI (Genivi)
Android (AutoLinQ)
Notes
License Type
Primary
Primary
GPL/LGPL/Commercial
MPL/GPL/LGPL (Tri-License)
Primary
Proprietary
Secondary GPL
Primary
Apache + various other Licenses inc GPL/LGPL
Secondary GPL
Secondary GPL and some LGPL
Primary
GPL and LGPL
Primary
GPL and LGPL
Secondary Apache + various other Licenses inc GPL/LGPL
Note that not all OSS licenses are compatible with each other and there are formal
compliance requirements that must be met for all OSS licenses; which will also be a
requirement for webinos. Therefore we need to analyse the implications of using these OSS
on the licensing (and governance) regime chosen by webinos, once the architecture of
webinos has been determined and we know which other OSS’s will comprise webinos. As
importantly we will be targeting various Application platforms, cloud and device
frameworks, upon which webinos will be run and the licensing regime used by each of these
platforms will also need to consider to achieve as strong a License compatibility regime as
possible. The webinos license strategy should support the successful proliferation of
webinos across all industries and domains .
In summary webinos will ‘inherit’ a number of different open source licenses by virtue of the
code that it uses from other projects. Additionally webinos will ‘create’ new source code
which it can choose to license under any OSS license that it so chooses. However careful
consideration will need to be given to the compatibility of the various licenses chosen.
Additionally we need to consider the stakeholder and ecosystem requirements of webinos.
Webinos will need a broad and deep engagement with as many Industry players as is
possible to achieve its vision of ‘a single service for every device’ across multiple domains.
This requires webinos to create and nurture an easily accessible, useful and valuable
ecosystem. Currently this comprises of:• Core members i.e. the webinos Consortium
page: 220 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 221 of 229
Target Platforms, target Requirements and Platform IPRs
• Affiliate members i.e. those organisations that wish to contribute to and/or use webinos
the platform to create applications thereon
• Invited experts i.e. notable Industry experts who can provide advice and guidance to
webinos
• Developers i.e. all other parties who wish to be involved with webinos, most obviously
Applications developers
Finally we need to consider the go-to-market model for webinos. Ultimately the purpose of
webinos is to allow developers to create an Application one-time-only that will then run in
multiple contexts using webinos as the platform for that Application. To deter fragmentation
and accrue value in the webinos platform, it is important that the webinos platform is
implemented consistently and properly by and for users. To achieve this, we expect that
there will need to be some type of compliance framework for webinos, the passing of which
will provide the user with the ability to use the webinos Trademark and associated webinos
marketing documentation etc. This strategy is widely deployed for compliance and
marketing purposes by many mobile OS platforms. Additionally there are a number of other
features which could be deployed by webinos in order to accrue revenues for the purposes
of supporting the resourcing requirements, such as Apps registration fees etc. This topic
needs further discussion via WP8, Standardization and Exploitation.
The next sections of this report detail further resourcing models, governance, licensing,
ecosystem and go-to-market needs for webinos.
Resourcing scenarios for webinos
It is intended that webinos will be a not-for-profit foundation. However webinos still
requires funds and/or resources in order to operate. The purpose of this section is to
identify the likely resourcing requirements and then identify how these resourcing needs can
be met using different funding mechanisms.
In order to get a very rough estimate of the magnitude of the resourcing need and to
quantify this in actual Euro values, we will presume a low/medium/high resourcing as per
the following. Note that this is not based on ANY specific discussions or requirements with
other consortium partners, nor does it reflect a proper estimating process, rather it is a very
general ballpark figure. The actual requirements will become clearer once the actual
platform system, components, architecture, complexity and target platforms are more
understood – all of which are various tasks currently being researched by the webinos
consortium.
For example, we presume that developers will be required in order to continually
develop/maintain the code. Developers will be required to commit to the code the baseline
and to resolve defects and bugs and other maintenance issues. Additionally we presume
that there will need to be some level of integration work carried out, along with liaison with
the other OSSs from which webinos is comprised. There will also need to be some
compliance resourcing, to ensure that webinos is compliant in its use of other OSS and their
license requirements, as well as to manage the compliance framework for webinos itself. We
page: 221 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 222 of 229
Target Platforms, target Requirements and Platform IPRs
also presume also that there will be some sort of Applications approval framework or
compatibility kit that will also need to be managed. Finally we expect there to be some
marketing and trademarks costs that will need to be managed.
Regarding one-off costs, there will be the actual costs of creating and providing tools for the
management of webinos, as well as various repository costs for the management of webinos
as a distribution and defects management systems. Hence we arrive at a low/medium/high
resourcing requirement as per the below: - (note that this is very approximate number/costs
purely for discussion purposes, it has not been agreed or discussed with any consortium
members).
Cost
15 staff (12 eng, 3
admin/mktg/compliance)
25 staff (20 engs, 5
admin/mktg/compliance)
40 staff(35 engs, 5
admin/mktg/compliance)
Cost
per
head
70k
Euro
One
off
costs
Total
1,050,000. Euros
1,750,000. Euros
2,800.000 Euros
100k Euro
150k Euro
200k Euro
1,150,000 Euros
1,900,000 Euros
3,000,000 Euros
Resourcing can be met either via
1. Direct income via membership fees, to be charged to all members of the webinos
consortium (including Affiliates)
2. Formal commitment from members to provide engineering resources to webinos (similar
to sponsorship)
3. Commercialisation fees for trademark usage, applications certifications etc
4. Mixture of the above
Further discussions are required with the various consortium members to decide how this
future resourcing requirement will be met as it is unlikely to be determined at this early
point in the process, but it is important that due consideration is provided to this topic over
the next 12 months.
However we reiterate again that even when the resourcing requirements of webinos are
met, and when webinos provides what we describe as ‘minimum requirements’ of any
successful OSS i.e. excellent developer tools, a complete solution, use of an open source
license, simple contributions process, meritocratic governance process etc ; we cannot
guarantee the success of the project without also ‘scratching the itch’ of organisations and
developers and so identifying and communicating to the industry ‘what’ itches the project
might/can scratch for developers is a very important part of this process.
Proposed governance model for webinos open source project
page: 222 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 223 of 229
Target Platforms, target Requirements and Platform IPRs
The purpose of the webinos Governance Model is to outline how the project will be
managed in terms of decisions regarding acceptance and management of source code
(access and development) including future source code content (project roadmap).
Webinos is an open source project created by the webinos consortium which comprises
organisations from mobile, home media and automotive industries and is led by the webinos
consortium. The webinos governance model is based on meritocracy and the best practices
and values of the Open Source culture.
Participating in webinos
Webinos is open to all contributors. Source code is provided to all users and contributors
under the Contributions License Agreement . Membership will be in accordance with the
webinos Foundation agreement which will state that webinos is open to all contributors. Any
organization or individual can join and contribute to weinbos development. Webinos
leadership and governance principle is based on meritocracy. This means that roles and
responsibilities for reviewing and committing code to the project are selected based on the
developers’ quality and quantity of their contribution to webinos in relevant areas.
Webinos platform development (contributors, committers etc)
webinos software is developed and designed in a collaborative effort by the webinos
consortium, other consumer electronics industry organisations and open source developers.
In order to help drive webinos and shape the platform of the future, webinos has a structure
of roles and responsibilities as per the following:• Architecture and Roadmap planning
• Design and maintenance of components and subsystem
• Contributions management (reviewing and accepting contributions, IPR reviews)
• Committing of code to the project
• Release management – offering real-time live access to all users
• Defects management to manage bugs/patches etc
• Testing and Quality Assurance
• Compliance Testing and Trademark Agreement
Working Groups
The day-to-day operations of webinos is steered by a number of working groups. The
working groups are devoted to strategic discussions in specific areas and are accountable to
provide input and guidance about requirements, direction, policies, and conflict resolution,
within their area of responsibility. These working groups are open to contributors and other
individuals and organizations that specialize in the domain of the specific group. Learn more
about how the working groups operate by reading the Working Group Process
documentation.
Working groups operate for Mobile, Home Media and Automotive
contributing to the webinos open source project
There are a number of ways to participate in webinos. We see contribution roles as follows: Users, Contributors, Committers and Working Groups.
page: 223 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 224 of 229
Target Platforms, target Requirements and Platform IPRs
Users
Users are the people who use the software and can be either organisations or independent
developers. Users are using the software to create Applications, reporting bugs, making
feature requests and suggestions. Without users, there is no reason for the project.
Contributors
Contributors are individuals who contribute to the webinos project, but do not have write
access to the source tree. Contributions can be in the form of source code patches, new
code, or bug reports, but could also include web site content like articles, FAQs, or
screenshots. Integration of a Contributors' submissions is subject to the ‘webinos code
contributions acceptance policy’.
The Contributions Policy should provide for the following:1. How open should the contributions acceptance process be - for example should we
provide contributors with access to upload their contributions to the defects management
system and we review them publicly and provide feedback via message boards etc – this
would probably be the best approach given our intent to be open. Alternatively we ask for
Contributions to be provided to an email address and these are then provided to the
appropriate component maintainer etc for review/approval with feedback provided directly
to the contributor only.
2. Should webinos choose a different (simpler) process for bugs/small contributions versus
large contributions. For example incremental bug fixes/enhancements supplied as modified
source code versus a substantial collection of modified/enhanced classes supplied as source
code which implies that testing/integration could be a complex and time-consuming task.
Presume yes, but actual details still to be determined
3. The timeframe that webinos commits to developers that will review and provide
feedback/acceptance of contributions. Ideally this should be as quickly as possible, for
example 7 days.
4. All contributions must be accompanied by the Contributions License Agreement. No
anonymous contributions will be accepted
5. The nature and amount of IPR vetting/review that webinos needs to carry out as part of
the contributions acceptance process
6. The code will be accepted by the component Committer, who will also be responsible for
integrating that code into the main codeline.
7. Contributions can be either code, examples, tests, bugs or patches as well as large
component pieces of code.
8. A contributor may become a committer as per the Committer policy
9. Webinos will provide monthly statistics on number of contributions received, no of
contributions accepted, contributions status, contributions provenance (from whom
contributions are received) etc.
Committers
Committers have write access to the source tree, either for the individual modules they are
working on, or in some cases global write permissions everywhere in the source code
page: 224 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 225 of 229
Target Platforms, target Requirements and Platform IPRs
management system.
A committer cannot commit code without a completed CLA. They are responsible for
merging contributors’ patches, bug fixes, and new code from the development branch of the
source tree into the stable branch. Committers are responsible for making sure that these
contributions do not break the build. Committers are also responsible for maintaining code
for that particular module.
The Committers Policy (still to be written in detail)
1. All contributors can become committers to the webinos project
2. Committers are appointed on the basis of meritocracy, therefore he who contributes the
most and has the most knowledge of a component area will earn commit rights to that
component area
3. Committers are nominated by other committers in the first instance and then the rules of
meritocracy apply
4. Committers will provide timely feedback to contributors regarding the status of
contributions (via either messageboards/forums or emails tba)
Working Groups
Each component within webinos is part of a Working Group. The Working Groups are
responsible for managing the entire project, helping to create policies by consensus
Code contributions are encouraged and welcomed to webinos. All code is contributed via
our bug-fixing repository. Code contributions will be reviewed to ensure that they are
compliant with our chosen Contributions License and webinos does not accept anonymous
contributions.
Webinos Policies
1. Commit Policy (how to become a committer, responsibilities of a committer etc)
2. Contributions Policy (how to commit code, code acceptance and review process, appeals
process)
3. Security Policy
Proposed licensing model for webinos open source project
As per our findings in WP2.3, webinos should use an Open Source Initiative approved license
which also provides strong copyright and patent protection to the users of webinos whilst
also permitting as broad and deep proliferation of webinos as is possible. To this extent, and
where possible, we choose the Apache License, version 2.0 (see Appendix II). This license is
used by a number of open source projects such as Google’s Android and has many benefits
in that it is compatible with copyleft licenses such as GPL/LGPL, can be included by reference
rather than listed in every source file and provides a patent license to all users of the
software.
Secondly there are the real-world constraints of using existing OSS projects and their
respective license regimes that need to be identified for webinos. For example, we
understand that there is a very strong likelihood that webinos will re-use existing OSS such
as:-
page: 225 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 226 of 229
Platform/domain
Web Runtime
QT
Mozilla
PC Domain
Windows 7
Linux/variants
Mobile Tablets
Android
Linux (raw)
Home Media
MythTV
MeeGo
Automotive
MeeGo IVI (Genivi)
Android (Autolinq)
Target Platforms, target Requirements and Platform IPRs
Notes
License Type
Primary
Primary
GPL/LGPL/Commercial
MPL/GPL/LGPL (Tri-License)
Primary
Proprietary
Secondary GPL
Primary
Apache + various other Licenses inc GPL/LGPL
Secondary GPL
Secondary GPL and some LGPL
Primary
GPL and LGPL
Primary
GPL and LGPL
Secondary Apache + various other Licenses inc GPL/LGPL
For example, not all OSS licenses are compatible with each other and there are formal
compliance requirements that must be met for all OSS licenses; which will also be a
requirement for webinos. Therefore we need to analysis the implications of using these OSS
on the licensing (and governance) regime chosen by webinos, once the architecture of
webinos has been determined and we know which OSS will comprise webinos. As
importantly we will be targeting various Application platforms, cloud and device
frameworks, upon which webinos will be run and the licensing regime used by each of these
platforms will also need to considered to achieve as strong a License compatibility regime as
possible. The webinos license strategy should support the successful proliferation of
webinos across all industries and domains .
Trademarks and Marketing
In terms of trademarks we should consider:
- How webinos trademarks will be licensed
- What are the requirements /costs/ benefits for compatibility testing - i.e. at a platform vs.
applications level
Actions to Implement Licensing & Governance Recommendations
To recap, our recommendations for webinos as an open source project are:Recommendation No 1
Source code is available with no discrimination by either developer category, timeliness of
access or accessibility to all of the source code:webinos must be set-up as an ‘open’ project, with full source code access publicly available
and all development branches must also be publicly available. There will be no
discrimination against developers in terms of access to source code. In order to accrue
page: 226 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 227 of 229
Target Platforms, target Requirements and Platform IPRs
economies of scale via openness all consortium members (and others) must be discouraged
from creating proprietary branches of the development branch, notwithstanding the need
for some groups to create specific extensions/optimisations to meet their own needs.
We should also consider where the webinos repository will live and which repository/bug
tracking system will be used.
Recommendation No 2
webinos should use an Open Source Initiative (OSI) approved open source license and ideally
a license that is permissive such that commercial entities can use the license with least
concern regarding copyleft or other obligations/restrictions:It is already decided that the webinos open source Project will use the Apache License. This
license is commonly used in many open source projects and as such will be readily
understood and accepted by the developer community and corporate organisations.
Recommendation No 3
All developer support mechanisms e.g. source code repositories, developer tools, forums,
mailing lists, bug tracking databases etc should be freely available to all developers:As part of the webinos open source project creation, we must research, identify and set-up
appropriate tools (repositories, bug-tracking systems etc) and communications media
(forums, mailing lists etc).
Recommendation No 4
The project roadmap should be completely open and available with regular ‘call for
contributions’ to the roadmap:The consortium members are already starting to identify specifications for webinos (usecase analysis) – this can be used as a basis to form a roadmap and also to issues calls for
contributions. It makes good sense to do this whilst also considering how these
specifications can also be interpreted to ‘scratch the itch’ of the developer community i.e.
what problems are we solving that are problems which the developer community would like
solved.
Recommendation No 5
Decision-making processes and project meeting minutes etc. should be transparent and
freely accessible to all.
There are two aspects to this requirement. Firstly there needs to be an agreed decisionmaking process with regard to managing the source code of the project. This decisionmaking process will include decisions regarding how contributions are accepted (what IPR
checking etc is required?) and by whom (who are committers to the project). Secondly we
also need to make webinos as open and transparent as is possible. Therefore there should
be a webinos Wiki, Blog, Events, Forum, IRC, Mailing Lists, Members list and open Meeting
Minutes etc. which details how and why decisions are made within the project.
Actions to achieve - create a process and policy for contributions acceptance (and rejection).
Create a webinos committers policy i.e. who are committers, how do you become a
committer, R&Rs of committers etc
page: 227 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 228 of 229
Target Platforms, target Requirements and Platform IPRs
Recommendation No 6
Code contributions and acceptance process should be clear and as simple as possible
It is yet to be decided if there will be a formal IP review as part of the contributions
acceptance process. Whilst this would be ideal, it does also require a lot of resource and
time and we need to be careful that it does not create a bottleneck with regard to
acceptance of contributions.
Recommendation No 7
It should be possible to identify from whom code contributions have been provided, both at
a developer and organisational level
The contributions acceptance process should also mandate that the copyright notice identify
the contributor. This is needed to a. Validate ownership of the code and b. Allow us to track
the ownership for reporting purposes. Anonymous contributions should not be accepted, we
should be able to trust the provenance of the contributions via the contributor.
Recommendation No 8
It should be possible to identify who project committers are.
There should be a publicly available listing of all developers that are committers and how
long they have been committers for and which specific features of webinos they are
committers for.
Action to achieve - selection and election of project committers (those developers who can
actually ‘commit’ code to the project) should be transparent and equitable i.e. it should be
possible for all developers to become committers. Webinos requires a written policy which
states how developers can be nominated, selected and elected to position of committers.
Initially at least it is likely that only Consortium member developers will be in this position
but within about 6 months of the project commencing we should aim to have this up and
running. Ensure that committers are identified on the Wiki
Recommendation No 9
The project contribution license should provide a copyright and patent license to the project
It is already mostly agreed that this will be the ICLA used by Nokia, Android and Apache –
see below for links
http://www.apache.org/licenses/icla.txt
http://source.android.com/source/cla-corporate.html
http://qt.nokia.com/merge_requests/agreement/
Recommendation No 10
Trademarks can be used to promote the project and support compliance processes (if such
compliance frameworks are required).
Action to achieve - need to discuss further with consortium members|Register webinos
Trademark
Recommendation No 11
There should be minimal constraints on go-to-market channels (incl. app stores) for
applications created by/for the project.
page: 228 of 229
Target Platforms, target Requirements and Platform IPRs
FP7-ICT-2009-5 257103
page: 229 of 229
Target Platforms, target Requirements and Platform IPRs
Recommendation No 12
The community structure should be as equitable as possible, without tiered rights.
Action to achieve - need to discuss further with consortium members
Recommendation No 13
webinos will be set-up as a not-for-profit Foundation.
page: 229 of 229
Target Platforms, target Requirements and Platform IPRs