[ECOS] basic question
Fri Jul 31 04:24:00 GMT 2009
On Thu, Jul 30, 2009 at 7:45 PM, Edgar Grimberg<email@example.com> wrote:
> On Thu, Jul 30, 2009 at 1:46 PM, Mandeep
> Sandhu<firstname.lastname@example.org> wrote:
>> Hi All,
>> A very basic question:
>> What do people mean when they say running xyz app _without_ an operating
>> Does it mean that basic ecos kernel support is not there, i.e no
>> scheduler, HAL etc etc?
>> What is an apps entry point then? Will it still call cyg_usre_start()
>> and the likes?
> The CPUs have defined a reset address (called reset vector and placed
> inside the exceptions vector), that is the entry point for the program
> counter when the power is ON, or when the CPU comes out of a hardware
> reset. The very first line of code is the embedded application "real"
> entry point. You will find eCos jumping from that place to _start. For
> example, for PowerPC:
> in packages/hal/powerpc/arch/current/src/vectors.S
> you can find thie code:
> # Reset vector macro
> .macro reset_vector name
> .p2align 8
> .globl __exception_\name
> #ifdef CYGSEM_HAL_POWERPC_RESET_USES_JUMP
> bl _start
> lwi r3,_start
> mtlr r3
> From that point on, eCos (or any other OS) will initialize the memory,
> peripherals and so on. By running without an OS, people often mean
> that you should write your own start-up routines and take care of
> (implement) the needed functions you will usually find in the OS. Of
> course, that means no cyg_user_start or anything like it.
> Unless you are really running out of memory (flash/ram to hold the
> application or ram to use it in the application) or out of CPU cycles
> (you want to optimize the "common" OS to death for you fancy
> application), I would not recommend investing the time to rewrite all
> that stuff.
Thanks for this detailed explanation Edgar. I too don't want to reinvent the
wheel unless it's absolutely necessary.
My app will mostly do network centric stuff, so that took me to the lwip mailing
list! :) Thats where I saw a lot people using lwip "w/o OS"....and hence my
>> Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
>> and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss