This is more of an architecture question. The particle P1 has a flash size of 1MB and a RAM of 128KB. While executing the code, I believe that most of the code gets executed straight from the flash starting at address 0x00000000. The instructions which can be modified are fetched to the RAM and are executed from there. Is this correct?
If I want to declare a static char array of size 300KB, does this get processed from the flash during runtime or will it be copied to the RAM and will crash my P1 due to insufficient space on RAM(being 128KB only)?