<?xml version="1.0"?>
<!DOCTYPE webpage
  PUBLIC "-//NetBSD//DTD Website-based NetBSD Extension//EN"
    "http://www.NetBSD.org/XML/htdocs/lang/share/xml/website-netbsd.dtd">

<webpage id="about-embed">
<config param="desc" value="NetBSD Embedded Systems"/>
<config param="cvstag" value="$NetBSD: embed.xml,v 1.3 2007/06/17 16:59:33 minskim Exp $"/>
<config param="rcsdate" value="$Date: 2007/06/17 16:59:33 $"/>
<head>
<title>NetBSD Embedded Systems</title>
</head>


<sect1 id="top">

<para>
The  NetBSD Operating System is the most portable OS in the world,
and many of the supported hardware platforms are suited for embedded
applications.  This section contains  links  to  ports  and
platforms  that  fit within the term embedded as well as additional
links.
</para>

<itemizedlist>
<listitem><ulink url="#a1">What is an Embedded System?</ulink></listitem>
<listitem><ulink url="#a2">General Information &amp; Links About Embedded Systems</ulink></listitem>
<listitem><ulink url="#dev">Embedded development with NetBSD</ulink></listitem>
<listitem><ulink url="#a3">Notes</ulink></listitem>
</itemizedlist>
<html:hr/>


<sect2 id="a1">
<title>What is an Embedded System?</title>

<para>
The  following  definition  which can be found in the Embedded Systems
Glossary states:
</para>

<para>
     <blockquote>
     A  combination  of  computer
     hardware  and  software,  and perhaps
     additional  mechanical  or  other  parts,  designed  to  perform  a
     dedicated  function.  In some cases, embedded systems are part of a
     larger  system  or  product (...) [<ulink url="#one">1</ulink>]
     </blockquote>
</para>

<para>
This of course is a very subjective definition. These types of systems 
are  mainly  singular  function  systems,  a  limited  set of specific
function  systems  or  a part of an overall system. Additionally, many
systems  are designed to be embedded. A good example of this case is a
motor controller for an assembly line.  Note also that the example used
in the above extract talks about an antilock braking system which, while
embedded, is also real time and does not apply to NetBSD.
</para>

<para>
The  NetBSD  multi-platform operating system supports a wide number of
different  platforms,  many of which can and are already being used in
embedded  applications.  Among the more popular processor families for
embedded  systems  are  MIPS, PowerPC, ARM, Xscale and Super-H. Visit the main
<ulink url="../ports/">Platforms(ports)</ulink> page for more information
about different architectures supported by NetBSD.
</para>

<para>
To see a list of hardware products that are designed around
NetBSD&mdash;many of them in embedded applications&mdash;check out the
<ulink url="../gallery/products.html">products</ulink> page, which
shows NetBSD being the #1 choice for multimedia servers,
copiers/printers, wireless routers and more!
</para>
</sect2>

<sect2 id="a2">
<title>General Information &amp; Links About Embedded Systems</title>

<itemizedlist>
  <listitem><ulink url="http://www.wikipedia.org/wiki/Embedded_system">Wikipedia's definition of an <quote>Embedded System</quote></ulink></listitem>
  <listitem><ulink
url="http://www.embedded.com/">Embedded.com</ulink></listitem>
  <listitem><ulink url="http://www.learn-c.com/">Control and Embedded Systems Tutorial</ulink></listitem>
  <listitem><ulink url="http://cs-www.bu.edu/pub/ieee-rts/">IEEE Real-Time Research Repository</ulink></listitem>
  <listitem><ulink url="http://www.emdebian.org/">Embedded Debian (GNU/Linux) Project</ulink></listitem>
  <listitem><ulink url="http://dir.yahoo.com/Business_and_Economy/Business_to_Business/Computers/Software/Embedded_Systems/">Embedded Systems Directory at Yahoo!</ulink></listitem>
  <listitem><ulink url="http://dir.yahoo.com/Science/Computer_Science/Real_Time_Computing/">Real Time Directory at Yahoo!</ulink></listitem>
</itemizedlist>
</sect2>

<sect2 id="dev">
<title>Embedded development with NetBSD</title>

<para>
While embedded development with NetBSD doesn't differ a lot from
regular Unix development, some special cases are in the build
processes. The following links are intended to provide introduction
and guidance. 
</para>

<orderedlist>
  <listitem>Brian Rose: <ulink url="http://www.bsdnewsletter.com/2003/09/Features102.html">Building tiny systems with embedded NetBSD</ulink></listitem>
  <listitem>Brian Rose: <ulink url="http://brianrose.net/family/fetch.php?dir=Brian/NetBSD/Embedded&amp;filename=content.html">Embedded NetBSD</ulink></listitem>
  <listitem><ulink url="http://www.yazzy.org/docs/NetBSD/netbsd-on-cf.txt">How to create bootable NetBSD image on Compact Flash?</ulink></listitem>
  <listitem>J. Sevy: <ulink url="http://gicl.cs.drexel.edu/people/sevy/netbsd/porting/porting_netbsd.html">Embedded NetBSD HowTo: Porting NetBSD To A New ARM SoC </ulink></listitem>
  <listitem>Matthew Sporleder: <ulink url="http://www.mspo.com/soekris.html">Installing NetBSD on the Soekris net4801</ulink></listitem>
  <listitem>Hubert Feyrer: <ulink url="http://www.feyrer.de/NetBSD/xdev.html">Cross-Development with NetBSD: Using NetBSD's new toolchain to develop for an embedded device</ulink></listitem>
  <listitem>hubertf's NetBSD blog: <ulink url="http://www.feyrer.de/NetBSD/blog.html?-tags=embedded">embedded section</ulink></listitem>
</orderedlist>

<para>
A lot more can be said about this topic, please let us know if you
have any input.
</para>
</sect2>

<sect2 id="a3">
<title>Notes</title>

<orderedlist>
  <listitem><anchor id="one"/>Barr, Michael. <quote>Embedded Systems Glossary.</quote> Online at <ulink
    url="http://www.netrino.com/Publications/Glossary/">http://www.netrino.com/Publications/Glossary/</ulink>.
    June 2003.</listitem>
</orderedlist>

</sect2>
</sect1>

<parentsec text="About the NetBSD Project" url="index.html" />

</webpage>
