摘要:
13.进程间通信 1.学习目标 熟练使用pipe进行父子进程间通信 熟练使用pipe进行兄弟进程间通信 熟练使用fifo进行无血缘关系的进程间通信 使用mmap进行有血缘关系的进程间通信 使用mmap进行无血缘关系的进程间通信 2.进程间通信相关概念 2.1 什么是进程间通信 Linux环境下,进程 阅读全文
摘要:
12.进程控制 1.学习目标 了解进程相关的概念 掌握fork/getpid/getppid函数的使用 熟练掌握ps/kill命令的使用 熟练掌握execl/execlp函数的使用 说出什么是孤儿进程什么是僵尸进程 熟练掌握wait函数的使用 熟练掌握waitpid函数的使用 2.进程相关概念 2. 阅读全文
摘要:
11.文件和目录 1.文件操作相关函数 1.1stat/lstat函数 █函数描述: 获取文件属性 █函数原型: int stat(const char *pathname, struct stat *buf);//加了const一定是输入参数,buf是输出参数 int lstat(const ch 阅读全文
摘要:
10.文件IO 从本章开始学习各种Linux系统函数,这些函数的用法必须结合Linux内核的工作原理来理解,因为系统函数正是内核提供给应用程序的接口,而要理解内核的工作原理,必须熟练掌握C语言,因为内核也是用C语言写的,我们在描述内核工作原理时必然要用“指针”、“结构体”、“链表”这些名词来组织语言 阅读全文
摘要:
9.gdb调试 1.gdb介绍 GDB(GNU Debugger)是GCC的调试工具。其功能强大,现描述如下: GDB主要帮忙你完成下面四个方面的功能: ▶ 启动程序,可以按照你的自定义的要求随心所欲地运行程序。 ▶ 可让被调试的程序在你所指定的断点处停住。(断点可以是条件表达式) ▶ 当程序被停住 阅读全文
摘要:
8.makefile 学习目标: 熟练使用规则编写简单的makefile文件 熟练使用makefile中的变量 熟练使用makefile中的函数 1.makefile makefile文件中定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能 阅读全文
摘要:
7.静态库和共享(动态)库 7.1库的介绍 什么是库 库是二进制文件,是源代码文件的另一种表现形式,是加了密的源代码; 是一些功能相近或者是相似的函数的集合体。 使用库有什么好处 ▶ 提高代码的可重用性,而且还可以提高程序的健壮性; ▶ 可以减少开发者的代码开发量,缩短开发周期。 库制作完成后,如何 阅读全文
摘要:
## 6.1 gcc的工作流程 gcc编译器将c源文件到生成一个可执行程序,中间一共经历了四个步骤: ![](https://img2023.cnblogs.com/blog/2657127/202308/2657127-20230808145142042-43049159.png) 四个步骤并不是 阅读全文
摘要:
# 1.vim简单介绍 vi是”visual interface”的简称,它在Linux上的地位就仿佛Windows中的记事本一样。它可以执行编辑、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。vi是一个文本编辑程序,没有菜单,只有命令。 vim更高级一些,可以理解 阅读全文
摘要:
# [25. K 个一组翻转链表](https://leetcode.cn/problems/reverse-nodes-in-k-group/) 给你链表的头节点 `head` ,每 `k` 个节点一组进行翻转,请你返回修改后的链表。 `k` 是一个正整数,它的值小于或等于链表的长度。如果节点总数 阅读全文