logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

吐血整理 | 肝翻linux内核常用数据结构汇总

在计算机科学的璀璨星空中,数据结构是一颗耀眼的明星,它是计算机存储、组织数据的巧妙方式,如同建筑中的蓝图,规划着数据的布局与管理。简单来说,数据结构就是相互之间存在一种或多种特定关系的数据元素的集合,它涵盖了数据的逻辑结构、物理结构以及相关的操作运算。数据结构主要分为线性结构和非线性结构。线性结构中的数据元素呈现出一对一的线性关系,如同一条整齐排列的队伍,数组、链表、栈和队列等都属于这一范畴;非线

文章图片
#linux#数据结构
Linux C++编程死锁排查:借助Shell与GDB找到真相

在多线程编程的领域中,死锁是一个让人头疼不已的问题。简单来说,死锁就是多个线程因为互相争夺资源,而陷入一种无限期的等待状态,导致所有线程都无法继续执行。就好比两个人过独木桥,独木桥一次只能容纳一个人通过,这两个人同时上了桥,一个从左边往右边走,另一个从右边往左边走,走到桥中间时,谁也不愿意退回去让对方先过,于是就僵持在那里,谁都无法到达对岸,这就是死锁在现实生活中的生动写照。在程序里,死锁通常发生

文章图片
#linux
内核视角看Epoll LT/ET:数据结构与回调机制全解

作为高性能I/O多路复用技术,Epoll通过红黑树管理文件描述符,使用双向链表存储就绪事件,其核心优势在于高效的事件通知机制。文章详细对比了水平触发(LT)和边缘触发(ET)两种模式:LT模式会持续通知未处理事件,编程简单但效率较低;ET模式仅在状态变化时触发一次,性能更高但需配合非阻塞I/O确保数据完整读取。此外,文中剖析了Epoll的回调机制如何将就绪事件加入链表,并给出应用场景选择建议:LT

文章图片
#数据结构
从源码到实践:彻底剖析Linux进程负载均衡机制

Linux内核CPU负载均衡机制在多核系统中发挥着关键作用,主要通过调度域和调度组层级结构实现不同CPU间的任务迁移。本文系统性地介绍了负载均衡的核心概念(包括CPU负载定义、算力评估和均衡原则)、触发机制(周期性检查和新任务创建等)以及实现方式(针对CFS和RT任务的不同策略)。文章还深入分析了中断负载均衡的实现,并探讨了异构计算系统中misfit任务处理等特殊场景。该机制通过智能调度避免了单核

文章图片
#负载均衡
Linux内核数据结构:基数树Radix Tree

基数树是一种将指针与长整数键值相关联的机制,存储有效率且可快速查询,常用于指针与整数值的映射、内存管理等。它是一种多叉搜索树,叶子结点是实际的数据条目,每个结点有固定数量的指针指向子结点,并有一个指针指向父结点。基数树,也被称为 PAT 位树(Patricia Trie or crit bit tree),是通用的字典类型数据结构。Linux 内核使用了数据类型 unsigned long 的固定

文章图片
#linux#数据结构
Linux防火墙:Netfilter的深度解析

Linux 2.4.x引入的子系统,Netfilter是Linux 2.4.x引入的一个子系统,它作为一个通用的、抽象的框架,提供一整套的hook函数的管理机制,使得诸如数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪成为了可能, 在 Linux 系统中发挥着至关重要的作用。它是一个强大而灵活的网络包过滤框架,为系统管理员提供了对网络数据包的精细控制。Netfilter 通过在内核中插入

文章图片
打破常规,Linux内核新的数据结构上场maple tree

Linuxkernal鬼斧神工,博大精深,让人叹为观止,拍手叫绝。然匠心独运的设计并非扑朔迷离、盘根错节,真正的匠心独运乃辞简理博、化繁为简,在简洁中昭显优雅和智慧,kfifo就是这样一种数据结构,它就是这样简约高效,匠心独运,妙不可言,下面就跟大家一起探讨学习。在外界看来,Linux内核的内部似乎变化很少,尤其是像内存管理子系统(memory-managementsubsystem)这样的子系统

文章图片
#linux#数据结构
探索C++中的轻量级RPC:打造高性能网络通信

RPC,即远程过程调用(Remote Procedure Call) ,是一种让程序在不同计算机之间像调用本地函数一样进行通信的技术。打个比方,你去餐厅点餐,服务员就像是本地调用,你直接告诉服务员你想吃什么,他能马上响应。而如果这家餐厅的厨房在另一个地方,你通过对讲机向厨房点餐,这个过程就类似 RPC。你不需要知道对讲机是如何工作、信号如何传输的,只要像和身边的服务员沟通一样点餐就行。

文章图片
#rpc#网络协议#linux
解锁高效编程:C++异步框架WorkFlow

在 C++ 编程的领域中,随着业务场景日益复杂,对程序性能和响应速度的要求也愈发严苛。传统的同步编程模式在面对高并发、I/O 密集型任务时,常常显得力不从心,成为阻碍程序高效运行的瓶颈。而异步编程,则为我们打开了一扇通往高效世界的大门。今天,我们将聚焦于一款强大的 C++ 异步框架 ——WorkFlow,一同深入探索它如何巧妙地运用异步技术,为开发者们解锁高效编程的新境界,让代码在复杂的任务中也能

文章图片
#linux
实战演练:设备树(DTS)语法详解 + LED控制实战

本文深入解析了嵌入式开发中的设备树(DeviceTree)技术,从基础概念到实战应用全面覆盖。首先介绍了设备树诞生的背景及其在ARM架构中的引入过程,解释了DTS、DTB、DTC等关键术语。然后详细剖析了设备树语法结构,包括节点定义、属性类型、包含文件机制等核心技术要点。通过GPIO、LED等具体实例,展示了设备树节点与驱动程序的匹配机制,并提供了自定义设备树节点与驱动开发的完整示例。文章还深入讲

文章图片
    共 15 条
  • 1
  • 2
  • 请选择