Top Banner
THE ACTOR MODEL APPLIED TO THE RASPBERRY PI AND THE EMBEDDED DOMAIN Omer Kilic || @OmerK Erlang Solutions Ltd. 1
61

THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

Jan 12, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

THE ACTOR MODEL APPLIED TO THE RASPBERRY PI AND

THE EMBEDDED DOMAIN

Omer Kilic || @OmerKErlang Solutions Ltd.

1

Page 2: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Agenda

● Current state of Embedded Systems

● Overview of the Actor Model

● Erlang Embedded Project

● Modelling and developing systems using Erlang

● Experiments with the Raspberry Pi

● Future Explorations

● Q & A

2

Page 3: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Embedded Systems

An embedded system is a computer system designed for

specific control functions within a larger system, often

with real-time computing constraints. It is embedded

as part of a complete device often including hardware

and mechanical parts. By contrast, a general-purpose

computer, such as a personal computer (PC), is

designed to be flexible and to meet a wide range of

end-user needs– Infinite Wisdom of Wikipedia

3

Page 4: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

#include “stats.h”

Source: http://embedded.com/electronics-blogs/programming-pointers/4372180/Unexpected-trends

4

Page 5: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Current Challenges

● Complex SoC platforms● “Internet of Things”

● Connected and distributed systems

● Multicore and/or heterogeneous devices● Time to market constraints

5

Page 6: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Embedded Systems

● Bare Metal● No underlying OS or high level abstractions

● RTOS● Minimal interrupt and thread switching latency,

scheduling guarantees, minimal jitter

● Embedded Linux● Slimmed down Linux, with hardware interfaces

6

Page 7: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Embedded Systems

● Bare Metal● No underlying OS or high level abstractions

● RTOS● Minimal interrupt and thread switching latency,

scheduling guarantees, minimal jitter

● Embedded Linux● Slimmed down Linux, with hardware interfaces

6

Page 8: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

RTOS Concepts

● Notion of “tasks”● OS-supervised interprocess messaging

● Shared memory

● Mutexes/Semaphores/Locks● Scheduling

● Pre-emptive: event driven

● Round-robin: time multiplexed

7

Page 9: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Embedded Linux

● Not a new concept, increased popularity due to abundant supply of cheap boards● Raspberry Pi, Beagleboard/Beaglebone, Gumstix et al.

● Familiar set of tools for software developers, new territory for embedded engineers● No direct mapping for RTOS concepts, expecially

tasks

● Complex device driver framework● Here be dragons

8

Page 10: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

● Proposed in 1973 by Hewitt, Bishop, and Steiger● “Universal primitives of concurrent computation”

● Building blocks for modular, distributed and concurrent systems

● No shared-state, self-contained and atomic● Implemented in a variety of programming

languages

9

Page 11: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

● Asynchronous message passing● Messages kept in a mailbox and processes in the

order they are received in

● Upon receiving a message, actors can:● Make local decisions and change internal state

● Spawn new actors

● Send messages to other actors functionality

mailbox

state

10

Page 12: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

11

Page 13: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher

11

Page 14: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher{calc, Values}

11

Page 15: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher

worker_a

worker_b

worker_c

{calc, Values}

11

Page 16: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher

worker_a

worker_b

worker_c

{calc, ValSubsetA}

{calc, ValSubsetB}

{calc, ValSubsetA}

{calc, Values}

11

Page 17: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher

worker_a

worker_b

worker_c

{result, ResSubsetA}

{result, ResSubsetB}

{result, ResSubsetC}

12

Page 18: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Actor Model

number_cruncher

worker_a

worker_b

worker_c

{result, ResSubsetA}

{result, ResSubsetB}

{result, ResSubsetC}

{result, Values}

12

Page 19: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Limitations of the Actor Model

● No notion of inheritance or general hierarchy● Specific to the language and library implementation

● Asynchronous message passing can be problematic for certain applications● Ordering of messages received from multiple

processes

● Abstract definition may lead to inconsistency in larger systems● Fine/Coarse Grain

13

Page 20: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Erlang Embedded

● Knowledge Transfer Partnership between Erlang Solutions and University of Kent● Aim of the project: Bring the benefits of concurrent

systems development using Erlang to the field of embedded systems; through investigation, analysis, software development and evaluation.

● http://erlang-embedded.com

14

Page 21: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Why Erlang

● Implements the Actor model● Battle-tested at Ericsson and many other

companies● Originally designed for embedded applications

● Support for concurrency and distributed systems out of the box

● Easy to create robust systems● (...and more!)

15

Page 22: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

High Availability/Reliability

● Simple and consistent error recovery and supervision hierarchies

● Built in fault-tolerance● Isolation of Actors

● Support for dynamic reconfiguration● Hot code loading

16

Page 23: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

spawn(math, fact, [5])

Pid1

Creating an Actor

17

Page 24: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

spawn(math, fact, [5])

math:fact(5)

Pid2

Pid1

Creating an Actor

17

Page 25: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Pid2Pid1

Pid2 ! {self(),msg}

Communication

18

Page 26: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Pid2Pid1

Pid2 ! {self(),msg}

{Pid1,msg}

Communication

18

Page 27: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidBPidA

link(PidB)

Bidirectional Links

19

Page 28: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidBPidA

link(PidB)

Bidirectional Links

19

Page 29: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Process Error Handling

● Let it Fail!● Abstract error handling away from the modules

● Leaner modules

● Supervision hierarchies

SupervisorWorker

20

Page 30: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidA PidB

PidC

Propagating Exit Signals

21

Page 31: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidA PidB

PidC

Propagating Exit Signals

21

Page 32: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidB

{'EXIT', PidA, Reason}

PidC

Propagating Exit Signals

21

Page 33: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidB

PidC

Propagating Exit Signals

21

Page 34: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidC

{'EXIT', PidB, Reason}

Propagating Exit Signals

21

Page 35: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Propagating Exit Signals

21

Page 36: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidA

PidC

PidB

Trapping Exits

22

Page 37: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidA

PidC

PidB

Trapping Exits

22

Page 38: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

{'EXIT', PidA, Reason}

PidC

PidB

Trapping Exits

22

Page 39: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

PidC

PidB

Trapping Exits

22

Page 40: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

External Interfaces

● Native Implemented Functions (NIFs) and ports used to interface external world to the Erlang runtime.

app

hw_if hw_driver.c

Erlang VM

23

Page 41: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Erlang, the Maestro

(flickr/dereckesanches)

24

Page 42: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Raspberry Pi

● 700 MHz ARM11● 256 MB DDR2 RAM● 10/100Mb Ethernet● 2x USB 2.0● (HDMI, Composite

Video, 3.5mm Stereo Jack, DSI, CSI-2)

$35

25

Page 43: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Raspberry Pi in Education● The Raspberry Pi Foundation is a

UK registered charity.

● Mission statement: "...to promote

the study of computer science and

related topics, especially at school

level, and to put the fun back into

learning computing."

● Future Engineers/Programmers!

(flickr/lebeus)

26

Page 44: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Raspberry Pi Peripherals

● GPIO● UART● I2C● I2S● SPI● PWM● DSI● CSI-2

27

Page 45: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

The ErlBuggy!

28

Page 46: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

ErlBuggy

http://vimeo.com/48375416

29

Page 47: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Example: GPIO

pin17

proc_a

{state, high}

30

Page 48: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Example: GPIO

pin17

proc_a

{state, high}

proc_b

{sta

te, l

ow} proc_c

{state

, high

}

30

Page 49: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Example: GPIO

pin17

proc_a

{state, high}???

proc_b

{sta

te, l

ow} proc_c

{state

, high

}

30

Page 50: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Example: GPIO

GPIO

proc_a

pin17

{state, 17, high}

proc_b

{state, 1

7, low}

proc_c

{state, 17, high}

31

Page 51: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

GPIO Proxy

● Replaces ‘locks’ in traditional sense of embedded design● Access control/mutual exclusion

● Can be used to implement safety constraints● Toggling rate, sequence detection, direction

control, etc.

32

Page 52: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Fine Grain Abstraction● Advantages

● Application code becomes simpler

● Concise and shorter modules

● Testing becomes easier

● Code re-use (potentially) increases

● Disadvantage ● Architecting fine grain systems is difficult

33

Page 53: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Component API

Universal Peripheral/Component Modules

Peripheral API

Peripheral Implementation Platform Specific

Universal

34

Page 54: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Universal Peripheral/Component Modules

An Example:

TMP102 Temperature Sensor

I2C Bus Driver

Linux Kernel Driver

Sensor API

I2C Bus Driver

Linux sysfs

TMP102 Temperature Sensor

I2C Bus Driver

Linux Kernel Driver

Sensor API

I2C Bus Driver

BSD sysctl

TMP102 Temperature Sensor

I2C Bus Driver

Linux Kernel Driver

Sensor API

I2C Bus Driver

mmap()'ed register voodoo

Temperature Sensor with I2C Interface

35

Page 55: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

TI OMAP Reference System

36

Page 57: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Ponte Prototype

38

Page 58: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Ponte Prototype

39

Page 59: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Hardware Simulator (WIP)

40

Page 60: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Erlang Embedded Training Stack

● A complete package for people interested in developing the next generation of concurrent/distributed Embedded Systems

● Training Modules● Embedded Linux Primer

● Erlang/OTP 101

● Erlang Embedded Framework

Erlang Embedded Framework

Erlang/OTP 101

Embedded Linux Primer

Hardware Platform

Get in touch if you’re interested.

41

Page 61: THE ACTOR MODEL APPLIED TO THE RASPBERRY …gotocon.com/dl/goto-aar-2012/slides/OmerKilic_TheActor...Overview of the Actor Model Erlang Embedded Project Modelling and developing systems

01/10/2012 GOTO Aarhus

Thank you

Any sufficiently complicated concurrent program in

another language contains an ad-hoc, informally-

specified, bug-ridden, slow implementation of half of

Erlang.– Robert Virding

Co-Inventor of Erlang

● http://erlang-embedded.com● [email protected] ● @ErlangEmbedded

42