public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Bart Veer <bartv@redhat.com>
To: tomyeh@infoshock.com
Cc: ecos-discuss@sourceware.cygnus.com
Subject: Re: [ECOS] i386/Windows target?
Date: Thu, 01 Jun 2000 09:52:00 -0000	[thread overview]
Message-ID: <200006011652.RAA12648@sheesh.cygnus.co.uk> (raw)
In-Reply-To: <NCBBLBHKHIHIHIAOPHIIOEMICCAA.tomyeh@infoshock.com>

>>>>> "Tom" == Tom M Yeh <tomyeh@infoshock.com> writes:

    Tom> TGlrZSBpMzg2L0xpbnV4IHN5bnRoZXRpYyB0YXJnZXQsIGlzIHRoZXJlIGEgV2l
    Tom> uZG93cyBzeW50aGV0aWMgdGFyZ2V0IHVuZGVyIGRldmVsb3Bpbmc/DQoNClJlZ2
    Tom> FyZHMsDQpUb20=

When sending to a public mailing list such as ecos-discuss, please
mail in plain text rather than using any form of encoding. People use
a wide variety of mail readers and may have problems deciphering
messages like the above.

    Tom> Like i386/Linux synthetic target, is there a Windows
    Tom> synthetic target under developing?

I know nobody within Red Hat is working on this. I am not sure whether
it is even feasible.

When building an synthetic target application you cannot link with any
of the host libraries. For example you cannot link with any of the
Linux C library because that would define a function malloc() which
clashes with the eCos libc malloc() implementation.

However the synthetic target application must still be able to make
certain system calls such as read() and write() so that it can
interact with the outside world. There must also be a way of setting
up incoming timer events to fake up a hardware clock, handled by alarm
signals in the Linux synthetic target, and in the near future there
must be some equivalent of SIGIO for use with pipes. On Linux none of
this is particularly difficult: all the required system calls can be
made by executing 0x80 traps, and details such as which arguments go
into which registers are readily obtained from the kernel sources.

From my limited knowledge of Windows, everything tends to happen by
linking with various DLL's so there is a good chance of a name clash
somewhere along the way. Presumably at some point there is a system
call mechanism that goes via traps, but I do not know the details or
how things vary between the different varieties of Windows.

There are also problems related to executable file formats. Linux uses
ELF, which provides all the functionality required by eCos. I believe
Windows still uses COFF, or some variant thereof.

It might be possible to solve these problems, but I suspect it would
require a lot of work.

Bart Veer // eCos net maintainer

  reply	other threads:[~2000-06-01  9:52 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-05-31  2:01 Tom M. Yeh
2000-06-01  9:52 ` Bart Veer [this message]
2000-06-01 22:36   ` Tom M. Yeh
2000-06-02  6:31     ` Bart Veer
2000-06-02  7:56       ` Jonathan Larmour
2000-06-02  9:56       ` Ian Lance Taylor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200006011652.RAA12648@sheesh.cygnus.co.uk \
    --to=bartv@redhat.com \
    --cc=ecos-discuss@sourceware.cygnus.com \
    --cc=tomyeh@infoshock.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).