This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: One process with multiple threads??


Thanks to both of you, that makes it perfectly clear.

Sounds riskier, but probably easier to implement. If one crashes, it takes
out the whole system. But, well, if they have separate address space, if one
crashes you still ought to detect it and restart either the process or the
device.

In practise, we just tend to test to death & hope that this sort of thing
never happens ;-)  Does ECOS have any hooks for user coded recovery action
in such an eventuality? Jsut curios, I am sure that it does & I will find
out when I rtfm.

I'm looking generally at Finite State Machines, mainly 'comms, and ECOS
looks like a great o/s.



Andrew Lunn-2 wrote:
> 
> On Wed, Apr 01, 2009 at 10:44:42PM -0700, graham_k wrote:
>> 
>> Sorry to be such a n00b, but can someone please explain WikiPedia's
>> statement
>> that "eCos (embedded configurable operating system) is an open source,
>> royalty-free, real-time operating system intended for embedded systems
>> and
>> applications which need only one process with multiple threads"?
>> 
>> Why only one process? And presumably the thread are what I would think of
>> as
>> processes in "normal" terminology?
>> 
>> I guess that what I am asking here is whether this is just a matter of
>> semantics (what's a process? what's a thread?) or if there are some
>> technical restrictions ...
>> 
>> Thank you very much in advance for any clarification.
> 
> It is using the Unix/POSIX terminology.
> 
> In the unix world, processes are separated from each other. They have
> separate memory space, they have separate signal handlers, file
> descriptor space, sockets etc... If a process gets a segfault, just
> that process dies.
> 
> However a process may have many POSIX threads. Within the process, the
> threads have complete access to all the processes memory, signals,
> file descriptors etc. If a thread gets a sigfault, the whole process
> dies. 
> 
> eCos has no memory protection. All memory is available to every
> thread. signals are shared between threads, file descriptors are
> global etc. eCos behaves like one process with multiple threads.
> 
>        Andrew
> 
> -- 
> Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
> and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/One-process-with-multiple-threads---tp22841286p22842125.html
Sent from the Sourceware - ecos-discuss mailing list archive at Nabble.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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]