- 博客(9)
- 收藏
- 关注
原创 虚拟地址布局
内核0xFFFF 0000 0000 0000~0xFFFF FFFF FFFF FFFF。用户0x000000000000000000 ~0x0000 FFFF FFFF FFFF。内存映射的建立与解除。
2025-03-19 13:56:16
393
原创 动态库的动态加载
若只给文件名不带路径,则根据LD_LIBRARY_PATH 环境变量搜索动态库。RTLD_LAZY -延迟加载,三个hi用动态库的符号才真的加载进内存。2.void *dlsym()获取具体函数的地址。3.int dlcolse 从内存中卸载库。头文件#include <dlfcn.h>将共享库载入内存并获得其访问句柄。-filename 动态库的路径,RTLD_NOW -立即加载。-flag 加载方式。1.动态库的动态加载。
2025-03-18 09:48:52
427
原创 静态库的制作和使用
动态库中的代码为多个进程所用,动态库在内存的实例仅存一份为所有使用该库的进程所共享。gcc main.c -l 库名(不要lib .a)-L ..计算模块 :calc.h calc.c。计算模块 :calc.h calc.c。LIBRARY_PATH gcc 编译阶段找库的。显示模块:show.h show.c。显示模块:show.h show.c。ar [选项]<静态库文件><目标文件列表>接口文件 math.h。接口文件 math.h。1编写库的实现代码和接口声明。1编写库的实现代码和接口声明。
2025-03-17 14:53:59
296
原创 环境变量、获取错误的方法
bash程序,开始执行,关闭窗口,配置了一个环境变量 新窗口bash程序重新执行,新的执行过程,新的执行过程有自己的环境变量。环境变量表:数组,数组中每个元素都是char*,字符指针数组,指针存地址,就是字符串的地址,字符串为环境变量,最后一个为空。启动窗口,一劳永逸的方法.bashrc,每次bash执行前,脚本文件的内容,想让ls执行起来根据环境变量的path去找,找到这个可执行的二进制程序。环境变量给bash找命令用的,命令的本质就是可制成程序ls、pwd;内核为每一个程序都安排了一个环境变量表,
2025-03-13 16:34:45
376
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅