SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
Embedded Erlang
Development environment for Embedded Erlang
Fredrik Andersson, Niclas Axelsson, Fabian Bergström, Christoffer Ferm,
Henrik Nordh, Gustav Simonsson
Erlang Solutions Ltd.
FSCONS
Gothenburg, November 2010
Erlang Solutions Ltd.
Copyright 2010 Erlang Solutions, Ltd
Background
• Thesis projects
– Uppsala University and Erlang Solutions
• Embedded Platform
– OS platform for embedded devices
• Embedded Erlang
– Erlang on embedded devices
• Erlang VM Extensions
– Better hardware utilization
• Framework for data sharing
– Automatic data sharing
Copyright 2010 Erlang Solutions, Ltd
Motivation
Copyright 2010 Erlang Solutions, Ltd
Erlang
• Development started 1987 at Ericsson Computer Science Lab.
Released as opensource 1998, Ericsson is still the active
maintainer
• Native support for SMP and Concurrency using message passing
• History in Telecom buisness. Designed with Robustness and Low
Down Time in mind.
• Used by among others, Facebook (Facebook chat), T-Mobile
(WAP, SMS), Klarna (e-commerce)
Embedded Platform
Henrik Nordh, Gustav Simonsson
Copyright 2010 Erlang Solutions, Ltd
Embedded OS Usage
Copyright 2010 Erlang Solutions, Ltd
Goals
• Minimal Linux system with Erlang and tools
• Different versions for different purposes
• Easy-to-install package
• Reduce time-to-productivity for embedded Erlang developers
Copyright 2010 Erlang Solutions, Ltd
Metrics
• Evaluating Linux distributions
– memory
– disk usage
– boot times
– harware support
• Embedded focus
Copyright 2010 Erlang Solutions, Ltd
Allocated Memory After Boot
Ubuntu-10.04-minimal-armel
Ångström console-image
Debian-5.0-lenny-arm
Ångström minimal-image
Modified Ångström
0 5 10 15 20 25 30
Copyright 2010 Erlang Solutions, Ltd
Root File System Size
Ubuntu-10.04-minimal-armel
Ångström console-image
Debian-5.0-lenny-arm
Ångström minimal-image
Our Modified Ångström
0 50 100 150 200 250 300
Copyright 2010 Erlang Solutions, Ltd
The Ångström Distribution
• Linux for embedded devices
• Smallest image uses 11 MB disk, 16.2 MB memory
• Default distribution for several devices
– BeagleBoard
– Gumstix
– Pandora (portable gaming console)
• Easy to customise with OpenEmbedded
Copyright 2010 Erlang Solutions, Ltd
OpenEmbedded
• Framework for building embedded Linux Distributions
• Several hardware architectures
• 1000+ packages pre-defined
• Quite complex, but powerful
• Handles dependencies, sources, configuration, cross-
compilation etc.
Copyright 2010 Erlang Solutions, Ltd
uClibc
• Much smaller than glibc, smaller than EGLIBC
• Source compatible with glibc, not binary compatible
• Highly configurable
Copyright 2010 Erlang Solutions, Ltd
BusyBox
• Smaller versions of UNIX utilities in a single binary
• Written with size-optimisation and limited resources in mind
• Very modular and configurable
• Well-tested against uClibc
Copyright 2010 Erlang Solutions, Ltd
Maintaining Different Versions
• “Minimal”
• “Debug”
• “Extended”
• Binary installation packages for common platforms
• Latest Erlang version included
Adapting Erlang for
Embedded Systems
Fredrik Andersson, Fabian Bergström
Copyright 2010 Erlang Solutions, Ltd
Goals
The Virtual machine must be adapted to the limited resources of
embedded systems.
• Low RAM consumption
– How can we reduce RAM usage?
– How will this impact performance?
• Low Disk usage
– How can we keep disk usage low?
– Performance?
• Benchmarks, analysis and documentaion.
Copyright 2010 Erlang Solutions, Ltd
Progress, Memory Usage
70k
80k
70k
60k
60k60k
60k
60k 60k
70k
80k
60k
60k
60k 60k
60k 60k
70k
60k
60k 60k
60k
Copyright 2010 Erlang Solutions, Ltd
Progress, Disk Usage
Vanilla Erlang
Compressed Applications
-Os, strip, stripped beams
0
1
2
3
4
5
6
7
Size on disk
Megabytes
Copyright 2010 Erlang Solutions, Ltd
Progress, Hardware
• VM compiled for Gumstix, BeagleBoard
– BeagleBoard is a prototyping platform
– Gumstix is a much smaller system for commercial use
• TI OMAP35x
– Another thesis project for OpenGL and DSP from Erlang
Copyright 2010 Erlang Solutions, Ltd
The Future
• Support for more hardware
– Pandaboard, utilizing the latest multicore ARM processor
• Documentation for embedded Erlang development
– How should you utilize Erlang tools for handling project mangement
• Real world application
– Small measuring nodes in larger distributed systems
Adding support for special purpose
computing units to the Erlang VM
Christoffer Ferm
Copyright 2010 Erlang Solutions, Ltd
Erlang VM Charasterics
• Good support for SMP
– Added in 2006
• Easy approach to utilizing SMP for developers
– Message passing
– Lightweight processes
Copyright 2010 Erlang Solutions, Ltd
Modern Processing Units
• CPU
– Already supported
• GPU
– OpenCL
– Other GPGPU
• Digital Signal Processor
• Cryptoprocessors
Framework for Data Exchange
Between Mobile Nodes
Niclas Axelsson
Copyright 2010 Erlang Solutions, Ltd
Introduction
• Mobile devices with limited resources
– Phones
– Cars
• Dynamic ad-hoc networks
• Delay tolerant data
Copyright 2010 Erlang Solutions, Ltd
Features
• Written in Erlang
• Simple to configure
• Takes care of the communication between nodes
• Handles storage of data
• A subscription system
Copyright 2010 Erlang Solutions, Ltd
Example Applications
• Music player – share songs
• Announcement systems
• Statistics gathering
The erlang-embedded homepage
Copyright 2010 Erlang Solutions, Ltd
www.erlang-embedded.com
• First release “Stag Beetle” is already out.
– Next release is scheduled around the 16th
of november
• Mailinglist
– erlang-embedded@googlegroups.com
• Github
– http://github.com/esl/erlang-embedded
Copyright 2010 Erlang Solutions, Ltd
Thank you
Questions?
Copyright 2010 Erlang Solutions, Ltd
The Hardware
Copyright 2010 Erlang Solutions, Ltd
Embedded Market
• 2006: 4 billion embedded processors sold worldwide
• 2010: 16 billion
• 2020: 40 billion
• Intel estimates 15 billion will be connected in swarms or
over the Internet by 2015
• ARM announced embedded multi-core CPU in okt 2009

Contenu connexe

Similaire à Embedded erlang-fscons-2010

Long and winding road - 2014
Long and winding road  - 2014Long and winding road  - 2014
Long and winding road - 2014Connor McDonald
 
IoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukeboxIoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukeboxMickaël Rémond
 
Nerves Project Intro to ErlangDC
Nerves Project Intro to ErlangDCNerves Project Intro to ErlangDC
Nerves Project Intro to ErlangDCFrank Hunleth
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureVinoth Rajagopalan
 
Distributed Communication and Control for a Network of Melting Probes in Extr...
Distributed Communication and Control for a Network of Melting Probes in Extr...Distributed Communication and Control for a Network of Melting Probes in Extr...
Distributed Communication and Control for a Network of Melting Probes in Extr...Real-Time Innovations (RTI)
 
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...Codemotion
 
"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talkCLOUDIAN KK
 
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...Russell Pavlicek
 
z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!Michael Erichsen
 
Aberdeen Oil & Gas Event - AWS Partner Eurotech
Aberdeen Oil & Gas Event - AWS Partner EurotechAberdeen Oil & Gas Event - AWS Partner Eurotech
Aberdeen Oil & Gas Event - AWS Partner EurotechAmazon Web Services
 
Linux [2005]
Linux [2005]Linux [2005]
Linux [2005]Raul Soto
 
Course 101: Lecture 4: A Tour in RTOS Land
Course 101: Lecture 4: A Tour in RTOS Land Course 101: Lecture 4: A Tour in RTOS Land
Course 101: Lecture 4: A Tour in RTOS Land Ahmed El-Arabawy
 
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex system
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex systemIbm symp14 referent_marcus alexander mac dougall_ibm x6 und flex system
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex systemIBM Switzerland
 
OpenPOWER Acceleration of HPCC Systems
OpenPOWER Acceleration of HPCC SystemsOpenPOWER Acceleration of HPCC Systems
OpenPOWER Acceleration of HPCC SystemsHPCC Systems
 
MOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxMOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxkarthiksmart21
 

Similaire à Embedded erlang-fscons-2010 (20)

Linux para iniciantes
Linux para iniciantesLinux para iniciantes
Linux para iniciantes
 
Long and winding road - 2014
Long and winding road  - 2014Long and winding road  - 2014
Long and winding road - 2014
 
IoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukeboxIoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukebox
 
Nerves Project Intro to ErlangDC
Nerves Project Intro to ErlangDCNerves Project Intro to ErlangDC
Nerves Project Intro to ErlangDC
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
 
Distributed Communication and Control for a Network of Melting Probes in Extr...
Distributed Communication and Control for a Network of Melting Probes in Extr...Distributed Communication and Control for a Network of Melting Probes in Extr...
Distributed Communication and Control for a Network of Melting Probes in Extr...
 
Sundance's presentation at B:RAI 2020
Sundance's presentation at B:RAI 2020Sundance's presentation at B:RAI 2020
Sundance's presentation at B:RAI 2020
 
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...
Luciano Resende - Scaling Big Data Interactive Workloads across Kubernetes Cl...
 
Cpp htp5e 01
Cpp htp5e 01Cpp htp5e 01
Cpp htp5e 01
 
Erlang os
Erlang osErlang os
Erlang os
 
"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk
 
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
 
z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!
 
Aberdeen Oil & Gas Event - AWS Partner Eurotech
Aberdeen Oil & Gas Event - AWS Partner EurotechAberdeen Oil & Gas Event - AWS Partner Eurotech
Aberdeen Oil & Gas Event - AWS Partner Eurotech
 
Linux [2005]
Linux [2005]Linux [2005]
Linux [2005]
 
Course 101: Lecture 4: A Tour in RTOS Land
Course 101: Lecture 4: A Tour in RTOS Land Course 101: Lecture 4: A Tour in RTOS Land
Course 101: Lecture 4: A Tour in RTOS Land
 
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex system
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex systemIbm symp14 referent_marcus alexander mac dougall_ibm x6 und flex system
Ibm symp14 referent_marcus alexander mac dougall_ibm x6 und flex system
 
Deluxe techperl
Deluxe techperlDeluxe techperl
Deluxe techperl
 
OpenPOWER Acceleration of HPCC Systems
OpenPOWER Acceleration of HPCC SystemsOpenPOWER Acceleration of HPCC Systems
OpenPOWER Acceleration of HPCC Systems
 
MOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxMOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptx
 

Plus de FSCONS

Rikard Fröberg - Events for everybody
Rikard Fröberg - Events for everybodyRikard Fröberg - Events for everybody
Rikard Fröberg - Events for everybodyFSCONS
 
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS Project
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS ProjectMats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS Project
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS ProjectFSCONS
 
Ester Ytterbrink - FOSS for crips
Ester Ytterbrink - FOSS for cripsEster Ytterbrink - FOSS for crips
Ester Ytterbrink - FOSS for cripsFSCONS
 
Evenemang för alla - Presentation på sharea
Evenemang för alla - Presentation på shareaEvenemang för alla - Presentation på sharea
Evenemang för alla - Presentation på shareaFSCONS
 
Appleseed Social Networking
Appleseed Social NetworkingAppleseed Social Networking
Appleseed Social NetworkingFSCONS
 
Distributed Democracy
Distributed DemocracyDistributed Democracy
Distributed DemocracyFSCONS
 
Open Hardware Repository
Open Hardware RepositoryOpen Hardware Repository
Open Hardware RepositoryFSCONS
 
2010 11 eek kangas
2010 11 eek kangas2010 11 eek kangas
2010 11 eek kangasFSCONS
 
The Inanna Project
The Inanna ProjectThe Inanna Project
The Inanna ProjectFSCONS
 
How far are we ready to go?
How far are we ready to go?How far are we ready to go?
How far are we ready to go?FSCONS
 
Glyn moody ethics of intellectual monopolies - fscons 2010
Glyn moody   ethics of intellectual monopolies - fscons 2010Glyn moody   ethics of intellectual monopolies - fscons 2010
Glyn moody ethics of intellectual monopolies - fscons 2010FSCONS
 
Embedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentEmbedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentFSCONS
 
GNU Parallel - Ole Tange
GNU Parallel - Ole TangeGNU Parallel - Ole Tange
GNU Parallel - Ole TangeFSCONS
 
Filesharer? GO TO JAIL!
Filesharer? GO TO JAIL!Filesharer? GO TO JAIL!
Filesharer? GO TO JAIL!FSCONS
 
Etik och it
Etik och itEtik och it
Etik och itFSCONS
 
Kaizendo: Customizable schoolbooks
Kaizendo: Customizable schoolbooksKaizendo: Customizable schoolbooks
Kaizendo: Customizable schoolbooksFSCONS
 
Are you weak in the middle?
Are you weak in the middle?Are you weak in the middle?
Are you weak in the middle?FSCONS
 
Multitouching your apps
Multitouching your appsMultitouching your apps
Multitouching your appsFSCONS
 
Who are the free users
Who are the free usersWho are the free users
Who are the free usersFSCONS
 

Plus de FSCONS (20)

Rikard Fröberg - Events for everybody
Rikard Fröberg - Events for everybodyRikard Fröberg - Events for everybody
Rikard Fröberg - Events for everybody
 
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS Project
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS ProjectMats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS Project
Mats Lundälv - Open Accessibility Everywhere – Presenting the AEGIS Project
 
Ester Ytterbrink - FOSS for crips
Ester Ytterbrink - FOSS for cripsEster Ytterbrink - FOSS for crips
Ester Ytterbrink - FOSS for crips
 
Evenemang för alla - Presentation på sharea
Evenemang för alla - Presentation på shareaEvenemang för alla - Presentation på sharea
Evenemang för alla - Presentation på sharea
 
Appleseed Social Networking
Appleseed Social NetworkingAppleseed Social Networking
Appleseed Social Networking
 
Distributed Democracy
Distributed DemocracyDistributed Democracy
Distributed Democracy
 
Open Hardware Repository
Open Hardware RepositoryOpen Hardware Repository
Open Hardware Repository
 
2010 11 eek kangas
2010 11 eek kangas2010 11 eek kangas
2010 11 eek kangas
 
The Inanna Project
The Inanna ProjectThe Inanna Project
The Inanna Project
 
Fcons
FconsFcons
Fcons
 
How far are we ready to go?
How far are we ready to go?How far are we ready to go?
How far are we ready to go?
 
Glyn moody ethics of intellectual monopolies - fscons 2010
Glyn moody   ethics of intellectual monopolies - fscons 2010Glyn moody   ethics of intellectual monopolies - fscons 2010
Glyn moody ethics of intellectual monopolies - fscons 2010
 
Embedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentEmbedding Linux For An Automotive Environment
Embedding Linux For An Automotive Environment
 
GNU Parallel - Ole Tange
GNU Parallel - Ole TangeGNU Parallel - Ole Tange
GNU Parallel - Ole Tange
 
Filesharer? GO TO JAIL!
Filesharer? GO TO JAIL!Filesharer? GO TO JAIL!
Filesharer? GO TO JAIL!
 
Etik och it
Etik och itEtik och it
Etik och it
 
Kaizendo: Customizable schoolbooks
Kaizendo: Customizable schoolbooksKaizendo: Customizable schoolbooks
Kaizendo: Customizable schoolbooks
 
Are you weak in the middle?
Are you weak in the middle?Are you weak in the middle?
Are you weak in the middle?
 
Multitouching your apps
Multitouching your appsMultitouching your apps
Multitouching your apps
 
Who are the free users
Who are the free usersWho are the free users
Who are the free users
 

Dernier

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Dernier (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Embedded erlang-fscons-2010

  • 1. Embedded Erlang Development environment for Embedded Erlang Fredrik Andersson, Niclas Axelsson, Fabian Bergström, Christoffer Ferm, Henrik Nordh, Gustav Simonsson Erlang Solutions Ltd. FSCONS Gothenburg, November 2010 Erlang Solutions Ltd.
  • 2. Copyright 2010 Erlang Solutions, Ltd Background • Thesis projects – Uppsala University and Erlang Solutions • Embedded Platform – OS platform for embedded devices • Embedded Erlang – Erlang on embedded devices • Erlang VM Extensions – Better hardware utilization • Framework for data sharing – Automatic data sharing
  • 3. Copyright 2010 Erlang Solutions, Ltd Motivation
  • 4. Copyright 2010 Erlang Solutions, Ltd Erlang • Development started 1987 at Ericsson Computer Science Lab. Released as opensource 1998, Ericsson is still the active maintainer • Native support for SMP and Concurrency using message passing • History in Telecom buisness. Designed with Robustness and Low Down Time in mind. • Used by among others, Facebook (Facebook chat), T-Mobile (WAP, SMS), Klarna (e-commerce)
  • 6. Copyright 2010 Erlang Solutions, Ltd Embedded OS Usage
  • 7. Copyright 2010 Erlang Solutions, Ltd Goals • Minimal Linux system with Erlang and tools • Different versions for different purposes • Easy-to-install package • Reduce time-to-productivity for embedded Erlang developers
  • 8. Copyright 2010 Erlang Solutions, Ltd Metrics • Evaluating Linux distributions – memory – disk usage – boot times – harware support • Embedded focus
  • 9. Copyright 2010 Erlang Solutions, Ltd Allocated Memory After Boot Ubuntu-10.04-minimal-armel Ångström console-image Debian-5.0-lenny-arm Ångström minimal-image Modified Ångström 0 5 10 15 20 25 30
  • 10. Copyright 2010 Erlang Solutions, Ltd Root File System Size Ubuntu-10.04-minimal-armel Ångström console-image Debian-5.0-lenny-arm Ångström minimal-image Our Modified Ångström 0 50 100 150 200 250 300
  • 11. Copyright 2010 Erlang Solutions, Ltd The Ångström Distribution • Linux for embedded devices • Smallest image uses 11 MB disk, 16.2 MB memory • Default distribution for several devices – BeagleBoard – Gumstix – Pandora (portable gaming console) • Easy to customise with OpenEmbedded
  • 12. Copyright 2010 Erlang Solutions, Ltd OpenEmbedded • Framework for building embedded Linux Distributions • Several hardware architectures • 1000+ packages pre-defined • Quite complex, but powerful • Handles dependencies, sources, configuration, cross- compilation etc.
  • 13. Copyright 2010 Erlang Solutions, Ltd uClibc • Much smaller than glibc, smaller than EGLIBC • Source compatible with glibc, not binary compatible • Highly configurable
  • 14. Copyright 2010 Erlang Solutions, Ltd BusyBox • Smaller versions of UNIX utilities in a single binary • Written with size-optimisation and limited resources in mind • Very modular and configurable • Well-tested against uClibc
  • 15. Copyright 2010 Erlang Solutions, Ltd Maintaining Different Versions • “Minimal” • “Debug” • “Extended” • Binary installation packages for common platforms • Latest Erlang version included
  • 16. Adapting Erlang for Embedded Systems Fredrik Andersson, Fabian Bergström
  • 17. Copyright 2010 Erlang Solutions, Ltd Goals The Virtual machine must be adapted to the limited resources of embedded systems. • Low RAM consumption – How can we reduce RAM usage? – How will this impact performance? • Low Disk usage – How can we keep disk usage low? – Performance? • Benchmarks, analysis and documentaion.
  • 18. Copyright 2010 Erlang Solutions, Ltd Progress, Memory Usage 70k 80k 70k 60k 60k60k 60k 60k 60k 70k 80k 60k 60k 60k 60k 60k 60k 70k 60k 60k 60k 60k
  • 19. Copyright 2010 Erlang Solutions, Ltd Progress, Disk Usage Vanilla Erlang Compressed Applications -Os, strip, stripped beams 0 1 2 3 4 5 6 7 Size on disk Megabytes
  • 20. Copyright 2010 Erlang Solutions, Ltd Progress, Hardware • VM compiled for Gumstix, BeagleBoard – BeagleBoard is a prototyping platform – Gumstix is a much smaller system for commercial use • TI OMAP35x – Another thesis project for OpenGL and DSP from Erlang
  • 21. Copyright 2010 Erlang Solutions, Ltd The Future • Support for more hardware – Pandaboard, utilizing the latest multicore ARM processor • Documentation for embedded Erlang development – How should you utilize Erlang tools for handling project mangement • Real world application – Small measuring nodes in larger distributed systems
  • 22. Adding support for special purpose computing units to the Erlang VM Christoffer Ferm
  • 23. Copyright 2010 Erlang Solutions, Ltd Erlang VM Charasterics • Good support for SMP – Added in 2006 • Easy approach to utilizing SMP for developers – Message passing – Lightweight processes
  • 24. Copyright 2010 Erlang Solutions, Ltd Modern Processing Units • CPU – Already supported • GPU – OpenCL – Other GPGPU • Digital Signal Processor • Cryptoprocessors
  • 25. Framework for Data Exchange Between Mobile Nodes Niclas Axelsson
  • 26. Copyright 2010 Erlang Solutions, Ltd Introduction • Mobile devices with limited resources – Phones – Cars • Dynamic ad-hoc networks • Delay tolerant data
  • 27. Copyright 2010 Erlang Solutions, Ltd Features • Written in Erlang • Simple to configure • Takes care of the communication between nodes • Handles storage of data • A subscription system
  • 28. Copyright 2010 Erlang Solutions, Ltd Example Applications • Music player – share songs • Announcement systems • Statistics gathering
  • 30. Copyright 2010 Erlang Solutions, Ltd www.erlang-embedded.com • First release “Stag Beetle” is already out. – Next release is scheduled around the 16th of november • Mailinglist – erlang-embedded@googlegroups.com • Github – http://github.com/esl/erlang-embedded
  • 31. Copyright 2010 Erlang Solutions, Ltd Thank you Questions?
  • 32. Copyright 2010 Erlang Solutions, Ltd The Hardware
  • 33. Copyright 2010 Erlang Solutions, Ltd Embedded Market • 2006: 4 billion embedded processors sold worldwide • 2010: 16 billion • 2020: 40 billion • Intel estimates 15 billion will be connected in swarms or over the Internet by 2015 • ARM announced embedded multi-core CPU in okt 2009