Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Mar 1995 09:20:38 -0500 (EST)
From:      Peter Dufault <dufault@hda.com>
To:        fernando@cea.Berkeley.EDU (Fernando Astorga)
Cc:        freebsd-hackers@FreeBSD.org, freebsd-realtime@hda.com
Subject:   Re: FreeBSD support for realtime systems
Message-ID:  <199503291420.JAA01232@hda.com>
In-Reply-To: <199503291239.EAA04745@halfmoon.cea.berkeley.edu> from "Fernando Astorga" at Mar 29, 95 04:39:49 am

next in thread | previous in thread | raw e-mail | index | archive | help
Fernando Astorga writes:
> 
> 
> I was wondering if anyone out there has had previous experience with running
> real-time systems on a UNIX environment.  But first, here's a description:

There is a pretty inactive group of people interested in real time on
FreeBSD at freebsd-realtime@hda.com.  It was put there instead of
freefall in order to see if there was really much interest before
petitioning the powers to add it.

I do plan to get back to that once I get TCP/IP working over SCSI.  The
time I can spend on FreeBSD is limited.

> 
> A group in Mech. Eng. department here has developed a real-time scheduler to
> control a set of machines in the lab.  Well, since they needed control of
> interrupts to execute tasks at a set time, their first implementation was in
> DOS and used Visual C++.  As you can imagine, there's been several problems
> with this set-up, especially with DOS crashes as students try writing new
> programs to control these machines.
> 
> The first problem is VC++, but that is being fixed by switching to Borland C++
> which is a better compiler.
> 
> The next is a bit more difficult.  They want to move this system to run on a
> more robust OS, so they've been considering OS/2 and NT.  But these systems
> have fixed time slices, making the job of the scheduler more difficult, if not
> impossible, i.e. if the interval for a task is less than the time slice.
> I think OS/2 has a time-slice of 20ms, way too slow for some of these
> applications.

I can't comment on this other than to say I thought OS/2 had a priority
scheduler as well, but if you're sure about that you're sure about that.

> I'm pushing for porting this scheduler to UNIX, preferably FreeBSD, since it
> will run on the lab's PCs.  But there are some issues that I'm not too 
> familiar with, esp. UNIX's time-slice/process priority system.  Can someone
> who has had experience with real-time systems on UNIX provide some info 
> on how it can be done?

There is fixed priority scheduling on FreeBSD - see "rtprio".  However,
there is no way to lock a process in memory to avoid page faults, no
kernel preemption (other than interrupts), and no way to way to reserve
resources.

Ask "freebsd-realtime-requests@hda.com" if you want to be added to
that mailing list.  I'll cc this to freebsd-realtime.

Peter

-- 
Peter Dufault               Real Time Machine Control and Simulation
HD Associates, Inc.         Voice: 508 433 6936
dufault@hda.com             Fax:   508 433 5267



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199503291420.JAA01232>