Subject: Re: Quick and dirty embedded OS
To: NetBSD Tech-embed <tech-embed@netbsd.org>
From: Brian Rose <lists@brianrose.net>
List: tech-embed
Date: 10/20/2004 09:56:54
Allen Briggs wrote:
> On Wed, Oct 20, 2004 at 10:49:08AM +0200, Werner Backes wrote:
>
>
> I understand. The clock speed is not an issue. My early NetBSD
> work was on similarly-powered mac68k systems (16MHz 68020+68851+68881).
> The MMU is (68851 is the MMU above, 68030 & up have the MMU built in).
>
> NetBSD would take a lot of work to make it run without an MMU.
> Looking at higher-end PDAs/HPCs is a compromise--NetBSD already
> runs to some extent on a number of them. It all depends on where
> your interest really is--are you strongly tied to that hardware,
> or are you interested in leveraging the development with NetBSD?
>
What I am interested in is mainly the device drivers and a familiar
environment for things like malloc, etc. I can't speak for all embedded
developers out there, but I know that I would simply like to be able to
bring up various pieces of hardware and run a single program on it.
Multitheading would be nice, but if need be I can do my own task switching.
The code I am working with is not terribly complex from a functional
point of view, but adding new features is quite a task because I have to
take care of silly little details like memory allocation and driving a device.
Currently all our code is written in assembly for a certian family of
processors without an operating system. May main goal is to say "Look, by
switching to a higher level language and using NetBSD, we are no longer
beholden to this CPU vendor. NetBSD gives us the ability to choose from
many possible CPUs, with support for many peripherals, and to be able to
quickly adapt to new hardware."
As it stands now, if we want a feature, I spend a lot of time reinventing
the wheel for our system. I'm looking into uCLinux, RTEMS, and NetBSD as
solutions to this problem. uCLinux looks to provide the best bang for the
buck as it has a very expansive device driver library, and will run on
these very basic processors. RTEMS is what I functionally need, but device
driver support is less than uCLinux. Being a longtime NetBSD user and an
embedded developer, I was sold on NetBSD by the "Runs on more systems than
anyone else". I wouldn't mind working on NetBSD to get it to this point,
but I definitely lack the knowledge of the kernel and operating systems in
general to effectively do this.
If anyone is interested, I can probably get an hour or two a day for this
project.
--
Brian