On 15/10/2018 14:23, Thawra Kadeed wrote:

Thanks a lot Sebastian for referring me to the git master.

Actually, I cloned the current git master and I was looking for the RTEMS kernel (source code) and I have found it in this path:

"rtems-master/cpukit/rtems"

I think this is the RTEMS library which constitutes the RTEMS kernel in general irrespective to other features and modules attached to it. Is that right?

This directory contains the Classic API implementation which I would not use in new applications. The core operating system parts are in cpukit/score.


On the other hand, RTEMS supports dynamic memory allocation (DMA) and priority inheritance. However and as I understood from you, if we choose priority-based scheduling (which is another scheduling policy) and static memory allocation by the App, then the executable file will automatically have only these features without by example the DMA, so I think it is all the App dependent, right?

RTEMS uses currently dynamic memory (the so called workspace) internally for some things. This was also the case 20 years ago. Maybe we can get rid of using dynamic memory in some time. By default, it is only used by the operating system during system initialization.

Only the services used by the application and the operating system are included in the executable. For example, if you don't use the FAT file system, then the stuff for the FAT file system is not in your executable even though the FAT file system support is in the librtemscpu.a which you used to link your executable.

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : [email protected]
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

_______________________________________________
users mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/users

Reply via email to