Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!cca!mirror!datacube!berger From: berger@datacube.UUCP Newsgroups: comp.unix.questions Subject: Re: real-time Unix Systems Message-ID: <106500007@datacube> Date: Mon, 24-Aug-87 00:48:00 EDT Article-I.D.: datacube.106500007 Posted: Mon Aug 24 00:48:00 1987 Date-Received: Tue, 25-Aug-87 01:37:59 EDT References: <2663@bobkat.UUCP> Lines: 44 Nf-ID: #R:bobkat.UUCP:-266300:datacube:106500007:000:2185 Nf-From: datacube.UUCP!berger Aug 24 00:48:00 1987 We have implemented a scheme where we control our "real time" image processing hardware with a Sun Workstation. It has to handle at least 60Hz frame rate interrupts to dynamically update the registers of our image processing hardware. We did this by creating a "programmable" interrupt handler. Our user program can send down instructions to the driver to tell it what to do when it gets certain interrupts. This was very specific for our hardware but it works very well. What I'd like to see in terms of evolution of Unix would be some ability to create a unix kernel / utility package that is tuned for an application. IE the ability to select features, options and utilities and then build a dedicated version with just those things. Thus you could create embeded applications with just the amount of baggage you need. The major goal of this is to have a target kernel that could possibly be prommed and yet the programmer can expect a c runtime / system environment that they are pretty used to. For PROM based embedded systems, we are currently using OS-9 in such a way, we mostly edit, cross-compile on our Unix systems and download to our OS-9 systems. OS-9 has some features that would be nice in a targetable "Unix" such as shareable libraries that link with the executables at run-time, executables and the operating system itself is promable, does not require an MMU, etc. Once we have debugged the software, we can burn it into PROM. We've made OS-9 look as much as possilbe as a unix run time environment. Ideally we could be cross compiling to an environment that had a POSIX compatable run time environment that maybe had a few restrictions to allow it to be prommed and not require an MMU. It would also be nice to be able to attach interrupts to user code and a standard way to map physical addresses into user space. Bob Berger Datacube Inc. Systems / Software Group 4 Dearborn Rd. Peabody, Ma 01960 VOICE: 617-535-6644; FAX: (617) 535-5643; TWX: (710) 347-0125 UUCP: berger@datacube.COM, ihnp4!datacube!berger {seismo,cbosgd,cuae2,mit-eddie}!mirror!datacube!berger