This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Re: Any shell available?
- From: Andrew Lunn <andrew at lunn dot ch>
- To: Anthony Tonizzo <atonizzo at gmail dot com>
- Cc: ecos-discuss at ecos dot sourceware dot org
- Date: Wed, 31 May 2006 10:37:43 +0200
- Subject: Re: [ECOS] Re: Any shell available?
- References: <b437ec690605301802v6ce108ft4814f361b7234577@mail.gmail.com>
On Tue, May 30, 2006 at 06:02:28PM -0700, Anthony Tonizzo wrote:
> Andrew:
>
> >Now eCos has no concept of loading a program from secondary storage
> >and executing it. It has no concept of a program. It has no concept of
> >a process.
>
> I am not sure I agree 100% with this statement.
>
> eCos has both the concept of file system (and hence we can extrapolate
> the concept of secondary storage) as well as the concept of process, given
> that a process can be loaded by the objloader package and executed.
I did wounder if anybody would bring up the objloader packege.
Yes, we have a filesystem. However we don't have processes.
We have threads, but not processes. To me there is a big
difference. For one, a process has resource management associated to
it. If a process dies, or is killed, all the resources associated to
it are released. Memory is put back into the pool, file handles are
closed etc. Also, a process contains one or more threads. Killing a
process kills all the threads in the process.
Without having processes, from a pratical standpoint, you cannot have
programs which run to completion and exit. Thus you cannot have a
shell.
> I do not see anything wrong with an application (call it shell) that
> is capable of both accessing a file system as well as loading from
> that file system a file and running it.
To me, that is more like a boot loader and less like a shell, although
what you describe is somewhere between the two. To be a shell, what
has been loaded must be able to exist and be unloaded, and you must be
able to load something else which can exist and be unloaded,
add-infinitum. For this you need processes, not 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