What about minix 2 ?

166 views
Skip to first unread message

Simon

unread,
Sep 17, 2010, 11:45:45 AM9/17/10
to minix3
Hi there,

I see that this group is entitled minix-3 - is there a corresponding
minix-2 group that I've missed ? Or is the only resort comp.os.minix,
which, ahem, doesn't appear to be *too* focused on minix...

In case this is for any minix, let me state my problem :) I have an
Altera Nios-2 board, that I want to port an OS to, and I've been
looking around for a suitable one. I want to be able to execute
arbitrary programs from an SD card, and most of the free embedded OS's
are statically linked, so I started looking at minix. One of the
problems is RAM, there's only 8MB of SDRAM on the board, so it looks
as though minix-3 is out. That leaves minix-2 (which from what I can
gather needs around 2MB to boot). The RAM has to incorporate the frame-
buffer too, so I'm looking at a maximum of ~7MB.

On to the questions :)

- Am I correct in assuming minix3 is out of reach ?

- Assuming I can port it, is that low an amount of RAM feasible to
even run minix-2 with ?

- From what I can see, porting to other architectures was abandoned
in minix-2 (the atari/amiga ones are 1.5). How hard is it to port ?

- Are there any hints anywhere of 'how to port minix' ? I haven't
managed to find them yet...

Thanks for reading :)

Simon

Antoine LECA

unread,
Sep 17, 2010, 12:55:35 PM9/17/10
to min...@googlegroups.com
Simon wrote:
> problems is RAM, there's only 8MB of SDRAM on the board, so it looks
> as though minix-3 is out. That leaves minix-2 (which from what I can
> gather needs around 2MB to boot).

I am not able to answer your (excellent) questions, but as I worked a
bit with both Minix 2.0.x and 3.1.x, I would like to comment on this, as
it looks like to me there are some possible phasing errors here, since
memory always cheaper as years pass.

The 2MB you quoted is the minimum memory size to run 2.0.2 (published
1998) in the 16-bit variant (Minix-86); for the 32-bit variant (then
named Minix-386), the minimum requirements was 3 MB last time it was
updated, and this was... in 1996, for the release of 2.0.0! Later the
system was slightly increased, like with the replacement of the
venerable Minix sh with Almquist's ash, much more comfortable but also
certainly hungrier. So I guess the figure is more in the 4 MB area.

Anyway, when it comes to Minix 2 (and as far as I know for Minix 3.0.x
and up to 3.1.2), the main factor was the number of buffers: with 2048
buffers (of 1 KB each), MINIX 2 starts with 2 MB without having
anything. Similarly, IIRC the basic setting for MINIX 3.0.x was 1000
buffers but of 4 KB each, so the starting point was now 4 MB.
So the differences are smaller than you thought.


> - From what I can see, porting to other architectures was abandoned
> in minix-2

I believe it exists ports of Minix 2 to Sparc (or Sun3?) and also to
ClassicMac (based on the earlier Atari/Amiga work).
With respect to Minix 3, work have been initiated for ARM and PPC.

In fact, the reality looks more like the potential porters use whatever
Intel version is current at that day. The drawback is that the system
gets more complex; the advantage is that you can expect more help from
the others than if you ask about an antiquity.
On the other hand, nowadays MINIX 3 uses a VM system, and my impression
is that the baseline is higher than 16 MB, which might void completely
the project to port -current.


Antoine

Lwazi Dub

unread,
Sep 18, 2010, 3:55:44 PM9/18/10
to min...@googlegroups.com, simon....@mac.com
On Fri, Sep 17, 2010 at 11:45 AM, Simon <simon....@mac.com> wrote:
Hi there,

I see that this group is entitled minix-3 - is there a corresponding
minix-2 group that I've missed ? Or is the only resort comp.os.minix,
which, ahem, doesn't appear to be *too* focused on minix...

In case this is for any minix, let me state my problem :) I have an
Altera Nios-2 board, that I want to port an OS to, and I've been
looking around for a suitable one. I want to be able to execute
arbitrary programs from an SD card, and most of the free embedded OS's
are statically linked, so I started looking at minix. One of the
problems is RAM, there's only 8MB of SDRAM on the board, so it looks
as though minix-3 is out. That leaves minix-2 (which from what I can
gather needs around 2MB to boot). The RAM has to incorporate the frame-
buffer too, so I'm looking at a maximum of ~7MB.

I experiment with lots of Operating Systems on ARM hardware and I have similar requirements. I would add these to the list of candidates if you have not already seen them.
I found Minix 1.5 to be unreliable on an iPAQ and newer versions did not look like improvements to me. More code and less hype please. Minix is overrated.

PREX
=====

Have you looked at Prex ( prex.sourceforge.com) ? I find the code more organized and I like an OS that runs on different architectures. It has no networking but that should be an easy one to fix.

eLua
====
I discovered this one a few weeks ago and ported it to an iPAQ in a couple of days.
Once you have eLua running on your board you could do something like

lua /mmc/myapp.lua
to run your app from SD. When the app is done, you start another at the prompt. You write the drivers in C and the apps in Lua.

Search "elua embedded" on youtube and also visit http://www.eluaproject.net.

Lwazi


Simon Gornall

unread,
Sep 19, 2010, 12:49:34 AM9/19/10
to min...@googlegroups.com
On 18 Sep 2010, at 12:55, Lwazi Dub wrote:

On Fri, Sep 17, 2010 at 11:45 AM, Simon <simon....@mac.com> wrote:
Hi there,

I see that this group is entitled minix-3 - is there a corresponding
minix-2 group that I've missed ? Or is the only resort comp.os.minix,
which, ahem, doesn't appear to be *too* focused on minix...

In case this is for any minix, let me state my problem :) I have an
Altera Nios-2 board, that I want to port an OS to, and I've been
looking around for a suitable one. I want to be able to execute
arbitrary programs from an SD card, and most of the free embedded OS's
are statically linked, so I started looking at minix. One of the
problems is RAM, there's only 8MB of SDRAM on the board, so it looks
as though minix-3 is out. That leaves minix-2 (which from what I can
gather needs around 2MB to boot). The RAM has to incorporate the frame-
buffer too, so I'm looking at a maximum of ~7MB.

I experiment with lots of Operating Systems on ARM hardware and I have similar requirements. I would add these to the list of candidates if you have not already seen them.
I found Minix 1.5 to be unreliable on an iPAQ and newer versions did not look like improvements to me. More code and less hype please. Minix is overrated.

PREX
=====

Have you looked at Prex ( prex.sourceforge.net) ? I find the code more organized and I like an OS that runs on different architectures. It has no networking but that should be an easy one to fix.

Actually, this looks pretty good. Still a micro-kernel architecture, and a far lower memory footprint than Minix. The only problem I can see with it is no virtual memory, and this appears to be "by design" rather than an oversight. Given that I only have 8MB RAM, I really did want to be able to demand-page stuff in and out, or at least not rule it out entirely.

eLua
====
I discovered this one a few weeks ago and ported it to an iPAQ in a couple of days.
Once you have eLua running on your board you could do something like

lua /mmc/myapp.lua
to run your app from SD. When the app is done, you start another at the prompt. You write the drivers in C and the apps in Lua.

Search "elua embedded" on youtube and also visit http://www.eluaproject.net

Thanks - this has ... possibilities. Once I get over not having a C program to write, anyway :) I'll take a look :)

Cheers
Simon.

Reply all
Reply to author
Forward
0 new messages