Over naar Embedded Linux  …  Hoe doet u dat? Wat zijn de kosten van Linux En hoe ze te beperken De mogelijkheden van Linux Technisch of economisch?  Wist u dat … wat iedereen weet na een paar projecten, maar u nu  nog   niet  . . .
U weet wat Embedded is … Maar, weet u het zeker? Klein, Zoals in een TV (16 Megabyte)  Bron: B&C-online Kleiner  dan;  kleiner  dan bijvoorbeeld een PC, “ 640K is genoeg”,  was lang de PC norm! Snel: tijden in milliseconden @100MHz ==>  honderdduizend  cycli per ms! Sneller  dan;  sneller  dan bijvoorbeeld een PC USB2: een seriele lijn van 480Mbits/sec.  Ooit een  interrupt  gemist? Alles is anders. Embedded is groot geworden
Software kost niets … Helaas, dat is onjuist! Alleen de ‘reproductiekosten’ zijn erg laag De licentiekosten zijn onderdeel van de BOM Voor ‘OpenSource’ Linux: €0,=  Andere RTOS’en: €0, €3 … €150,=  De  ontwikkelkosten  zijn niet nihil Vaak 50%, soms 80% en alsmaar stijgend Deel van die kosten zijn onnodig Voor Linux:  Kosten van softwareontwikkeling en hardwarefabricage (BOM) zijn niet onafhankelijk!
Linux is toch gratis? Helaas, dat is onwaar Linux is ‘ free’  en ‘open’, niet ‘ public   domain’ Het GPL bevat zelfs het woord ‘gratis’ niet! U moet voldoen aan de licenties U mag de code (vaak) gratis downloaden U moet zelf: Lees: dit kost het u … Selecteren, Bouwen, Integreren & Testen Ontbrekende delen ontwikkelen Bijv:  proprietary  hardware Maar ook:  dat wat er toevallig niet is Kortom: ontwikkelen met Linux is niet kosteloos Linux is geweldig, maar ook voor U?
Linux versus  traditioneel  … Linux Groot, Generiek 32bit, MMU “ Kleiner is duurder!” (te) veel code ‘free’ Geen code voor alles Alles is mogelijk, maar niet alles is er! Licenties: GPL, LGPL, BSD, … GPL: juridisch onduidelijk U heeft geen keuze! Traditioneel Klein, Specifiek  8-bitter (mag meer) “ Meer kost meer” Opties betalen Mooie code-set Leverancier bepaalt wat je nodig hebt Licenties: Seat, Runtime, … ’ n zakelijke afspraak Onderhandelbaar
Een typisch Linux systeem Hardware Toepassing Kernel Drivers selectie bouwen testen integreren Domein Kennis Tools Open Source BSP Linux Kennis Std.  Feature boot/ rc-code init/ inetd Std.   Feature libC BusyBox
Linux uitdagingen Kies, kies & kies Distributie, kernel-versie, tools, code, opties, features, ... Drivers ‘ Mechanism, not policies ’ The Unix file API, Linux Device Model,  Kobject, … Downsizen Wat is nodig, wat is nuttig, wat is betaalbaar? Hardware! ‘ PC’ is de norm Kiezen van wat Linux ondersteunt ??? Licenties GPL is geen technisch probleem, maar wel een risico!
Defatco  Linux oplossingen Risico: geen ervaring met embedded Linux Gebruik bestaande oplossingen, als uitgangspunt Busybox , en andere ‘ small (old) utilities ’ Risico: hardware & drivers Start op een oude (386) PC! Gebruik ‘PC-populaire’ hardware, als mogelijk Veel geheugen!!! (RAM & FLASH) Extra geheugen kan goedkoper zijn!  (minder ontwikkelkosten)   In release II is het toch nodig! Risico: GPL Voorkom een padstelling! Publiceer gewoon alles  (een ander kan er toch niets mee) Splits platform & toepassing  (fysiek en organisatorisch)
Gouden  tips, voor een snelle start TIP 1 Bepaal (vooraf) een standpunt over ‘OpenSource’ Resultaat: U kunt uw product opleveren Geen rechtzaken of negatieve publiciteit Kosten: Een maand  (?)  vergaderen (intern) Juridisch advies:   €??? Do’s& Don’ts Zet alle code op uw website  (ook goede PR) Besteedt alle ‘open’ delen uit (juridisch duidelijk)  Betalen om (derden) OpenSoure te laten maken mag Die ‘derden’ maken alle code OpenSource, U gebruikt die OpenSource code  ongewijzigd Mix nooit ‘ non-disclosure ’ en ‘GPL’ !!!
Gouden  tips, voor een snelle start TIP 2 Probeer uw toepassing eens op een (embedded)LinuxPC Resultaat: Inzicht in planning & risico’s Details van technische uitdagingen bekent Geheugen gebruik,  #werk ‘echte poort’, etc Kosten: 386PC + embedded Linux:  €0 + 4 uur Poorten toepassing: timebox < 1 week Do’s& Don’ts Niet ‘cross’; ‘moeilijke zaken’ overslaan Gebruik ‘stubs’, geen HW-details Voorkeur voor ‘open’ Linux & tools!
Gouden  tips, voor een snelle start TIP 3 Kies eerst voor Linux,  dan de hardware (details) Resultaat: Ontwikkelkosten omlaag: er zijn (goede) drivers Kosten: Overtuigen van  de ‘systeem broeders’  N.B. Er zijn geen extra HW kosten; kies ‘even duur, maar beter voor (sw) project’ Do’s& Don’ts Negeer ‘mooie’ desktop/server opties GUI’s, installers, packages, etc Bestaande systemen: bepaal ‘ Linux geschiktheid ’
Over naar Linux, zo doet u dat Hergebruik: code & ervaring 80% van wat u nodig heeft, is er al! Start op ’n oude 386PC met embedded Linux Linux is immers ‘hardware onafhankelijk’ Dat levert technische en project ervaring op Qua  performance  lijkt het een embedded systeem Gebruik ‘stub-versie’ als referentie systeem. Kijk niet  alleen  naar techniek OpenSource standpunt, Projectplanning, GPL Gebruik een zo breed mogelijke (project)scope Kijkt u dan naar de economische mogelijkheden: Dan is Linux geweldig,  als middel  voor embedded systemen!
Bedankt, en meer Dank voor uw aandacht  En veel succes met Linux! Voor meer info: Kom naar de PTS stand http://www.pts.nl [email_address] Als u meer informatie, praktijkvoorbeelden of analyses wilt over bijvoorbeeld werken met OpenSource software of  end-of-life  problematiek, dan kijkt u op: http://www.passievoortechniek.nl http://albert.mietus.nl/read.IT

Over Naar (embedded) Linux

  • 1.
    Over naar EmbeddedLinux … Hoe doet u dat? Wat zijn de kosten van Linux En hoe ze te beperken De mogelijkheden van Linux Technisch of economisch? Wist u dat … wat iedereen weet na een paar projecten, maar u nu nog niet . . .
  • 2.
    U weet watEmbedded is … Maar, weet u het zeker? Klein, Zoals in een TV (16 Megabyte) Bron: B&C-online Kleiner dan; kleiner dan bijvoorbeeld een PC, “ 640K is genoeg”, was lang de PC norm! Snel: tijden in milliseconden @100MHz ==> honderdduizend cycli per ms! Sneller dan; sneller dan bijvoorbeeld een PC USB2: een seriele lijn van 480Mbits/sec. Ooit een interrupt gemist? Alles is anders. Embedded is groot geworden
  • 3.
    Software kost niets… Helaas, dat is onjuist! Alleen de ‘reproductiekosten’ zijn erg laag De licentiekosten zijn onderdeel van de BOM Voor ‘OpenSource’ Linux: €0,= Andere RTOS’en: €0, €3 … €150,= De ontwikkelkosten zijn niet nihil Vaak 50%, soms 80% en alsmaar stijgend Deel van die kosten zijn onnodig Voor Linux: Kosten van softwareontwikkeling en hardwarefabricage (BOM) zijn niet onafhankelijk!
  • 4.
    Linux is tochgratis? Helaas, dat is onwaar Linux is ‘ free’ en ‘open’, niet ‘ public domain’ Het GPL bevat zelfs het woord ‘gratis’ niet! U moet voldoen aan de licenties U mag de code (vaak) gratis downloaden U moet zelf: Lees: dit kost het u … Selecteren, Bouwen, Integreren & Testen Ontbrekende delen ontwikkelen Bijv: proprietary hardware Maar ook: dat wat er toevallig niet is Kortom: ontwikkelen met Linux is niet kosteloos Linux is geweldig, maar ook voor U?
  • 5.
    Linux versus traditioneel … Linux Groot, Generiek 32bit, MMU “ Kleiner is duurder!” (te) veel code ‘free’ Geen code voor alles Alles is mogelijk, maar niet alles is er! Licenties: GPL, LGPL, BSD, … GPL: juridisch onduidelijk U heeft geen keuze! Traditioneel Klein, Specifiek 8-bitter (mag meer) “ Meer kost meer” Opties betalen Mooie code-set Leverancier bepaalt wat je nodig hebt Licenties: Seat, Runtime, … ’ n zakelijke afspraak Onderhandelbaar
  • 6.
    Een typisch Linuxsysteem Hardware Toepassing Kernel Drivers selectie bouwen testen integreren Domein Kennis Tools Open Source BSP Linux Kennis Std. Feature boot/ rc-code init/ inetd Std. Feature libC BusyBox
  • 7.
    Linux uitdagingen Kies,kies & kies Distributie, kernel-versie, tools, code, opties, features, ... Drivers ‘ Mechanism, not policies ’ The Unix file API, Linux Device Model, Kobject, … Downsizen Wat is nodig, wat is nuttig, wat is betaalbaar? Hardware! ‘ PC’ is de norm Kiezen van wat Linux ondersteunt ??? Licenties GPL is geen technisch probleem, maar wel een risico!
  • 8.
    Defatco Linuxoplossingen Risico: geen ervaring met embedded Linux Gebruik bestaande oplossingen, als uitgangspunt Busybox , en andere ‘ small (old) utilities ’ Risico: hardware & drivers Start op een oude (386) PC! Gebruik ‘PC-populaire’ hardware, als mogelijk Veel geheugen!!! (RAM & FLASH) Extra geheugen kan goedkoper zijn! (minder ontwikkelkosten) In release II is het toch nodig! Risico: GPL Voorkom een padstelling! Publiceer gewoon alles (een ander kan er toch niets mee) Splits platform & toepassing (fysiek en organisatorisch)
  • 9.
    Gouden tips,voor een snelle start TIP 1 Bepaal (vooraf) een standpunt over ‘OpenSource’ Resultaat: U kunt uw product opleveren Geen rechtzaken of negatieve publiciteit Kosten: Een maand (?) vergaderen (intern) Juridisch advies: €??? Do’s& Don’ts Zet alle code op uw website (ook goede PR) Besteedt alle ‘open’ delen uit (juridisch duidelijk) Betalen om (derden) OpenSoure te laten maken mag Die ‘derden’ maken alle code OpenSource, U gebruikt die OpenSource code ongewijzigd Mix nooit ‘ non-disclosure ’ en ‘GPL’ !!!
  • 10.
    Gouden tips,voor een snelle start TIP 2 Probeer uw toepassing eens op een (embedded)LinuxPC Resultaat: Inzicht in planning & risico’s Details van technische uitdagingen bekent Geheugen gebruik, #werk ‘echte poort’, etc Kosten: 386PC + embedded Linux: €0 + 4 uur Poorten toepassing: timebox < 1 week Do’s& Don’ts Niet ‘cross’; ‘moeilijke zaken’ overslaan Gebruik ‘stubs’, geen HW-details Voorkeur voor ‘open’ Linux & tools!
  • 11.
    Gouden tips,voor een snelle start TIP 3 Kies eerst voor Linux, dan de hardware (details) Resultaat: Ontwikkelkosten omlaag: er zijn (goede) drivers Kosten: Overtuigen van de ‘systeem broeders’ N.B. Er zijn geen extra HW kosten; kies ‘even duur, maar beter voor (sw) project’ Do’s& Don’ts Negeer ‘mooie’ desktop/server opties GUI’s, installers, packages, etc Bestaande systemen: bepaal ‘ Linux geschiktheid ’
  • 12.
    Over naar Linux,zo doet u dat Hergebruik: code & ervaring 80% van wat u nodig heeft, is er al! Start op ’n oude 386PC met embedded Linux Linux is immers ‘hardware onafhankelijk’ Dat levert technische en project ervaring op Qua performance lijkt het een embedded systeem Gebruik ‘stub-versie’ als referentie systeem. Kijk niet alleen naar techniek OpenSource standpunt, Projectplanning, GPL Gebruik een zo breed mogelijke (project)scope Kijkt u dan naar de economische mogelijkheden: Dan is Linux geweldig, als middel voor embedded systemen!
  • 13.
    Bedankt, en meerDank voor uw aandacht En veel succes met Linux! Voor meer info: Kom naar de PTS stand http://www.pts.nl [email_address] Als u meer informatie, praktijkvoorbeelden of analyses wilt over bijvoorbeeld werken met OpenSource software of end-of-life problematiek, dan kijkt u op: http://www.passievoortechniek.nl http://albert.mietus.nl/read.IT

Editor's Notes

  • #2 Natuurlijk, het gaat over Linux. Maar ook over embedded systeem ontwikkeling. Linux is immers geen doel; hooguit een middel. Om een systeem goed en kosteneffectief te ontwikkelen is een planning nodig; en daarvoor is ervaring nodig. Bij de overstap naar Linux zou het goed kunnen, dat uw oude ervaring niet meer helemaal past. Dat is normaal. U heeft immers nog nauwelijks Linux ervaring? Dus, voordat we ons in het diepe storten van Linux, laten noch even naar zekerheden kijken