linux链表 第2页
- Linux内核必备知识点-platform总线详解
-
platform总线是学习linux驱动必须要掌握的一个知识点。本文参考已发布:Linux3.14内核一、概念嵌入式系统中有很多的物理总线:I2c、SPI、USB、uart、PCIE、APB、AHBlinux从2.6起就加入了一套新的驱动管理和注册的机制platform平台总线,是一条虚拟的总线,...
- 超专业解析!10分钟带你搞懂Linux中直接I/O原理
-
我们先看一张图:这张图大体上描述了Linux系统上,应用程序对磁盘上的文件进行读写时,从上到下经历了哪些事情。这篇文章就以这张图为基础,介绍Linux在I/O上做了哪些事情。文件系统什么是文件系统文件系统,本身是对存储设备上的文件,进行组织管理的机制。组织方式不同,就会形成不同的文件系统...
- 深入浅出分析Linux内核slab性能优化的核心思想
-
今天分享一篇内存性能优化的文章,文章用了大量精美的图深入浅出地分析了Linux内核slab性能优化的核心思想,slab是Linux内核小对象内存分配最重要的算法,文章分析了内存分配的各种性能问题(在不同的场景下面),并给出了这些问题的优化方案,这个对我们实现高性能内存池算法,或以后遇到内存性能问题的...
- LINUX MMC子系统分析(二) MMC驱动模型分析
-
本模块主要介绍MMC子系统与设备-总线-驱动模型的关联,并介绍该MMC子系统是如何借助LINUX内核的设备-总线-驱动模型实现自己的驱动模型的。针对MMC子系统而言,主要使用了系统中的两个模型:设备-总线-驱动模型、块设备驱动模型。设备-总线-驱动模型在分析MMC子系统的设备-总线-驱动模型时,我们...
- 深入学习IO多路复用select/poll/epoll实现原理
-
Linux服务器处理网络请求有三种机制,select、poll、epoll,本文打算深入学习下其实现原理。0.结论本文其他的内容主要是得出了下面几个结论:服务器要接收客户端的数据,要建立socket内核结构,主要包含两个重要的数据结构,(进程)等待队列,和(数据)接收队列,socket在进程...
- linux内核分析 SLAB原理及实现
-
Slab原理及实现1.整体关系图注:SLAB,SLOB,SLUB都是内核提供的分配器,其前端接口都是一致的,其中SLAB是通用的分配器,SLOB针对微小的嵌入式系统,其算法较为简单(最先适配算法),SLUB是面向配备大量物理内存的大规模并行系统,通过也描述符中未使用的字段来管理页组,降低SLUB本...
- Linux中级——“驱动”控制硬件必须学会的底层知识
-
驱动认知1.什么是驱动驱动就是对底层硬件设备的操作进行封装,并向上层提供函数接口。设备分类:linux系统将设备分为3类:字符设备、块设备、网络设备。字符设备:指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后顺序。字符设备是面向流的设备,常见的字符设备有鼠...
- 实现Linux ptrace
-
本文介绍这些工具的底层ptrace是如何实现的。这里选用了1.2.13的早期版本,原理是类似的,新版内核代码过多,没必要陷入过多细节中。ptrace是Linux内核提供的非常强大的系统调用,通过ptrace可以实现进程的单步调试和收集系统调用情况。比如strace和gdb都...
- Linux信号管理机制详解
-
Linux信号管理是内核进程控制的核心机制之一,涉及硬件异常、进程间通信和用户态/内核态切换。以下是内核管理信号的完整技术解析:信号生成(Generation)触发源分类:硬件异常(SIGSEGV/SIGFPE)终端控制(Ctrl+C→SIGINT)kill()系统调用(用户/进程主动发送)内核事...
- 五问 Linux 网络防火墙(三):iptables 数据结构对性能的影响
-
问题3:iptables内部的规则对应数据结构是怎样的,它是如何影响到性能下降的iptables在内部使用特定的数据结构来存储和管理网络过滤规则。这些数据结构的设计直接影响到性能,尤其是在处理大量规则时。以下是对iptables内部规则对应数据结构的详细介绍,以及它们如何影响性能的分析。1....