上一页 1 2 3 4 5 6 7 ··· 13 下一页
摘要: gdb基本指令 g:使用该参数可以编译成可以执行文件,得到调试表‘ gcc a.out list: list1 列出源码,根据源码指定,行号进行设置断点 b: b 20 在2 0行设置断点 run/r: 运行程序 n / next : 下一条指令(会越过函数) s / step : 下一条指令 (会 阅读全文
posted @ 2020-03-18 16:53 FANDX 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 一般C语言写的程序可以让其他语言进行调用,比如python, java,等等 c语言有两种库类型,静态库和动态库(共享库) 静态库和动态库的区别 静态库 静态库需要和程序进行一起编译 静态库在原理上是性能比动态库要高的 一般应用在对空间要求较低,而对时间要求的核心程序中 动态库 动态库可以被程序直接 阅读全文
posted @ 2020-03-18 16:50 FANDX 阅读(955) 评论(0) 推荐(0) 编辑
摘要: 进程和程序的区别 程序,只占用磁盘的空间。 进程运行在操作系统之上,占用内存,cpu等系统资源。 并发 同一时间运行多个程序,多个进程同时在运行 单道程序设计 A堵塞,B只能进行等待,即使CPU处于空闲状态,而在人机交互的时候堵塞的时候是必然的结果 多道程序设计 时钟中断,到了指定的时间程序必须中断 阅读全文
posted @ 2020-03-18 16:49 FANDX 阅读(306) 评论(0) 推荐(0) 编辑
摘要: gcc编译的4步骤 预处理 (hollo.c hello.i) 展开宏,头文件 替换编译条件 删除注释,空行,空白 编译 (hello.i hello.s) 检查语法规范 最消耗时间,系统资源最多 汇编 (hello.s hello.o) 将汇编指令翻译成机器指令 链接 (hello.o a.out 阅读全文
posted @ 2020-03-18 16:46 FANDX 阅读(396) 评论(0) 推荐(0) 编辑
摘要: exec函数族 execl, 可以指定路径进行运行自己的程序 execlp, 可以通过自己的环境变量,运行系统程序 execvp, 可以通过传入数组的方式 execlp使用案例 execl的使用 exec函数族的一般规律 exec函数一旦调用成功,就执行新的程序,不返回。只有失败才返回,错误值为 1 阅读全文
posted @ 2020-03-18 16:44 FANDX 阅读(611) 评论(0) 推荐(0) 编辑
摘要: dup和dup2是用来重定向的 例子 dup的使用,主要是保存的作用 dup2的使用,可以打开进行的fd fcntl实现dup2的功能 F_DUPFD() 例子 文件描述符 PCB进程控制模块 成员:文件描述符。 文件描述符:0,1,2,3,4,...... 1023 0 STDIN_FILENO 阅读全文
posted @ 2020-03-18 16:43 FANDX 阅读(679) 评论(0) 推荐(0) 编辑
摘要: 考虑一下步骤 判断命令行参数,获取需要查询的目录 argv[1], 如果没有就算当目录 判断用户指定的是否是目录。 stat S_ISDIR(); 读取目录: opendir() readdir(), 如果读取到目录,那么就可以递归调用自己 拼接目录: sprintf(path, "%s/%s", 阅读全文
posted @ 2020-03-18 16:40 FANDX 阅读(1151) 评论(0) 推荐(0) 编辑
摘要: 使用库函数来进行文件读取 使用系统调用 为什么系统调用要比库函数效率要低 使用strace可以详细看到运行的调用结果,发现调用的次数要少的多 内核缓存有4096字节的大小 用户空间进入内核空间要耗时比较多,但是比内核到磁盘要快 fputc 中有一个字节的缓存区,达到4096之后在会进入到内核空间中 阅读全文
posted @ 2020-03-18 16:38 FANDX 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 进程和进程之间的内存是相对独立的 进程和进程通讯原理 进程和进程之间通讯的方式 管道(使用最简单) 只能用在有血缘关系的进程之中 信号(开销最小) 共享映射区(无血缘关系) 本地套接字(最稳定,实现复杂度最高) 管道 管道必须用在有父子关系的进程中 管道是一种最基本的IPC机制,作用与有血缘关系的进 阅读全文
posted @ 2020-03-18 16:36 FANDX 阅读(1442) 评论(0) 推荐(0) 编辑
摘要: Makefile入门 makefile命名: makefile 或者 Makefile 1个规则 目标:依赖条件 (一个tab缩进)命令 目标的时间必须晚于依赖条件的时间,否则就会更新目标 依赖条件如果不存在,找寻新的规则去产生依赖 makefile会默认把第一条指令当做最终目标 可以使用ALL:a 阅读全文
posted @ 2020-03-18 16:29 FANDX 阅读(405) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 13 下一页