78
FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE COMPUTING COMPUTING CEZARY DYNAK CEZARY DYNAK 2018-10-24 2018-10-24

COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGEFROM EMBEDDED LINUX BUILD SYSTEMS TO EDGECOMPUTINGCOMPUTING

CEZARY DYNAKCEZARY DYNAK

2018-10-242018-10-24

Page 2: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

CEZARY DYNAKCEZARY DYNAK

ABOUT MEABOUT ME

Page 3: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

SOME TIME AGO...SOME TIME AGO...

Wrocław University of Science andTechnologyFaculty of Electronics / W4Department of Cybernetics and Robotics / K7Laboratory 07/C-3 (diablo/panamint)Automatyka i Robotyka / Embedded Robotics

Page 4: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

CURRENTLYCURRENTLY

Node.js developerIoT back-end (cloud)[email protected]

Page 5: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

github.com/cdynaklinkedin.com/in/cdynaklast.fm/user/cezdyn

Page 6: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

PLANPLAN

Embedded Linux build systems -comparison

introductiondefinitionsexamples

Embedded Linux build systems -applications

IoTcloudedge

CDYNAK.GITHUB.IO/LINUX2018CDYNAK.GITHUB.IO/LINUX2018

Page 7: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

LINUXLINUX

CLOUD / DESKTOP / EMBEDDEDCLOUD / DESKTOP / EMBEDDED

Page 8: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

SUPERCOMPUTERSSUPERCOMPUTERS

%

Mac

BSD

Windows

NA/mixed

Unix

Linux

0

10

20

30

40

50

60

70

80

90

100

1995

2000

2005

2010

2015

Unix Linux

NA/mixedBSD

Page 9: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

CLOUDCLOUD

Page 10: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

DESKTOPDESKTOP

WINDOWS

0

10

20

30

40

50

60

70

80

2002

-01

2002

-07

2003

-01

2003

-07

2004

-01

2004

-07

2005

-01

2005

-07

2006

-01

2006

-07

2007

-01

2007

-07

2008

-01

2008

-07

2009

-01

2009

-07

2010

-01

2010

-07

2011

-01

2011

-07

2012

-01

2012

-07

2013

-01

2013

-07

2014

-01

2014

-07

2015

-01

2015

-07

%

0

1

2

3

4

5

2002

-01

2002

-07

2003

-01

2003

-07

2004

-01

2004

-07

2005

-01

2005

-07

2006

-01

2006

-07

2007

-01

2007

-07

2008

-01

2008

-07

2009

-01

2009

-07

2010

-01

2010

-07

2011

-01

2011

-07

2012

-01

2012

-07

2013

-01

2013

-07

2014

-01

2014

-07

2015

-01

2015

-07

%

LinuxOS X

9598

Me2000

NTXP

2003Vista

78

10

Page 11: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 12: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

DESKTOPDESKTOP

Page 13: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

MOBILEMOBILE

Page 14: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 15: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 16: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

EMBEDDEDEMBEDDED

Page 17: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 18: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

EMBEDDEDEMBEDDED

Page 19: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

EMBEDDED LINUXEMBEDDED LINUX

Page 20: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

SO...SO...

WHAT ARE THE EMBEDDED LINUX BUILD SYSTEMS?!WHAT ARE THE EMBEDDED LINUX BUILD SYSTEMS?!

Page 21: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

FOR A LOT OF PEOPLE IT ALL STARTS WITH...FOR A LOT OF PEOPLE IT ALL STARTS WITH...

Page 22: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 23: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BUT THERE ARE OTHERS...BUT THERE ARE OTHERS...

https://raspberrypi.orghttps://beagleboard.org/blackhttp://wiki.litesom.grinn-global.comhttps://wandboard.orghttp://pandaboard.org

Page 24: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 25: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BUT WHY?BUT WHY?

for prototypingfor promotionfor learningfor fun

Page 26: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

HOW TO MAKE IT WORK?HOW TO MAKE IT WORK?

Download dedicated OS image from webor... build own image!

Page 27: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

wget https://downloads.raspberrypi.org/raspbian_latest

pv sdcard.img | dd of=/dev/sdb bs=4M oflag=dsync

Page 28: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

TESTING AND COMPARINGTESTING AND COMPARING

Representative set of embedded devicesAvailable open source distribution builders

Page 29: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 30: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 31: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 32: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BUT THERE ARE OTHERS...BUT THERE ARE OTHERS...

linux from scratchdebootstrapwind river

Page 33: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 34: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 35: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

GENERALIZED OS BUILDERS STRUCTUREGENERALIZED OS BUILDERS STRUCTURE

Source codeHost OS requirementsCross-compilation toolchainTarget OS configurationProduced output

Page 36: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

apt-get install python-dev python-pip

pip install python-openstackclient

openstack server create --flavor 'c2-30' --image 'Debian 9' --network 'Ext-Net' --key-name

ssh [email protected]

Page 37: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 38: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

sudo apt update

sudo apt upgrade

sudo apt install make gcc g++ libncurses-dev unzip git patch python rsync bc bzip2

wget https://buildroot.org/downloads/buildroot-2017.02.8.tar.gz

tar -zxf buildroot-2017.02.8.tar.gz

cd buildroot-2017.02.8/

make raspberrypi_defconfig

make

ls output/images/sdcard.img

Page 39: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 40: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

sudo apt install make gcc g++ libncurses-dev unzip git gawk file zlib1g-dev

git clone -b v17.01.4 https://github.com/openwrt/openwrt

cd openwrt/

./scripts/feeds update -a

./scripts/feeds install -a

make defconfig

make menuconfig

# Target System (Broadcom BCM27xx)

# Target Profile (Raspberry Pi B/B+/CM/Zero/ZeroW)

time make -j

cp build_dir/target-arm_arm1176jzf-s+vfp_musl-1.1.16_eabi/linux-brcm2708_bcm2708/tmp/lede-

Page 41: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 42: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

sudo apt install make gcc g++ libncurses-dev unzip rpm bison patch tcl zlib1g-dev

wget https://github.com/downloads/midnightyell/RPi-LTIB/raspberrypi-tools-9c3d7b6-1.i386.r

sudo mkdir -p /opt/ltib/pkgs/

sudo cp raspberrypi-tools-9c3d7b6-1.i386.rpm /opt/ltib/pkgs/

sudo dpkg --add-architecture i386

sudo apt update

sudo apt install zlib1g:i386 libstdc++:i386

wget http://download.savannah.nongnu.org/releases/ltib/ltib-13-2-1-sv.tar.gz

tar -xzf ltib-13-2-1-sv.tar.gz

cd ltib-13-2-1-sv/

time ./ltib

# Platform choice (Raspberry Pi with BCM2835 SoC)

cp output/images/sdcard.img ~

Page 43: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 44: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

sudo apt install make gcc g++ libncurses-dev unzip git gawk flex bison gettext python-de

wget http://public.pengutronix.de/software/ptxdist/ptxdist-2018.01.0.tar.bz2

tar -xjf ptxdist-2018.01.0.tar.bz2

cd ptxdist-2018.01.0

./configure

make

sudo make install

cd ..

wget http://public.pengutronix.de/software/ptxdist/ptxdist-2016.06.0.tar.bz2

tar -xjf ptxdist-2016.06.0.tar.bz2

cd ptxdist-2016.06.0

./configure

make

sudo make install

cd ..

wget https://public.pengutronix.de/oselas/toolchain/OSELAS.Toolchain-2016.06.1.tar.bz2

tar -xjf OSELAS.Toolchain-2016.06.1.tar.bz2

cd OSELAS.Toolchain-2016.06.1/

ptxdist-2016.06.0 select ptxconfigs/arm-1136jfs-linux-gnueabihf_gcc-5.4.0_glibc-2.23_bin

ptxdist-2016.06.0 migrate

time ptxdist-2016.06.0 go

git clone https://git.pengutronix.de/cgit/DistroKit/

Page 45: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 46: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

wget http://commondatastorage.googleapis.com/git-repo-downloads/repo

chmod a+x repo

sudo mv repo /usr/local/bin/

sudo apt install make gcc g++ unzip git

sudo apt install gawk diffstat texinfo build-essential chrpath

export MACHINE=raspberrypi

mkdir yoctoproject

cd yoctoproject

repo init -u https://github.com/cdynak/yocto-manifest -m $MACHINE.xml

repo sync

source poky/oe-init-build-env

%MACHINE=wandboard DISTRO=poky source setup-environment build

% vi conf/bblayers.conf (...?)

time bitbake core-image-minimal

cp tmp/deploy/images/$MACHINE/*img ~

Page 47: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

TESTSTESTS

With respect to the target OSWith respect to the host OS

Page 48: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 49: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 50: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 51: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

EXAMPLE USE CASESEXAMPLE USE CASES

The Node.js IoT applicationBuilding Containers

Page 52: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

NODE.JS SCADANODE.JS SCADA

Page 53: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

(C++/wxWidgets, MIT) (C#, Apache)

(Java, GPLv2) (Python, GPLv3)

(C++, GPLv2)

github.com/newterm/szarpgithub.com/RapidScada/scadagithub.com/SCADA-LTS/Scada-LTSgithub.com/trombastic/PyScadaoscada.org/websvn/listing.php?repname=OpenSCADA

Page 54: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

LINUX CONTAINERSLINUX CONTAINERS

Page 55: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

CURRENTLY THERE IS ONLY ONE KINGCURRENTLY THERE IS ONLY ONE KING

Page 56: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 57: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

HOW TO MAKE IT WORK?HOW TO MAKE IT WORK?

Download dedicated OS image from webor... build own image!

Page 58: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-commo

curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo a

sudo apt-key fingerprint 0EBFCD88

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-re

sudo apt update

sudo apt install docker-ce

Page 59: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

docker pull alpine

docker images

docker run alpine ls -l

docker run -it alpine /bin/sh

Page 60: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BUILDING LINUX CONTAINERSBUILDING LINUX CONTAINERS

Page 61: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

cd output/images

mkdir extra extra/etc extra/sbin extra/lib extra/lib64

touch extra/etc/resolv.conf

touch extra/sbin/init

cp /lib/x86_64-linux-gnu/libpthread.so.0 /lib/x86_64-linux-gnu/libc.so.6 extra/lib

cp /lib64/ld-linux-x86-64.so.2 extra/lib64

cp rootfs.tar fixup.tar

tar rvf fixup.tar -C extra .

docker import - basic-system < fixup.tar

docker run -t -i basic-system /bin/sh

Page 62: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

CONCLUSIONSCONCLUSIONS

Page 63: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BUILD SYSTEMS ARE BETTER THAN DISTRIBUTIONSBUILD SYSTEMS ARE BETTER THAN DISTRIBUTIONS

For professional usageLatest versions of kernel and packagesEasy update and portabilityExamples: PandaBoard, Raspbian MPK

Page 64: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 65: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 66: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 67: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

COMPARABILITYCOMPARABILITY

Experience from one build system is useful on the othersSoftware is easily portable between build systemsCompanies should try to experiment

Page 68: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 69: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 70: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

EDGE COMPUTINGEDGE COMPUTING

Perfect tools for edge computingPortable between cloud and embeddedIt is affordable to run Node.js on embedded deviceEscaping from vendor/cloud lock-in...

Page 71: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 72: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 73: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 74: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib
Page 75: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

OPEN QUESTIONSOPEN QUESTIONS

Why only Linux?What about MINIX, BSD, Darvin and HURD?Embedded Unix build systems?(yes, I know that Linux Standard Base and other "great standarizations" failed...)

Page 76: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

THANK YOU FOR ATTENTIONTHANK YOU FOR ATTENTION

Page 77: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

BIBLIOGRAPHY IS INSIDE SOURCE CODEBIBLIOGRAPHY IS INSIDE SOURCE CODE

cdynak.github.io/linux2018

github.com/cdynak/linux2018

github.com/cdynak/embedded-linux-build-systems

Page 78: COMPUTING FROM EMBEDDED LINUX BUILD SYSTEMS TO EDGE · tar -xzf ltib-13-2-1-sv.tar.gz cd ltib-13-2-1-sv/ time ./ltib

DISCUSSION / QUESTIONS?DISCUSSION / QUESTIONS?