I want to ask if someone can provide me some information about native programming in C of ESP8266. I'm trying to find more informations but what I find is scattered information on different sites. First of all as I understand there is an OS running on ESP8266, and we can add a task with a user code. So, when we upload a new code what we're doing is compiling the entire firmware(so also not user related tasks) that is uploaded to embedded MCU or just replacing a space of memory dedicated to user codes?
Also, about memory we can upload codes to external EEPROM, but there is internal memory on ESP? I mean when I power on ESP it gets ALL firmware code from extenal memory(that is not ICACHE_FLASH) or it have also embedded memory or just embedded memory for just FW? About spaces how much there is? I've read someone saying 80kB someone 32kB(datasheet).
About registry writing I've read that is slow, what you mean with register writing? Memory operations or peripheral registers? For example changes values to a peripheral (I2C, SPI, PWM) is very slow(in mS range)? Reading wifi data?
Sorry my newbie questions, but unlike other devices I've some difficults to find informations about ESP. I'm looking also sites or documents were to get informations.
Thank you!