上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页

makefile

摘要: 规则 变量 函数 条件执行 文件,文件名处理函数 文件包含 注释 解析阶段: 解析makefile,建立依赖关系树 控制解析过程:引入makefile,变量展开,条件执行 生成关系树 编译阶段:根据依赖关系树和时间戳编译 载入关系树 根据关系树和时间戳,执行操作 规则 作用: 目的:生成依赖关系树 阅读全文
posted @ 2021-12-30 11:50 开心种树 阅读(157) 评论(0) 推荐(0) 编辑

虚拟机的使用

摘要: 1. 共享目录失效 共享目录进程为 vmhgfs-fuse, 启动 mkdir /mnt/hgfs vmhgfs-fuse .host:/ /mnt/hgfs 阅读全文
posted @ 2021-12-22 00:37 开心种树 阅读(26) 评论(0) 推荐(0) 编辑

linux系统构建——1.交叉编译工具链

摘要: 1. GNU工具链包括 预编译,编译器,链接器,汇编器 相关的包 Binutils : 所有和二进制文件相关的工具都包括在Binutils中。主要包括:as,ld,objdump,strip,与编译器cpp 等。 GCC : 编译器包括在GCC中,包括C++编译器,Ada编译器等 Glibc : 包 阅读全文
posted @ 2021-12-19 00:34 开心种树 阅读(1419) 评论(0) 推荐(0) 编辑

《深度探索Linux系统:系统构建和原理解析》笔记——2.工具链构建

摘要: 1. 什么是交叉编译工具链 编译工具的 --host 为 宿主机, --target为 目标机 2. 交叉编译工具链包括哪些 包括 预编译器,编译器,汇编器,链接器,库。 具体有如下包: GCC : 构建gcc和编译器cc1, Binutils: 构建 预编译器ccp,汇编器as,链接器ld,其他工 阅读全文
posted @ 2021-12-16 13:27 开心种树 阅读(156) 评论(0) 推荐(0) 编辑

构建嵌入式环境

摘要: 1. 制作文件系统并挂载 目标:制作文件系统 # 分配固定空间大小的sd卡 dd if=/dev/zero of=sd bs=1M count=32 # 将sd文件虚拟化为磁盘设备,如此才能进行格式化 losetup /dev/loop1 sd # 对磁盘设备进行格式化,使用 ext2格式,块数量为 阅读全文
posted @ 2021-12-15 17:09 开心种树 阅读(99) 评论(0) 推荐(0) 编辑

《深度探索Linux系统:系统构建和原理解析》笔记——2.工具链

摘要: 1. 工具链的工作过程 如下是从源文件到二进制文件的构建过程,需要注意的是 链接阶段,链接和包含起始程序的目标文件(crti.o ...) 实际情况我们只需要 gcc main.c即可完成编译链接,实际上,gcc只是驱动程序,控制 编译器cc1,汇编器as,连接器ld 工作。 使用 gcc -v m 阅读全文
posted @ 2021-12-15 12:48 开心种树 阅读(159) 评论(0) 推荐(0) 编辑

cii——异常与断言

摘要: 1. 为什么需要异常和断言 异常:用于release阶段,程序逻辑无问题,但是系统环境异常,导致程序错误。 断言:用于debug阶段,设置程序检查点,方便找到程序bug. 2. c语言与异常 2.1 无异常机制的C语言 C语言本身未提供异常处理,但可以自己实现。 2.2 实现异常处理的基础 可以使用 阅读全文
posted @ 2021-11-16 00:51 开心种树 阅读(125) 评论(0) 推荐(0) 编辑

Linux系统编程——同步——读写锁

摘要: 1. 读写锁的定义 write 和 readers: 当一个进程获得读锁时,其他进程可以获得读锁,而不能获得写锁 当一个进程获得写锁时,其他进程不能获得任何锁 因为当数据正在被写时,数据是脏的,所以读共享,写独占 2. api 2.1 静态初始化 读写锁类型是 pthread_rwlock_t,使用 阅读全文
posted @ 2021-09-14 22:41 开心种树 阅读(63) 评论(0) 推荐(0) 编辑

编程117

摘要: 1. 用蒙特卡洛方法计算PI #include <stdio.h> #include <math.h> #include <time.h> #include <stdlib.h> int main(int argc, char *argv[]) { int tosses, cir_nb, i; do 阅读全文
posted @ 2021-09-05 09:31 开心种树 阅读(41) 评论(0) 推荐(0) 编辑

linux系统编程——同步——互斥锁和条件变量

摘要: 1. 互斥锁 互斥锁和条件变量 能用于 线程同步 如果 互斥锁 和 条件变量 存放在 共享内存中,还能 实现 进程同步 1.1 初始化互斥锁 int pthread_mutex_init(pthread_mutex_t *restrict mutex, const pthread_mutexattr 阅读全文
posted @ 2021-09-03 00:01 开心种树 阅读(158) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页