FOSDEM is the biggest free and non-commercial event organized by and for the community. Its goal is to provide Free and Open Source developers a place to meet. No registration necessary.

Christophe Scholliers
Day Saturday
Room Lameere
Capacity 500
Start time 14:00
End time 15:00
Duration 01:00
Track Embedded devroom

Advanced Experiments with XMOS Multicore Embedded Hardware.

Embedded systems handle signals from the outside world using either polling or interrupts. While polling is resource consuming, interrupt-driven approaches can introduce bugs which are subtle and difficult to debug. This talk discusses our experience on porting the Scheme programming language to a new event-driven architecture and programming style developed by the XMOS company. The architecture's hardware support for multithreading enables an event-driven style for programming embedded systems which does not suffer from the drawbacks associated with the use of polling and interrupts. To accomplish this, the thread support is implemented in hardware. Each thread has a dedicated set of registers and is assigned a guaranteed amount of CPU cycles. We first describe how we ported a Scheme interpreter to this new architecture. We exploit the multi-threaded nature of this architecture by running multiple interpreters in parallel, concretely one interpreter on each core. In addition, we extended each interpreter with abstractions to manage this concurrency and to exploit features specific of the XMOS hardware. Such abstractions include sending messages between interpreters over channels. Concretely, our effort enables an event-driven style for programming multi-core embedded systems in Scheme. We show how the XMOS architecture helps the programming in overcoming the difficulties associated with polling and interrupt-driven approaches.

Concurrent events:

When Event Track Where
13:30-14:15 Étoilé: What has been done over the past year and what's next? World of GNUstep AW1.117
13:45-14:15 Firefox 4 Mozilla H.1301
13:45-14:15 Introduction to Clustering with Mahout Data Analytics AW1.124
13:45-14:15 SSH libraries: SSH vs TLS; libssh Security & hardware crypto AW1.105
14:00-14:15 Coreboot: x86 system boot and initialization Lightning Talks Ferrer
14:00-14:25 Boosting Enterprise MySQL performance: implementing I/O prefetch for InnoDB MySQL & friends H.2213
14:00-14:25 Manos: web apps for the lazy hacker Mono AW1.120
14:00-14:30 XMPP and Security Jabber & XMPP AW1.121
14:00-14:30 IcedRobot: The GNUlization of Android Free Java AW1.125
14:00-14:40 Dynamic hacking with Guile GNU H.2214
14:00-14:45 Community Anti-patterns Crossdesktop H.1309
14:00-14:50 DevOps? - More than Marketing System Janson
14:00-14:50 The life of a Firefox feature Web Browsing Chavanne
14:00-15:00 Using NixOS for declarative deployment and testing CrossDistro H.1302
14:00-15:00 Swimming Upstream CrossDistro H.1308
14:00-15:00 mk-configure BSD AW1.126
14:00-15:45 LPI Exam 1 Certification Guillissen
14:00-16:00 TYPO3 Exam Session Certification UA2.114
14:00-16:00 BSD Associate Exam Session Certification UA2.114
14:15-14:45 libcurl: Supporting seven SSL libraries and one SSH library Security & hardware crypto AW1.105
14:15-14:45 LanguageKit - supporting Smalltalk and JavaScript dialects on the Objective-C runtime - what's hard, what's easy, and why developers and users should care. World of GNUstep AW1.117
14:15-14:45 Mapping Wikileaks' Cablegate using Python, mongoDB, Neo4J and Gephi Data Analytics AW1.124
14:20-14:35 flashrom: Run your BIOS/EFI/firmware updates under any free OS Lightning Talks Ferrer
14:30-14:55 Over 20,000QPS, XtraDB performance show MySQL & friends H.2213
14:30-14:55 The Web Objects Kitchen Mono AW1.120
14:30-15:00 Stump the XMPP Experts! Open Q&A Jabber & XMPP AW1.121
14:30-15:00 In-tab UI Mozilla H.1301
14:40-14:55 0MQ: Multithreading magic Lightning Talks Ferrer
14:45-15:00 Tools and Methods for Web Data Extraction Data Analytics AW1.124
14:45-15:00 CyaSSL Security & hardware crypto AW1.105
14:45-15:00 EtoileText World of GNUstep AW1.117
14:45-15:30 Gallium state trackers applied to 2D rendering libraries Crossdesktop H.1309

Next (up to 3) talks in the same room (Lameere):

When Event Track
15:00-16:00 Flukso - Community Metering. Embedded
16:00-17:00 DaVinci dm365 for home automation Embedded
17:00-18:00 Milkymist : Pushing further the limits of electronics openness Embedded

Events that start after this one (within 30 minutes):

When Event Track Where
15:00-16:00 Flukso - Community Metering. Embedded Lameere
15:00-15:15 Neo4j: Graph DB and Neo4j introduction Lightning Talks Ferrer
15:00-15:15 Datalift, A catalyser for the Web of data Data Analytics AW1.124
15:00-15:20 Making happy developers Mono AW1.120
15:00-15:20 Why Linux Distributions Hate Java Free Java AW1.125
15:00-15:25 Data Recovery for MySQL MySQL & friends H.2213
15:00-15:30 GNU Parallel GNU H.2214
15:00-15:30 Fribid and browser security software Security & hardware crypto AW1.105
15:00-15:30 CiviCRM & XMPP as your personal assistant Jabber & XMPP AW1.121
15:00-15:50 Qt WebKit goes Mobile Web Browsing Chavanne
15:00-15:50 systemd: Beyond init System Janson
15:00-16:00 Downstream packaging collaboration CrossDistro H.1308
15:00-16:00 Bringing OMAP3 into the FreeBSD Tree BSD AW1.126
15:00-16:00 Fast and Flexible UI Development with EtoileUI World of GNUstep AW1.117
15:00-16:00 Amazing openSUSE CrossDistro H.1302
15:20-15:35 iRail: Creating a public transport API Lightning Talks Ferrer
15:20-15:40 The Java Packaging Nightmare Free Java AW1.125
15:30-15:45 GDL - GNU Data Language Data Analytics AW1.124
15:30-15:45 Group Photo Crossdesktop H.1309
15:30-15:55 Taking Backups With XtraBackup MySQL & friends H.2213
15:30-16:00 EJBCA and OpenSC Security & hardware crypto AW1.105
15:30-16:00 Mono packaging in Debian and Ubuntu - why we're always right Mono AW1.120
15:30-16:00 XMPP Conf Calls: One Way or Another Jabber & XMPP AW1.121
15:30-16:15 Moving to the client - HTML5 is here Mozilla H.1301