Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Pre-integrated premium apps
  • Pre-integrated app store
  • Voice enabled
  • Lightningtm App Dev Language

WPEFramework goal and Overview

Javascript enabler

Goal is to enable/bridge embedded low level C/C++ technology to the Javascript world and it is done by using Javascript enabler.

draw.io Diagram
bordertrue
diagramNameprocess
simpleViewerfalse
width400
linksauto
tbstyletop
lboxtrue
diagramWidth400
revision3

Architecture

Thunder Framework Overview

Application framework is built on Hardware abstraction Layer, on top of abstraction layer there is a WPE Framework. WPE framework itself dispatched internally that actually starts micro and nano services. Micro and Nano services are exposed to certain interfaces so at the end the system can locked down and executing.

...

  • Interconnection between plugins is  based on interfaces.

Architectural focus-page 2

Agnostic to process boundaries (JSONRPC/COMRPC)

...

Integral implementation of security features 

  • LXC containarisationcontainerization, including users and groups per processes.

...

  • There is NO dependency between the plugins. Use subsystems !!!!

RPC mechanisms deployed-page 3

JSONRPC/COMRPC Process transparency

...

  • RESTFUL (Web World)
  • WebSocket (Web World)

Execution Architecture - page 4

  • If a command comes in on settop box ,it will actually be turn into message for eg in above figure ,the Webkit browser will send this message through pipeline to framework.
    Three pipelines coming out of the settop box, different pipelines for different kind of messages.
  • Received message will be deserialized that is getting back to original message and do get cpu usage. After which, we will look at the message where it has to sent to, that message will be packed with where it will send to and it is forward on to threadpool.
  • The threadpool are actually multiple threads maintained by multiple persons. Person pickups the job and secure it ,As in diagram the person is evaluating CPU Usage using machine, CPU Usage value is noted down on the message(eg: CPU usage is 50% in above figure) and send back to from where we initially got the message.
  • Here messages are handled by thread switch. One is communication thread and the other is thread that handled our request. This way the amount of threads used in the system will not increase when multiple connections are created, the more connections you create it will not lead to multiple threadings .

Services (Nano/micro) available in RDK4

Resources opened up through JSONRPC

...