Electronic Design

Smalltalk Gets Embedded

What's old is what's new again. Smalltalk is an object-oriented programming language and development environment created by Alan Kay and company at the Learning Research Group in Xerox's Palo Alto Research Center in the early 1970s. It was used in a host of academic and commercial applications, but it never made it to the embedded world until now.

Esmertec's OSVM VM-based (virtual machine) implementation of Smalltalk runs on embedded systems. It offers the flexibility of the Smalltalk environment in a streamlined form that can fit on single-chip microcontrollers. Also, it provides a more flexible development and deployment environment than even Java, another popular VM-based solution.

This is a far cry from Smalltalk's roots, with megabyte image files and hefty runtime systems with fancy graphics. OSVM strips out most of this overhead, including reflection support that enables an application to inspect itself, yet it does so without losing all of the functionality. Instead, it moves this support into the development environment and off the deployment platform. This is much different from conventional Smalltalk, which uses the same development and deployment platform.

OSVM's development platform is Eclipse. The OSVM support is implemented as an Eclipse plug-in. The plug-in connects directly to one or more systems in a fashion similar to a remote debugger but with significantly more power and flexibility, as anyone who has used a Smalltalk system will atest. This means that the integrated development environment (IDE) maintains much of the information about the remote system that would normally be stored on the remote system, letting OSVM operate on a much smaller platform.

OSVM provides services found in the original Smalltalk, such as garbage collection and the ability to make changes on-the-fly. But it removes features like Smalltalk's graphical support. However, these features can be added easily as an application demands.

It remains to be seen if developers will pick up on this new/old language/environment. OSVM is definitely worth investigating, as it provides an ability to make changes in the field that exceeds that of Java, its nearest competitor.

OSVM Features
Flexible Virtual-Machine Architecture
Runs a variation of Smalltalk; allows on-the-fly system updates; does not require any special debug mode; interpreter footprint is only 32 kbytes

Compact Real-Time Operating System
2-kbyte footprint; provides low-level scheduling, synchronization, and interrupt support

Standard IDE
The OSVM development system is based on the open-source Eclipse IDE; connects directly to remote systems
Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.