On 15.07.22 04:03, Chris Johns wrote:
On 14/7/2022 11:13 pm, Sebastian Huber wrote:
Place the statically allocated object control blocks, local tables, and thread
queue heads into the dedicated .noinit intput sections.  The output section is
not zero initialized.
Does the data held in no-init rely on code having to initialise all fields? Is
the saving because there is code that already does this?

Yes, we have a double initialization. These elements were allocated from the workspace before the static allocation. The workspace allocates uninitialized data. We still have this uninitialized data if unlimited objects are used.


Placing these elements into the .noinit section reduces
the system initialization time by decreasing the .bss section size.
How much data do you see that is being moved out of .bss to .noinit?

It depends on your application configuration. You have for example about 700 bytes per task. I noticed this in an application which hit the watchdog due to an update to RTEMS 6 because of the longer boot time to the initialization task.

--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to