|
Embedded OS Porting
The Operating System You Want
on the Hardware You Need |
|
Whatever your needs, we want to make our SBCs work for you. If the
features and prices of our single board computers are right for your
project, but our off-the-shelf operating systems and user-space tools
are not what you want to work with, ask us about porting your OS of
choice to our SBCs.
We believe that hardware companies can do a better job porting operating
systems than software companies because in-depth hardware knowledge is
required to write stable, high-performance low-level code. Our engineers
have many years of experience designing hardware and software that work
together. We write device drivers and port operating systems for every
SBC we design, using different architectures and technologies. Contact
Technologic Systems with any questions about special operating system
solutions.
|
|
Linux Kernel
 |
Our engineers have extensive experience writing
drivers and user applications under Linux 2.4. Although the speed
and small size of this platform has proven to be rock solid and
reliable, the additional features demanded by customers has recently
convinced us of the necessity of using Linux 2.6 in our newest
products. Our first product to be released with Linux 2.6
was the TS-7800, and with this comes Linux 2.6 driver support for
nearly all of our peripheral products.
Benefits to using Linux as the embedded OS include:
- Modern, advanced operating system features not
found in earlier OSes such as DOS
- Large community available to a developer
needing assistance with Linux related issues
- Full source code is available to the kernel and
most kernel modules
- No fees or licensing costs regardless of use or
sales volume
- Free stuffed penguin with every development kit
For better system responsiveness and guaranteed hard real-time service (high QoS), we can also provide real-time Linux operating systems either through RTAI (Real Time Application Interface) and other real-time interfaces or through modifications done to the standard Kernel closely coupled to the hardware.
|
|
NetBSD
 |
NetBSD is an operating system very similar to Linux that holds a special place in our
engineering team's heart. It does not have the widespread adoption in the marketplace
as Linux, but enjoys a less chaotic codebase that some software engineers prefer.
Also, since the OS source code is not licensed under the GPL, companies are allowed to
keep modifications and derivative works proprietary, unlike Linux.
- Mostly similar to Linux, but without the GPL licensing.
- High quality codebase with over 20 years of history.
- Modern TCP/IP networking stack
- Conforms to open systems standards as much as is practical
One of our engineers laid the groundwork in NetBSD for the Cirrus Logic EP9302 ARM
CPU in his spare time. This later allowed for the port to the TS-7200 SBC
and the NetBSD toaster exhibit in which an ordinary kitchen toaster was modified to
run this niche OS.
|
|
DOS
 |
For most PC user's, DOS has been mostly forgotten about in the post MS-Windows era.
However, this OS is still important to many embedded systems since a large
number of applications still in use today were designed when DOS was king. A
rewrite of the application to a more modern OS simply does not make sense in a
design that has been working fine for years.
Technologic Systems shares your
dislike of superfluous redesign and continues to manufacture 10 year old x86
SBC's designed to run DOS. Where another engineer might cringe at the thought of a DOS
based embedded application that hasn't been touched in 10 years, we think
differently and believe they should be celebrated-- for what better engineering
triumph could be had than to have remained relevant for 10 years?
- Allows execution of legacy x86 programs
- Simple, real-time, and inexpensive
- Several commercial development tools and compilers available
- Low memory requirement
Although not recommended for new designs, DOS still has its uses.
|
|
Application Specific Operating System
 |
In a nutshell, the most important things an operating system can bring to
your embedded product are:
- TCP/IP and networking stack
- Processor bootstrap boilerplate
- Memory management, multithreading and IPC
- filesystems
- Third-party sourcecode and libraries
- Some established way of application debug
- A community or company providing support
- device drivers
- A larger pool of individuals available for employ
The bad things about operating systems
- complexity
- overhead
- boot up time
- relinquish control over low-level hardware
- cost and licensing issues
Some of the bad of a particular operating system can be reduced with sufficiently
talented and specialized engineering personell. However, the fact still remains
that if you do not have need for any of the OS advantages and the disadvantages are
very important, you may want to consider targetting your application to the
raw hardware. Often times, especially in the case of Linux, the hardware
functionality of some device interfaces (e.g. I2C) is better
documented than the OS software driver API-- leading to the unfortunate fact that for
many it is actually easier to do what you need to do on the raw hardware rather
than use the device driver API which often changes from version to version!
The TS-PLC application kit is an example where Technologic Systems chose against using an operating
system, and instead created a "BIOS" of useful functionality on the ARM
microcontroller to reduce flash footprint, increase performance, and accelerate
time to market.
|
|
Others Third-Party Operating Systems
|
|