[comp.sys.atari.st] Announcing a new multitasking system for the ST

7103_2622@uwovax.uwo.ca (Eric Smith) (09/19/90)

I've just sent the sources and binaries of MiNT version 0.6 to
comp.{sources,binaries}.atari.st. MiNT is not TOS, but it's a
multitasking extension for TOS. It provides a number of facilities
that are limited or lacking in other multitasking environments for
the ST, including:

  -- pipes, named fifo's, and pseudo-ttys
  -- signals, including kill(), signal(), sigsetmask(), and sigblock()
     system calls
  -- process groups and job control
  -- resource limits
  -- process priorities
  -- fork() and vfork() system calls
  -- new devices: midi, null, mouse (Sun-compatible), tty, and fd0-fd2
     (for accessing stdin, stdout, and stderr through the filesystem);
     these, and the normal con, aux, and prn devices are accessible
     through files on a fake drive V:
  -- processes are available through drive X:; deleting a process
     kills it, and they may be renamed just like TOS files
  -- all system calls are accessible through the GEMDOS, BIOS, and XBIOS
     traps, so it should be easy to write MiNT programs with any existing
     ST compiler
  -- supports the TOS 1.4 "fastload" bit, CTRL-ALT-DEL for rebooting,
     and fixes some TOS bugs (including the infamous I/O redirection
     bug)

MiNT can run GEM programs, but no more than 1 at a time (you can have
a GEM program and several "plain" TOS programs running simultaneously).
You can run MiNT as an AUTO folder application, or stand-alone. This
is a problem with GEM, not MiNT; other window managers don't have
this problem (e.g. the MGR window system runs under MiNT, and it should
be quite feasible to port an X server and clients to MiNT).

Comparisons with MicroRTX, and Minix are, I suppose, inevitable; but
they're probably not helpful. Minix is a whole new operating system,
based on Unix V7, and not at all TOS compatible. It's quite nice, but
I find that I've spent a lot of effort to get a nice TOS environment,
and I don't want to have to re-invent the wheel with Minix. Moreover,
with MiNT one gets some nice features from BSD Unix (like job control,
safe signals, and pseudo-ttys) that Minix is lacking.

MicroRTX is TOS compatible, but I see it as being aimed at a different
group of users. MiNT is not real time, and is not a supported commercial
product, so obviously there are some people who will find it inferior
to MicroRTX for these reasons. On the other hand, MiNT is more like
Unix, which should make it much easier to port programs to it.
MicroRTX lacks most of the features listed above; on the other hand,
MiNT lacks a number of features of RTX (such as the real-time extensions,
and message queues). If you're an experienced programmer and you like Unix,
you'll probably like MiNT. If you don't like Unix, you may prefer MicroRTX.
If you don't program, you should use whatever best supports the programs you
like. I think the two systems can co-exist. (They even share a (very few)
system calls).

Also, MiNT is freeware, *not* a commercial product or shareware; and it
comes with all the source code. I would encourage people to tinker
with it, improve it, and fix bugs. My hope is that MiNT can become a
reliable alternative to TOS for people who want a more Unix like
environment.
--
Eric R. Smith                     email:
Dept. of Mathematics            ersmith@uwovax.uwo.ca
University of Western Ontario   ersmith@uwovax.bitnet
London, Ont. Canada N6A 5B7
ph: (519) 661-3638
-- 
--
Eric R. Smith                     email:
Dept. of Mathematics            ersmith@uwovax.uwo.ca
University of Western Ontario   ersmith@uwovax.bitnet
London, Ont. Canada N6A 5B7
ph: (519) 661-3638

joe@quanta.eng.ohio-state.edu (Joseph T. Rohde) (09/19/90)

In article <7026.26f67178@uwovax.uwo.ca> 7103_2622@uwovax.uwo.ca (Eric Smith) writes:
>I've just sent the sources and binaries of MiNT version 0.6 to
>comp.{sources,binaries}.atari.st. MiNT is not TOS, but it's a
>multitasking extension for TOS. It provides a number of facilities
>that are limited or lacking in other multitasking environments for...
>--
>Eric R. Smith                     email:
>Dept. of Mathematics            ersmith@uwovax.uwo.ca
>University of Western Ontario   ersmith@uwovax.bitnet
>London, Ont. Canada N6A 5B7
>ph: (519) 661-3638

I have a request.  How about an update of the 0.5 version at
atari.archive so that we can get it right away. (I use 0.5
all the time, It's great.  I should have sent mail.)  I
recompiled Zmodem source with gcc using a 64K buffer instead
of the dynamic one, and it runs great in the background
under gulam!

Joe
ps. Are we going to see a way to lie to process' about how
    much memory there is so that greedy programs can be
    forced to share? (Or did I miss a feature already in it?)
 
-- 
:--------------------  rohde@eng.ohio-state.edu  ------------------:
:    He's dead Jim, you get his tri-corder, I'll get his wallet    :
:------------------------------------------------------------------:

7103_2622@uwovax.uwo.ca (Eric Smith) (09/20/90)

In article <5826@quanta.eng.ohio-state.edu>, joe@quanta.eng.ohio-state.edu (Joseph T. Rohde) writes:
> I have a request.  How about an update of the 0.5 version at
> atari.archive so that we can get it right away. (I use 0.5
> all the time, It's great. ... )

Good idea; I'll send it up later tonight or early tomorrow, when I
get a chance. (And thanks for the compliment! I'm glad people are
actually using it in the real world.)

> ps. Are we going to see a way to lie to process' about how
>     much memory there is so that greedy programs can be
>     forced to share? (Or did I miss a feature already in it?)

In 0.6 there's a system call to limit process' total memory, allocated
memory, and CPU time. A standard utility ("limit") is provided that
lets you run programs with limits enabled.

Other new features of 0.6 are: alarm(), pause(), and select() system
calls, improved tty handling (^C and ^Z take effect immediately),
and faster pipes and pseudo-ttys.
--
Eric R. Smith                     email:
Dept. of Mathematics            ersmith@uwovax.uwo.ca
University of Western Ontario   ersmith@uwovax.bitnet
London, Ont. Canada N6A 5B7
ph: (519) 661-3638

tar@naucse.cse.nau.edu (Tim Roeder) (09/20/90)

The subject line says it all.  I would just LOVE to have a multitasking
windowing environment for my ST (w/out having to go to Minix, etc.)

Regards,


-- 
Timothy A. Roeder - Northern Arizona University(NAU)/Univeristy of Arizona(UA)
UUCP: ...!arizona!naucse!tar (NAU)
Internet: tar@naucse.cse.nau.edu (NAU) -- troeder@mis.arizona.edu (UA)
Bitnet:   roedert@arizvm1.BITNET (UA)

7103_2622@uwovax.uwo.ca (Eric Smith) (09/21/90)

In article <2561@naucse.cse.nau.edu>, tar@naucse.cse.nau.edu (Tim Roeder) writes:
> The subject line says it all.  I would just LOVE to have a multitasking
> windowing environment for my ST (w/out having to go to Minix, etc.)
> 
Yes, I'm going to release MGR for MiNT. I'm still testing it. Stay tuned
to this newsgroup for further details :-).
--
Eric R. Smith                     email:
Dept. of Mathematics            ersmith@uwovax.uwo.ca
University of Western Ontario   ersmith@uwovax.bitnet
London, Ont. Canada N6A 5B7
ph: (519) 661-3638