自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 写着写着就从执行命令到内核execve源码分析了

``C​```我们直接跳到最后来看它是如何替换进程空间的,这里面牵扯的知识太多、我只能做一些简单的介绍,写得不好欢迎指正。在新的程序执行之前会有许多的前置工作,检查当前的进程、用户线程是否超过限制。binprm结构用于保存加载二进制文件时使用的参数。例如,它包含vm_area_struct,表示将在给定地址空间中连续间隔内的单个内存区域,将在该空间中加载应用程序。mm字段,它是二进制文件的内存描述符,指向内存顶部的指针以及许多其他不同的字段。```​​​```

2023-10-19 16:01:36 87 1

原创 深入理解 Cilium 的 eBPF 收发包路径(datapath)

本文翻译DigitalOcean 的工程师 Nate Sweet 在 KubeCon 的一篇分享。

2023-10-18 17:49:21 177 1

原创 手把手教你写一个rdp的静态虚拟通道

虚拟通道的能力拓展是在RDP协议的协商阶段进行announce的,这部分在BCGR那一部分文档介绍的比较清楚、MCS就是Multi-Channel Support,RDP协议有许多通道拓展,例如RDPDR、RDPEI、RDPCLIRDR等,MCS通过使用多通道(channels)来实现,每个通道可以处理特定类型的数据传输。虚拟动态通道可以随时创建和销毁,并且静态虚拟通道是依赖于静态通道来进行建立的。另外RDP协议也留给了开发者一些接口、这样我们就能开发自己的拓展通道了。

2023-09-15 16:52:26 397

原创 vscode中配置基于cmake的clangd开发环境

vscode自带的C/C++工具实在是有些不友好,经常开发的时候找不到头文件,导致代码跳转和补全功能都有问题,于是乎决定抛弃Microsoft C/C++转向Clangd,配合clang-format来格式化代码。两者都是基于LLVM开发的插件,接下来让我看如何配置吧。至于如何安装这些插件这里就不多做赘述,相信使用过vscode的同学都已经熟悉了,接下来我们第一步首先来写cmake文件来开启clangd的功能。

2023-07-10 18:20:44 1693

原创 关于在OpenEuler上安装wireguard

本来很高兴国产操作系统能有一个比较跟得上时代的版本、但是OpenEuler一些蜜汁操作真是能把人搞死了,接下来讲述如何在欧拉上安装wireguard.首先你去yum查这个包,结果是这样的:不得不说欧拉官方是真的骚、他把wireguard内核模块砍掉了,然后源里面还维护着?????????当然了这是后话,看到这我还是对欧拉心怀希望的,然后我尝试手动挂载wireguard:好家伙,怎么没有这个内核module?嗯?难道没编译?可以理解,毕竟咱国产操作系统也不能全抄不是。

2023-07-10 18:19:15 823 3

空空如也

空空如也

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

TA关注的人

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