A startup file is a piece of code written in assembly or C language that executes before the main() function of our embedded application. It performs various initialization steps by setting up the hardware of the micro controller so that the user application can run. startup. s' file is a assembly file used in almost all embedded C projects.
In brief, the boot loader is a second software inside the same flash with the application. On the other hand, the startup code will run in any case, with or without the boot loader. So startup code will run before your code. Boot loader is an entirely different software from the application.