From fca59bea770346cf1c1f9b0e00cb48a61b44a8f3 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 25 Oct 2015 21:00:20 +0100 Subject: import of old now defunct presentation slides svn repo --- 2008/embedded_linux-fossin2008/embedded_linux.mgp | 485 +++++++++++++++++++++ 2008/embedded_linux-fossin2008/embedded_linux.pdf | Bin 0 -> 3115218 bytes 2008/embedded_linux-fossin2008/html/index.html | 42 ++ 2008/embedded_linux-fossin2008/html/mgp00001.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00001.png | Bin 0 -> 4392 bytes 2008/embedded_linux-fossin2008/html/mgp00001.txt | 14 + 2008/embedded_linux-fossin2008/html/mgp00002.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00002.png | Bin 0 -> 118614 bytes 2008/embedded_linux-fossin2008/html/mgp00002.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00003.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00003.png | Bin 0 -> 124243 bytes 2008/embedded_linux-fossin2008/html/mgp00003.txt | 17 + 2008/embedded_linux-fossin2008/html/mgp00004.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00004.png | Bin 0 -> 1045474 bytes 2008/embedded_linux-fossin2008/html/mgp00004.txt | 6 + 2008/embedded_linux-fossin2008/html/mgp00005.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00005.png | Bin 0 -> 81184 bytes 2008/embedded_linux-fossin2008/html/mgp00005.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00006.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00006.png | Bin 0 -> 67569 bytes 2008/embedded_linux-fossin2008/html/mgp00006.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00007.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00007.png | Bin 0 -> 70051 bytes 2008/embedded_linux-fossin2008/html/mgp00007.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00008.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00008.png | Bin 0 -> 80499 bytes 2008/embedded_linux-fossin2008/html/mgp00008.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00009.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00009.png | Bin 0 -> 80659 bytes 2008/embedded_linux-fossin2008/html/mgp00009.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00010.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00010.png | Bin 0 -> 61685 bytes 2008/embedded_linux-fossin2008/html/mgp00010.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00011.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00011.png | Bin 0 -> 74869 bytes 2008/embedded_linux-fossin2008/html/mgp00011.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00012.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00012.png | Bin 0 -> 93443 bytes 2008/embedded_linux-fossin2008/html/mgp00012.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00013.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00013.png | Bin 0 -> 73616 bytes 2008/embedded_linux-fossin2008/html/mgp00013.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00014.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00014.png | Bin 0 -> 93812 bytes 2008/embedded_linux-fossin2008/html/mgp00014.txt | 14 + 2008/embedded_linux-fossin2008/html/mgp00015.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00015.png | Bin 0 -> 87532 bytes 2008/embedded_linux-fossin2008/html/mgp00015.txt | 12 + 2008/embedded_linux-fossin2008/html/mgp00016.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00016.png | Bin 0 -> 25601 bytes 2008/embedded_linux-fossin2008/html/mgp00016.txt | 9 + 2008/embedded_linux-fossin2008/html/mgp00017.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00017.png | Bin 0 -> 61723 bytes 2008/embedded_linux-fossin2008/html/mgp00017.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00018.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00018.png | Bin 0 -> 54254 bytes 2008/embedded_linux-fossin2008/html/mgp00018.txt | 8 + 2008/embedded_linux-fossin2008/html/mgp00019.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00019.png | Bin 0 -> 66295 bytes 2008/embedded_linux-fossin2008/html/mgp00019.txt | 9 + 2008/embedded_linux-fossin2008/html/mgp00020.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00020.png | Bin 0 -> 54658 bytes 2008/embedded_linux-fossin2008/html/mgp00020.txt | 9 + 2008/embedded_linux-fossin2008/html/mgp00021.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00021.png | Bin 0 -> 108918 bytes 2008/embedded_linux-fossin2008/html/mgp00021.txt | 15 + 2008/embedded_linux-fossin2008/html/mgp00022.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00022.png | Bin 0 -> 77363 bytes 2008/embedded_linux-fossin2008/html/mgp00022.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00023.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00023.png | Bin 0 -> 78104 bytes 2008/embedded_linux-fossin2008/html/mgp00023.txt | 9 + 2008/embedded_linux-fossin2008/html/mgp00024.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00024.png | Bin 0 -> 102438 bytes 2008/embedded_linux-fossin2008/html/mgp00024.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00025.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00025.png | Bin 0 -> 122475 bytes 2008/embedded_linux-fossin2008/html/mgp00025.txt | 16 + 2008/embedded_linux-fossin2008/html/mgp00026.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00026.png | Bin 0 -> 95974 bytes 2008/embedded_linux-fossin2008/html/mgp00026.txt | 12 + 2008/embedded_linux-fossin2008/html/mgp00027.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00027.png | Bin 0 -> 123203 bytes 2008/embedded_linux-fossin2008/html/mgp00027.txt | 15 + 2008/embedded_linux-fossin2008/html/mgp00028.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00028.png | Bin 0 -> 118138 bytes 2008/embedded_linux-fossin2008/html/mgp00028.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00029.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00029.png | Bin 0 -> 100447 bytes 2008/embedded_linux-fossin2008/html/mgp00029.txt | 14 + 2008/embedded_linux-fossin2008/html/mgp00030.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00030.png | Bin 0 -> 63652 bytes 2008/embedded_linux-fossin2008/html/mgp00030.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00031.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00031.png | Bin 0 -> 126323 bytes 2008/embedded_linux-fossin2008/html/mgp00031.txt | 13 + 2008/embedded_linux-fossin2008/html/mgp00032.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00032.png | Bin 0 -> 89107 bytes 2008/embedded_linux-fossin2008/html/mgp00032.txt | 10 + 2008/embedded_linux-fossin2008/html/mgp00033.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00033.png | Bin 0 -> 66938 bytes 2008/embedded_linux-fossin2008/html/mgp00033.txt | 11 + 2008/embedded_linux-fossin2008/html/mgp00034.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00034.png | Bin 0 -> 116656 bytes 2008/embedded_linux-fossin2008/html/mgp00034.txt | 15 + 2008/embedded_linux-fossin2008/html/mgp00035.html | 9 + 2008/embedded_linux-fossin2008/html/mgp00035.png | Bin 0 -> 38511 bytes 2008/embedded_linux-fossin2008/html/mgp00035.txt | 8 + .../linux_netfilter_singapore_entertainment.jpg | Bin 0 -> 640673 bytes 109 files changed, 1248 insertions(+) create mode 100644 2008/embedded_linux-fossin2008/embedded_linux.mgp create mode 100644 2008/embedded_linux-fossin2008/embedded_linux.pdf create mode 100644 2008/embedded_linux-fossin2008/html/index.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00001.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00001.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00001.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00002.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00002.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00002.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00003.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00003.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00003.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00004.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00004.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00004.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00005.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00005.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00005.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00006.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00006.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00006.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00007.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00007.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00007.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00008.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00008.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00008.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00009.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00009.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00009.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00010.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00010.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00010.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00011.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00011.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00011.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00012.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00012.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00012.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00013.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00013.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00013.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00014.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00014.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00014.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00015.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00015.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00015.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00016.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00016.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00016.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00017.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00017.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00017.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00018.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00018.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00018.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00019.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00019.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00019.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00020.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00020.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00020.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00021.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00021.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00021.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00022.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00022.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00022.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00023.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00023.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00023.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00024.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00024.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00024.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00025.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00025.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00025.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00026.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00026.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00026.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00027.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00027.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00027.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00028.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00028.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00028.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00029.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00029.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00029.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00030.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00030.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00030.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00031.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00031.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00031.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00032.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00032.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00032.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00033.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00033.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00033.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00034.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00034.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00034.txt create mode 100644 2008/embedded_linux-fossin2008/html/mgp00035.html create mode 100644 2008/embedded_linux-fossin2008/html/mgp00035.png create mode 100644 2008/embedded_linux-fossin2008/html/mgp00035.txt create mode 100644 2008/embedded_linux-fossin2008/linux_netfilter_singapore_entertainment.jpg (limited to '2008/embedded_linux-fossin2008') diff --git a/2008/embedded_linux-fossin2008/embedded_linux.mgp b/2008/embedded_linux-fossin2008/embedded_linux.mgp new file mode 100644 index 0000000..08972e2 --- /dev/null +++ b/2008/embedded_linux-fossin2008/embedded_linux.mgp @@ -0,0 +1,485 @@ +%include "default.mgp" +%default 1 bgrad +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +%nodefault +%back "blue" + +%center +%size 7 + + +How to do Embedded Linux [not] right + +%center +%size 4 +by + +Harald Welte + +netfilter.org / openmoko.org / openpcd.org +gpl-violations.org / openezx.org +hmw-consulting.de / viatech.com + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Introduction + +Who is speaking to you? + an independent Free Software developer, consultant and trainer + 13 years experience using/deploying and developing for Linux on server and workstation + 10 years professional experience doing Linux system + kernel level development + strong focus on network security and embedded + expert in Free and Open Source Software (FOSS) copyright and licensing + digital board-level hardware design, esp. embedded systems + active developer and contributor to many FOSS projects + thus, a techie, who will therefore not have fancy animated slides ;) + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Introduction + +Why am I qualified? + The 'Linux community' POV + Former kernel subsystem maintainer (netfilter/iptables) + Initiator of OpenEZX project + Author of various drivers for embedded hardware + The 'embedded Linux done the right way' POV + Lead System Architect (SW+HW) at Openmoko, Inc. + Co-creator of Open Hardware + Software for RFID + OpenPCD, OpenPICC, librfid, libmrtd + The 'chip manufacturer' POV + Open Source Liaison at VIA Technologies, Inc. + The 'customer of consumer-grade embedded Linux' POV + Done reverse-engineering on hundreds of devices for gpl-violations.org + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Linux is everywhere! + +%image "linux_netfilter_singapore_entertainment.jpg" + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Linux is everywhere + +Linux is everywhere! + Linux mobile phones (Motorola, Openmoko) + In-flight entertainment systems + Embedded networking gear + DSLAMs + rack monitoring + Public payphones + ATM's / PoS / vending machines + Now even Fitness gear (Daum Ergometer) + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Strengths of FOSS [0/4] + + +What are the true strengths of FOSS + Innovative and creative development + Security due to code review / bugreport / patches + Long-term maintainable code + Stable and reliable systems + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Strengths of FOSS [1/4] + + +Innovative and creative development + easy-to-read existing codebase + standard (FOSS) development tools + thus, easy to modify and add features + community will build around great new features/apps + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Strengths of FOSS [2/4] + + +Security due to code review / bugreport / patches + all the code is out there + many people are familiar with existing architecture + code quality requirements usually very high + community process allows quick and fast integration of bugfix + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Strengths of FOSS [3/4] + + +Long-term maintainable code, because + there's a lot of attention on good software architecture + many developers are familiar with the shared/common API's + code quality requirements usually very high + all code in mainline gets maintained and updated + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Strengths of FOSS [4/4] + + +Stable and reliable systems, because + code quality requirements usually very high + kernel releases are quite frequent + all mainline code is automatically ported to new releases + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Reality Check + + + So we should have the perfect world + tons of embedded Linux products + all of them maintainable, secure, stable + encouraging lots of creative work on top of their codebase + + What is the reality + tons of embedded Linux products + none of the strengths of FOSS present in 99% of them + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC + In the PC world, I can + download the latest kernel from kernel.org + compile + install it on almost every current+old platform + have an almost 100% chance that it will boot and support all the major peripherals + only some more obscure hardware might not have drivers yet + update at any time to the latest 2.6.x.y maintenance release + update at any time to the next 2.6.(x+1) release + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC + In the PC world, I can + take about any major Linux distribution, based on my own preference + install and run that very distribution on about any hardware + distribution kernels are very close to mainline these days + benefit of regular security updates by distributions + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC + In the Embedded world + every CPU/SoC maker runs their own kernel tree + often one kernel tree per product, based on different mainline versions + ages-old base revisions + a never-ending security nightmare + no benefit from recent new features in mainline + non-standard subsystems (e.g. different USB device or SDIO stack) + proprietary drivers cause lock-in to old kernels + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC + In the Embedded world + I often do not have a choice of which distro to run + There might actually be no distribution + No regular security updates + Often no package management for deploying those updates + If there are distributions, they either need to use the kernel from the BSP (which is ages old) or create yet another custom off-mainline branch/port + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Differences to PC Linux + + + + +%center +THIS SUCKS! + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the vendor get + + +So what do the embedded vendors get? + unstable software + security nightmares + unmaintainable code + no innovation + no user-contributed bug fixes + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the vendor get + + +unstable software + because the code really sucks in many cases + because they patch around problems rather than solving them + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the vendor get + + +security nightmares + because they use stone-age forks of the kernel + because they never contributed their code mainline + because those forks can never be merged back with mainline again + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the vendor get + + +unmaintainable code + because they have one fork of the code per device (product) + because their code quality sucks + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the vendor get + + +no innovation + because they try to hide their code (gpl-violations.org) + because their R&D environment is non-standard + weird cross-toolchains that nobody has seen before + weird filesystems with custom patches that nobody knows + because they add proprietary components to lock developers from adding features + e.g. the entire web-based UI for embedded networking gear + binary-only kernel modules that force people to use old kernels with no interesting new features + because it is, overall, way too hard to develop on/for their platform + because they don't disclose serial console and/or JTAG access + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Reality Check + + +So why do they still do it? + there can only be one conclusion: + they never understood the real potential of FOSS! + all they do is try to compete with what proprietary competitors do + they never think about creating platforms, every product is distinct/separate + they have no interest in improving their products + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +What does the community get + + +So what does the community get? + products that run some crappy fork of Linux somewhere under the hood + but which we cannot really touch/modify without a lot of effort + we face opposition from the product maker if we want to help him to improve + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +TODO (device maker) + + +What should the device vendor do? + stop thinking in terms of selling black boxes + defining products that take advantage of the true strength of FOSS + compete against the proprietary competition on a level that they can't match + give up the idea of defining all aspects of an appliance + rather think of building an extensible platforms and let community innovate + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +A note to chip vendors + + +There are two types of customers + The Linux-aware customer + understands FOSS much better than you do + will share the criticism of this talk + will likely go to a competitor who understands Linux better + The Linux-unaware customer + who just uses Linux to save per-unit OS royalties + who doesn't really care about most issues presented here + who will create inferior products + Linux-awareness is increasing, not decreasing + now is already late, but if you don't have proper FOSS support on your agenda now, you will likely loose the "openness competition" + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +TODO (chip maker) + + +What should the chip vendors do? + engage in "sustainable development" + develop against latest mainline + make your development trees public (use git!), don't just release stable snapshots as BSP to your tier-one customers + actively interact with the community + learn how to play by the rules (coding style, use common interfaces, no proprietary drivers) + don't just do big code drops every now and then + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +TODO (chip maker) + + +What should the chip vendors do? + Externally + Don't mistake FOSS as just a technology. It is a R&D philosophy! + Provide public reference manuals with no NDA + If you have to resort to NDA, make sure they are FOSS friendly + Ensure you don't license IP cores that conflict with FOSS + Internally + Draft a proper in-house FOSS strategy with clear goals + Don't expect your product mangers or engineers to know everything about FOSS without proper training + Hire people with strong community background into your R&D and management to facilitate the know-how transfer + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + + Chip Product Managers need to learn + There's more Linux use with their chips than they ever learn + Their customers are not just the tier-one customers + If you want to support Linux, do it the mainline way. If you support only N number of distributions, your 'N' will be growing and you'll be wasting R&D resources to support each one of them + That there is no single 'contact window' / entity for Linux + The big change is the FOSS development model, not the Linux API's + Linux-aware customers care not only about performance+price, but also about the quality of the Linux port code + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + + BSP R&D Managers need to learn + Linux is not just a set of API's for their developers to learn + Linux is FOSS. The FOSS R&D model is different + Their engineers need to be encouraged to communicate + and thus, need real Internet (git, mailing lists, ..) + have to get clear indication what is confidential and what not + FOSS is about cooperation. You don't need to reinvent the wheel + don't include your own 802.11 stack in your wifi driver + If you do not merge your code mainline, you end up in a maintenance nightmare + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + + BSP Software Engineers need to learn + Linux is not just a set of API's + How and where to ask the right kind of questions + How and where to look for the latest code + Code is written to be read by other people, not just to execute + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +TODO (community) + +What should the community do + Provide non-partisan documentation + on FOSS advantages, proper FOSS development + hardware companies are interested to learn, but don't know who to ask. If they ask a commercial distributor, then they get in bed with them, which is not the same as working with the mainline development community + Something like a mentoring program + take software/driver R&D by their hand and walk them through the mainline merge + Don't scare them away + They have to be taught about the communication / review culture + Your valid criticism to patches has to be explained + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Problems (chipmaker) + + Patent licensing schemes + e.g. MPEG patent license doesn't at all work in a FOSS model + Technology licensing schemes + e.g. Sony Memorystick. Impossible for a chip maker to provide FOSS driver + Everyone in the industry has those very same problems + Chip makers should cooperate to present their case together to the respective licensors + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Problems (chipmaker) + + Patent trolls + openly accessible documentation invites patent trolls + Why? + patent trolls rarely read+understand FOSS code + thus, open documentation increases the risk to be hit + However + this is a by-product of how the patent system currently works + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Outlook + +Outlook + We will see even more embedded Linux, e.g. Mobile phones + We will see even more restricted devices (Tivo-ization, DRM for code) + which go on _very_ thin ice even with GPLv2 + which almost completely remove all freedoms of FOSS + We have some faint dim light at the end of a very far tunnel + e.g. projects like Openmoko, who truly see openness as a feature + e.g. chip makers who slowly open up a bit more + on the PC side, Intel definitely is setting the best overall example + on the Embedded side, I see some movement in major players (TI, Marvell, Samsung, Infineon, ...) + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +How to do Embedded Linux [not] right +Thanks + + Thanks for your attention. + + Some Time left for Q&A + + Enjoy the FOSS.in / 2008 diff --git a/2008/embedded_linux-fossin2008/embedded_linux.pdf b/2008/embedded_linux-fossin2008/embedded_linux.pdf new file mode 100644 index 0000000..5ddda07 Binary files /dev/null and b/2008/embedded_linux-fossin2008/embedded_linux.pdf differ diff --git a/2008/embedded_linux-fossin2008/html/index.html b/2008/embedded_linux-fossin2008/html/index.html new file mode 100644 index 0000000..5f104f1 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/index.html @@ -0,0 +1,42 @@ + +MagicPoint presentation foils + +Page 1 +Page 2 +Page 3 +Page 4 +Page 5 +Page 6 +Page 7 +Page 8 +Page 9 +Page 10 +Page 11 +Page 12 +Page 13 +Page 14 +Page 15 +Page 16 +Page 17 +Page 18 +Page 19 +Page 20 +Page 21 +Page 22 +Page 23 +Page 24 +Page 25 +Page 26 +Page 27 +Page 28 +Page 29 +Page 30 +Page 31 +Page 32 +Page 33 +Page 34 +Page 35 +
+Generated by MagicPoint +
+ diff --git a/2008/embedded_linux-fossin2008/html/mgp00001.html b/2008/embedded_linux-fossin2008/html/mgp00001.html new file mode 100644 index 0000000..098e612 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00001.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 1: How to do Embedded Linux [not] right
+
+Page 1
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00001.png b/2008/embedded_linux-fossin2008/html/mgp00001.png new file mode 100644 index 0000000..0b8b03a Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00001.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00001.txt b/2008/embedded_linux-fossin2008/html/mgp00001.txt new file mode 100644 index 0000000..ba84660 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00001.txt @@ -0,0 +1,14 @@ + + + +How to do Embedded Linux [not] right + +by + +Harald Welte + +netfilter.org / openmoko.org / openpcd.org +gpl-violations.org / openezx.org +hmw-consulting.de / viatech.com + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00002.html b/2008/embedded_linux-fossin2008/html/mgp00002.html new file mode 100644 index 0000000..2909778 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00002.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 2: How to do Embedded Linux [not] right
+
+Page 2
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00002.png b/2008/embedded_linux-fossin2008/html/mgp00002.png new file mode 100644 index 0000000..c75ec57 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00002.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00002.txt b/2008/embedded_linux-fossin2008/html/mgp00002.txt new file mode 100644 index 0000000..cb3bc3f --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00002.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +Introduction + +Who is speaking to you? +an independent Free Software developer, consultant and trainer +13 years experience using/deploying and developing for Linux on server and workstation +10 years professional experience doing Linux system + kernel level development +strong focus on network security and embedded +expert in Free and Open Source Software (FOSS) copyright and licensing +digital board-level hardware design, esp. embedded systems +active developer and contributor to many FOSS projects +thus, a techie, who will therefore not have fancy animated slides ;) + diff --git a/2008/embedded_linux-fossin2008/html/mgp00003.html b/2008/embedded_linux-fossin2008/html/mgp00003.html new file mode 100644 index 0000000..05916b3 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00003.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 3: How to do Embedded Linux [not] right
+
+Page 3
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00003.png b/2008/embedded_linux-fossin2008/html/mgp00003.png new file mode 100644 index 0000000..2fde084 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00003.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00003.txt b/2008/embedded_linux-fossin2008/html/mgp00003.txt new file mode 100644 index 0000000..6cc022c --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00003.txt @@ -0,0 +1,17 @@ +How to do Embedded Linux [not] right +Introduction + +Why am I qualified? +The 'Linux community' POV +Former kernel subsystem maintainer (netfilter/iptables) +Initiator of OpenEZX project +Author of various drivers for embedded hardware +The 'embedded Linux done the right way' POV +Lead System Architect (SW+HW) at Openmoko, Inc. +Co-creator of Open Hardware + Software for RFID +OpenPCD, OpenPICC, librfid, libmrtd +The 'chip manufacturer' POV +Open Source Liaison at VIA Technologies, Inc. +The 'customer of consumer-grade embedded Linux' POV +Done reverse-engineering on hundreds of devices for gpl-violations.org + diff --git a/2008/embedded_linux-fossin2008/html/mgp00004.html b/2008/embedded_linux-fossin2008/html/mgp00004.html new file mode 100644 index 0000000..0ba9fec --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00004.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 4: How to do Embedded Linux [not] right
+
+Page 4
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00004.png b/2008/embedded_linux-fossin2008/html/mgp00004.png new file mode 100644 index 0000000..95890c5 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00004.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00004.txt b/2008/embedded_linux-fossin2008/html/mgp00004.txt new file mode 100644 index 0000000..a1d89da --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00004.txt @@ -0,0 +1,6 @@ +How to do Embedded Linux [not] right +Linux is everywhere! + + + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00005.html b/2008/embedded_linux-fossin2008/html/mgp00005.html new file mode 100644 index 0000000..8e5e347 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00005.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 5: How to do Embedded Linux [not] right
+
+Page 5
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00005.png b/2008/embedded_linux-fossin2008/html/mgp00005.png new file mode 100644 index 0000000..cca0802 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00005.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00005.txt b/2008/embedded_linux-fossin2008/html/mgp00005.txt new file mode 100644 index 0000000..9df10b3 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00005.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +Linux is everywhere + +Linux is everywhere! +Linux mobile phones (Motorola, Openmoko) +In-flight entertainment systems +Embedded networking gear +DSLAMs +rack monitoring +Public payphones +ATM's / PoS / vending machines +Now even Fitness gear (Daum Ergometer) + diff --git a/2008/embedded_linux-fossin2008/html/mgp00006.html b/2008/embedded_linux-fossin2008/html/mgp00006.html new file mode 100644 index 0000000..bd2aac6 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00006.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 6: How to do Embedded Linux [not] right
+
+Page 6
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00006.png b/2008/embedded_linux-fossin2008/html/mgp00006.png new file mode 100644 index 0000000..42c2589 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00006.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00006.txt b/2008/embedded_linux-fossin2008/html/mgp00006.txt new file mode 100644 index 0000000..a583087 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00006.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Strengths of FOSS [0/4] + + +What are the true strengths of FOSS +Innovative and creative development +Security due to code review / bugreport / patches +Long-term maintainable code +Stable and reliable systems + diff --git a/2008/embedded_linux-fossin2008/html/mgp00007.html b/2008/embedded_linux-fossin2008/html/mgp00007.html new file mode 100644 index 0000000..71e0988 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00007.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 7: How to do Embedded Linux [not] right
+
+Page 7
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00007.png b/2008/embedded_linux-fossin2008/html/mgp00007.png new file mode 100644 index 0000000..e5cfec1 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00007.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00007.txt b/2008/embedded_linux-fossin2008/html/mgp00007.txt new file mode 100644 index 0000000..e8fbacd --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00007.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Strengths of FOSS [1/4] + + +Innovative and creative development +easy-to-read existing codebase +standard (FOSS) development tools +thus, easy to modify and add features +community will build around great new features/apps + diff --git a/2008/embedded_linux-fossin2008/html/mgp00008.html b/2008/embedded_linux-fossin2008/html/mgp00008.html new file mode 100644 index 0000000..fbff029 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00008.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 8: How to do Embedded Linux [not] right
+
+Page 8
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00008.png b/2008/embedded_linux-fossin2008/html/mgp00008.png new file mode 100644 index 0000000..d225ee1 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00008.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00008.txt b/2008/embedded_linux-fossin2008/html/mgp00008.txt new file mode 100644 index 0000000..2fb55fa --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00008.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Strengths of FOSS [2/4] + + +Security due to code review / bugreport / patches +all the code is out there +many people are familiar with existing architecture +code quality requirements usually very high +community process allows quick and fast integration of bugfix + diff --git a/2008/embedded_linux-fossin2008/html/mgp00009.html b/2008/embedded_linux-fossin2008/html/mgp00009.html new file mode 100644 index 0000000..d9b4cbf --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00009.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 9: How to do Embedded Linux [not] right
+
+Page 9
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00009.png b/2008/embedded_linux-fossin2008/html/mgp00009.png new file mode 100644 index 0000000..8e44de6 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00009.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00009.txt b/2008/embedded_linux-fossin2008/html/mgp00009.txt new file mode 100644 index 0000000..1334e44 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00009.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Strengths of FOSS [3/4] + + +Long-term maintainable code, because +there's a lot of attention on good software architecture +many developers are familiar with the shared/common API's +code quality requirements usually very high +all code in mainline gets maintained and updated + diff --git a/2008/embedded_linux-fossin2008/html/mgp00010.html b/2008/embedded_linux-fossin2008/html/mgp00010.html new file mode 100644 index 0000000..45b7a27 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00010.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 10: How to do Embedded Linux [not] right
+
+Page 10
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00010.png b/2008/embedded_linux-fossin2008/html/mgp00010.png new file mode 100644 index 0000000..d8b9c56 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00010.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00010.txt b/2008/embedded_linux-fossin2008/html/mgp00010.txt new file mode 100644 index 0000000..b0ac096 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00010.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Strengths of FOSS [4/4] + + +Stable and reliable systems, because +code quality requirements usually very high +kernel releases are quite frequent +all mainline code is automatically ported to new releases + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00011.html b/2008/embedded_linux-fossin2008/html/mgp00011.html new file mode 100644 index 0000000..03027bb --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00011.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 11: How to do Embedded Linux [not] right
+
+Page 11
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00011.png b/2008/embedded_linux-fossin2008/html/mgp00011.png new file mode 100644 index 0000000..8c7b88e Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00011.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00011.txt b/2008/embedded_linux-fossin2008/html/mgp00011.txt new file mode 100644 index 0000000..babf04a --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00011.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +Reality Check + + +So we should have the perfect world +tons of embedded Linux products +all of them maintainable, secure, stable +encouraging lots of creative work on top of their codebase + +What is the reality +tons of embedded Linux products +none of the strengths of FOSS present in 99% of them + diff --git a/2008/embedded_linux-fossin2008/html/mgp00012.html b/2008/embedded_linux-fossin2008/html/mgp00012.html new file mode 100644 index 0000000..b2676a0 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00012.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 12: How to do Embedded Linux [not] right
+
+Page 12
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00012.png b/2008/embedded_linux-fossin2008/html/mgp00012.png new file mode 100644 index 0000000..6fbf8c6 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00012.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00012.txt b/2008/embedded_linux-fossin2008/html/mgp00012.txt new file mode 100644 index 0000000..f6cb1f8 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00012.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC +In the PC world, I can +download the latest kernel from kernel.org +compile + install it on almost every current+old platform +have an almost 100% chance that it will boot and support all the major peripherals +only some more obscure hardware might not have drivers yet +update at any time to the latest 2.6.x.y maintenance release +update at any time to the next 2.6.(x+1) release + diff --git a/2008/embedded_linux-fossin2008/html/mgp00013.html b/2008/embedded_linux-fossin2008/html/mgp00013.html new file mode 100644 index 0000000..92018e7 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00013.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 13: How to do Embedded Linux [not] right
+
+Page 13
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00013.png b/2008/embedded_linux-fossin2008/html/mgp00013.png new file mode 100644 index 0000000..2e22700 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00013.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00013.txt b/2008/embedded_linux-fossin2008/html/mgp00013.txt new file mode 100644 index 0000000..771d600 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00013.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC +In the PC world, I can +take about any major Linux distribution, based on my own preference +install and run that very distribution on about any hardware +distribution kernels are very close to mainline these days +benefit of regular security updates by distributions + diff --git a/2008/embedded_linux-fossin2008/html/mgp00014.html b/2008/embedded_linux-fossin2008/html/mgp00014.html new file mode 100644 index 0000000..e4c8cfc --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00014.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 14: How to do Embedded Linux [not] right
+
+Page 14
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00014.png b/2008/embedded_linux-fossin2008/html/mgp00014.png new file mode 100644 index 0000000..b5b7f6d Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00014.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00014.txt b/2008/embedded_linux-fossin2008/html/mgp00014.txt new file mode 100644 index 0000000..4fef4f8 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00014.txt @@ -0,0 +1,14 @@ +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC +In the Embedded world +every CPU/SoC maker runs their own kernel tree +often one kernel tree per product, based on different mainline versions +ages-old base revisions +a never-ending security nightmare +no benefit from recent new features in mainline +non-standard subsystems (e.g. different USB device or SDIO stack) +proprietary drivers cause lock-in to old kernels + diff --git a/2008/embedded_linux-fossin2008/html/mgp00015.html b/2008/embedded_linux-fossin2008/html/mgp00015.html new file mode 100644 index 0000000..68b42a8 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00015.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 15: How to do Embedded Linux [not] right
+
+Page 15
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00015.png b/2008/embedded_linux-fossin2008/html/mgp00015.png new file mode 100644 index 0000000..936bba0 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00015.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00015.txt b/2008/embedded_linux-fossin2008/html/mgp00015.txt new file mode 100644 index 0000000..6650111 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00015.txt @@ -0,0 +1,12 @@ +How to do Embedded Linux [not] right +Differences to PC Linux + + +Differences to Linux on a PC +In the Embedded world +I often do not have a choice of which distro to run +There might actually be no distribution +No regular security updates +Often no package management for deploying those updates +If there are distributions, they either need to use the kernel from the BSP (which is ages old) or create yet another custom off-mainline branch/port + diff --git a/2008/embedded_linux-fossin2008/html/mgp00016.html b/2008/embedded_linux-fossin2008/html/mgp00016.html new file mode 100644 index 0000000..cdd97a8 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00016.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 16: How to do Embedded Linux [not] right
+
+Page 16
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00016.png b/2008/embedded_linux-fossin2008/html/mgp00016.png new file mode 100644 index 0000000..108eece Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00016.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00016.txt b/2008/embedded_linux-fossin2008/html/mgp00016.txt new file mode 100644 index 0000000..601e741 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00016.txt @@ -0,0 +1,9 @@ +How to do Embedded Linux [not] right +Differences to PC Linux + + + + +THIS SUCKS! + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00017.html b/2008/embedded_linux-fossin2008/html/mgp00017.html new file mode 100644 index 0000000..8f0c0bd --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00017.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 17: How to do Embedded Linux [not] right
+
+Page 17
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00017.png b/2008/embedded_linux-fossin2008/html/mgp00017.png new file mode 100644 index 0000000..577ca2f Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00017.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00017.txt b/2008/embedded_linux-fossin2008/html/mgp00017.txt new file mode 100644 index 0000000..b5ae370 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00017.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +What does the vendor get + + +So what do the embedded vendors get? +unstable software +security nightmares +unmaintainable code +no innovation +no user-contributed bug fixes + diff --git a/2008/embedded_linux-fossin2008/html/mgp00018.html b/2008/embedded_linux-fossin2008/html/mgp00018.html new file mode 100644 index 0000000..3f78304 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00018.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 18: How to do Embedded Linux [not] right
+
+Page 18
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00018.png b/2008/embedded_linux-fossin2008/html/mgp00018.png new file mode 100644 index 0000000..be2909c Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00018.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00018.txt b/2008/embedded_linux-fossin2008/html/mgp00018.txt new file mode 100644 index 0000000..9993e47 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00018.txt @@ -0,0 +1,8 @@ +How to do Embedded Linux [not] right +What does the vendor get + + +unstable software +because the code really sucks in many cases +because they patch around problems rather than solving them + diff --git a/2008/embedded_linux-fossin2008/html/mgp00019.html b/2008/embedded_linux-fossin2008/html/mgp00019.html new file mode 100644 index 0000000..7312503 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00019.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 19: How to do Embedded Linux [not] right
+
+Page 19
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00019.png b/2008/embedded_linux-fossin2008/html/mgp00019.png new file mode 100644 index 0000000..41d7f03 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00019.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00019.txt b/2008/embedded_linux-fossin2008/html/mgp00019.txt new file mode 100644 index 0000000..970342a --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00019.txt @@ -0,0 +1,9 @@ +How to do Embedded Linux [not] right +What does the vendor get + + +security nightmares +because they use stone-age forks of the kernel +because they never contributed their code mainline +because those forks can never be merged back with mainline again + diff --git a/2008/embedded_linux-fossin2008/html/mgp00020.html b/2008/embedded_linux-fossin2008/html/mgp00020.html new file mode 100644 index 0000000..7bff480 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00020.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 20: How to do Embedded Linux [not] right
+
+Page 20
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00020.png b/2008/embedded_linux-fossin2008/html/mgp00020.png new file mode 100644 index 0000000..4b978c7 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00020.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00020.txt b/2008/embedded_linux-fossin2008/html/mgp00020.txt new file mode 100644 index 0000000..737336b --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00020.txt @@ -0,0 +1,9 @@ +How to do Embedded Linux [not] right +What does the vendor get + + +unmaintainable code +because they have one fork of the code per device (product) +because their code quality sucks + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00021.html b/2008/embedded_linux-fossin2008/html/mgp00021.html new file mode 100644 index 0000000..7d75176 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00021.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 21: How to do Embedded Linux [not] right
+
+Page 21
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00021.png b/2008/embedded_linux-fossin2008/html/mgp00021.png new file mode 100644 index 0000000..56bc4e1 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00021.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00021.txt b/2008/embedded_linux-fossin2008/html/mgp00021.txt new file mode 100644 index 0000000..b03353a --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00021.txt @@ -0,0 +1,15 @@ +How to do Embedded Linux [not] right +What does the vendor get + + +no innovation +because they try to hide their code (gpl-violations.org) +because their R&D environment is non-standard +weird cross-toolchains that nobody has seen before +weird filesystems with custom patches that nobody knows +because they add proprietary components to lock developers from adding features +e.g. the entire web-based UI for embedded networking gear +binary-only kernel modules that force people to use old kernels with no interesting new features +because it is, overall, way too hard to develop on/for their platform +because they don't disclose serial console and/or JTAG access + diff --git a/2008/embedded_linux-fossin2008/html/mgp00022.html b/2008/embedded_linux-fossin2008/html/mgp00022.html new file mode 100644 index 0000000..8b33a5a --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00022.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 22: How to do Embedded Linux [not] right
+
+Page 22
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00022.png b/2008/embedded_linux-fossin2008/html/mgp00022.png new file mode 100644 index 0000000..f24c694 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00022.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00022.txt b/2008/embedded_linux-fossin2008/html/mgp00022.txt new file mode 100644 index 0000000..f577cc0 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00022.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +Reality Check + + +So why do they still do it? +there can only be one conclusion: +they never understood the real potential of FOSS! +all they do is try to compete with what proprietary competitors do +they never think about creating platforms, every product is distinct/separate +they have no interest in improving their products + diff --git a/2008/embedded_linux-fossin2008/html/mgp00023.html b/2008/embedded_linux-fossin2008/html/mgp00023.html new file mode 100644 index 0000000..5528b96 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00023.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 23: How to do Embedded Linux [not] right
+
+Page 23
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00023.png b/2008/embedded_linux-fossin2008/html/mgp00023.png new file mode 100644 index 0000000..76e1403 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00023.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00023.txt b/2008/embedded_linux-fossin2008/html/mgp00023.txt new file mode 100644 index 0000000..681b1a5 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00023.txt @@ -0,0 +1,9 @@ +How to do Embedded Linux [not] right +What does the community get + + +So what does the community get? +products that run some crappy fork of Linux somewhere under the hood +but which we cannot really touch/modify without a lot of effort +we face opposition from the product maker if we want to help him to improve + diff --git a/2008/embedded_linux-fossin2008/html/mgp00024.html b/2008/embedded_linux-fossin2008/html/mgp00024.html new file mode 100644 index 0000000..35b3097 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00024.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 24: How to do Embedded Linux [not] right
+
+Page 24
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00024.png b/2008/embedded_linux-fossin2008/html/mgp00024.png new file mode 100644 index 0000000..8d19964 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00024.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00024.txt b/2008/embedded_linux-fossin2008/html/mgp00024.txt new file mode 100644 index 0000000..74228e2 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00024.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +TODO (device maker) + + +What should the device vendor do? +stop thinking in terms of selling black boxes +defining products that take advantage of the true strength of FOSS +compete against the proprietary competition on a level that they can't match +give up the idea of defining all aspects of an appliance +rather think of building an extensible platforms and let community innovate + diff --git a/2008/embedded_linux-fossin2008/html/mgp00025.html b/2008/embedded_linux-fossin2008/html/mgp00025.html new file mode 100644 index 0000000..ac61d41 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00025.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 25: How to do Embedded Linux [not] right
+
+Page 25
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00025.png b/2008/embedded_linux-fossin2008/html/mgp00025.png new file mode 100644 index 0000000..96673c7 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00025.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00025.txt b/2008/embedded_linux-fossin2008/html/mgp00025.txt new file mode 100644 index 0000000..5f06673 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00025.txt @@ -0,0 +1,16 @@ +How to do Embedded Linux [not] right +A note to chip vendors + + +There are two types of customers +The Linux-aware customer +understands FOSS much better than you do +will share the criticism of this talk +will likely go to a competitor who understands Linux better +The Linux-unaware customer +who just uses Linux to save per-unit OS royalties +who doesn't really care about most issues presented here +who will create inferior products +Linux-awareness is increasing, not decreasing +now is already late, but if you don't have proper FOSS support on your agenda now, you will likely loose the "openness competition" + diff --git a/2008/embedded_linux-fossin2008/html/mgp00026.html b/2008/embedded_linux-fossin2008/html/mgp00026.html new file mode 100644 index 0000000..062a6be --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00026.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 26: How to do Embedded Linux [not] right
+
+Page 26
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00026.png b/2008/embedded_linux-fossin2008/html/mgp00026.png new file mode 100644 index 0000000..a1c9865 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00026.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00026.txt b/2008/embedded_linux-fossin2008/html/mgp00026.txt new file mode 100644 index 0000000..e92c764 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00026.txt @@ -0,0 +1,12 @@ +How to do Embedded Linux [not] right +TODO (chip maker) + + +What should the chip vendors do? +engage in "sustainable development" +develop against latest mainline +make your development trees public (use git!), don't just release stable snapshots as BSP to your tier-one customers +actively interact with the community +learn how to play by the rules (coding style, use common interfaces, no proprietary drivers) +don't just do big code drops every now and then + diff --git a/2008/embedded_linux-fossin2008/html/mgp00027.html b/2008/embedded_linux-fossin2008/html/mgp00027.html new file mode 100644 index 0000000..bb463b6 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00027.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 27: How to do Embedded Linux [not] right
+
+Page 27
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00027.png b/2008/embedded_linux-fossin2008/html/mgp00027.png new file mode 100644 index 0000000..6a13ca8 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00027.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00027.txt b/2008/embedded_linux-fossin2008/html/mgp00027.txt new file mode 100644 index 0000000..b7825da --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00027.txt @@ -0,0 +1,15 @@ +How to do Embedded Linux [not] right +TODO (chip maker) + + +What should the chip vendors do? +Externally +Don't mistake FOSS as just a technology. It is a R&D philosophy! +Provide public reference manuals with no NDA +If you have to resort to NDA, make sure they are FOSS friendly +Ensure you don't license IP cores that conflict with FOSS +Internally +Draft a proper in-house FOSS strategy with clear goals +Don't expect your product mangers or engineers to know everything about FOSS without proper training +Hire people with strong community background into your R&D and management to facilitate the know-how transfer + diff --git a/2008/embedded_linux-fossin2008/html/mgp00028.html b/2008/embedded_linux-fossin2008/html/mgp00028.html new file mode 100644 index 0000000..eac927b --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00028.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 28: How to do Embedded Linux [not] right
+
+Page 28
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00028.png b/2008/embedded_linux-fossin2008/html/mgp00028.png new file mode 100644 index 0000000..e0b4494 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00028.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00028.txt b/2008/embedded_linux-fossin2008/html/mgp00028.txt new file mode 100644 index 0000000..d7b7f4d --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00028.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + +Chip Product Managers need to learn +There's more Linux use with their chips than they ever learn +Their customers are not just the tier-one customers +If you want to support Linux, do it the mainline way. If you support only N number of distributions, your 'N' will be growing and you'll be wasting R&D resources to support each one of them +That there is no single 'contact window' / entity for Linux +The big change is the FOSS development model, not the Linux API's +Linux-aware customers care not only about performance+price, but also about the quality of the Linux port code + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00029.html b/2008/embedded_linux-fossin2008/html/mgp00029.html new file mode 100644 index 0000000..25e5eb4 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00029.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 29: How to do Embedded Linux [not] right
+
+Page 29
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00029.png b/2008/embedded_linux-fossin2008/html/mgp00029.png new file mode 100644 index 0000000..0fa6122 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00029.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00029.txt b/2008/embedded_linux-fossin2008/html/mgp00029.txt new file mode 100644 index 0000000..87e4e97 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00029.txt @@ -0,0 +1,14 @@ +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + +BSP R&D Managers need to learn +Linux is not just a set of API's for their developers to learn +Linux is FOSS. The FOSS R&D model is different +Their engineers need to be encouraged to communicate +and thus, need real Internet (git, mailing lists, ..) +have to get clear indication what is confidential and what not +FOSS is about cooperation. You don't need to reinvent the wheel +don't include your own 802.11 stack in your wifi driver +If you do not merge your code mainline, you end up in a maintenance nightmare + diff --git a/2008/embedded_linux-fossin2008/html/mgp00030.html b/2008/embedded_linux-fossin2008/html/mgp00030.html new file mode 100644 index 0000000..e777c4d --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00030.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 30: How to do Embedded Linux [not] right
+
+Page 30
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00030.png b/2008/embedded_linux-fossin2008/html/mgp00030.png new file mode 100644 index 0000000..c2f18eb Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00030.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00030.txt b/2008/embedded_linux-fossin2008/html/mgp00030.txt new file mode 100644 index 0000000..33ee8a1 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00030.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +Lessons Learnt (chip maker) + + +BSP Software Engineers need to learn +Linux is not just a set of API's +How and where to ask the right kind of questions +How and where to look for the latest code +Code is written to be read by other people, not just to execute + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00031.html b/2008/embedded_linux-fossin2008/html/mgp00031.html new file mode 100644 index 0000000..3f00407 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00031.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 31: How to do Embedded Linux [not] right
+
+Page 31
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00031.png b/2008/embedded_linux-fossin2008/html/mgp00031.png new file mode 100644 index 0000000..4e19e9e Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00031.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00031.txt b/2008/embedded_linux-fossin2008/html/mgp00031.txt new file mode 100644 index 0000000..7ced731 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00031.txt @@ -0,0 +1,13 @@ +How to do Embedded Linux [not] right +TODO (community) + +What should the community do +Provide non-partisan documentation +on FOSS advantages, proper FOSS development +hardware companies are interested to learn, but don't know who to ask. If they ask a commercial distributor, then they get in bed with them, which is not the same as working with the mainline development community +Something like a mentoring program +take software/driver R&D by their hand and walk them through the mainline merge +Don't scare them away +They have to be taught about the communication / review culture +Your valid criticism to patches has to be explained + diff --git a/2008/embedded_linux-fossin2008/html/mgp00032.html b/2008/embedded_linux-fossin2008/html/mgp00032.html new file mode 100644 index 0000000..e08d164 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00032.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 32: How to do Embedded Linux [not] right
+
+Page 32
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00032.png b/2008/embedded_linux-fossin2008/html/mgp00032.png new file mode 100644 index 0000000..e8ec856 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00032.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00032.txt b/2008/embedded_linux-fossin2008/html/mgp00032.txt new file mode 100644 index 0000000..23d1b7f --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00032.txt @@ -0,0 +1,10 @@ +How to do Embedded Linux [not] right +Problems (chipmaker) + +Patent licensing schemes +e.g. MPEG patent license doesn't at all work in a FOSS model +Technology licensing schemes +e.g. Sony Memorystick. Impossible for a chip maker to provide FOSS driver +Everyone in the industry has those very same problems +Chip makers should cooperate to present their case together to the respective licensors + diff --git a/2008/embedded_linux-fossin2008/html/mgp00033.html b/2008/embedded_linux-fossin2008/html/mgp00033.html new file mode 100644 index 0000000..f4f14ba --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00033.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 33: How to do Embedded Linux [not] right
+
+Page 33
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00033.png b/2008/embedded_linux-fossin2008/html/mgp00033.png new file mode 100644 index 0000000..7288a48 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00033.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00033.txt b/2008/embedded_linux-fossin2008/html/mgp00033.txt new file mode 100644 index 0000000..50688e9 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00033.txt @@ -0,0 +1,11 @@ +How to do Embedded Linux [not] right +Problems (chipmaker) + +Patent trolls +openly accessible documentation invites patent trolls +Why? +patent trolls rarely read+understand FOSS code +thus, open documentation increases the risk to be hit +However +this is a by-product of how the patent system currently works + diff --git a/2008/embedded_linux-fossin2008/html/mgp00034.html b/2008/embedded_linux-fossin2008/html/mgp00034.html new file mode 100644 index 0000000..eab270f --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00034.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 34: How to do Embedded Linux [not] right
+
+Page 34
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00034.png b/2008/embedded_linux-fossin2008/html/mgp00034.png new file mode 100644 index 0000000..b564501 Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00034.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00034.txt b/2008/embedded_linux-fossin2008/html/mgp00034.txt new file mode 100644 index 0000000..3b1916e --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00034.txt @@ -0,0 +1,15 @@ +How to do Embedded Linux [not] right +Outlook + +Outlook +We will see even more embedded Linux, e.g. Mobile phones +We will see even more restricted devices (Tivo-ization, DRM for code) +which go on _very_ thin ice even with GPLv2 +which almost completely remove all freedoms of FOSS +We have some faint dim light at the end of a very far tunnel +e.g. projects like Openmoko, who truly see openness as a feature +e.g. chip makers who slowly open up a bit more +on the PC side, Intel definitely is setting the best overall example +on the Embedded side, I see some movement in major players (TI, Marvell, Samsung, Infineon, ...) + + diff --git a/2008/embedded_linux-fossin2008/html/mgp00035.html b/2008/embedded_linux-fossin2008/html/mgp00035.html new file mode 100644 index 0000000..cb42f17 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00035.html @@ -0,0 +1,9 @@ + +MagicPoint presentation foils + +[index] [text page] [<<start] [<prev] [next>] [last>>] +
Page 35: How to do Embedded Linux [not] right
+
+Page 35
+
Generated by MagicPoint + diff --git a/2008/embedded_linux-fossin2008/html/mgp00035.png b/2008/embedded_linux-fossin2008/html/mgp00035.png new file mode 100644 index 0000000..7852fce Binary files /dev/null and b/2008/embedded_linux-fossin2008/html/mgp00035.png differ diff --git a/2008/embedded_linux-fossin2008/html/mgp00035.txt b/2008/embedded_linux-fossin2008/html/mgp00035.txt new file mode 100644 index 0000000..6813598 --- /dev/null +++ b/2008/embedded_linux-fossin2008/html/mgp00035.txt @@ -0,0 +1,8 @@ +How to do Embedded Linux [not] right +Thanks + +Thanks for your attention. + +Some Time left for Q&A + +Enjoy the FOSS.in / 2008 diff --git a/2008/embedded_linux-fossin2008/linux_netfilter_singapore_entertainment.jpg b/2008/embedded_linux-fossin2008/linux_netfilter_singapore_entertainment.jpg new file mode 100644 index 0000000..91b839f Binary files /dev/null and b/2008/embedded_linux-fossin2008/linux_netfilter_singapore_entertainment.jpg differ -- cgit v1.2.3