main函数以前即启动
概述
在Windows和Linux/UNIX的环境中使用C语言进行编程时,对main函数以后进行编码。但是,程序并不是从main函数开始的。作为其前一阶段,存在着启动程序。
在编入系统中,为了运行程序,需要理解启动程序。如果不把握启动程序在做什么而进行调试,这很有可能是做无用的工作。作为嵌入式软件技术人员开始学习,这是一定要理解的内容。
当你打开电源时,启动程序首先运行
嵌入式程序通常在微型计算机上运行。微型计算机开始动作时的动作根据微型计算机的不同而不同,在此对其中的一个例子进行说明。
嵌入机器开始动作,也就是接通电源,按下复位按钮时,微型计算机就会出现复位造成的强制性中断(图2-1的(1))。该中断对微型计算机说:“不管现在的状态如何,从初始状态开始动作“的强制性指令。当复位的强制中断进入时,微型计算机在某个固定的地址(被称为中断向量区的特别存储区域中,读取被分配给复位的向量地址)的内容。写在那里的内容根据微型计算机的不同而不同,是跳转目标的地址,或者是短的程序。写的内容是跳转目标地址的情况下,控制转移到该地址(图2-1的(2))。另外,写的内容是程序的情况下,执行写在那里的程序,其内容和刚才一样,将控制转移到某个地址。无论如何,程序都会开始运行。此时调用的程序被称为启动例程。
插入机器接通电源后,首先进入(1)复位中断,微型计算机读取中断向量域内的某个