On Thu, Jul 30, 2009 at 7:45 PM, Edgar Grimberg<[email protected]> wrote: > On Thu, Jul 30, 2009 at 1:46 PM, Mandeep > Sandhu<[email protected]> wrote: >> Hi All, >> >> A very basic question: >> >> What do people mean when they say running xyz app _without_ an operating >> system? >> >> 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 > __exception_\name: > #ifdef CYGSEM_HAL_POWERPC_RESET_USES_JUMP > bl _start > #else > lwi r3,_start > mtlr r3 > blr > #endif > > 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 question. Regards, -mandeep > > Regards, > Edgar > > > > >> Thanks, >> -mandeep >> >> -- >> 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
