I forward the mail from Holger because it contains some nice comments
which should be archived :-)

The mail archive will be www.mail-archive.com, it should popup soon
after the first messages arrived.

So far we have four people on the list:

- Knut St. Osmundsen
- Holger Veit
- Stefan Milcke
- me

We also try to get in contact with Andrew regarding GCC (for ELF
support mainly) and also the other guy who poped up at unixos2 with GCC
work (Mikulas Patocka).

If someone of you knows some other people who might be interested just
send them a mail as information. What we don't want to have at this
stage are "end users", this would result in endless discussions and I
would like to avoid that :-)

other people can join like this: send an email to

[EMAIL PROTECTED]

with 

subscribe arch/i386os2
end

in the message body

to send mails simply write an email to [EMAIL PROTECTED] (the
slash didn't work for email name :-)

so far

cu

Adrian

==================BEGIN FORWARDED MESSAGE==================
>Return-Path: <veit (a t ) borneo.gmd.de>
>Received: from mail.gmd.de (mail.gmd.de [129.26.8.90]) by warped.netlabs.org
>  (Weasel v1.5) for <ktk(a t )netlabs.org>; 30 Oct 2002 14:42:55 
>Received: from borneo.gmd.de (borneo [129.26.12.20])
>       by mail.gmd.de (8.9.3/8.9.3) with ESMTP id OAA29892
>       for <ktk(a t )netlabs.org>; Wed, 30 Oct 2002 14:42:55 +0100 (MET)
>Received: (from veit(a t )localhost)
>       by borneo.gmd.de (8.8.8/8.8.8) id OAA29361
>       for ktk(a t )netlabs.org; Wed, 30 Oct 2002 14:42:55 +0100 (MET)
>Date: Wed, 30 Oct 2002 14:42:55 +0100
>From: Holger Veit <holger.veit(a t )ais.fhg.de>
>To: Adrian Gschwend <ktk(a t )netlabs.org>
>Subject: Re: Fwd: arch/i386os2 people
>Message-ID: <20021030144255.A18246(a t )borneo.gmd.de>
>References: <200210300822.0000005L(a t )warped.netlabs.org>
>Mime-Version: 1.0
>Content-Type: text/plain; charset=us-ascii
>Content-Disposition: inline
>User-Agent: Mutt/1.3.17i
>In-Reply-To: <200210300822.0000005L(a t )warped.netlabs.org>; from ktk(a t 
>)netlabs.org on Wed, Oct 30, 2002 at 09:23:20AM +0100
>

On Wed, Oct 30, 2002 at 09:23:20AM +0100, Adrian Gschwend wrote:
> Hallo Holger,
> 
> Hier kurz ein Mail mit einer Idee, die wir an WSE mal genauer
> besprechen wollen. Ich wollte Dir das so FYI forwarden, vielleicht hast
> du den einen oder anderen Kommentar dazu (siehe auch die Webseite
> elfldr.netlabs.org).

Hi Adrian (this mail may be forwarded to the arch/i386os2 people,
therefore I reply in English):

I just had a look at the elfldr webpage. I think the idea does
make sense and is quite attractive. What I am wondering though is:
what then will remain of the OS/2 kernel, worthwhile to be kept?
In particular, it does make sense to add a Linux compatibility
layer for drivers, as Stefan Milcke does, in order to attach to
the available Linux driver pool (going through the existing
OS/2 driver interface will degrade performance, though). You can
likewise extend this to a gateway between the Linux VNODE layer and
the OS/2 IFS layer, similar to M Willm's mwdd32+ext2fs approach.
Likewise, it is useful to attach to OS/2's module loader infrastructure
in order to integrate loading of ELF executables, in a more native
way than through an EMX.EXE like user level trampoline (effectively,
a DOS extender - EMX/2 itself, though uses native LX files on OS/2, but
on DOS and NT it uses a user level loader). With knolwedge of the
OS/2 and Linux kernel codes, there is a lot possible. On the question
of
a Unix syscall layer, I experimented quite a lot, and I am going to
submit working logic for an OS/2 callgate and OS/2 API intercepts
to the project, for anyone to understand it - it has been the most
tricky thing to find out how it can really be done (you recently
asked about the status of libemu: unfortunately, it is proceeding
much slower than I hoped).

All the above components will be worthwhile and will contribute to
better maintainability of OS/2 and better compatibility with
Unix/Linux applications. Problem is that whatever you split off
the OS/2 kernel or add to it as a more or less interacting
subsystem, the core kernel will remain there and degrade
throughput. I guess you could throw away half of the OS/2
kernel that is there for 16 bit compatibility. When working on
the syscall interface the most severe problem I had and still have
is the continuous jumping between 16 bit and 32 bit code. The syscall
stuff I have so far (not much yet) has to do a lot of 16<->32
conversion
because the kernel interfaces that I intercept and access are usually
of the wrong kind. It is an odd thing that some outside 32 bit API
like DosOpen enters DOSCALL1 to become converted to a 16:16 stack frame
which is then entering the kernel through a 32 bit callgate which then
goes through the 16:16 system call interface which attempts to convert
the 16:16 parameters into a way that is compliant with >512MB just to
then
call a 16:16 thunk which calls a 32 bit API handler which then
communicates
with 16:16 bit IFS routines. You have this junk multiple times (besides
DOSCALL1 itself which is a crap thunk interpreter that spends 10
thousands
of instructions to convert parameters (or not) in order to allow an
automated tool (the thunk compiler) to generate DOSCALL1 from some odd
specification. You could rewrite DOSCALL1 easily with handcoded
assembler 
and get a much faster kernel interface (the Unix syscall gateway is
pretty direct calling).

What I am thinking about is infact a kernel that replaces the whole
OS/2 kernel by a purely 32 bit core with clean internal 32 bit
interfaces[1].
IBM, due to compatibility constraints, has extended the old Microsoft
16
bit core with some 32 bit subsystems, but added the 32 bit API through 
DOSCALL1 by falling back to the old 16 bit functionality. Later, new
functions like large file support were added by tricky extensions to
the 16 bit callgates - if you know which option byte to add, you could
have large file support and >512MB support in 16:16 programs as well.
This is an extremely messy system which IMHO should first be weeded
out;
you are maybe going to get a full featured Linux subsystem on top of
OS/2 which won't even barely reach the throughput of a native
Linux kernel. One could rather get the performance by running
Linux in a VPC emulation box, which would render such an arch/unixos2
system quite useless.



So much for now. 

Regards
Holger

[1] There was once a discussion in usenet about porting the OS/2 API
to the Linux kernel where I advocated against doing this. With the
purely
32 bit kernel, I do not mean this: taking a Linux kernel and add the
Dos* APIs. Unix kernels frequently  lack (and Linux is no exception)
certain features that OS/2 has had from the beginning on (fine-grain 
threading and scheduling, to name the most important facilities). You'd
have to modify severely, I suppose, a Linux kernel, to get these
properties in an OS/2 compliant way. So, such a kernel would not be
a modified Linux, but something like a new OS/2 kernel with certain
interfaces to Linux subsystems. 

> 
> cu
> 
> Adrian
> 
> ==================BEGIN FORWARDED MESSAGE==================
> >Return-Path: <[EMAIL PROTECTED]>
> >Received: from system360.dev (pD9E62F6A.dip.t-dialin.net [217.230.47.106]) by 
> > warped.netlabs.org (Weasel v1.5) for <[EMAIL PROTECTED]>; 30 Oct 2002 03:47:17 
> >Received: from anduin.net (eniac.dev [192.168.1.2]) by system360.dev (Weasel v
> > 1.52) for <[EMAIL PROTECTED]>; 30 Oct 2002 03:52:52 
> >Message-ID: <[EMAIL PROTECTED]>
> >Date: Wed, 30 Oct 2002 03:52:48 +0100
> >From: "knut st. osmundsen" <[EMAIL PROTECTED]>
> >Reply-To:  [EMAIL PROTECTED]
> >User-Agent: Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.1) Gecko/20020827
> >X-Accept-Language: en-us, en
> >MIME-Version: 1.0
> >To: Adrian Gschwend <[EMAIL PROTECTED]>
> >Subject: arch/i386os2 people
> >Content-Type: text/plain; charset=us-ascii; format=flowed
> >Content-Transfer-Encoding: 7bit
> >
> 
> Hi.
> 
> We talked very briefly the other day about people which could fit into
> a team 
> for porting the linux kernel to OS/2. You talked about the lxapi32 guy
> I 
> believe, (Stefan Milcke?) and Kiewitz. I don't know any of them other
> from 
> postings on the OS2DDProg list. Could you, because I think you know
> them better 
> than me, contact them? If they are interested put them in email contact
> with me. 
> If anyone else comes to mind please /msg or mail me.
> 
> btw. I will reuse the elfldr project for this. (as we allready got it
> there, 
> with web and cvs and it is very related matter. I haven't touched it
> for a very 
> long time ... ) So, anyone you contact or you want to give a clue about
> what I 
> have in mind, you can point them to http://elfldr.netlabs.org. (The
> project web 
> isn't 'public' from the netlabs portal, on purpose.)
> 
> BTW2. I got a mail from Rudi today regarding some linux to OS/2 he's
> doing. So, 
> perhaps I can convince him to put in a hand too. (I think he's trying
> to add 
> support for a TV recorder/viewer card (kind of PC base VCR if I got him
> right), 
> to use with an modified version of is MPG player. We talked briefly
> about this 
> card in Austin.)
> 
> Yeah, "arch/i386os2" is the current working title for the project. It
> plays on 
> the arch directory tree in the linux kernel sources, the place where
> all of the 
> architecure specific code goes. We will create an i386os2 directory
> there.
> 
> Kind Regards,
>   knut
> 
> PS. Please note that I don't want to go forward with this unless I know
> it's 
> worth it. So, keep down a little bit just for now.
> 
> 
> 
> ===================END FORWARDED MESSAGE===================
> 
> 
> 
> -- 
> Adrian Gschwend
> @ netlabs.org
> 
> ktk [a t] netlabs.org
> -------
> Free Software for OS/2 and eCS
> http://www.netlabs.org

-- 
Please update your tables to my new e-mail address: 
holger.veit$ais.fhg.de  (replace the '$' with '@'  -- spam-protection)


===================END FORWARDED MESSAGE===================



-- 
Adrian Gschwend
@ netlabs.org

ktk [a t] netlabs.org
-------
Free Software for OS/2 and eCS
http://www.netlabs.org



-----------
To unsubscribe yourself from this list, send the following message
to [EMAIL PROTECTED]

     unsubscribe arch_i386os2
     end

Reply via email to