m0_63897134
码龄3年
关注
提问 私信
  • 博客:15,026
    15,026
    总访问量
  • 35
    原创
  • 136,387
    排名
  • 178
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:陕西省
  • 加入CSDN时间: 2021-11-04
博客简介:

m0_63897134的博客

查看详细资料
  • 原力等级
    当前等级
    3
    当前总分
    307
    当月
    0
个人成就
  • 获得263次点赞
  • 内容获得0次评论
  • 获得187次收藏
创作历程
  • 35篇
    2024年
成就勋章
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

ARM概念

一.CPUCPU:计算机的核心部件,负责执行指令和处理数据。它可以被视为计算机的“大脑”,负责运算、控制和数据传输等任务。SoC(系统级芯片)是将多个组件集成在一个芯片上的设计,通常包括CPU、GPU、内存、I/O控制器等。它可以实现高性能和低功耗,广泛应用于手机、平板电脑和嵌入式设备中。UART(通用异步收发传输器)是一种串行通信协议,用于设备之间的数据传输。它通过两根线进行异步传输,允许设备以不同的速率进行通信,常用于串口通信和嵌入式系统。
原创
发布博客 2024.09.18 ·
1364 阅读 ·
14 点赞 ·
0 评论 ·
12 收藏

哈希表,算法

哈希冲突发生在多个键通过哈希函数映射到哈希表的同一位置时。由于哈希表的大小有限,哈希函数可能将不同的键映射到相同的索引位置,导致冲突。开放地址法:当冲突发生时,探测下一个位置(线性探测、二次探测或双重哈希)直到找到空槽。链式地址法:每个位置维护一个链表,将所有映射到该位置的键值对存储在链表中。它通过哈希函数将键(key)映射到表中的一个位置,从而实现高效的插入、删除和查找操作。一般用大O表示法:O(n)-----时间复杂度是关于数据n的一个函数。随着n的增加,时间复杂度增长较慢的算法时间复杂度低。
原创
发布博客 2024.09.09 ·
607 阅读 ·
10 点赞 ·
0 评论 ·
3 收藏

数据结构(2)

双向链表1.创建双向链表2.插入头插尾插3.删除头删尾删4.查找5.修改6.销毁。
原创
发布博客 2024.09.04 ·
270 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

数据结构(1)

散列存储(哈希存储):将数据元素的存储位置与关键字之间建立对应关系从而实现查找的存储的方式。线性结构:元素之间一对一的关系(表(数组,链表),队列,栈)索引存储:通过关键字构建索引表,通过索引表来找到数据存储位置。数据的逻辑结构:数据元素与元素之间的关系集合(关系平等)数据物理结构:数据的逻辑结构在计算机内存中的储存形式。容易造成存储空间碎片。图像结构:元素之间多对多的关系(网状结构)树型结构:元素之间一对多的关系(二叉树)缺点:插入和删除需要移动大量的元素。2.数据与数据之间的关系。
原创
发布博客 2024.09.03 ·
258 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

沾包问题,wireshark和netstat的使用

这不同于 UDP 协议提供的是面向消息的传输服务,其传输的数据是有边界的。TCP 的发送方无法保证对方每次收到的都是一个完整的数据包。2. 对于变长的包,还可以在包和包之间使用明确的分隔符,这个分隔符是由程序员自己来定的,只要保证分隔符不和正文冲突即可。(3)超时重传:当发送端发送的数据在网络中丢失时,在一定时间内没有收到接收端的ACK,则发送端会重新发送丢失数据。TCP协议是面向字节流的协议,接收方不知道消息的界限,不知道一次提取多少数据,这就造成了粘包问题。三.# ubuntu开启telnet服务。
原创
发布博客 2024.08.24 ·
489 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏

tcp 和udp通信

该函数通常与无连接的数据报服务(如 UDP)一起使用,但也可以与其他类型的套接字使用。与简单的 recv() 函数不同,recvfrom() 可以返回数据来源的地址信息。struct sockaddr ////通用地址结构 --- ip + 端口。src_addr:一个指针,指向一个 sockaddr 结构,用于保存发送数据的源地址。-----好 ---------------->-----好 ---------------->在成功的情况下,recvfrom() 返回接收到的字节数。
原创
发布博客 2024.08.22 ·
1060 阅读 ·
13 点赞 ·
0 评论 ·
7 收藏

进程间通讯方式,网络通信

原创
发布博客 2024.08.21 ·
137 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

无名管道,有名管道,信号

原创
发布博客 2024.08.21 ·
140 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

信号量与管道

3. 信号量的PV操作 (核心) sem_wait()/ sem_post() ---生产者 消费者 模型。//1 表示我有一个写资源可用。信号量集() //信号量 (6)@pipefd //用来获取 管道的两端 //读端pipefd[0]1. 信号量的定义 sem_t sem //造了一类资源。如果sem没有资源(==0),则线程阻塞等待,一旦有资源。如果sem有资源(==1),则申请该资源,程序继续运行。
原创
发布博客 2024.08.16 ·
837 阅读 ·
16 点赞 ·
0 评论 ·
5 收藏

补充线程结束方式,资源回收与线程的相互竞争

静态初始化:int pthread_mutex_INITIALIZER(pthread_mutex_t *mutex);//NULL 默认属性 --- 普通锁。定义互斥锁 ==》初始化锁 ==》加锁 ==》解锁 ==》销毁。@mutex //就是要初始化的 互斥锁变量。@mutex //要操作的那把锁。
原创
发布博客 2024.08.15 ·
477 阅读 ·
6 点赞 ·
0 评论 ·
13 收藏

进程空间回收和线程

获取到退出状态值 ,WIFEXITED //先判断是否正常退出。attr 线程属性,一般是NULL,表示默认属性。非阻塞调用: waitpid(-1,status,0)=wait(status)子进程:exit(退出状态值) 退出状态值只有最低8位有效数字。注:线程退出时,可以带出退出的状态值,但是传的是退出状态值对应的空间的地址。arg 回调函数的参数,即参数3的指针函数参数。主线程结束并不表示进程,此时进程会在其余线程结束后结束。2)线程共享了进程的资源(代码段,数据段,打开的一些文件)
原创
发布博客 2024.08.14 ·
667 阅读 ·
23 点赞 ·
0 评论 ·
14 收藏

进程的创建与终止

/系统的环境变量信息 的指针数组的首地址, [ ] //字符串的的 首地址。exit -> 刷新缓存区 -> atexit注册的退出函数 -> _exit。p --- path ->PATH (环境变量 --- 都是可执行文件的路径)带p 表示可执行文件的寻找方式,是从系统的环境变量PATH中的路径下面去找。v ---vector --- 参数组织成 指针数组的形式。退出状态,终止的进程会通知父进程,自己使如何终止的。参数:path 要执行的文件的路径(包含可执行文件的名字)
原创
发布博客 2024.08.13 ·
486 阅读 ·
24 点赞 ·
0 评论 ·
20 收藏

进程编译与fork函数

1.结束掉子进程,查看当前系统中父子进程的状态 (top/ps/pstree) // 子进程结束,父进程没有收尸 ---僵尸态。2.结束掉父进程,查看当前系统中父子进程的状态 //孤儿进程 --- 子进程还在,父进程不在。程序 -- a.out (可执行程序) ---静态的 ,一个程序可以对应多个进程。子进程复制父进程的0到3g空间和父进程内核中的PCB,但id号不同。进程:(进行中的程序)--正在运行的程序 (动态的) ---内存。克隆的进程称为子进程,原有的进程称为 父进程。
原创
发布博客 2024.08.12 ·
932 阅读 ·
11 点赞 ·
0 评论 ·
13 收藏

目录函数报错链接等函数调用

根据用户id到/etc/passwd文件下解析获得。根据gid到/etc/group文件中解析组信息。创建一个链接向oldpath文件的新符号链接文件。打印s字符串和errno对应的错误信息。oldpath:被链接向的文件的路径。打印errnum出错码对应的出错信息。newpath:创建的新硬链接文件。pathname:删除文件的路径。timep:保存秒数空间的地址。timep:保存时间空间的地址。成功返回获得时间字符串的首地址。newpath:新符号链接文件。oldpath:要链接向的文件。
原创
发布博客 2024.08.08 ·
786 阅读 ·
13 点赞 ·
0 评论 ·
10 收藏

文件属性目录

/ 在开辟空间时若开辟的空间小于文件大小则可能。(2)fdopen int fd -> FILE *fp //原始文件怎么开这里就怎么开。功能:获得一个文件流指针中的文件描述符 //越界访问。|文件 | |设置| |文件权限 |从目录流中读取文件信息并将保存信息的结构体。从目录流中读取文件信息并将保存信息的结构体。pathname:目录文件的名字。
原创
发布博客 2024.08.08 ·
979 阅读 ·
18 点赞 ·
0 评论 ·
19 收藏

标准io文件

O_EXCL,需要和O_CREAT同时使用,表示新建的文件不能存在,成功,否则open就会失败。功能:将stream流文件中的文件指针从whence位置开始偏移offset字节的长度。功能:获取当前文件流指针的具体位置,一般以文件开头到当前指针的字节数为返回值。whence 偏移的起始位置,由系统定义的三个宏开始。返回值:成功 获取到的距离长度,单位是字节,失败 -1;参数:stream 要移动文件指针的目标文件流对象。offset 要在文件内偏移的距离,单位字节。
原创
发布博客 2024.08.06 ·
695 阅读 ·
7 点赞 ·
0 评论 ·
5 收藏

标准io的学习

参数: s 要写的信息,一般是固定的字符串或者有数据的数组。返回值:成功返回读 到字符的ASCII码值读到文件末尾返回EOF,失败返回EOF -1。功能:从s所在的本地内存中获取一行数据,并写入stream对应的文件流对象。功能:向流中写入一个字符参数:c:要写入的字符 ,stream:文件流指针。man xxx == man 1 xxx ===>查看当前xxx命令。man 3 xxx ===》查看xxx对应的标准库函数。fgetc/fputc,,,,,,一个字符,
原创
发布博客 2024.08.06 ·
256 阅读 ·
3 点赞 ·
0 评论 ·
8 收藏

shell脚本

为类型是普通文本,d:目录,b:块设备(储存设备)c:字符设备,p:管道文件(用于共享一些文件)s:套接字。r(读)w(写)x(执行) 第一个为作者权限,第二个为组用户权限(有为r为1 , 无为-为0)``:将中间的字符串按照命令打印 (一般放命令)PATH:保存当前工作的默认路径(操作系统)echo '$a' (注意空格的输入)"":打印字符串,遇到$变量则打印变量中的值。'':打印字符串,遇到$变量依然打印$变量。$$:当前shell的PID。2.编写脚本(打印一般用echo)
原创
发布博客 2024.08.03 ·
908 阅读 ·
13 点赞 ·
0 评论 ·
6 收藏

共用体,位运算

除了可以用c提供的标准类型名和程序编写者自己声明的结构体,共用体,枚举类型外,还可以用typedef指定新的类型名来代替已有的类型名。按定义变量的方式,把变量名换上新的类型名,并且在最前面加typedef,就声明了新类型名代表原来的类型。注意:c语言编译时按定义时的顺序默认他们的值为0,故占四个字节与整型像兼容。枚举就是把可能的值一一列举出来,变量的值只限于列举出来的值的范围。什么是共用体:即共有一段内存空间,彼此之间相互覆盖。当空间内的成员不是同时作用时可节省空间。enum 【枚举名】【枚举元素列表】
原创
发布博客 2024.08.02 ·
282 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

结构体变量

链表是一种常见的重要的数据。链表有一个“头指针”变量,一般的head表示,它存放一个地址,该地址指向一个元素。可以看出,head指向第一个元素,第一个元素又指向第二个元素...直到最后一个元素,该元素不再指向其他元素,它称为“表尾”,它的地址部分放在一个“NULL”(表示“空地址”),链表到此结束。花括号内的是该结构体所包括的子项,称为结构体的成员。由于链表中各个元素的内存中的地址可以是不连续的,所以不能通过+i,来访问下一个地址。“成员列表”也称域表,每一个成员是结构体中的一个域。一.定义和使用结构体。
原创
发布博客 2024.08.01 ·
269 阅读 ·
5 点赞 ·
0 评论 ·
1 收藏
加载更多