4、系统初始化main.pptVIP

  • 4
  • 0
  • 约1.08万字
  • 约 50页
  • 2018-06-06 发布于天津
  • 举报
4、系统初始化main.ppt

初始化过程与linux中的进程 init/mani.c的分析 本讲内容 gcc内联汇编 操作系统初始化程序main.c 阅读main.c的注意点 main.c的流程 gcc内联汇编 内联汇编是一组插入到 C 程序中的汇编指令 1、基本内联汇编 2、包含c/c++表达式的内联汇编 基本内联汇编 基本内联汇编的格式是 __asm__ __volatile__ (Instruction List); int main(int __argc, char* __argv[]) { __asm__( ? movl $1,%eax // SYS_exit ? xor %ebx,%ebx ? int $0x80 ); } GCC 内联汇编语法要求 可以是单个指令,也可以是一组指令 每条指令都应该由双引号括起,或者整组指令应该由双引号括起 任意两个指令间要么被分号(;)分开,要么被放在两行;放在两行的方法既可以从通过\n的方法来实现,也可以真正的放在两行; 可以使用1对或多对引号,每1对引号里可以放任一多条指令,所有的指令都要被放到引号中 ‘\n’ 后可以跟一个 tab(\t) 作为格式化符号,增加 GCC 在汇编文件中生成的指令的可读性 GCC 内联汇编语法要求 如果希望确保编译器不会在 asm 内部优化指令,可以在 asm 后使用关键字 volatil

文档评论(0)

1亿VIP精品文档

相关文档