
Linux内核深度理解
文章平均质量分 94
_the_sun
间歇性学习 持续性躺平
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
IO多路复用底层原理
传统单线程阻塞模式在处理海量连接时存在资源浪费问题,由此引出select、poll、epoll三种解决方案。select采用轮询机制,通过位图管理1024个FD,但存在性能瓶颈;poll改进为动态数组,突破数量限制;epoll则通过红黑树管理连接、就绪队列和回调机制实现事件驱动,成为高并发场景最优解。原创 2025-08-15 20:17:44 · 914 阅读 · 0 评论 -
网络通信全过程:sk_buff的关键作用
网络传输的全过程。其中skb最为核心,报头是通过skb中的指针实现零拷贝填充。且各种协议通过struct sock中的联合体进行定制,比如tcp就定制了几个队列,用于实现它的重传机制等;而udp则没有。原创 2025-08-14 20:59:22 · 852 阅读 · 0 评论 -
从内核数据结构的角度理解socket
socket在内核中创建了三个数据结构:socket、sock、file。分别用于:给用于简单观察其状态、协议族的控制、文件系统的接入。并提及了sock结构体通过联合体来区别TCP和UDP,并实现TCP的各种重传机制。最后,socket本质也是一个文件,对于其的所有操作都是通过file中的ops来实现的,不同类型的文件,其ops指向的操作集不同,且private_data也不相同原创 2025-08-13 19:42:02 · 890 阅读 · 0 评论 -
Linux物理内存模型、内存管理架构
物理内存被最底层的page结构体管理。由于物理内存可能并非连续,由此引出了三种物理内存模型,特别提到稀疏内存模型可以支持动态热插拔等功能。最后谈到了物理内存模型的上层管理结构---Node、Zone、Page三层内存管理结构。其中每一个NUMA节点都会有自己的Node节点,而Node又划分为多个Zone区域,Zone区域由PFN关联到page,从而访问到真实的物理内存。原创 2025-07-30 00:25:59 · 1158 阅读 · 0 评论 -
mmap的调用层级与内核态陷入全过程
mmap的层级调用详解,用户态是如何转换到内核态的?syscall是什么?同时与之前文章中的内核数据相结合,方便理解记忆。且注意mmap对于文件映射,必须要是已经打开的文件;对于匿名映射fd传入-1。原创 2025-07-27 22:55:17 · 678 阅读 · 0 评论 -
Linux内存映射原理
普通文件每一次读写都需要3次拷贝:上层应用、C语言、内核态、磁盘。而文件映射则是把磁盘中的数据拷贝到物理内存之后,在内存中读写,适合的机会写回磁盘,大大减少了从物理内存拷贝到磁盘的步骤。最后,匿名映射则根本不会有写回磁盘的操作,纯内存,通信效率最高。原创 2025-07-23 23:42:30 · 972 阅读 · 0 评论 -
Linux打开、读写一个文件内核做了啥?
files_struct是一个进程管理其打开文件的结构体,在他之中核心在于文件描述符表和文件描述符与file的映射。而file则是真正描述一个打开文件的各种信息的结构体。然后引出了读写文件时候的3层缓冲区,以及fork函数对于files_struct的写时拷贝原创 2025-07-22 22:01:48 · 1095 阅读 · 0 评论 -
Linux物理地址空间入门:从硬件到内核内存的基石
物理内存的理解原创 2025-07-21 22:20:53 · 855 阅读 · 0 评论 -
用户虚拟地址空间布局架构
vm_area_struct的作用是给每个区域的详细描述,而mm_struct仅仅是在整个进程层次上进行描述,宏观作用。原创 2025-07-21 16:31:00 · 877 阅读 · 0 评论 -
Linux内核空间的布局
内核空间布局了解,用户空间在分配内存的本质是规划虚拟空间,在第一次实际使用时候才会落实到物理内存原创 2025-07-19 20:47:24 · 1141 阅读 · 0 评论 -
RCU机制及常见锁的理解
锁也是一种资源(类似于磁盘网卡等外设资源),只不过位于内核空间。RCU是多读少写的最优解。原创 2025-07-17 23:10:35 · 1000 阅读 · 0 评论 -
CPU架构、三级缓存以及内存优化屏障
冯诺依曼体系架构下的内存、缓存布局;常见的两种CPU架构;以及内存屏障的理解。原创 2025-07-17 23:01:46 · 1141 阅读 · 0 评论 -
实时调度类
Linux实时调度类,采取优先级队列数组来管理调度实体,从而做到抢占式调度。同时还分为FIFO和RR两种类型,以适应对时间敏感情况不同的实时进程。原创 2025-07-16 20:38:31 · 1026 阅读 · 0 评论 -
CFS完全公平调度器
Linux的CFS调度原理、优化了上篇文章对于进程创建的理解原创 2025-07-16 15:18:46 · 857 阅读 · 0 评论 -
进程创建与退出的原理
linux进程的创建与销毁过程,并涉及到了该过程中内核的数据结构发生了什么样的变化原创 2025-07-15 18:17:04 · 979 阅读 · 0 评论 -
Linux内核结构概览
说明了宏内核、微内核的优缺点,并提到Linux的折中处理策略原创 2025-07-14 14:22:15 · 347 阅读 · 0 评论