SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
Bug Labs Inc, 2008
BUG: A Customizable Hardware and Software
Platform Using Linux, Java and OSGi
• Ken Gilmer, Bug Labs
• Angel Roman, Bug Labs
Bug Labs Inc, 2008
What's a BUG?!
• A mobile Linux computer with OSGi built-in.
• A Modular hardware and software platform for user-
created gadgets.
• A tool for prototyping and building custom hardware.
• The real world expressed as services.
• Native Linux
• OSGi
• RESTful-style web services
Bug Labs Inc, 2008
What's a BUG?!
• Eclipse-based SDK and virtual BUG.
• Application Sharing Website: BUGnet
• Makes it drag-and-drop simple to share creations
with others.
• Community Focus: BUGCommunity.com
• Hardware schematics are open source.
• Anyone can build BUG devices and modules.
• Fully Free and Open Source Software.
• BUG: GPL, BSD
• SDK: EPL, BSD
Bug Labs Inc, 2008
BUG Hardware Summary
Bug Labs Inc, 2008
BMI: BUG Module Interface
• Hardware:
• 40 Pin Samtec Connector
• GPIOs and Interrupts
• Peripheral I/O interfaces
• LCD, Camera, SSI, UARTs, etc...
• The Software:
• Hooks into the Linux Kernel's bus subsystem.
• Makes hot plug-in possible.
• Notifies device drivers and OSGi when hardware
is present.
Bug Labs Inc, 2008
Linux Device Driver Interface
• Standardized file based interface for non network
devices.
• open()/close()
• lseek()
• ioctl()
• Allows reuse of JNI code for multiple devices
• CharDevice
• CharDeviceInputStream
Bug Labs Inc, 2008
Java Native Interface
• Provides Java(tm) programs access to the
operating system.
• Each BUG module has one or more JNI bridges to
Linux device driver(s).
Bug Labs Inc, 2008
JVM: PhoneME Advanced
• Sun's GPL mobile CDC JVM
• Personal Profile: Almost complete J2SE 1.4.
• Just-in-time compiler for native level performance.
• Excellent performance.
• Great documentation.
• Active community with helpful forums.
• https://phoneme.dev.java.net/
Bug Labs Inc, 2008
Concierge – OSGi R3 Framework
• Small and Fast OSGi implementation.
• File footprint is about 80 Kb.
• CPU utilization on BUG typically under 1%.
• Optimized for small devices and mobile Java.
• Clean, simple code base.
• http://concierge.sourceforge.net
Bug Labs Inc, 2008
OSGi/Java BUGisms
• Modlet
• Similar to a bundle, but for a hardware module.
• One to one relationship with module.
• On current BUG, maximum of 4 modules can
be loaded.
• Initializes JNI code and manages OSGi and web
services.
• Is the bundlespace representation of a hardware
device.
Bug Labs Inc, 2008
OSGi/Java BUGisms
• Web Services
• HTTP bundle provides servlet container.
• IPublicWSAdmin
• Simple, discoverable web services.
• OSGi console
• Configuration Manager
• SDK interface entirely WS
• URL is entity
• HTTP method is operation
Bug Labs Inc, 2008
Ongoing challenges
• Security/Identity
• WS uses MS-DOS security (there is none)
• The network
• pervasiveness
• addressability
• Embedded Linux
• Most moms and dads won't get cross compiling.
• Embedded Linux is still emerging. Many
competing visions.
• User Interfaces
Bug Labs Inc, 2008
Vision in Use Cases
• Activist consumer
• Chinese restaurant blogger
• Time-shifted racing
• Rapid HW prototyping
• Stephenson's Gargoyles
Bug Labs Inc, 2008
BUG Tour
Bug Labs Inc, 2008
Questions and Comments
• http://buglabs.net
• Ken Gilmer - ken@buglabs.net
• Angel Roman - angel@buglabs.net
• IRC: #buglabs on irc.freenode.net
• http://bugcommunity.com

Más contenido relacionado

Más de mfrancis

Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
mfrancis
 

Más de mfrancis (20)

OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

BUG - A Customizable Hardware and Software Platform using Linux, Java and OSGi - Ken Gilmer & Angel Roman

  • 1. Bug Labs Inc, 2008 BUG: A Customizable Hardware and Software Platform Using Linux, Java and OSGi • Ken Gilmer, Bug Labs • Angel Roman, Bug Labs
  • 2. Bug Labs Inc, 2008 What's a BUG?! • A mobile Linux computer with OSGi built-in. • A Modular hardware and software platform for user- created gadgets. • A tool for prototyping and building custom hardware. • The real world expressed as services. • Native Linux • OSGi • RESTful-style web services
  • 3. Bug Labs Inc, 2008 What's a BUG?! • Eclipse-based SDK and virtual BUG. • Application Sharing Website: BUGnet • Makes it drag-and-drop simple to share creations with others. • Community Focus: BUGCommunity.com • Hardware schematics are open source. • Anyone can build BUG devices and modules. • Fully Free and Open Source Software. • BUG: GPL, BSD • SDK: EPL, BSD
  • 4. Bug Labs Inc, 2008 BUG Hardware Summary
  • 5. Bug Labs Inc, 2008 BMI: BUG Module Interface • Hardware: • 40 Pin Samtec Connector • GPIOs and Interrupts • Peripheral I/O interfaces • LCD, Camera, SSI, UARTs, etc... • The Software: • Hooks into the Linux Kernel's bus subsystem. • Makes hot plug-in possible. • Notifies device drivers and OSGi when hardware is present.
  • 6. Bug Labs Inc, 2008 Linux Device Driver Interface • Standardized file based interface for non network devices. • open()/close() • lseek() • ioctl() • Allows reuse of JNI code for multiple devices • CharDevice • CharDeviceInputStream
  • 7. Bug Labs Inc, 2008 Java Native Interface • Provides Java(tm) programs access to the operating system. • Each BUG module has one or more JNI bridges to Linux device driver(s).
  • 8. Bug Labs Inc, 2008 JVM: PhoneME Advanced • Sun's GPL mobile CDC JVM • Personal Profile: Almost complete J2SE 1.4. • Just-in-time compiler for native level performance. • Excellent performance. • Great documentation. • Active community with helpful forums. • https://phoneme.dev.java.net/
  • 9. Bug Labs Inc, 2008 Concierge – OSGi R3 Framework • Small and Fast OSGi implementation. • File footprint is about 80 Kb. • CPU utilization on BUG typically under 1%. • Optimized for small devices and mobile Java. • Clean, simple code base. • http://concierge.sourceforge.net
  • 10. Bug Labs Inc, 2008 OSGi/Java BUGisms • Modlet • Similar to a bundle, but for a hardware module. • One to one relationship with module. • On current BUG, maximum of 4 modules can be loaded. • Initializes JNI code and manages OSGi and web services. • Is the bundlespace representation of a hardware device.
  • 11. Bug Labs Inc, 2008 OSGi/Java BUGisms • Web Services • HTTP bundle provides servlet container. • IPublicWSAdmin • Simple, discoverable web services. • OSGi console • Configuration Manager • SDK interface entirely WS • URL is entity • HTTP method is operation
  • 12. Bug Labs Inc, 2008 Ongoing challenges • Security/Identity • WS uses MS-DOS security (there is none) • The network • pervasiveness • addressability • Embedded Linux • Most moms and dads won't get cross compiling. • Embedded Linux is still emerging. Many competing visions. • User Interfaces
  • 13. Bug Labs Inc, 2008 Vision in Use Cases • Activist consumer • Chinese restaurant blogger • Time-shifted racing • Rapid HW prototyping • Stephenson's Gargoyles
  • 14. Bug Labs Inc, 2008 BUG Tour
  • 15. Bug Labs Inc, 2008 Questions and Comments • http://buglabs.net • Ken Gilmer - ken@buglabs.net • Angel Roman - angel@buglabs.net • IRC: #buglabs on irc.freenode.net • http://bugcommunity.com