
设备驱动
文章平均质量分 93
设备驱动程序是一种计算机程序,用于操作或控制连接到计算机的特定类型的设备。驱动程序提供了通往硬件设备的软件接口,从而使操作系统和其他计算机程序可以访问硬件功能,而无需知道有关所使用硬件的确切细节。
深度Linux
专注于Linux C/C++领域技术分享、职业发展,公众号《深度Linux》
展开
-
一文搞懂磁盘 I/O,基础扫盲来了!
计算机的运行,就像一场有条不紊的交响乐演奏,CPU、内存、磁盘等硬件各司其职,共同奏响和谐的旋律。在这场演奏中,磁盘 I/O 虽然不像 CPU 那样被众人熟知,却承担着至关重要的角色。它就像一座桥梁,连接着计算机的内部世界与外部存储,负责数据的输入与输出。从打开一份文档,到加载一款大型游戏,再到服务器处理海量数据,每一个操作都离不开磁盘 I/O 的默默支持。然而,你是否想过,为什么有时候打开一个文件会瞬间完成,而有时候却要等待许久?为什么同样是存储设备,固态硬盘和机械硬盘的读写速度会有天壤之别?原创 2025-03-13 14:09:21 · 740 阅读 · 0 评论 -
Linux防火墙:Netfilter的深度解析
Linux 2.4.x引入的子系统,Netfilter是Linux 2.4.x引入的一个子系统,它作为一个通用的、抽象的框架,提供一整套的hook函数的管理机制,使得诸如数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪成为了可能, 在 Linux 系统中发挥着至关重要的作用。它是一个强大而灵活的网络包过滤框架,为系统管理员提供了对网络数据包的精细控制。Netfilter 通过在内核中插入钩子点,实现对网络数据包的过滤、修改和转发。原创 2025-02-19 11:30:00 · 948 阅读 · 0 评论 -
深入理解x86汇编:GNU格式的全面指南
x86 汇编语言主要包括总线、寄存器结构,数据类型,基本的操作指令以及函数的调用规则。其中,x86 汇编语言的总线包括地址总线、数据总线和控制总线,分别决定了 CPU 的寻址能力、数据传送量和对系统中其他器件的控制能力。在寄存器结构方面,x86 汇编语言拥有丰富的寄存器体系。通用寄存器包括 EAX、EBX、ECX、EDX、ESP、EBP、EBX、EDX、ESI、EDI。EAX 通常用于计算,是很多加法乘法指令的缺省寄存器,还存放函数返回值;原创 2025-02-10 14:14:33 · 1373 阅读 · 0 评论 -
Linux内核initcall机制:驱动初始化的幕后英雄
你想想,咱们每天使用的电脑、手机等各类智能设备,之所以能流畅运行形形色色的功能,背后离不开 Linux 内核驱动着海量的硬件。而在这繁杂的硬件驱动初始化过程中,initcall 机制宛如一位运筹帷幄的指挥官,不动声色地将一切安排得井井有条。当系统启动的号角吹响,众多硬件驱动就像等待检阅的士兵,急切地需要按恰当顺序、在精准时机完成初始化,才能确保整个系统顺利启航。要是没有 initcall 机制,这乱糟糟的局面简直不敢想象,可能系统还没 “起跑” 就陷入崩溃泥潭。原创 2025-01-10 02:30:00 · 880 阅读 · 0 评论 -
以太网MAC和PHY层问题的“对症下药”攻略
1.1什么是MAC 层在以太网中,MAC(Media Access Control,媒体访问控制)层是数据链路层的重要组成部分,肩负着诸多关键功能。首先,它负责控制与连接物理层的物理介质,是数据链路层与物理层交互的关键桥梁,决定着数据如何流向物理层进行传输。例如,在发送数据时,MAC 协议会预先判断当下是否可以发送数据,如果条件允许,就会给数据添加上相应的控制信息,然后按照规定的格式将数据发送到物理层;原创 2025-01-04 14:01:44 · 1305 阅读 · 0 评论