• 2024-09-29DHT11
    DHT11前面一直在讲串口类设备,今天讲IO类设备,不同的接口方式目录DHT11查资料文档的梳理代码编写初始化(时钟、IO、其他)单总线的读取流程1、主机发送复位信号2、DHT11响应信号3、数据传输4、校验数据5、数据获取main.c补充:stlink有个调试的功能-tip:可以适当的总
  • 2024-09-24排查Linux中free -h 显示的 available 小于 free 值
    一、服务器上使用free-h命令显示如下 正常情况下:total=free+used+buff/cacheavailable=free+可回收的buff/cache理论上 available至少应该等于free,free尚未使用内存,available:可用内存,可用内存=尚未使用内存+可回收的buff/cache但是上面显示的available大大小于free值。
  • 2024-09-21linux 系统是如何收发数据包
    目录1.背景1.1协议栈的构成1.应用层:2.Socket层:3.传输层(TCP/UDP):4.网络层(IP):5.数据链路层(MAC):6.物理层(网卡驱动):1.2数据包的组成2.接收网络数据包的流程2.1数据包接收流程概述2.2详细步骤说明2.2.1网卡接收数据包2.2.2触发硬件中断
  • 2024-09-18java class
    cstdioimportjava.util.Scanner;classRead{//ilikeC++getchar()foreverQwQ!!!//idon'tknowwhyjavascannerdonothavethatQAQ!!!staticScannersc;staticStringbuff;staticintbufP;Read(){sc=new
  • 2024-09-04实现TCP收发信息和UDP收发信息
    1.TCP通信服务器端#include<myhead.h>#defineSERPORT6666#defineSERIP"192.168.0.136"#defineBACKLOG5intmain(intargc,constchar*argv[]){ intoldfd=socket(AF_INET,SOCK_STREAM,0); if(oldfd==-1) { perror("socket"); retu
  • 2024-08-28基于STM32的ThingsCloud平台应用
    1.简介  ThingsCloud是新一代物联网设备统一接入平台,帮助企业在极短的时间内搭建个性化的物联网平台和应用,并适应不断变化的发展需求。目前广泛应用于制造、电力、能源、环境、农业、楼宇、家居、教育、交通、物流、自动化等领域。  ThingsCloud可接入各类网关,传感
  • 2024-08-24第12章 网络 (2)
    目录12.5网络命名空间12.6套接字缓冲区12.6.1使用sk_buff管理数据12.6.2管理套接字缓冲区数据本专栏文章将有70篇左右,欢迎+关注,查看后续文章。12.5网络命名空间一个网卡可能只在某个特定命名空间可见。struct  net:        表示一个网络命名空间,
  • 2024-08-19C++ 获取Linux 服务器CPU占用率+内存空闲率(亲测绝对可以运行)
    转自:C++获取Linux服务器CPU占用率+内存空闲率(亲测绝对可以运行)-远征i-博客园(cnblogs.com)代码来自网络,部分修改,亲测绝对可用C++:#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>#include<unistd.h>usingnamespacestd;type
  • 2024-08-15libarchive库笔记:tar.gz格式压缩文件编程
    libarchive,一个支持多种格式的压缩和归档的C语言库,包含常见的tar、cpio和zcat命令行工具的实现。本文展示一个libarchive库C语言编程的tar.gz格式压缩文件示例。简单代码示例:#include<stdlib.h>#include<stdio.h>#include<string.h>#include<fcntl.h>#include"arch
  • 2024-08-08网卡与Linux网络结构(上)
    原本是想借着之前学习的中断进一步拓展到网卡与中断的,标题都写好了,结果低估了其中的知识面和难度。。。。。于是调整为了网卡与Linux网络结构(上),没错,仅仅只是上。。。我还是进一步低估了学习需要花费的时间,网络这块的确是弱项,以前都是死记硬背TCP的三次握手、四次挥手,这次正好
  • 2024-08-04编写一个程序打开两个文件。可以使用命令行参数或提示用户输入文件名. a.该程序以这样的顺序打印:打印第一个文件的第一行,第二个文件的第一行,第一个文件的第二行,第二个文件的第二行,以此类推,打印到行数
    /编写一个程序打开两个文件。可以使用命令行参数或提示用户输入文件名.a.该程序以这样的顺序打印:打印第一个文件的第一行,第二个文件的第一行,第一个文件的第二行,第二个文件的第二行,以此类推,打印到行数较多文件的最后一行b.修改程序,把行号相同的行打印成一行/#include<stdio.
  • 2024-07-29ctype.h库中的分类函数
    /*ctype.h库中的分类函数*/#include<stdio.h>#include<ctype.h>intget_char(char*buff){charch;inti=0;while((ch=getchar())!='\n'){buff[i++]=ch;}returni;}voidprintf_ctype(charch){if(is
  • 2024-07-29Linux——进程间通信
    一、进程间通信介绍目的数据传输:一个进程需要将它的数据发送给另一个进程。资源共享:多个进程之间共享同样的资源通知事件:一个进程需要向另一个进程或一个组发送消息,通知它(它们)发生了某种事件进程控制:有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够
  • 2024-07-19[C++初阶]deque的讲解
    1.deque介绍          Deque是双端队列的不规则缩写。双端队列是具有动态大小的序列容器,可以在两端扩展或收缩。特定的库可能以不同的方式实现deque,通常是某种形式的动态数组。在任何情况下,它们都允许通过随机访问迭代器直接访问单个元素,并根据需要通过扩展和收缩
  • 2024-07-19buffer/cache(buff/cache)占用过高
    简述buffer/cachebuffer在Linux中指buffercache,中文一般读作“缓冲区”。理解缓冲区要理解“扇区”和“块”。●扇区:设备的最小寻址单元,也读作“硬扇区”或“设备块”。●块:操作系统中文件系统的最小寻址单元,也读作“文件块”或“I/O块”。●每个块包含一个或多个扇区,但
  • 2024-07-17自己实现sprintf功能,用于把三个float转换成字符串格式,速度比sprintf快了20倍
     float转字符串使用sprintf太慢了,自己实现sprintf功能,用于把三个float转换成字符串格式,速度比sprintf快了20倍!运行结果如下图:例程:#include<stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>#defineRUN_COUNT10000000//运行次数/*实现sprin
  • 2024-07-14数据结构与算法分析实验7 构造哈夫曼树和生成哈夫曼编码
    文章目录1.上机名称2.上机要求3.上机环境4.程序清单(写明运行结果及结果分析)4.1程序清单4.1.1head.h头文件内容如下:4.1.2head.cpp实现文件内容如下:4.1.3源文件main.cpp内容如下:4.2程序运行结果5.上机体会1.上机名称构造哈夫曼树和生成哈夫曼编码2.上机
  • 2024-07-12manim学习笔记04:使用manim,表示向量和加法。
    manim学习笔记04:使用manim,表示向量和加法。一,相关定义1.有向线段:规定若线段AB的端点为起点为A,B为终点,则线段就具有了从起点A到终点B的方向和长度。具有方向和长度的线段叫做有向线段。接下来我们体会一下相关的代码:classVectorArrow(Scene):defconstruct(self):
  • 2024-07-08编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数, 在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息
    /编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。只要结果,别输出什么提示信息。/#include<stdio.h>#include<string.h>#include<ctype.h>intfun(char*buff){intsum=0;while(*buff
  • 2024-07-05safe_shellcode
    [HNCTF2022Week1]safe_shellcode思路下载附件,名称为shellcoder,很明显的shellcode提示。判断题目解法可能是shellcode利用常规流程查看保护发现存在NX保护,但是让我们以shellcode的思路去解题,则可能存在修改权限的函数mprotectida打开分析分析代码,发现存在一个mprotect函
  • 2024-07-02请编写函数fun,该函数的功能是:统一一含字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入, 规定所有单词由小写字母组成,单词之间由若干个空格格开,一行的开始没有空格
    /请编写函数fun,该函数的功能是:统一一含字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格格开,一行的开始没有空格。/#include<stdio.h>#include<time.h>#include<stdlib.h>#defineN200intfun(char*buff)
  • 2024-06-23Linux 7种 进程间通信方式
    传统进程间通信       通过文件实现进程间通信必须人为保证先后顺序       A--->硬盘--->B(B不知道A什么时候把内容传到硬盘中)1.无名管道2.有名管道3.信号IPC进程间通信4.消息队列5.共享内存6.信号灯集7.socket通信一、无名管道(亲缘关系的进程  
  • 2024-06-20请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数) 函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串
    /*请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数)函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。*/#include<stdio.h>char*fun(char*buff,char*str){intbuff_len=0,str_len=0;while(bu
  • 2024-06-20如何使用EntropyReducer降低Payload的熵并进行混淆处理
    关于EntropyReducerEntropyReducer是一款针对Payload隐蔽性增强的安全工具,在该工具的帮助下,广大研究人员能够有效地降低Payload的熵,并对Payload代码使用串行链表进行混淆处理。工作机制EntropyReducer的算法由BUFF_SIZE和NULL_BYTES的值决定,下图显示的是当BUFF_SIZE被设置
  • 2024-06-18117.网络游戏逆向分析与漏洞攻防-邮件系统数据分析-结构数据的删除更新与重置
    免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!如果看不懂、不知道现在做的什么,那就跟着做完看效果,代码看不懂是正常的,只要会抄就行,抄着抄着就能懂了内容参考于:易道云信息技术研究院上一个内容:116.解析结构数据的创建信息码云版本号:fbbc39edab40a684ca28c1e1