# BeIA

BeIA (BeOS for Internet Appliances) is a discontinued operating system for embedded systems, developed by Be Inc. from 2000 to 2001. It was a minimized version of their BeOS operating system and was developed for the x86 and PowerPC architectures.
The BeIA system presents a browser-based interface to the user. The browser was based on the Opera 4.0 code base, but most of times it featured built-in dashboard (like Sony eVilla), and was named Wagner. Unlike the BeOS, which runs the Tracker and Deskbar at boot-up, the BeIA OS boots straight into the Opera browser interface (only on Compaq IA-1, similar as the later ChromeOS does with the Google Chrome browser). While it is possible to boot BeIA into an interface similar to the standard BeOS, doing so involves special knowledge.
During 2001, a Zanussi "internet fridge" toured the US with a BeIA powered DT-300 webpad docked in its door.
BeIA was discontinued after Be Inc's assets were sold to Palm, Inc., with BeIA not able to help the company's financial situation and the failure of the Sony eVilla.

## Compression techniques

The BeIA operating system employs a number of techniques to minimise the system footprint. These involve a number of pre processes which yield an installable file system image.
The Compressed File System (CFS) was a file system created in house at Be Inc that aimed to compress the files within itself to save space. The filesystem had a similar set of properties to the native BeOS file system BFS, but some of the more advanced features (live queries and attributes) were either broken or non-functional in many of the Beta releases of the software.
The BeOS uses ELF format executable files, much as many other operating systems. BeIA uses an extended version of ELF, the name of which is unknown but which has come to be known as CELF, from the CEL magic word within the executable header and the fact that it is derived from ELF format executables through a compression process. The CELF (Compressed ELF) files use a patented technique to compress the op codes within the executable and reduce the overall footprint of each executable file. The file was compressed by creating a set of dictionaries that contain the op codes and are read by the kernel at start up and mapped into the executable in memory at run time. This makes the file fast loading, but has an extreme disadvantage, in that the dictionary is not extendible by the user and adding extra executable was not possible when using CELF compression techniques unless the executable symbols existed within the dictionary already present. The creation of CELF executables is generally done in batch. The entire system will be compressed and a file system image created from the crushed files.
Crushing was the term coined for the compression of the system using CELF format. BeIA can run either as CELF or ELF based. However, it can only use one or the other file formats.

## Version history

The following BeIA versions were released to developers at stages of the development of the system:
| | Date | Notes |
| Pre-1.0 build | | Reports to be 4.5.2; this is likely a hang over from the BeOS version |
| 1.0 Beta | February 2000 | Codenamed "Stinger" |
| 1.0 Release Candidate | ? 2000 | |
| 1.0 | October 2000 | |
| 1.09.2 | May 2001 | |
| 1.5 | ? 2001 | |
| 2.0 | ? 2001 | |

## List of BeIA devices

* Sony eVilla - sold as a home web terminal with BeIA preloaded
* Compaq IA-1 - sold with either BeIA or MSN Companion.
* HARP - not a computer, but a standard for audio streaming terminals, used by Virgin in some of their stores
* Proview iPAD (PI-520B)
* DT Research DT-300 (NB. DT-325 was used with later 2.0 betas)
* First International Computer Genesis 2000
* Hardware known to run BeIA (official and unofficial)