public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Grant Edwards <grant.b.edwards@gmail.com>
To: ecos-discuss@sources.redhat.com
Subject: [ECOS] Re: Different section placement for kernel and application
Date: Thu, 27 Jan 2011 22:01:00 -0000	[thread overview]
Message-ID: <ihsd8v$s8t$1@dough.gmane.org> (raw)
In-Reply-To: <917898.171.1296149053545.JavaMail.neratec@martin-lucid32>

On 2011-01-27, Martin R??sch <martin.roesch@neratec.com> wrote:

> I'm trying to figure out how to run the eCos kernel from ROM and run
> the application (the main() function) from RAM on the STM32 Eval
> Board. Is it possible to place the text, data and rodata sections
> from the target library to a different memory address (i.e. flash)
> than the sections of the application in the image?

No, that's not possible in any general/useful sense without major
changes to the way eCos is designed and built.  

The way eCos is built there is no logical separation between the
kernel and the application.  They're both just C/C++ functions that
are linked together to form a single executable ELF file.

In theory, you could apply section attributes to all of the kernel
functions (or all of the application functions) so that you could
separate them at link time into different output sections.  But, that
wouldn't really be useful, since the linkage between the two output
would require that they always be updated together in the target
board.

I _suspect_ what you're really asking about is some sort of
position-independent API between kernel, libraries, and application so
that you can update one without updating the others -- something akin
to the Unix syscall API or the Unix shared library mechanism that
allows kernel, application, and libraries to be changed independently.

-- 
Grant Edwards               grant.b.edwards        Yow! Is this going to
                                  at               involve RAW human ecstasy?
                              gmail.com            


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

  parent reply	other threads:[~2011-01-27 18:24 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <2815371.163.1296147619546.JavaMail.neratec@martin-lucid32>
2011-01-27 17:56 ` [ECOS] " Martin Rösch
2011-01-27 18:24   ` Christophe Coutand
2011-01-27 22:01   ` Grant Edwards [this message]
2011-01-28 16:19     ` [ECOS] " Martin Rösch
2011-01-28 16:25       ` Grant Edwards
2011-01-28 17:07         ` Grant Edwards
2011-01-30  9:31           ` Martin Rösch
     [not found]         ` <2029563421.8440.1296480614291.JavaMail.root@idefix>
2014-05-19  9:45           ` Badreddine

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='ihsd8v$s8t$1@dough.gmane.org' \
    --to=grant.b.edwards@gmail.com \
    --cc=ecos-discuss@sources.redhat.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).