YGC的主页

阿里云服务器SSH暴力破解防护实战:从发现攻击到fail2ban+firewalld联动加固

阿里云服务器SSH暴力破解防护实战:从发现攻击到fail2ban+firewalld联动加固

蔚淦丞 蔚淦丞 发布于 2026-10-29

容器网桥与防火墙的踩坑记录

Docker 网桥名不固定导致容器间通信被 firewalld 阻断的排查与修复 问题背景 在阿里云服务器上部署了 Halo 博客(Docker Compose 编排,包含 Halo + PostgreSQL 两个容器),同时启用了 firewalld 作为主机防火墙。某天重启 firewalld

蔚淦丞 蔚淦丞 发布于 2026-10-29

网络拓扑结构学习笔记

网络拓扑结构学习笔记 一、总线型拓扑(Bus) 结构:所有设备通过一条共享主干电缆(总线)串联,两端需终端电阻。 优点:布线简单、成本低、易于扩展节点。 缺点:单点故障(总线断裂则全网瘫痪)、冲突严重、带宽共享、故障定位难。 典型场景:早期以太网(10BASE2/5),现已淘汰。

蔚淦丞 蔚淦丞 发布于 2026-10-29

Linux C GDB Debug Info 学习笔记

Linux C GDB Debug Info 学习笔记 1. Debug 信息的设置与有无对比 编译选项 选项 说明 -g / -g2 生成标准 DWARF debug 信息(推荐) -g1 仅生成最小调试信息(函数名、行号) -g3 包含宏定义等额外信息 -O0 关闭优化,保证源码与指令一一对应

蔚淦丞 蔚淦丞 发布于 2026-10-28

proc 文件系统:PID、TID、TGID、PPID 概念辨析与关键文件详解

/proc 文件系统:PID、TID、TGID、PPID 概念辨析与关键文件详解 ⚠️ 常见误区:PPID ≠ 线程ID。PPid 是 Parent PID(父进程ID),线程ID 叫 TID。 1. 四个核心概念 缩写 全称 含义 PID Process ID 进程标识符,也是主线程的 TID P

蔚淦丞 蔚淦丞 发布于 2026-10-28

top命令常用操作

top 命令常用操作速查 以下示例均来自aliyun服务器真实输出,可对照实操验证。 1. 基础用法 top # 交互模式,每3秒刷新 top -b -n 1 # 批处理模式,只输出一次(适合脚本/笔记采集) 头部信息解读(本机实际输出) top - 14:29:26

蔚淦丞 蔚淦丞 发布于 2026-10-28

内存管理调试

内存管理调试方法 内存问题常见的类别 内存泄漏——内存malloc后未free(或者是有缓存未实际释放) 内存越界 内存重复释放 内存释放后还在使用 内存泄漏 分析和解决思路 采用分层定位法,明确泄露层级 系统层面初步判断泄露发生在:内核态 or 用户态 —— 大概率是用户态 确定是用户态之后,泄露

蔚淦丞 蔚淦丞 发布于 2026-10-27

/proc/meminfo解读

⭐ 核心关注项(日常运维必看) 字段 示例值 含义 运维要点 MemTotal 3,649 MB 物理内存总量 服务器规格上限,不可变 MemFree 717 MB 完全空闲、未被任何进程或内核使用的内存 ⚠️ 此值低 ≠ 内存不足,Linux 会主动利用空闲内存做缓存 MemAvailable 1

蔚淦丞 蔚淦丞 发布于 2026-10-27

函数指针

一、什么是函数指针? 普通指针保存的是:数据的地址。函数指针保存的是:函数入口地址 例如: void hello() { printf("hello\n"); } 函数名 hello 本身就是函数地址。 可以: void (*p)(); p = hello; p(); 二、函数指针定义方

蔚淦丞 蔚淦丞 发布于 2026-09-27

智能指针

一、为什么需要智能指针? C++ 原生裸指针存在三个致命问题: 忘记 delete → 内存泄漏 重复 delete → 程序崩溃(野指针) 异常跳转导致没执行 delete → 泄漏 智能指针核心思想:用 RAII 机制管理堆内存生命周期。 智能指针本质是 栈对象,出作用域自动析构,自动

蔚淦丞 蔚淦丞 发布于 2026-09-22

cmake语法清单

基础模板 cmake_minimum_required(VERSION 3.14) # 最低cmake版本,必须放最开头 project(demo LANGUAGES CXX C) # 项目名,指定语言 set(CMAKE_CXX_STANDARD 17)

蔚淦丞 蔚淦丞 发布于 2026-09-22

Linux堆内存管理器项目介绍

https://github.com/ygc129550/HeapMemoryManager HeapMemoryManager 一个基于 页面族(Page Family) 的固定大小对象内存分配器,专为结构体类型已知、大小固定的场景设计。每个页面仅服务一种结构体类型,通过 Worst-fit 策略

蔚淦丞 蔚淦丞 发布于 2026-09-21

结构体大小与内存对齐

来源:腾讯云开发者文章:https://cloud.tencent.com/developer/article/2403719 一、基础概念 sizeof(结构体)计算结构体占用内存字节数。 结构体总大小不等于所有成员字节简单相加,编译器会自动填充空洞(padding),结构体成员排列顺序会直接影响

蔚淦丞 蔚淦丞 发布于 2026-09-18

malloc底层两种堆内存申请方式 brk + mmap 匿名映射

前置 进程堆区位于 BSS 段之后,自低地址向高地址增长。 内核通过 mm_struct 中的 program break 标记堆的上边界。 用户态动态内存扩容,内核只提供两种底层方式:brk 主堆扩容、mmap 匿名映射扩容。 1. brk /sbrk(小块内存) 函数原型与返回值 // brk

蔚淦丞 蔚淦丞 发布于 2026-09-13

SWAP交换分区、页面置换算法

1. 核心整体关系 页面置换算法 和 Swap 是配套机制: 页面置换算法:负责内存紧张时,挑选哪一页淘汰 Swap:负责把淘汰下来、无磁盘原生副本的页面,落地到磁盘保存 缺页异常 + 无空闲物理页 → 置换算法选冷页淘汰 → 根据页面类型决定是否写 Swap。

蔚淦丞 蔚淦丞 发布于 2026-09-13
上一页 下一页