SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Ähnlich wie Embedded Erlang Development Environment

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
 

Ähnlich wie Embedded Erlang Development Environment (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
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
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
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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...
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Embedded Erlang Development Environment

  • 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