egy könnyűsúlyú javascript motor iot eszközökhöz€¦ · jerryscript egy könnyűsúlyú...

15
UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED Department of Software Engineering JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék

Upload: others

Post on 06-Jun-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UNIVERSITAS SCIENTIARUM SZEGEDIENSISUNIVERSITY OF SZEGEDDepartment of Software Engineering

JerryScript

Egy könnyűsúlyú JavaScript motorIoT eszközökhöz

Kiss ÁkosSZTE Szoftverfejlesztés Tanszék

Page 2: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Dolgok Internete(Internet of Things, IoT)

definíció

Mindennapi tárgyakba ágyazott számítógépek összekapcsolása az Internet segítségével.

2019. október 11. SFD 2019 2

Page 3: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Dolgok Internete→ 2020: 30 milliárd

összekapcsolt eszköz■ Okostelefon,■ okosóra,■ okosotthon,■ okosautó,■ okoshűtő,■ okoskávéfőző, ...

Szenzorok, aktuátorok, hálózat mindenhol

2019. október 11. SFD 2019 3

Page 4: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

IoT megoldások infrastruktúrája

2019. október 11. SFD 2019

“Dolgok”beágyazott rendszerekkel

“felokosított” fizikai valóság

Hálózati infrastruktúravezetékes és vezeték nélküli

hálózatok, átjárók

Felhő infrastruktúraköztesréteg, terheléselosztás,

skálázható adattár és számítási kapacitás, egyéb szolgáltatások

Alkalmazásokegészségügy, közlekedés,

energetika, szórakozás, otthonfelügyelet, …

4

Page 5: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

“Dolgok” és programozásuk Tipikus IoT eszköz:

■ Mikrokontroller által vezérelt■ Kevés memória és tárhely■ Alacsony órajel■ Korlátozott energiabüdzsé■ Szűk sávszélesség

Hagyományosan:■ nagyon speciális szaktudást igényel

Probléma:■ IoT eszközök száma vs. programozók száma

Kihívás (megoldás?):■ a legismertebb (-elterjedtebb, -népszerűbb)

technológiák elérhetősége a legkisebb eszközön is

2019. október 11. SFD 2019 5

Page 6: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Mi a legnépszerűbb? JavaScript!

2019. október 11. SFD 2019

StackOverflow Developer Survey 2019

[https://insights.stackoverflow.com/survey/2019]

The State of the Octoverse 2017

[https://octoverse.github.com]

“JavaScript is the most commonly used programming language on earth.”“More people use JavaScript than use any other programming language.”

“In June 2015, JavaScript overtook Java as most popular tag on Stack Overflow.”[Stack Overflow Developer Survey Results 2016: http://stackoverflow.com/research/developer-survey-2016]

6

Page 7: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

JavaScript?Beágyazott/IoT rendszerekre?!?

2019. október 11. SFD 2019 7

Page 8: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

IoT + JavaScript = JerryScript JavaScript végrehajtó motor az IoT világ

számára■ Könnyű programozhatóság■ Teljes ES5.1 kompatibilitás■ Részleges ES2015 támogatás

(folyamatos fejlesztés alatt)■ Erősen optimalizált: 64 KB RAM és 200 KB Flash

elegendő■ Cél a sub-Raspberry világ támogatása (is)

Nyílt forrás, nyílt projekt:■ https://github.com/jerryscript-project/jerryscript■ http://jerryscript.net

2019. október 11. SFD 2019 8

Page 9: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Történet 2014. július 1.: első commit

■ még zárt forrású projekt 2015. május 6.: első SZTE commit 2015. június 30.: nyílt forráskódúvá vált 2016. április 26.: 1. JerryScript Workshop

■ Samsung, SZTE, ARM, Intel, Pebble 2016. szeptember 2.: JerryScript 1.0 release 2016. november 23-25.: JS Foundation átvette 2017. szeptember 14-15.: 2. JerryScript Workshop

■ @Szeged: SZTE, Samsung, ARM, Intel, TI, Fitbit, Hop.js 2019. augusztus 1.: JerryScript 2.0 release

2019. október 11. 9SFD 2019

Page 10: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Támogatott platformok Operációs rendszer

■ Desktop: Linux, macOS, Windows■ Embedded/RT: Tizen RT, mbed OS, Zephyr, NuttX,

RIOT

Hardver architektúra / Eszköz■ x86, x64■ ARM32, ARM64 / Raspberry, STM32F4 Discovery,

Artik035, Particle Photon, NXP Freedom K64F, RedBear BLE Nano v2, Hexiwear, …

■ Xtensa / ESP8266■ (MIPS)

2019. október 11. 10SFD 2019

Page 11: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Architektúra

2019. október 11. 11

JerryScript Core

C Lib Math Lib

JerryScript Extensions

Embedder Application

Port Implementation

SFD 2019

Page 12: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

AlkalmazhatóságHobbitól professzionálisig

Mert megtehetem

Mert elrejtheti az architekturális különbségeket

Mert egyszerűsítheti a hálózati kommunikációt

Mert egyszerre nyílt, de kontrollált és biztonságos alkalmazásplatformot biztosíthat

2019. október 11. SFD 2019 42

Page 13: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

Nemzetközi együttműködés SZTE Processzor- és

végtermékgyártók Alapítványok, non-

profit szervezetek, és szabványosító testületek

Szoftver keretrendszerek és szolgáltatások

2019. október 11. SFD 2019 13

Page 14: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UN

IVE

RS

ITY

OF

SZ

EG

ED

Dep

artm

ent o

f Sof

twar

e En

gine

erin

gU

NIV

ERSI

TAS

SCIE

NTI

ARU

M S

ZEG

EDIE

NSI

S

JerryScript Workshop 2017 @ SZTE

2019. október 11. SFD 2019 14

Page 15: Egy könnyűsúlyú JavaScript motor IoT eszközökhöz€¦ · JerryScript Egy könnyűsúlyú JavaScript motor IoT eszközökhöz Kiss Ákos SZTE Szoftverfejlesztés Tanszék. U

UNIVERSITAS SCIENTIARUM SZEGEDIENSISUNIVERSITY OF SZEGEDDepartment of Software Engineering

Köszönöm a figyelmet!

[email protected] @akosthekiss

És várjuk a kontribúciókat! ❤ ️