![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
assemble
文章平均质量分 80
unbutun
这个作者很懒,什么都没留下…
展开
-
Inline assembly for x86 in Linux
If you're a Linux kernel developer, you probably find yourself coding highly architecture-dependent functions or optimizing a code path pretty often. And you probably do this by inserting assembly language instructions into the middle of C statements (a me转载 2011-03-02 20:07:00 · 354 阅读 · 0 评论 -
Why Does GCC LEA EIZ?
Now to the topic at hand. I was disassembling some code the other day (just using objdump, nothing fancy) and I noticed a weird pattern emit转载 2011-08-04 21:41:15 · 332 阅读 · 0 评论 -
The quickest way to do nothing (lea eiz,代码需要pad的时候,用这个比三条nop快,不过gcc要加-mindex-reg选项)
As I was debugging something recently, an instruction popped up that seemed a little incongruous: lea 0x0(%edi,%eiz,1),%edi Now this转载 2011-08-04 21:56:41 · 410 阅读 · 0 评论 -
LINUX汇编(汇编语言程序设计读书笔记)
献给与我一样喜欢学习的人!!! ^_^, 用了不到一个星期的时间把汇编语言程序设计这本书给大致 看了一遍, 其中下面这些省略了浮点数及IA-32如SSE FPU等特殊的指令集部分, 我觉得重要的是学习 linux汇编的语法及编译原理和程序控制流程, 具体的指令细节就不那么重要了。 有什么问题大家可以 一起交流: aishen944@163.com ###################转载 2011-10-21 20:31:53 · 1315 阅读 · 0 评论 -
Binutil二进制工具集(addr2line)(转载)
使用 Addr2line 将函数地址解析为函数名 Addr2line 工具(它是标准的 GNU Binutils 中的一部分)是一个可以将指令的地址和可执行映像转换成文件名、函数名和源代码行数的工具。这种功能对于将跟踪地址转换成更有意义的内容来说简直是太棒了。 要了解这个过程是怎样工作的,我们可以试验一个简单的交互式的例子。(我直接从 shell 中进行操作,因为这是最简单地展示这个过程的方法转载 2012-05-03 19:45:15 · 1043 阅读 · 0 评论 -
ARM Linux Kernel Boot Requirements
ARM Linux Kernel Boot Requirements Home + About + Documentation + Developer + Mailing Lists + Contacting Booting ARM Linux Author: Russell King Initial date: May 18, 2002转载 2013-07-07 07:17:12 · 588 阅读 · 0 评论 -
LinuxKernelStartARM ARM Linux内核启动过程
注: 本文转自ChinaUnix 作者为XPL. 本文针对arm linux, 从kernel的第一条指令开始分析,一直分析到进入 start_kernel()函数. 我们当前以linux-2.6.19内核版本作为范例来分析,本文中所有的代码,前面都会加上行号以便于和源码进行对照, 例: 在文件init/main.c中: 00478: asmlinkage void init start_k转载 2013-07-07 07:21:10 · 819 阅读 · 0 评论 -
switch_to
理论部分请参考《深入理解Linux 内核》第三章。 1 .switch_to 宏: #define switch_to(prev,next,last) / do { / last = __switch_to(prev,task_thread_info(prev), task_thread_info(next)); / } while (0) 2 .__转载 2013-08-12 22:19:15 · 870 阅读 · 0 评论