自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Makefile详解

1. Makfile总述1.1. make如何解析makefile文件GUN make 的执行过程分为两个阶段。第一阶段:读取所有的 makefile 文件(包括 MAKIFILES 变量指定的、指示符 include 指定的、以及命令行选项 -f(--file) 指定的 makefile 文件),内建所有的变量、明确规则和隐含规则,并建立所有目标和依赖之间的依赖关系结构链表。第二阶段:根据第一阶段已经建立的依赖关系结构链表决定哪些目标需要更新,并使用对应的规则来重建这些目标。在 make 执

2021-04-18 11:23:10 1793

原创 bash引号和转义 - 单引号、双引号的区别

以下两条命令虽然执行结果相同,但是处理过程却不同,读了本文再思考它们哪里不同。无引号"\" 可以使所有字符失去特殊含义。比如 "\*" 、 "\$" 被转义为 "*" 、 "$"。需注意 "\t" 、"\n" 会被转义为 "t" 和 "n" ,而不是制表符和换行符。由于换行符(回车)在无引号模式,会导致命令直接执行,所以也可以说是一个特殊字符。因此 "\回车符" 也会失去特殊含义。 转义前表示 \* \$ ...

2021-04-11 09:37:10 690 2

原创 git内部原理—换个角度看本质

Git的常见命令虽然不多,但是,想要更加深刻理解这些命令,掌控每条命令的具体操作,了解Git的内部原理还是很有必要。首先,我们需要知道一个事物的表现形式可能有很多种,但是,它们的形式可以互相转换,其实质是一种东西。比如,一个普通的文件和一个压缩后的文件其实质是一样的。数据对象和树对象对于Git而言,存入库中的文件和文件夹的另一种形式就是数据对象(blob)和树对象(tree)。数据对象就是将文件压缩,同时计算它的hash摘要,从而对它进行索引。树对象就是文件名、权限等和文件(hash摘要).

2021-03-10 23:03:14 165

原创 关于gdtr和cr3地址类型的理解

结论:1.cr3里保存页目录表的基址的地址类型为物理地址,页目录表里的每一项也是页表的物理地址。2.gdtr里保存的地址类型为线性地址。原因:由于段表并不能保证页表存在或开启,所以它的机制,完全建立在无页表存在的情况。体现在gdtr上,就是gdtr的地址和gdt里的描述符里的地址类型一样,都为线性地址,当开启分页机制后有可能会和物理地址不同。而且,当想要更换段页式的时候,必

2018-01-09 14:52:48 3286 1

原创 关于实模式下汇编伪指令assume的个人理解

作用:用于标识默认段前缀解释:assume 并不能改变ds等段寄存器的值,但他能改变编译器产生的汇编代码。比如:assume ss:stackstack segmentx :db 0stack ends如果程序需要mov ax,[x],那么程序如何定位[x]呢?我们知道x只是一个偏移地址0,所以此时assume就相当于告诉编译器stack段的所有标号都与ss相关联,所以此时

2017-10-05 12:43:10 1129

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除