自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (8)
  • 收藏
  • 关注

原创 一、Docker 入门-制作hello docker镜像

Docker是一个开源的容器化平台,可以让开发者将应用程序打包成轻量、可移植的容器中,以便在任何地方运行,无论是在本地开发机器上,还是在公共云、私有云或物理服务器上。使用Docker,开发者可以创建、运行和管理应用程序及其依赖项,同时还可以确保应用程序在不同环境中的一致性和可重复性。Docker容器是一种轻量级的虚拟化技术,它在操作系统级别隔离了应用程序和其依赖项。与传统的虚拟机不同,Docker容器不需要启动整个操作系统,而只需要启动容器本身和它所依赖的一些组件,因此它们非常快速、高效、可移植和可扩展。

2023-04-14 16:58:37 441

原创 使用rpm发布软件版本

使用make rpm发布版本,实例可用

2023-03-09 16:18:43 333

原创 Netfilter实战一数据包的捕获

  通过上文Netfilter介绍的了解到,Netfilter是通过注册钩子函数来将我们的代码加入Netfilter的处理机制中,我们首先需要了解各个钩子点的含义,PRE_ROUTING、LOCAL_IN、FORWARD、LOCAL_OUT和POST_ROUTING是Netfilter钩子点。它们是在Linux内核网络协议栈中定义的五个特定点,用于处理网络数据包的不同阶段。以下是它们的详细介绍:  以上代码定义了一个hook_func函数,该函数将被注册到NF_INET_PRE_ROUTING钩子点,当有

2023-03-07 15:12:13 978 2

原创 Linux网络数据包处理Netfilter(hook)

  Netfilter是一个用于Linux操作系统的网络过滤框架,它提供了一种在Linux内核中处理网络数据包的机制。Netfilter允许Linux管理员通过定义一组规则来控制网络数据包的流动,例如阻止或允许某些IP地址或端口的数据包通过。这种过滤机制可以用于网络安全、流量控制和网络监控等应用。Netfilter的核心是iptables,它是一个命令行工具,可用于在Linux系统中配置Netfilter规则。iptables提供了一组命令,使管理员可以定义、修改、删除和显示规则集。这些规则集可以被用于控

2023-03-07 14:23:14 987

原创 ChatGPT介绍

ChatGPT是一种基于人工神经网络和自然语言处理技术的大型语言模型,由OpenAI公司开发。它的目标是模拟人类的对话方式,并能够生成准确、流畅、自然的文本响应。ChatGPT是建立在Transformer模型上的,它通过处理大量的自然语言数据,学习自然语言的规则和模式,并能够生成与给定输入相匹配的响应。ChatGPT可以用于各种应用场景,包括自动问答系统、聊天机器人、语言翻译、文本摘要等。它可以从各种来源中获取知识,并能够根据输入的问题或请求提供相关的答案或响应。

2023-03-05 10:52:52 22497

原创 Tcpdump命令介绍

TCPdump是一种在Unix/Linux系统下运行的命令行网络抓包工具。它能够截获数据包并将其以文本形式输出,用户可以使用各种过滤器对数据包进行筛选,从而实现对网络流量的监控、分析和故障排除等功能。TCPdump常用命令:1、tcpdump -i:指定抓取的网络接口。2、tcpdump -c:指定抓取的数据包数量。3、tcpdump -n:不解析IP和端口号。4、tcpdump -s:设置抓包的数据包大小。5、tcpdump -X:以十六进制和ASCII码形式输出数据包内容。

2023-03-04 17:39:19 7816

原创 用python批量插入clickhouse

clickhouse_driver模块还提供了其他一些高级特性,如批量插入、异步查询等,可以根据实际需求进行选择和使用。在这个例子中,我们首先创建一个ClickHouse连接对象,并通过execute()方法执行SQL语句创建了一个测试表。然后,我们使用Python内置的random模块生成了1000个随机数据,以元组的形式保存在data列表中。最后,我们通过execute()方法和SELECT语句进行了一次分布式查询,返回了插入的数据总数,并打印到了控制台上。

2023-03-04 17:25:14 2618

原创 一个简单的click house程序

演示如何编写一个使用clickhouse程序,包括编译、执行等,以及代码讲解

2023-03-04 17:18:42 174

原创 clickhouse介绍以及安装

click house数据库介绍以及安装

2023-03-04 17:05:07 1948

原创 简单hash table的实现和讲解

hash table入门 数据结构讲解

2023-03-04 10:54:20 326

原创 安装DPDK库

高性能网络架构DPDK安装

2023-03-03 18:09:07 554 1

原创 使用DPDK抓包

使用DPDK抓包简单例子

2023-03-03 17:57:48 1092 1

原创 linux原始套接字抓取网络数据包

基于linux的抓包一、获取数据    当我们在做网络安全或者数据探测等工作经常会用到抓包、熟悉的工具有tcpdump、wireshark等,这里我们介绍如何使用C程序原始套接字在linux系统上抓取IP链路层数据包。    首先我们先熟悉一个非常重要的函数socket,我们可以通过linux的man手册找到socket函数描述#include <sys/socket.h> int socket(int domain, int type, int protocol)

2020-06-20 13:28:36 3207 1

原创 oracle数据库客户端工具sqlplus安装与使用

oracle数据库客户端工具sqlplus安装与使用oracle数据库客户端工具有很多,例如sqlplus、sql developer、pl/sql developer Navicat toad等等。其中sqlplus是oracle自带的客户端工具,本文介绍sqlplus的安装和使用。下载下载sqlplus需要去oracle官网【点击进入】下载oracle客户端工具和sqlplus工具,如...

2018-09-28 11:39:52 17387 1

eBPF从程序员角度出发中文翻译

eBPF - 程序员视角下的介绍 摘要: eBPF允许软件开发人员编写在内核中执行的程序,而不需要重新编译和系统重启。当调用内核函数时,这些程序可以收集关键性能指标。在本文中,我们将使用libbpf描述和讨论eBPF的体系结构以及其核心组件。我们将研究eBPF程序与典型用户空间C程序之间的关键区别。最后,我们将探讨eBPF的一些真实世界用例。然而,本文不会讨论性能数据或正式证明。本文仅是对阅读eBPF教材、博客文章、eBPF样本和内核代码的无数小时的总结。

2023-03-20

我们应该怎么发明一个专利

主要介绍了在我们没有想法,但是需要发明一个专利的时候该怎么做,通过提供的思路,以及例子,希望打开你的思维 当谈到创新性和发明性,专利申请是一项非常重要的过程。专利申请可以为您的创新提供法律保护,使您在市场上获得竞争优势。但是,发明一个专利需要从哪里入手呢? 首先,您需要识别一个问题或挑战,它可以是您个人经验中的实际问题,也可以是市场上存在的问题。然后,您需要收集创意搜集,了解目前的技术和市场状况。通过初步评估,您可以确定创意的技术可行性和商业价值。接下来,您需要进行研发和验证,设计和开发出具有创新性的技术方案,并验证其技术可行性和实际效果。最后,如果您的方案证明是可行的,那么可以考虑申请专利。 在专利申请时,您需要了解专利的法律要求和申请程序。您需要确保您的创意足够创新和独特,同时还需要考虑商业价值和市场需求等方面的因素。通过这些步骤,您可以成功地发明一项专利,并在市场上获得竞争优势。 总之,发明一个专利需要一定的技术知识和市场认识,需要经过系统的步骤和过程,但是如果您能够掌握这些技能,那么您就可以实现一项具有创新性的技术方案,并在市场上获得成功。

2023-03-04

udp透传服务端Python

一个由python实现的udp服务端透传程序 UDP(User Datagram Protocol)是一种传输层协议,它与TCP(Transmission Control Protocol)一样,用于在网络上传输数据。与TCP不同的是,UDP是一种无连接协议,它不需要建立连接就可以直接向目标主机发送数据包。这种特性使得UDP具有较高的效率和速度,特别适合实时传输数据的应用场景,如音视频流媒体、在线游戏等。 在这样的背景下,您编写的Linux UDP服务端可以用来处理客户端发送过来的UDP数据包,并给客户端返回响应数据。作为一个简单的UDP服务端,它可以为开发人员提供一个基础框架,用于实现各种网络应用程序。例如,您可以利用它来实现一个简单的网络聊天室、一个在线文件共享系统,或者一个基于UDP协议的在线游戏服务器。 值得一提的是,您的UDP服务端在Linux系统上实现,这意味着它可以运行在众多不同类型的设备和服务器上,包括嵌入式设备、智能家居、云服务器等等。这样的通用性和灵活性使得您的UDP服务端具有广泛的应用前景和市场需求。 总之,您编写的Linux UDP服务端可以为开发人员提供

2023-03-04

udp透传服务c语言实现

udp实现的一个服务端,接收什么返回什么,简单的透传程序 UDP(User Datagram Protocol)是一种传输层协议,它与TCP(Transmission Control Protocol)一样,用于在网络上传输数据。与TCP不同的是,UDP是一种无连接协议,它不需要建立连接就可以直接向目标主机发送数据包。这种特性使得UDP具有较高的效率和速度,特别适合实时传输数据的应用场景,如音视频流媒体、在线游戏等。 在这样的背景下,您编写的Linux UDP服务端可以用来处理客户端发送过来的UDP数据包,并给客户端返回响应数据。作为一个简单的UDP服务端,它可以为开发人员提供一个基础框架,用于实现各种网络应用程序。例如,您可以利用它来实现一个简单的网络聊天室、一个在线文件共享系统,或者一个基于UDP协议的在线游戏服务器。 值得一提的是,您的UDP服务端在Linux系统上实现,这意味着它可以运行在众多不同类型的设备和服务器上,包括嵌入式设备、智能家居、云服务器等等。这样的通用性和灵活性使得您的UDP服务端具有广泛的应用前景和市场需求。 总之,您编写的Linux UDP服务端可以为

2023-03-04

linux udp server简单c代码

这是一个udp server,可以直接编译运行 UDP(User Datagram Protocol)是一种传输层协议,它与TCP(Transmission Control Protocol)一样,用于在网络上传输数据。与TCP不同的是,UDP是一种无连接协议,它不需要建立连接就可以直接向目标主机发送数据包。这种特性使得UDP具有较高的效率和速度,特别适合实时传输数据的应用场景,如音视频流媒体、在线游戏等。 在这样的背景下,您编写的Linux UDP服务端可以用来处理客户端发送过来的UDP数据包,并给客户端返回响应数据。作为一个简单的UDP服务端,它可以为开发人员提供一个基础框架,用于实现各种网络应用程序。例如,您可以利用它来实现一个简单的网络聊天室、一个在线文件共享系统,或者一个基于UDP协议的在线游戏服务器。

2023-03-04

简单的linux udp client客户端

一个可以直接编译运行的linux udp客户端,给你轮子,你不用再造了 在网络编程中,UDP是一种重要的协议,其具有传输速度快、实时性强等优点。如果你想了解如何通过C语言编写Linux下的UDP客户端,那么这篇文章就是为你准备的。在这篇文章中,我们将讲解UDP协议的概念以及UDP客户端的实现过程。我们将带你逐步了解如何使用C语言编写一个简单的UDP客户端,向指定的IP地址和端口号发送数据,并接收来自服务器的响应信息。本文旨在帮助初学者了解Linux网络编程的基础知识,并为有经验的开发人员提供参考。 本文介绍的Linux UDP客户端代码是一份简单的示例代码,适用于初学者学习网络编程时练手和实践。通过这个示例代码,读者可以学习到UDP协议的基本概念和原理,以及如何使用Linux系统调用函数创建、配置和发送UDP数据包。

2023-03-04

x86架构汇编指令介绍

文中介绍了汇编指令add, sub, mul, div, inc, dec, cmp, and, or, xor, not, shl, shr, rol, ror, jmp, call, ret, push, pop, mov, lea, nop, xchg, test, fld, fst, fadd, fsub, fmul, fdiv, fist, fistp, fxch, fcom, fcomi, fcomip, fclex, fstsw, cmova, cmovae, cmovb, cmovbe, cmovc, cmove, cmovg, cmovge, cmovl 汇编语言是计算机程序员需要学习的重要基础,而X86汇编语言更是在计算机领域占据着举足轻重的地位。X86架构已经广泛应用于个人计算机、服务器、工控等各个领域。本文将介绍X86汇编语言中的指令,包括基本指令、数据传输指令、算术指令、逻辑指令、条件跳转指令等,读者可以通过本文快速了解X86汇编语言中各个指令的含义和使用方法。无论您是刚刚接触汇编语言的初学者,还是已经具备一定汇编语言基础的高手,本文都将为您提供一定的帮助。

2023-03-04

x86架构常见寄存器介绍

介绍了一些X86常见的寄存器,帮助分析程序,在碰到需要分析性能或者程序的时候将大大的帮助你 比如:EAX、EBX、ECX、EDX、EDI、ESI、EBP、ESP 、CS、DS、ES、FS、GS、SS、EFLAGS RAX、RBX、RCX、RDX、RSI、RDI、RSP等,希望通过这些寄存器的说明帮你对代码汇编后有更深层次的了解。 汇编语言是一种底层语言,它可以直接操作计算机硬件,实现高性能的计算和操作。在计算机系统中,CPU寄存器是存储数据和指令的重要组成部分。对于Intel x86处理器,寄存器分为通用寄存器、段寄存器、标志寄存器、控制寄存器等多种类型。其中,通用寄存器是最常用的寄存器类型,包括16位、32位和64位三种不同大小的寄存器。这些寄存器具有多种用途,可以用来存储临时数据、指针、计数器等。在64位x86处理器中,还新增了8个64位的通用寄存器,可以更有效地支持大数据操作和高性能计算。 如果你对底层原理和计算机体系结构感兴趣,那么学习汇编语言将是一次很有意义的体验。掌握汇编语言可以让你更深入地理解计算机是如何工作的,对于系统级编程、驱动开发、反汇编和调试等方面都有很大的

2023-03-04

mini2440之U-boot移植详细手册

mini2440之U-boot移植详细手册,想学u-boot看看这个吧

2013-03-22

项目组长的经验

苦逼的程序员们想成为项目组长的,这个必看.

2013-03-22

Qt中文手册

Qt初学文档..手把手教你学Qt让你快速学通Qt

2011-12-04

用Eclipse平台进行C_C++开发

用Eclipse平台进行C_C++开发

2011-12-04

C语言深度解剖

关于c的理解.让你更快的理解c

2011-12-04

WIN AVR 手册

在avr studio用C写程序的代码示例。希望对你有用(自己在网上找的资源与大家分享)

2011-10-03

AVR中断向量表

AVR ATmega16中断向量表 单片机程序开发的资料

2011-10-03

cAT mega16 AVR单片机

cAT mega16 AVR单片机 AVR 单片机c编程 cAT mega16 AVR单片机 AVR 单片机c编程

2011-08-23

空空如也

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

TA关注的人

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