RTOS functionality

I have been successfully tested LED blink program.In this sample program, there is a file included “#include “freertos/FreeRTOS.h””

I want to know, how RTOS works. how can I examine of working of RTOS ??

The Arduino-ESP32 and ESP-IDF framework use a modified version of FreeRTOS. There is general documentation on how FreeRTOS works, as well well as Espressif’s modifications for it regarding symmetric multiprocessing (SMP) extensions et cetera, on top of probably hundreds of blog posts on the workings of FreeRTOS in general when you google it.

The internal state of the operating system (the variables / information you want to look at has to be known beforehand) can be inspecting with any debugger that PlatformIO supports.

For questions on the FreeRTOS kernel itself or Espressif’s modifications, please directly conact FreeRTOS people or Espressif.

Regarding this simple blink led example.

When I build this , the long list of files are compiled, it takes approx. 5 min.
can anyone tell me, which file is actually necessary and how to remove unwanted files?

ESP-IDF is just extremely large as a framework.

I don’t think there’s an easy “yes delete these files and it’ll still work without” answer.

Of course you’re free to e.g. use the Arduino framework with the chip (which actually uses a precompiled version of ESP-IDF, thus it doesn’t have to compile the 10 million files itself), PlatformIO also supports that.

For questions on reducing the compile time of ESP-IDF please again see the Espressif link above. PlatformIO already does the best it can with parallel builds.

Thanks for your suggestion, but, till date, I never get any answer from espressif.