这个人很懒,暂无签名信息
第三章:嵌入式系统软件基础 violate关键字 violate是不稳定,易变的,修饰变量是为了告诉编译器不要对该变量的读取进行优化,每次使用该变量的时候必须重新访问相应的内存地址重新读取,而不是直接使用保存在寄存器中的备份。多用于: 1)并行设备的硬件寄存器 2)存在异步操作的程序(例如中断服务或者信号处理函数等) 3)多线程中被几个任务共享的变量 static关键字 1)局部变量声明为s...
全局偏移表(GOT)和过程链接表(PLT) GOT 表 ELF 格式的共享库使用 PIC 技术使代码和数据的引用与地址无关,程序可以被加载到地址空间的任意位置。PIC 在代码中的跳转和分支指令不使用绝对地址。PIC 在 ELF 可执行映像的数据段中建立一个存放所有全局变量指针的全局偏移量表 GOT 对于模块外部引用的全局变量和全局函数,用 GOT 表的表项内容作为地址来间接寻址;对于本模块内...