- 博客(14)
- 收藏
- 关注
原创 进程间的通讯(ipc)-----信号
因为函数中涉及到了多个结构体,所以就画了一张结构图,可以帮助理解以上就是关于信号的内容,本文仅仅介绍了有关信号的相关知识和简单使用,更多的还需要自己不断摸索,不断学习。若发现错误,请指正,共同进步。
2024-10-08 20:56:07
716
原创 linux中进程的替换
进程的替换目的是为了节省资源,假设现在又A、B、C三个应用程序需要执行,如果我每执行一个程序都创建一个进程,目的是可以实现的,但是会浪费资源,那么可以创建一个进程,然后让进程在一个进程进行替换,那么就可以避免创建过多的进程导致资源的浪费。
2024-09-11 20:44:08
801
原创 C语言中宏定义(看一下是你了解的宏吗?)
1.格式为 #define 宏名 常量,通常情况下宏名为大写。是你心中的那个答案吗?在linux操作系统下,可以使用gcc -E 文件名.c -o 文件名.i 来生成预编译结果,vim 文件名.i 可以进入查看,翻到最下面,我们来看一下它预编译后的结果:可以看到,宏定义只是将原有的常量替换宏名,并没有做任何的计算,6*6=36的结果是不存在的!
2024-09-11 20:10:41
590
原创 linux进程中的wait()和waitpid()
wait() 和 waitpid() 函数在C语言中有释放子进程遗留资源的作用。当一个子进程结束时调用exit()或_exit(),会进入僵死状态,它的资源(如内存、打开的文件描述符等)并不会立即被系统回收。这些资源会保留,直到父进程调用 wait() 或 waitpid() 来收集子进程的状态信息。在父进程中调用wait()和waitpid(),会等待子进程结束,期间父进程会进入阻塞状态,直到接收到子进程结束的信号,才会继续执行。如果有多个子进程,那使用一个wait(NULL),父进程只会等待其中的一个。
2024-08-07 23:37:12
1124
原创 linux进程中的exit()和_exit()
exit() 与 _exit()的不同_exit()属于系统调用,能够使进程停止运行,并释放空间以及销毁内核中的各种数据结构。exit()基于_exit()函数实现,属于库函数, 会自动刷新I/O缓冲区。
2024-08-01 19:55:17
673
原创 C语言中的指针
这次主要介绍指针的知识,通过演示一些简单的应用帮助大家更好的了解指针。指针实际上就是地址,保存地址的那个变量叫做指针变量,指针变量中保存的一定是地址。这个就是正常情况下的指针的定义,打印出的就是num的地址。指针应用非常广泛且灵活,是c的的难点和重点,希望引起重视。
2024-07-01 00:33:55
2177
原创 STM32F103C8T6的通信设备
全双工代表的发送和接收可以同时进行,一般都会有两根数据线,分别是接收和发送,反之就是半双工,其次还有单工,只能从一个设备到另一个设备。I2c和SPI有单独的时钟线,是同步时钟,意味着接收方可以在时钟的指引下进行采样数据。异步时钟则需要双方约定一些频率,并且需要加上帧头和帧尾。还有电平,单端是需要双方共地,电瓶高低取决于对地的电压差。CAN,USB是差分信号,是靠两个引脚的差分电压来传输信号的,不用接地,但USB中有些协议是用到单端信号,所以USB还是需要共地的。
2024-06-12 22:09:09
647
原创 关于rand()与srand()的介绍与应用
描述:C 库函数返回一个范围在 0 到RAND_MAX之间的伪随机数。RAND_MAX 是一个常量,它的默认值在不同的实现中会有所不同,但是值至少是 32767。rand()函数是存在于<stdlib.h>库函数中,在使用前一定记得将其包含进去。rand()函数是生成一个随机数的函数,实际上,rand () 函数产生的随机数是伪随机数,是根据一个数值按照某个公式推算出来的,这个数值我们称之为“种子”。
2024-06-02 17:38:06
569
原创 C语言中的运算符
众所周知,C语言与嵌入式的关系密不可分,所以,要做一名合格的嵌入式工程师,必须要打好C语言的基础,今后我也会将自己学习到的C语言知识及细节在博客中分享,对我来说也是学习知识后的巩固,有错误的地方希望大家能够大声指出,很开心能和大家一起进步!
2024-05-23 23:18:08
1978
1
原创 linux操作系统下终端基本操作及快捷方式
.linux基本使用方法;基本命令;根目录中主要的文件;编程用的编辑器和编译器;将系统设置成中文;
2024-05-02 19:17:20
763
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人