This is the mail archive of the ecos-discuss@sources.redhat.com 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]

Re: what is ecos


>>>>> "Robert" == Robert Lee <rlee_1900@yahoo.com> writes:

Robert> It seems to me that ecos is NOT meant to be a general
Robert> interactive operating system, like linux.

Bingo.

Robert>  The distinction between the "OS" and "application" seems
Robert> blurred.

It is blurred for a good reason; in what you'd probably call a normal
OS, the kernel runs in supervisor mode and the applications call it
via traps. In eCos, kernel and application runs in the same
(supervisor) mode to save memory and CPU cycles.

In eCos you'd be better of thinking of the OS as everything that comes
from the packages directory (and ends up in libtarget.a) while the
application is whatever software you link the OS against.

Robert>  I got the impression that we may create a "hello world"
Robert> program that does nothing but printing "hello world" after
Robert> power-on a system.  In order to print, this "application"
Robert> needs to contain all the stuff needed for handling IO and
Robert> initializing the system.  ecos is nothing more than a library
Robert> that allows "applications" to do OS work.  One major advantage
Robert> is that the application contains OS supports only when needed.

And that advantage is the important one, as it allows for a minimal
memory (and execution) overhead. Remember eCos is an OS for _embedded_
systems. At the small end of the scale these have <512kB RAM and ROM
combined, and little more processing power than what is actually
needed to get the intended job done.

Robert> How to run X on ecos?  It doesn't seem trivial to me.  Running
Robert> an MPEG player on ecos looks like a big job. Could you mount
Robert> NFS?  run Netscape?  I guess ecos is not meant to be a
Robert> software layer for general interactive systems.  While running
Robert> Linux on a palm pilot makes sense, running ecos does not.

Correct. Think of eCos as the OS that's used on platforms produced in
such large numbers that saving $.05 on a single part makes a big
difference. Saving, say, $10 on RAM by replacing e.g. (very lovely,
but also very big) Linux with (the much smaller) eCos obviously makes
for an almost frightening saving.

Linux runs on everything. And gazzilions of applications runs on
Linux. But that's of very little use to the company manufacturing
100000 copies of consumer product X doing exactly 4 simple operations.
Paying for X to have enough memory and performance to run Linux
doesn't make sense, because the hardware never changes, nor will the
customers ever get to use anything but those 4 operations.

That eCos runs on a variety of bigger platforms is an advantage as it
allows development of the software application to happen while the
hardware platform is still in development.

Get it? It's about $$$$ :)

Jesper


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