Path: gmdzi!unido!fauern!ira.uka.de!sol.ctr.columbia.edu!
zaphod.mps.ohio-state.edu!wupost!
uunet!mcsun!news.funet.fi!hydra!klaava!torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Keywords: 386, preferences
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Lines: 20


Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones.  This has been brewing
since april, and is starting to get ready.  I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things). 

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. 
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want.  Any suggestions
are welcome, but I won't promise I'll implement them :-)

		Linus (torva...@kruuna.helsinki.fi)

PS.  Yes - it's free of any minix code, and it has a multi-threaded fs. 
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(. 

Path: gmdzi!unido!fauern!ira.uka.de!yale.edu!think.com!samsung!uunet!
mcsun!news.funet.fi!
fuug!nntp.hut.fi!usenet
From: j...@cs.HUT.FI (Jyrki Kuoppala)
Newsgroups: comp.os.minix
Subject: Re: What would you like to see most in minix?
Keywords: 386, preferences
Message-ID: <1991Aug25.234450.22562@nntp.hut.fi>
Date: 25 Aug 91 23:44:50 GMT
References: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Sender: use...@nntp.hut.fi (Usenet pseudouser id)
Reply-To: j...@cs.HUT.FI (Jyrki Kuoppala)
Organization: Helsinki University of Technology, Finland
Lines: 21
In-Reply-To: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Nntp-Posting-Host: sauna.cs.hut.fi

In article <1991Aug25.205708.9...@klaava.Helsinki.FI>, torvalds@klaava
(Linus Benedict Torvalds) writes:
>I've currently ported bash(1.08) and gcc(1.40), and things seem to work. 
>This implies that I'll get something practical within a few months, and
>I'd like to know what features most people would want.  Any suggestions
>are welcome, but I won't promise I'll implement them :-)

Tell us more!  Does it need a MMU?

>PS.  Yes - it's free of any minix code, and it has a multi-threaded fs. 
>It is NOT protable (uses 386 task switching etc)

How much of it is in C?  What difficulties will there be in porting?
Nobody will believe you about non-portability ;-), and I for one would
like to port it to my Amiga (Mach needs a MMU and Minix is not free).

As for the features; well, pseudo ttys, BSD sockets, user-mode
filesystems (so I can say cat /dev/tcp/kruuna.helsinki.fi/finger),
window size in the tty structure, system calls capable of supporting
POSIX.1.  Oh, and bsd-style long file names.

//Jyrki

Path: gmdzi!unido!math.fu-berlin.de!ira.uka.de!sol.ctr.columbia.edu!
zaphod.mps.ohio-state.edu!
wupost!uunet!mcsun!news.funet.fi!hydra!klaava!torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Re: What would you like to see most in minix?
Summary: yes - it's nonportable
Keywords: 386, preferences
Message-ID: <1991Aug26.110602.19446@klaava.Helsinki.FI>
Date: 26 Aug 91 11:06:02 GMT
References: <1991Aug25.205708.9541@klaava.Helsinki.FI> 
<1991Aug25.234450.22562@nntp.hut.fi>
Organization: University of Helsinki
Lines: 55

In article <1991Aug25.234450.22...@nntp.hut.fi> j...@cs.HUT.FI (Jyrki Kuoppala) 
writes:
>> [re: my post about my new OS]
>
>Tell us more!  Does it need a MMU?

Yes, it needs a MMU (sorry everybody), and it specifically needs a
386/486 MMU (see later).

>
>>PS.  Yes - it's free of any minix code, and it has a multi-threaded fs. 
>>It is NOT protable (uses 386 task switching etc)
>
>How much of it is in C?  What difficulties will there be in porting?
>Nobody will believe you about non-portability ;-), and I for one would
>like to port it to my Amiga (Mach needs a MMU and Minix is not free).

Simply, I'd say that porting is impossible.  It's mostly in C, but most
people wouldn't call what I write C.  It uses every conceivable feature
of the 386 I could find, as it was also a project to teach me about the
386.  As already mentioned, it uses a MMU, for both paging (not to disk
yet) and segmentation. It's the segmentation that makes it REALLY 386
dependent (every task has a 64Mb segment for code & data - max 64 tasks
in 4Gb. Anybody who needs more than 64Mb/task - tough cookies).

It also uses every feature of gcc I could find, specifically the __asm__
directive, so that I wouldn't need so much assembly language objects.
Some of my "C"-files (specifically mm.c) are almost as much assembler as
C. It would be "interesting" even to port it to another compiler (though
why anybody would want to use anything other than gcc is a mystery).

Unlike minix, I also happen to LIKE interrupts, so interrupts are
handled without trying to hide the reason behind them (I especially like
my hard-disk-driver.  Anybody else make interrupts drive a state-
machine?).  All in all it's a porters nightmare. 

>As for the features; well, pseudo ttys, BSD sockets, user-mode
>filesystems (so I can say cat /dev/tcp/kruuna.helsinki.fi/finger),
>window size in the tty structure, system calls capable of supporting
>POSIX.1.  Oh, and bsd-style long file names.

Most of these seem possible (the tty structure already has stubs for
window size), except maybe for the user-mode filesystems. As to POSIX,
I'd be delighted to have it, but posix wants money for their papers, so
that's not currently an option. In any case these are things that won't
be supported for some time yet (first I'll make it a simple minix- 
lookalike, keyword SIMPLE).

		Linus (torva...@kruuna.helsinki.fi)

PS. To make things really clear - yes I can run gcc on it, and bash, and
most of the gnu [bin/file]utilities, but it's not very debugged, and the
library is really minimal. It doesn't even support floppy-disks yet. It
won't be ready for distribution for a couple of months. Even then it
probably won't be able to do much more than minix, and much less in some
respects. It will be free though (probably under gnu-license or similar).

Path: gmdzi!unido!mcsun!uunet!email!vmars!hp
From: h...@vmars.tuwien.ac.at (Peter Holzer)
Newsgroups: comp.os.minix
Subject: Re: What would you like to see most in minix?
Keywords: 386, preferences
Message-ID: <1991Aug26.162026.14276@email.tuwien.ac.at>
Date: 26 Aug 91 16:20:26 GMT
References: <1991Aug25.205708.9541@klaava.Helsinki.FI> 
<1991Aug25.234450.22562@nntp.hut.fi>
Sender: n...@email.tuwien.ac.at
Organization: Technical University Vienna, Dept. for Realtime Systems, AUSTRIA
Lines: 35
Nntp-Posting-Host: nowhere.vmars.tuwien.ac.at

j...@cs.HUT.FI (Jyrki Kuoppala) writes:

>In article <1991Aug25.205708.9...@klaava.Helsinki.FI>, torvalds@klaava
(Linus Benedict Torvalds) writes:
>>This implies that I'll get something practical within a few months, and
>>I'd like to know what features most people would want.  Any suggestions
>>are welcome, but I won't promise I'll implement them :-)

>As for the features; well, pseudo ttys, BSD sockets, user-mode
>filesystems (so I can say cat /dev/tcp/kruuna.helsinki.fi/finger),
>window size in the tty structure, system calls capable of supporting
>POSIX.1.  Oh, and bsd-style long file names.

On a lower level:

I don't like the chmem mechanism of Minix. Processes should start with
a minimal size and grow as they need to until they run out of RAM or
disk space. Paging to disk would be nice, too.

If your OS is message based I would like to have arbitrarily large
messages. They could be implemented efficiently by mapping the pages
into the receivers address space (or just passing a pointer on 68k
systems without MMU). Oh, yes, and the addressing scheme for messages
should be different than in Minix. Messages should not be sent to
process slot numbers, but to ports. That way, user processes can use
messages, too, and it is easier to add your own servers.

PS: I am very interested in this OS. I have already thought of writing
my own OS, but decided I wouldn't have the time to write everything from
scratch. But I guess I could find the time to help raising a baby
OS :-)
--
|    _  | Peter J. Holzer                       | Think of it   |
| |_|_) | Technical University Vienna           | as evolution  |
| | |   | Dept. for Real-Time Systems           | in action!    |
| __/   | h...@vmars.tuwien.ac.at                 |     Tony Rand |