尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
【Linux】 开发工具(Makefile、git、cgdb)解析与对于操作系统的基础认识
目录前言Part1. MakefilePart1.1. 基础语法Part1.2. .PHONYPart1.3. Make增量编译原理Part1.4. 多文件递归编译示例Part1.5. Makefile变量Part1.6. 内置函数Part1.7. 模式规则Part1.8. 完整模板Part2. C语言缓冲区原理Part3. Git常用基础命令Part4. cgdb调试器Part5. 操作系统基础理解Part5.1. 为什么需要内存Part5.2. 数据流动Part5.3. 操作系统四大核心功能Part5.4. 内核态、用户态Part5.5. 操作系统对数据的管理Part6. 结语前言对于开发工具的熟练使用和Linux操作系统的理解是非常重要的来跟随小编的视角来看看吧。lets go!!!!!!!!Part1. MakefilePart1.1. 基础语法目标: 依赖 命令 示例 code: code.c gcc -o code code.c逻辑如果code.c修改过则执行gcc编译生成可执行文件code。Part1.2. .PHONY.PHONY: clean clean: rm -f code1.PHONY声明这是伪目标直接执行命令。2 执行清理make cleanPart1.3. Make增量编译原理make依靠文件修改时间戳判断要不要执行规则1依赖文件更新时间 目标文件更新时间执行编译。2 依赖没有改动多次make输出nothing to be done不会重复编译。3touch filename修改文件的三个时间戳可以欺骗make强制触发编译。Part1.4. 多文件递归编译示例A:A.o gcc A.o -o A A.o:A.s gcc -c A.s -o A.o A.s:A.c gcc -E A.c -o A.smake自上而下扫描递归解析依赖一层层生成中间文件。Part1.5. Makefile变量B code test: echo $(B)•取值语法$(变量名)自动化变量各个变量含义:1$ 当前规则的目标2$^ 全部依赖文件列表3$ 第一个依赖文件命令前加执行命令不在终端打印这条shell命令。例echo linking $^ - $Part1.6. 内置函数1wildcard匹配一批文件SRC : $(wildcard *.c)Part1.7. 模式规则%.o:%.c $(CC) $(CFLAGS) -c $ -o $ //含义任意.o由同名.c编译生成。Part1.8. 完整模板BIN app SRC $(wildcard *.c) OBJ $(SRC:.c.o) CC gcc $(BIN): $(OBJ) $(CC) -o $ $^ %.o:%.c $(CC) -c $ .PHONY:clean clean: rm -f $(BIN) $(OBJ)Part2. C语言缓冲区原理1行缓冲标准输出stdout是行缓冲遇到\n换行才刷新缓冲区打印到屏幕。printf(hello); sleep(3); // 不会立刻打印sleep结束才输出 printf(hello\n); sleep(3); // \n触发刷新立刻打印2fflush(stdout)强制刷新缓冲区不需要换行直接输出内容。3 格式化输出对齐•%xd右对齐占x字符宽度•%-xd左对齐占x字符宽度Part3. Git常用基础命令1git add .# 将所有修改加入暂存区2git status# 查看仓库当前状态3git commit -m 提交描述# 暂存区提交到本地仓库4git push# 推送到远程仓库5git clone 远程仓库地址# 克隆远程仓库到本地p.s.暂存区可以多次修改多次add统一一次commit、push。Part4. cgdb调试器gcc -g test.c -o test cgdb testGDB常用指令表指令功能q退出gdbl列出源代码l 行号从指定行展示源码b 行号设置断点b main在main函数打断点r运行程序c继续运行到下一个断点停下n 单步跳过函数调用s 单步进入函数内部bt打印函数调用栈backtracefinish跑完当前函数返回调用处p 变量名打印变量值info b查看全部断点信息disable 断点编号临时禁用断点enable 断点编号启用断点until 行号直接运行到指定行停下display 变量持续监视变量每次暂停自动打印undisplay 编号取消监视info locals打印当前函数所有局部变量watch 变量变量被修改程序自动停下set var xygdb内部修改变量的值condition 断点号 条件条件断点满足条件才停Part5. 操作系统基础理解Part5.1. 为什么需要内存CPU只能直接读写内存不能直接读写磁盘。磁盘速度很慢CPU运算速度极快内存作为中间高速缓存用来匹配CPU和外设的速度差距。程序运行过程1 可执行文件存放在磁盘。2 运行程序操作系统把程序加载到内存。3CPU从内存读取指令、数据执行。Part5.2. 数据流动磁盘 → 内存 → CPU运算 → 内存 → 网卡(输出外设)发给对方对方网卡接收放入内存处理最后写入磁盘保存。所有外设都不和CPU直接打交道数据必经内存中转。Part5.3. 操作系统四大核心功能1进程管理2内存管理3文件管理4驱动设备管理Part5.4. 内核态、用户态•应用程序跑在用户态不能直接访问硬件、内存、设备。• 想要操作硬件必须调用系统调用陷入内核态由操作系统内核完成硬件操作。•高内聚低耦合上层应用只调用接口底层驱动封装硬件细节。Part5.5. 操作系统对数据的管理操作系统把各式各样来自硬件的数据统一抽象成数据结构完成增删查改。通过结构体描述管理对象进程PCB、文件描述符等保存元信息完成管理。Part6. 结语这篇文章我们认识到了Linux开发工具和操作系统的相关知识接下来小编还会带来更多Linux相关的知识敬请期待~最后祝大家可以春风得意马蹄疾一日看尽长安花最后的最后要是觉得本文还可以的话可以点点赞关注小编一波谢谢大家~
RELATED

相关推荐

2026 Agentic AI 元年:智能体如何从“聊天机器人“进化为“自主程序员“?MonkeyCode 免费体验

2026 Agentic AI 元年:智能体如何从“聊天机器人“进化为“自主程序员“?MonkeyCode 免费体验

一个深夜,我被自己的"AI 同事"卷到了 凌晨两点,同事老周在群里丢了一张图:一个半小时前他提出的需求,已经跑完测试、部署上线了。我盯着那条消息半天没缓过神——早上还在跟他讨论怎么设计数据库表呢。"这不可能。…

📅 2026/9/26 4:06:20
多智能体系统架构设计:外部知识与分层记忆如何赋能AI协同

多智能体系统架构设计:外部知识与分层记忆如何赋能AI协同

1. 项目概述:当需求遇上架构,多智能体协同的破局之路最近在折腾一个挺有意思的项目,核心目标就写在标题里了:Bridging Requirements and Architecture,也就是如何弥合业务需求与系统架构之间的鸿沟。这听起来像是软件工…

📅 2026/9/26 3:56:50
数据结构与算法:从核心原理到实战应用,构建高效编程思维

数据结构与算法:从核心原理到实战应用,构建高效编程思维

很多初学者在接触编程时,都会遇到一个共同的困惑:为什么我学会了语法,还是写不出像样的程序?为什么看别人的代码,总觉得那些vector、map、递归、动态规划用得行云流水,自己却连一个简单的数据组织都理不清&…

📅 2026/10/1 21:48:41
MORE NEWS

更多资讯

📰

电工证图片打印怎么搞?官方报名入口全解析,别白交培训费

电工证图片打印怎么搞?官方报名入口全解析,别白交培训费 怕考不过白交培训费?现在越来越多的电工从业者在考虑报考电工证,尤其是想了解【电工证图片打印】怎么操作,甚至有些人误以为只要打印一张证书图片就能上岗。但你有没有想过,这个证到底能不能打印…

📰

初级电工证几级好考过网上查询方法及备考全攻略

初级电工证几级好考过网上查询方法及备考全攻略 你是不是也遇到了这种情况? 急需特种作业证才能上岗找工作 ,但又对报考流程、考试内容、证书等级一头雾水,甚至连网上查询都找不到靠谱的资料?别急,这篇文章就帮你从零开始,搞清楚…

📰

电工证重新培训费用怎么报名?实操考试心里没底怕挂科怎么办

电工证重新培训费用怎么报名?实操考试心里没底怕挂科怎么办 实操考试心里没底怕挂科,尤其是电工证重新培训,很多人担心费用高、流程复杂、考试不通过。别担心,本文就围绕【电工证重新培训费用怎么报名】,为你一步步拆解,从报名到考试再到费用,讲得明明…

📰

如何识别电工证的真伪行业前景与薪资待遇

电工证真伪识别全攻略:过期了不知道怎么复审延期怎么办?怎么报名最靠谱? 证书过期了不知道怎么复审延期?别慌,这事儿咱们今天就掰开了说。很多人手上拿着电工证,但一到复审时间就手忙脚乱,不知道怎么操作。更别提市面上真假混杂的证书,稍不留神就踩坑…

📰

低学历也能考电工证?考电工证要学哪些理论良心建议全在这

低学历也能考电工证?考电工证要学哪些理论良心建议全在这 你是不是也担心自己学历不高,考电工证怕报不上名?别急,今天就给你讲讲考电工证到底要学哪些理论, 良心建议 全在这里,帮你少走弯路,稳稳拿到证。…

📰

成都人才电工证报名怎么考?证书过期了不知道怎么复审延期?考前押题帮你稳过!

成都人才电工证报名怎么考?证书过期了不知道怎么复审延期?考前押题帮你稳过! 证书过期了不知道怎么复审延期?这是很多成都电工从业者在遇到岗位变动、项目停工或换岗时最头疼的问题。很多人以为电工证是“一劳永逸”的,结果一不留神就错过了复审期限,影…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬