- 博客(17)
- 收藏
- 关注
原创 QML 中利用 Context2D 绘制圆形
/绘制圆弧 arc(x , y , radius , startAngle , endAngle , anticlockwise) /*参数解释:x (Number): 圆弧的中心点的 x 坐标y (Number): 圆弧的中心点的 y 坐标radius (Number):圆弧的半径startAngle (Number):圆弧的起始角度(以弧度为单位)endAngle (Number):圆弧的结束角度(以弧度为单位)
2025-01-03 14:21:52
170
原创 QML语法入门
Item {width: 200// 定义一个自定义信号,带有一个字符串参数width: 200//处理鼠标交互// 触发自定义信号,并传递参数")自定义信号:通过 signal 关键字定义信号,然后在适当的时机使用 clicked() 或 signalName()语法发射信号,传递所需的参数。连接信号和槽:使用 onsignalName语法来处理信号,可以在其他组件中接收信号并执行相应的逻辑。模拟自定义事件:通过MouseArea。
2025-01-03 13:48:55
715
原创 【问题解决】Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
新增 find_package(PythonInterp)
2024-09-20 09:55:38
608
1
原创 DPDK环形缓冲区——ringbuf
环形缓冲区(ringbuf)是DPDK中的一个关键组件,主要用于在不同线程和进程间无锁传递数据,以实现高速数据访问。
2024-08-08 13:33:53
586
原创 DPDK实现TCP/IP协议(三)---丢包
序列号分析:通过分析序列号和确认号来识别丢包。如果一个具有较高序列号的数据包在具有较低序列号的数据包之前到达,就可以推断出有数据包丢失。检测重复ACK:当发送方收到连续三个或以上的重复ACK时,它假定数据包丢失。ACK超时:为期望的数据包设置超时。如果数据包在指定时间内未到达,则认为其丢失负确认(NACK):使用NACK来显式地指示丢失的数据包,当检测到序列中断时发送NACK根据序列号// 丢包检测逻辑i < nb_rx;i++) {// 提取IP头部。
2024-08-05 16:17:08
614
原创 DPDK实现TCP/IP协议(二)--拥塞控制
DPDK主要用于在用户空间加速数据包处理。DPDK可以通过其提供的加速数据包处理能力来构建自己传输层协议或优化现有协议。DPDK本身并不提供拥塞控制机制,但可以使用DPDK来实现现代化的拥塞控制算法,结合传统TCP/IP协议栈,加速数据包的发送和接收。
2024-08-04 17:37:05
304
2
原创 DPDK实现TCP/IP协议(一)----组包
在DPDK中,采用struct rte_ether_hdr定义以太网协议头。以下是DPDK中以太网头的结构体。DPDK中IP协议头的结构体。DPDK中IP协议头的结构体。
2024-08-03 15:21:22
1030
原创 DPDK实现数据包的收发
DPDK(Data Plane Development Kit)允许应用程序直接访问网卡,从网卡数据缓冲区获取数据。1.配置hugepage。
2024-08-02 20:21:25
947
原创 DPDK简单配置启动示例
分配一组数据包缓冲区,并使用 rte_eth_tx_burst 函数一次性发送这些数据包。配置第一个可用的以太网设备 (port_id = 0) 的接收和发送队列。该结构体包含多个字段,用于描述以太网设备的配置信息。该结构体包含多个字段,用于描述接收队列的配置信息。– max_rx_pkt_len: 最大接收数据包长度。成功时返回指向创建的内存池的指针,失败时返回 NULL。– split_hdr_size: 拆分的头部大小。配置第一个以太网设备的发送队列。配置第一个以太网设备的接收队列。
2024-07-21 16:42:54
1057
原创 hugepage配置
由于hugepagesz 默认为2M,需要修改hugepagesz >2M ,GRUB_CMDLINE_LINUX后需要增加参数default-hugepagesz=1G修改默认hugepagesz ,否则可能无法分配hugepages。以hugepagesz = 1G hugepages=10为例,hugepagesz * hugepages = 10G =10240M,需要10G的内存空间,实际只能分配出5个hugepage。查看可用的内存大小,以M为单位。当内存free空间等于5891时。
2024-07-19 17:21:48
514
原创 问题解决:dpdk-19.08.02编译报错
这个原因是由于找不到pci_set_dma_mask函数。可用命令检查uname -r内核版本是否支持。
2024-07-17 23:55:45
450
原创 问题解决:gcc: error: unrecognized command-line option ‘-ftrivial-auto-var-init=zero’
问题解决
2024-07-16 00:58:24
1287
原创 问题解决:error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
问题解决
2024-07-16 00:05:22
350
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人