BUG Glossary
From BUG Wiki
A
ARM
The CPU architecture in the BUG. Many PDAs and phones use ARM CPUs. The BUG uses the Freescale i.MX31 ARM-based processor.
B
Base LCD
The LCD on the BUGbase unit. This LCD is used to see status information such as battery status as well as any special information provided by modules and applications. Additionally, a menu system allows users to manager BUGmodules, web services, and applications.
Base Unit
Also known as BUGbase, this is the core building block of BUG.
BMI
BUG Module Interface: the four connectors on the BUGbase unit that connect to BUGmodules. The BMI connector acts as a hot-pluggable bus in Linux similar to USB. The pinouts from the BMI connector map to common generally available interfaces such as USB, GPIO, and I2C.
Bootloader
A bootloader is the first software that runs on a computer. On a desktop PC this is normally referred to as a BIOS. The BUG uses the Redboot bootloader to load the Linux operating system.
BUG Application
Application created in Dragonfly SDK. Application can be transferred for execution to BUG. It can also be transferred to BUGnet so it can be shared with the community.
BUGbase
The BUGbase is the foundation of your BUG device, you can think of it as the "brains" of your gadget. More info on our website.
BUGmodules
Each BUGmodule represents a functional component of a BUG device. A BUGmodule could be a digital camera, a GPS receiver, a keyboard, a bar code reader, etc. More info on our website.
BUGnet
BUGnet is our online community, including the repository for sharing applications.
Bundle
A bundle is an OSGi term for an application or component. It is a discreet software component. The BUG application layer is a set of OSGi bundles.
C
Concierge
An R3 OSGi implementation used in the BUG.
Configuration Admin
Upon unregistering a bundle from the OSGi Framework all configuration data that might have been set to define its state is gone. To relieve user of pains of reconfiguring the bundle once its active, Configuration Admin can be used to persist configuration data so that upon the bundle's being active again its states can be set to those when they were before bundle was unregistered.
Concierge Project
D
E
Eclipse
Eclipse is an open-source software framework written primarily in Java. In its default form it is an Integrated Development Environment (IDE) for Java developers, consisting of the Java Development Tools (JDT) and the Eclipse Compiler for Java (ECJ). Users can extend its capabilities by installing plug-ins written for the Eclipse software framework, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules.
Dragonfly SDK is a collection of plug-ins that contribute to Eclipse Platform.
More info about Eclipse Platform can be found here
F
G
GPIO
General Purpose Input Output: An embedded bus used on the BUG. The BMI connector exposes GPIO ports. More information is available at Wikipedia.
H
I
I2C
A serial bus. This is an interface that is exposed in the BMI connector. More information is available at Wikipedia.
IPU
Image Processing Unit: a component in the BUG that handles image processing.
J
Jar
A jar is essentially a compressed zip file that contains Java code. The Dragonfly SDK packages BUG applications in jar files.
jSLP
A SLP implementation used in the BUG and the SDK. SLP allows the SDK to discover BUGs on the local network. More info about jSLP can be found here
JVM
Java Virtual Machine: a program that executes Java programs. The BUG uses the PhoneME Advanced CDC JVM.
K
Kernel
Short for the Linux Kernel. The BUG runs Linux version 2.6.19.
L
LTIB
Short for Linux Target Image Builder. LTIB is a tool we use to generate our Linux kernel and root filesystem.
M
Manifest File
In an OSGi bundle, a manifest file is where metadata is stored. This file is in the /META-INF directory of the jar.
Modlet
A modlet is a piece of Java code that gets executed each time a module is inserted or removed from a BUGbase.
Mongrel
Mongrel is an application server for Ruby web applications. It is often used behind more general web servers such as Apache or nginx in a clustered manner. In this arrangement, the general web server typically serves static content and hands off requests for dynamic content to the mongrel cluster.
MMCcard
These are the memory cards that the BUG boots from. The BUG Linux root filesystem is stored on this card. User applications and data is also stored on this card.
N
Navigation Buttons
The navigation buttons are to the left of the BUGbase LCD display. Up, down, left, right allow users to navigate the menu.
nginx
A lightweight, fast web server that has become very popular for hosting Ruby on Rails. It is pronounced "engine X". Nginx wiki
O
OSGi
Open Services Gateway Initiative. A Java-based specification that describes a runtime and component model. BUG applications run on an OSGi implementation called Concierge.
OSGi Shell
A console interface to the OSGi runtime. This console lets a user inspect the current state of the runtime system, start and stop bundles, and see what services are available. In addition, developers can add their own commands.
R
Redboot
The bootloader used in the BUG. Redboot loads the Linux kernel into memory and starts it. Redboot can be used to upgrade the kernel in flash.
REST
Stands for Representational State Transfer. A style of web service architecture that uses HTTP verbs for CRUD (Create, Read, Update, Delete) actions on addressable resources. Resources are addressable via a uri. Typically these uri's are descriptive and easy to read. REST style resources are often called RESTful and they tend to be simpler than RPC-style web services, such as those that depend on SOAP.
Rootfs
Shorthand for Root Filesystem. This is the data structure where all files are stored on the BUG.
S
SDK
Software Development Kit. The BUG SDK, also known as Dragonfly, is what you use to write applications for the BUG.
SLP
Service Location Protocol. A discovery protocol that allows various networked services to know about each other.
SoC
Short for "System on a Chip". The BUG CPU, Freescale's i.MX31, is a SoC. It combines several devices and interfaces that are typically found on separate chips in traditional designs.
T
TCP/IP over USB
Linux allows a special USB kernel module (g_ether) to be loaded that causes a USB connection between the BUG and a computer to be used as a network connection.
U
USB
Universal Serial Bus. BUG has one USB OTG (on the go) port. This port can be used to connect external peripheral such as hard drives and web cams. Additionally when connected to a computer with the correct settings, the USB connection can be used as a network device.
V
Virtual BUG
Virtual representation of the BUG in SDK. When developing BUG applications, users can transfer created application unto Virtual BUG to see how it will behave on the real hardware. Details about Virtual BUG can be found here
