c语言
-
VSCode如何调试Zig系统级代码 VSCode处理Zig内存管理的调试方法



要在#%#$#%@%@%$#%$#%#%#$%@_e2fc++805085e25c9761616c00e065bfe8中调试zig系统级代码,必须先配置c/c++扩展和gdb/lldb调试器,并使用zig build -doptimize=debug生成带dwarf调试信息的可执行文件;2. 在la…
-
VSCode配置Linux C开发 从安装到调试VSCode运行C程序



答案:在Linux下使用VSCode开发C语言需配置GCC/GDB环境并设置tasks.json和launch.json文件。首先安装build-essential和gdb,再在VSCode中安装C/C++扩展;创建tasks.json定义编译任务,使用gcc命令并添加-g生成调试信息;配置laun…
-
LVGL案例分享–手把手教你移植到T113-i国产工业开发板



市场上提供了多种嵌入式gui库的选择,包括开源和闭源的版本。开源gui库包括lvgl、emwin等,而闭源gui库则包括touchgfx和柿饼gui等。 本次开发教程的测试板卡是来自创龙科技的TLT113-EVM国产工业评估板,采用了全志科技T113-i双核ARM Cortex-A7、玄铁C906 …
-
Linux系统入门系列之四:工具命令



在前一篇文章《linux系统入门系列之三:初识bash》中,我带大家初步了解了linux系统中的bash shell,并学习了如何使用vim进行文本编辑和处理。实际上,bash拥有一系列强大的工具命令,这些命令已经高度集成化,能够完成多种任务,类似于windows系统中的office软件。接下来,我…
-
The Route to Host:从内核提权到容器逃逸



前言 绿盟科技研究通讯曾经发表过容器逃逸的技术文章《【云原生攻防研究】容器逃逸技术概览》[1],该文中探讨了已有的容器逃逸技术。本文将沿着上文的思路,主要从Linux内核漏洞的角度对容器逃逸进行深度介绍,包括攻击原理、自动化利用和防御思路等内容。 目前Linux内核代码已经达到了2700万行量级[2…
-
C语言(指针)1



让我们深入了解内存和地址,并将其比作宿舍楼和房间编号。就像宿舍楼有大有小一样,计算机的内存也有不同的大小,比如8gb、16gb、32gb等。较大的内存能够存储更多的数据。 宿舍楼的编号是为了便于管理学生,同样,为了有效管理内存,内存被划分为一个个小的内存单元,每个内存单元的大小为一个字节,每个字节包…
-
由浅入深的了解进程(3)



进程状态 每一个进程都拥有自己的代码和数据,同时也具备自己的状态。 1、Linux中的进程状态 Linux系统中,进程状态是通过struct task_struct结构体中的各种属性和变量来表示的。在Linux内核的源代码中,进程状态的定义如下: /* * The task state array …
-
红队技巧-利用uuid加载shellcode



y 点击蓝字关注我哦 近期国外的Tweet上面的Check Point Research发布了一篇有趣的推文: 这篇推文大概讲的是通过分析了一个恶意样本,找到一种非常有趣的向内存写入shellcode方式。 这里就不细究钓鱼文档利用宏加载shellcode的细节了,感兴趣的可以去看这篇文章: 代码语…
-
VSCode怎么写C乱码_VSCode C语言编码问题解决教程



乱码问题源于编码不一致,需统一VSCode文件编码、编译器输入输出编码及终端显示编码。首先将VSCode的files.encoding设为utf8,并转换已有文件为UTF-8;在tasks.json中为GCC添加-finput-charset=UTF-8和-fexec-charset=GBK(或UT…
-
【C语言】数据在内存中的存储



1. 前言 我们知道在操作符中与2进制有关的操作符:& | ^ ~ >> 使用这些操作符就离不开整数中在内存中的存储。 我们一起来看看整数的存储。 2. 整数在内存中的存储 整数存储: 整数的二进制表示方法有三种:原码、反码和补码。 三种表示法均有符号位和数值位两部分,符号位都是…