##minGW package MinGW MinGW Base System MinGW Compiler Suit mingw32-binutils 必选,用于编译生成的 .o 文件的链接、汇编、生成静态库等。 mingw32-gcc 必选,核心的 C 编译器。 mingw32-gcc-ada ...
分类:
其他好文 时间:
2020-06-20 00:51:13
阅读次数:
82
第一种情况 /* * 第一种情况 * 证明:是否在编译的时候完成拼接 * */ String str = "a" + "b"; 常量池信息: 查看常量池信息必须通过 javap -v 命令来查看Class文件(java文件编译后的文件) Constant pool: #1 = Methodref # ...
分类:
其他好文 时间:
2020-06-19 21:10:16
阅读次数:
48
跳转指令 (1)无条件跳转 JMP (2)根据 CX、ECX 寄存器的值跳转 JCXZ:CX 为 0 则跳转) JECXZ:ECX 为 0 则跳转) (3)根据 EFLAGS标志位跳转 JE: 等于则跳转 JNE: 不等于则跳转 JZ:为 0 则跳转 JNZ:不为 0 则跳转 JS:为负则跳转 JN ...
分类:
其他好文 时间:
2020-06-18 10:56:10
阅读次数:
68
保护模式入门简介 一丶 什么是保护模式 1.1 CPU的三个模式 CPU分为 实模式 保护模式 虚拟8086模式 说一下分别是什么意思 实模式 在之前的DOS年代.我们用的就是实模式. 那时候的汇编可以随便乱写.然后也会影响其它进程.造成系统的不稳定 保护模式 现在我们用的计算.在电脑启动的时候是实 ...
分类:
其他好文 时间:
2020-06-18 01:05:51
阅读次数:
59
"hello world"可以说是所有程序员闭着眼睛都能写出来的代码: #include <stdio.h> int main() { printf("hello world\n"); return 0; } 编译运行一气呵成。而每当有人问起:从源码到可执行程序有哪些步骤,大多数程序员面对这个问题也 ...
分类:
其他好文 时间:
2020-06-17 23:43:46
阅读次数:
448
今天看到一个问题,我们怎么确定printf中的可变参数。 这样,我们先从汇编的角度去理解一个东西,栈 char *p = (char*)malloc(256 << 20) + (256 << 20); __asm__ volatile("movl %0, %%rsp\n", "r"(p)); 这段代 ...
分类:
编程语言 时间:
2020-06-16 23:15:06
阅读次数:
89
一、实验要求 结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程 以fork和execve系统调用为例分析中断上下文的切换 分析execve系统调用中断上下文的特殊之处 分析fork子进程启动执行时进程上下文的特殊之处 以系统调用作为特殊的中断,结合中断上下文切换和进程上下文切换分析L ...
分类:
系统相关 时间:
2020-06-15 13:59:14
阅读次数:
61
我们在学习 Linux 嵌入式开发的时候,了解 ARM 汇编是很有必要的,虽然我们使用汇编编写代码的情况很少,但是有些情况下我们需要简单编写一些汇编程序来协助我们调试板子(因为我们的 i.MX6 UL 终结者开发板使用的 cpu 是 ARM Cortex-A7 架构的,cpu 刚上电必须要运行汇编代 ...
分类:
其他好文 时间:
2020-06-15 12:21:36
阅读次数:
92
实验要求 结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程 以fork和execve系统调用为例分析中断上下文的切换 分析execve系统调用中断上下文的特殊之处 分析fork子进程启动执行时进程上下文的特殊之处 以系统调用作为特殊的中断,结合中断上下文切换和进程上下文切换分析Lin ...
分类:
系统相关 时间:
2020-06-14 23:37:51
阅读次数:
70
2.1 介绍 2.1.1 工具链简介 一个编译工具链模块是允许为系统编译代码的一组工具。它由一个编译器(在我们的例子中是 gcc)、像汇编器和链接器这样的二进制 utils(一般是 binutils)和一个C标准库(例如 GNU Libc, uClibc-ng)组成。 一个交叉编译工具链是可有在主机 ...
分类:
其他好文 时间:
2020-06-14 18:19:49
阅读次数:
70