自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(107)
  • 收藏
  • 关注

原创 已知结构体某一成员,如何获取该结构体

以上,找到了结构体中成员的偏移量为d,后序如果需要根据某成员的地址转换为结构体只需要执行。

2024-03-11 08:38:05 408

原创 signal linux

在真实的项目中,后台服务程序不受终端控制,常驻内存中,没有互交的界面。但是程序会产生数据周期性或通过时间唤醒的方式执行任务。(1)在指令后面+&符号(2)采用fork()函数,即创建一个进程执行程序。

2023-12-08 17:41:21 700

原创 vscode ssh报错 连接不到管道的一种可能的解决方法

在windows cmd中输入。后面的IP换成自己的即可。

2023-11-26 22:24:29 487

原创 c++线程池

【代码】c++线程池。

2023-11-23 10:32:35 145

原创 c++实现Any类,让一个类型指向其他任意类型

在c++中,对于以上任务,容易想到的是一个基类类型指向其所有派生类。因此设计一个Any类,其里面有一个成员基类Base类,其派生类可以是数据date,但是你不知道date到底是什么东西,所以需要使用模版。还需要一个public公有函数将数据类型取出来。之后将数据赋值给Any类。

2023-11-18 22:51:04 345

原创 虚函数与多态解析

virtual修饰的成员函数就是虚函数class MMpublic:cout

2023-11-18 10:30:10 77

原创 7、epoll边沿触发与反应堆

​ 有n个客户端,服务器就会有n个连接(n个客户端和连接端)。fill:#333;color:#333;color:#333;fill:none;客户端连接端epoll检测是可读事件还是可写事件服务器​ n:有可读事件(包括lfd)和可写事件。/*一个事件其是可以看成下面结构体的三个成员*/int cfd;read_cb();write_cb();​ 反应堆:一个IO对应多个事件。

2023-10-11 09:50:22 68

原创 6、epoll多路IO

优点:自带数组结构,可以将监听时间和返回事件集合​ 可以扩展监听上限(select监听上限无法修改,但是poll可以修改监听上限)缺点:不能跨平台,只能在linux下用​ 无法直接定位满足监听事件文件描述符,编码难度较大。

2023-10-11 09:48:39 64

原创 5、select多路IO转接

*nfds:监听的所有文件描述符当中最大的文件描述符的编号 + 1在select的内部有一个循环,循环的次数就是文件描述符的上限fd_set *readfds, fd_set *writefds, fd_set *exceptfds,均是传入传出参数exceptfds时异常事件*/在文件描述符表中,当程序启动时,默认被占用0启动被占用1启动被占用2启动被占用3lfd4cfd15cfd26cfd3​ 当客户端发送请求时,lfd需要读这个请求。

2023-10-11 09:46:43 60

原创 4、socket基础

在通信过程中,套接字使用时一定是成对出现的。套接字只要一个问价描述符,因为其有两个缓冲区,一个缓冲区用来读,另一个缓冲区用来写fill:#333;color:#333;color:#333;fill:none;文件描述符读缓冲区写缓冲区。

2023-10-11 09:45:49 76

原创 3、TCP状态

​ 通信双方中,只有一端关闭通信。//特殊的半关闭,只关闭读缓冲或者写缓冲或者都关。//shutdown在关闭多个文件描述符应用的文件时,采用全关闭方法,而close只关闭一个。

2023-10-11 09:44:51 629

原创 2、TCP协议基础

SYN表示建立连接的标志位,ACK为应答标志位fill:#333;SYN 1000(0)<mss,1460>(包号,(包携带的数据大小))<数据上限>SYN 8000(0),ACK 1001<mss 1024>(序号1001表示1001之前数据全部收到)以上三个箭头就是三次握手,accept和connect成功返回,表示三次握手已经成功。

2023-10-11 09:43:42 60

原创 2、TCP协议基础

SYN表示建立连接的标志位,ACK为应答标志位fill:#333;SYN 1000(0)<mss,1460>(包号,(包携带的数据大小))<数据上限>SYN 8000(0),ACK 1001<mss 1024>(序号1001表示1001之前数据全部收到)以上三个箭头就是三次握手,accept和connect成功返回,表示三次握手已经成功。

2023-10-11 09:42:57 59

原创 1、网络编程常见协议

​ TTL协议:time to live ,设置数据包在路由节点中的跳转上限,每跳转一次,该值减去一,减为0时,该数据包自动删除。路由表:记录着每个Ip地址对应的MAC地址,如果目标Ip地址存放在路由表中,就会应答,反之就会驳回。目的地址+源地址+帧类型+...+发送端以太网地址+发送端Ip地址+目的以太网地址+目的Ip地址。16位源端口号+16位目的端口号+32位序号+32位确认序号+6个标志位+16位窗口大小。C/S模型的优点就是B/S模型的缺点,C/S模型的缺点就是B/S模型的优点。

2023-10-11 09:41:53 95

原创 二叉树

int val;

2023-09-18 18:23:52 57

原创 哈希表

​ 哈希表中的常见使用情景,判断一个元素是否曾经出先在某个容器里。当需要用的容器较小时一般用数组。

2023-09-18 18:21:53 132

原创 字符串

要求:反转一个字符串,但是不能创建新的字符串。**思路:**定义一个头尾指针,不断交换。

2023-09-18 17:14:09 75

原创 《雷达像智能识别对抗研究进展》阅读记录

​ 依据攻击发生的阶段,对抗攻击可以分为逃避攻击和后门攻击后门攻击发生在模型的训练阶段,攻击者可篡改一部分训练数据或者对训练过程 进行恶意操纵,使模型对含有特定图案(称为触发 器)的图像样本预测为攻击者指定的类别,而对干净样本正常预测。​ 从物理实现的角度上看,光学图像的对抗扰动可通过相机拍摄实现由数字域向物理域的转换,而雷达像的对抗扰动则需要体现为目标回波的相干能量累积。​ 基于梯度的攻击沿着梯度上升的方向对干净的样本施加对抗扰动,使得新样本在模型上的损失函数值增大,以实现诱导模型误判的目的。

2023-08-13 23:15:02 374 1

原创 《线性调频雷达典型有源干扰抑制技术研究》阅读记录

SMSP和C&I距离假目标欺骗干扰识别和抑制方法研究 2012​ SMSP干扰是距离假目标新式干扰之一,它由多个子脉冲组成,每个子脉冲都是对雷达信号进行间隔采样产生的,因此可以在雷达接收端产生虚假目标,影响真实目标检测。传统的移频转发干扰由于他只能产生一个假目标导致不能有效的干扰PC雷达,所以SMSP对截取的雷达频率进行调制,产生一连串梳状假目标来欺骗雷达。

2023-08-13 22:10:40 725

原创 8、翻转链表

cout << "请输入" << n << "个链表值" << endl;即1→2→3→4→null改为null←1←2←3←4。//开始将初始化的指针后移动。

2023-08-12 13:17:16 145

原创 在数据链路层扩展以太网

不管网桥之间连接成了怎样复杂的带环拓排网桥之间通过交互网桥协议单元 (Bridge Protocol Data Unit,BPDU),找出原网络拓扑的一个连通子集 (即生成树),在这个子集里整个连通的网络中不存在环路。透明网桥中的“透明”,是指以太网中的各站点并不知道自己所发送的帧将会经过哪些网桥的转发,最终到达目的站点。也就是说,以太网中的各网桥对于各站点而言是看不见的。(2) 如果网桥收到一个无误码的广播帧,则不用进行查表,而是直接从除接收该广播帧的接口的其他接口转发该广播帧。

2023-08-10 14:16:41 119

原创 物理层扩展以太网

以太网集线器一般具有8~32个接口,如果要连接的站点数量超过了单个集线器能够提供的接口数量,就需要使用多个集线器,这样就可以连接成覆盖更大范围、连接更多站点的多级星型以太网。采用多个集线器连接而成的多级星型以太网,在扩展了网络覆盖范围和站点数量的同时,也带来了一些负面因素。在物理层扩展的共享式以太网仍然是一个碰撞域,其会现大量的碰撞,导致平均吞吐量太低。为站点和集线器各增加一个用于电信号和光信息号转换的光纤调制解调器,以及他们之间的通信光纤。

2023-08-09 21:17:58 154

原创 共享式以太网的退避算法

在使用CSMA/CD协议的共享总线以太网中,正在发送顿的站点一边发送顿一边检测碰撞,当检测到碰撞时就立即停止发送,退避一段随机时间后再重新发送。上面的k是重传次数,当k=16时,说明打算同时发送的帧的站点太多,以至于连续产生碰撞,此时应放弃并向高层报告。截断二进制指数退避算法:退避时间=基本退避时间。

2023-08-09 20:49:13 204

原创 共享式以太网的争用期

从争用期的概念可以看出,共享总线以太网上的每一个站点从发送帧开始,到之后的一小段时间内都有可能遭遇碰撞,而这一小段时间的长短是不确定的,它取决于另一个发送帧的站点与本站点的距离但不会超过总线的端到端往返传播时延,即一个争用期。由于发送帧的站点边发送帧边检测碰撞,一旦检测到碰撞就立即中止帧的发送,此时已发送的数据量一定小于64B。为了确保共享总线以太网上的每一个站点在发送完一个完整的帧之前,能够检测出是否产生了碰撞帧的发送时延就不能少于共享总线以太网端到端的往返时间,即一个争用期。就会检测到碰撞,此时。

2023-08-09 20:24:14 450

原创 CSMA/CD协议原理

发送帧的站点一旦检测到碰撞,除了立即停止发送帧外,还要再继续发送32比特或48比特的人为干扰信号(Jamming Signal),以便有足够多的碰撞信号使所有站点都能检测出碰撞。在使用CSMA/CD协议时,由于正在发送帧的站点必须“边发送帧边检测碰撞”进行发送和接收,也就是不可能进行全双工通信,而只能进行半双工通信(双向交替通信)。当某个站点在总线上发送顿时,此时,如果总线上的其他站点也要在总线当某个站点在总线上发送顿时上发送顿,就会产生信号碰撞。此时,停止发送帧,退避一段随机时间后,进行载波监听。

2023-08-09 19:50:14 421

原创 网络适配器和MAC地址

在每个主机发送的帧的首部中,都携带有发送主机(源主机)和接收主机(目的主机)的数据链路层地址。嗅探器 (Snifer)就是一种工作在混杂方式的网卡,再配合相应的工具软件 (WireShark),就可以作为一种非常有用的网络工具来学习和分析网络。工作在混杂方式的网卡混杂方式 (Promiscuous Mode)只要收到共享媒体上传来的帧就会收下,而不管帧的目的MAC地址是什么。当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,则每个主机都必须有一个唯-的标识,即一个数据链路层地址。

2023-08-09 18:04:14 280

原创 点对点协议PPP

点对点协议PPP(Point-to-Point Protocol)是目前使用最广泛的点对点数据链路层协议。出现的每一个ASCII码控制字符(数值小于0x20的字符),则在该字符前面插入一个7D字节,同时将该字符的编码加上0x20。控制(Control)字段: 取值为0x03,预留 (目前没有什么作用)地址(Address)字段: 取值为0xFF,预留(目前没有什么作用)出现的每一个7E(PPP的定界符)字节转变成2字节序列 (7D,5E)出现的每一个7D (转义字符)字节转变成2字节序列 (7D,5D)

2023-08-09 17:07:05 82

原创 可靠传输-选择重传协议SR

因此,接收窗口的尺寸WR不应再等于1 (而应大于1),以便接收方先收下失序到达但无误码并且序号落在接收窗口内的那些数据分组,等到所缺分组收齐后再一并送交上层。一个数据分组的误码就会导致其后续多个数据分组不能被接收方按序接收而丢弃 (尽管它们无乱序和误码)。发送方接收ACK4和ACK5后,窗口并不会向后滑动,因为少了ACK2。发送窗口接收ACK3,但是窗口并不能向后滑动,因为ACK3并非按序接收(少了ACK2)。发送方接收到ACK0和ACK1,窗口向后滑动两位。因此,接收方的接收窗口应该大于1。

2023-08-09 16:30:01 369

原创 可靠传输-回退N帧协议

发送方一次发送5个数据:1 0 7 6 5(5最先发送,所以最先到达),假设此时第5号元素误码(下图2),那么就会将5丢弃(下图3),那么此时 1 0 6 7 也与接收序号5 对不上(下图4),所以就会发送ACK4,表示之间确实收到的最后一个正确数据分组编号为4,那么有4个对不上,就会连续发送4次。在本例中,尽管序号为6,7,0,1的数据分组正确到达接收方,但由于5号数据分组误码不被接受,它们也“受到牵连”而不被接受,发送方还要重传这些数据分组,这就是所谓的Go=back=N (回退N)。

2023-08-09 16:08:56 334

原创 可靠传输概述——停止-等待协议

使用差错检测技术(例如循环冗余校验CRC),接收方的数据链路层就可检测出帧在传输过程中是否出现了误码。此时有:不可靠传输服务:仅仅丢弃有误码的帧,其他什么也不做可靠传输服务: 想发送端发送什么,接收端就收到什么一般情况下,有线链路误码率比较低,使用不可靠传输服务,而无线链路误码率高,因此数据链路层必须向上提高可靠传输服务。传输差错包括:比特差错,分组丢失,分组失序(先发送的分组未必先到达),分组重复(如果某个分组在传输渠道中滞留时间过长,此时发送方就会在发送一次这个分组)等。

2023-08-09 12:46:20 173

原创 数据链路层概述

下图为封装成帧的情况。依照帧的首部和尾部标志位识别出帧的开始和结束的过程叫做帧定界。接收机接收到的数据根据标志字识别出帧的首部和尾部来区分两个帧。但是当数据载荷部分有(PDU)有和帧尾部和帧首部时,会导致识别出的帧的错误,这一问题为透明传输问题差错检测:(如何知道帧中出现了误码)提出一种检错码,将帧的内容计算为一个检错码。判断接收帧和发送帧的检错码是否相同。

2023-08-09 11:21:22 77

原创 7、设计链表

【代码】设计链表。

2023-08-08 23:29:19 95

原创 6、移除链表元素

首先判断头节点是否是待删除元素。(头节点和其他节点的删除方法不一样)增加一个虚拟头节点,如果删除的是头节点,那么直接删除就行。

2023-08-08 22:58:42 144

原创 5、螺旋矩阵

螺旋矩阵是指一个呈螺旋状的矩阵,它的数字由第一行开始到右边不断变大,向下变大,向左变大,向上变大,如此循环。

2023-08-08 22:32:02 219

原创 4、长度最小的子数组

找到一个数组中,有多少个连续元素的和小于某个值,求出连续元素的长度的最小值。

2023-08-07 23:31:15 88

原创 3、有序数组的平方

有一个有序数组从大到小排列:-10 -5 1 2 3 4,将他们的每一项平方,然后再形成新的有序数组。

2023-08-07 22:49:57 154

原创 2.移除元素

如果有一个数组 1 2 3 4 5,如果想要删除3,就是要把4往前移动一位,把3覆盖掉,然后把5在往前移一位把4覆盖掉。注意:erase函数的时间复杂度是而不是O(1)。最简单的方法是暴力实现:两次for循环,第一次找到并删除元素,第二次将数组元素前移。

2023-08-07 22:35:38 106

原创 1、二分搜索法

1.left是小于right还是小于等于right2.更新的时候是更新到mildle还是midle-13.区间是 [left,right] 还是 [left,right),对区间的定义不同会影响到边界的处理。

2023-08-05 21:53:24 136

原创 EMD经验模态分解介绍

EMD会产生模态混叠现象,即一个IMF的信号频带会很宽,涵盖了低频和高频信号,实际中,我们希望某一个IMF信号的频带尽可能集中。EEMD(ensemble empirical mode decomposition)由于白噪声的尺度特征在整个时频域上均匀分布,进行EMD分解时,各种尺度特征中都会含有白噪声的成份。如果给信号添加白噪声后进行分解,那么信号含有的某种尺度特征,会被分解到与白噪声相对应的尺度特征上去。

2023-08-05 20:54:21 805

原创 信道的容量和复用

当信道质量比较差时,输出信号的波形难以识别,此时出现的现象称为码间串扰“失真的因素有:码元传输速率,信号传输距离,噪声干扰,传输媒体质量等。理想低通速度的最高码元传输速率为:2W Baud,理想带通信号的最高码元速率为W Baud其中W指的是信道带宽,Baud是指波特,即,码元/s。当一个码元携带1Bit信息时,波特率等于比特率。要提高信息传输速率,就要让一个码元能携带更多个比特信息。实际上信道所能传输最高的码元速率,明显低于奈奎斯特准则信道的极限容量还要受限于噪声:CWlog。

2023-07-09 13:22:18 301

四、QT实现图形界面对数据库的操作

四、QT实现图形界面对数据库的操作

2023-06-10

QT数据库的简单使用,命令行操作

QT数据库的简单使用,命令行操作

2023-06-09

QT:小型视频播放器,用于播放视频

QT:小型视频播放器,用于播放视频

2023-06-09

QT小项目-雷达界面(三)绘制扫描效果

QT小项目-雷达界面(三)绘制扫描效果

2023-06-08

QT串口调试小助手简单的对应代码

QT串口调试小助手简单的对应代码

2023-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除