Linux 内核框架指的是 Linux 操作系统中提供的一系列软件框架,用于支持各种不同类型的设备和驱动程序。这些框架包括:字符设备框架:用于处理字符设备,如串口、音频设备等,对应的头文件为 linux/fs.h。 块设备框架:用于处理块设备,如硬盘、U 盘等,对应的头文件为 linux/blkdev.h。 网络协议栈框架:用于支持各种网络协议,如 TCP/IP、UDP 等,对
原创 2023-07-10 09:38:07
67阅读
网络协议栈框架:用于支持各种网络协议,如 TCP/IP、UDP 等,对头文件为 linux/i2c.h。
原创 2023-07-22 08:20:56
302阅读
                   
原创 2021-05-20 09:27:24
779阅读
一、进程调度 1、task_struct结构在内存的存放与内核栈是不可分离。每个进程都有自己的内核栈。当进程从用户态进入内核时,CPU就自动地设置该进程的内核栈。也就是讲,CPU从任务状态段TSS中装入内核栈指针esp。 在lntel系统中,栈起始于末端,并朝这个内存区开始的方向增长。进程描述符存放在从0x018fa000开始的地址,只要把数据写进栈中,esp的值就递减。通过这个联合结构可以看出,
1. 前言本文是“Linux内核分析”系列文章的第一篇,会以内核的核心功能为出发点,描述Linux内核的整体架构,以及架构之下主要的软件子系统。之后,会介绍Linux内核源文件的目录结构,并和各个软件子系统对应。注:本文和其它的“Linux内核分析”文章都基于如下约定:
原创 2021-11-13 15:53:44
367阅读
Linux内核之MMC框架 背景 之前简单说了说SDIO、SD、MMC之间的区别与联系,具体可见以下链接:https://notes.z-dd.online/2024/01/19/MMC%E5%92%8CSD%E4%B8%8ESDIO/最近刚好看到这块,今天来看看Linux内核中关于它们的MMC框架。软件架构 Linux内核中,SDIO、SD、MMC相关的驱动都由MMC框架来管理。其主要的软件架构
原创 2024-06-21 12:30:01
27阅读
每个目录包含了不同过能的模块代码。大家一般把这个结构叫做linux代码树。树必然是一个非常恰当的比喻,枝分枝,密密麻麻,参差不穷。那编译内核的时候内核的编译系统是如何将这么多的文件编译链接起来最后形成一个可运行的镜像文件的呢。这篇文章主要从较高的层面串联出这个过程
转载 2013-08-31 23:36:00
174阅读
2评论
Linux内核的USB框架中,还有一个重要的部分是USB协议栈,这是指协议分层模型中的USB层次。USB协议栈是一组函数库
原创 2023-07-29 01:04:20
81阅读
在使用Linux内核的PCI框架进行
原创 2023-07-29 19:07:46
204阅读
clk 描述
原创 2023-05-30 00:13:16
193阅读
Linux中断
原创 2023-08-13 09:16:27
281阅读
大约是在2000年的时候,老码农还很年轻,当时希望将Linux 作为手机的
原创 2022-08-13 00:45:05
262阅读
Linux内核的USB框架是管理USB设备的核心组件之一,它负责处理与USB设备相关的请求和操作,并提供了一些通用的函数和数据结构,以简化设备驱动程序的开发。在Linux内核的USB框架中,最重要的两个结构体是usb_driver和usb_device。usb_driver定义了USB设备驱动程序的基本操作函数,比如设备的插入、拔出、配置等操作。而usb_device则是指USB设备本身,包括设备
原创 2023-07-18 20:21:39
149阅读
Linux内核的PCI框架是一个相对独立的子系统,负责管理PCI(Peripheral Component Interconnect,外围设备互联)硬件总线。该框架主要包括以下模块和功能:PCI核心框架:负责PCI总线的初始化,并提供API接口给PCI驱动程序调用;PCI DMA(Direct Memory Access)API:用于支持PCI设备直接访问系统内存;PCI IRQ(Interrup
原创 2023-07-21 19:03:44
152阅读
Linux内核的SPI框架是一个用于管理SPI(Serial Peripheral Interface,串行外设接口)设备的子系统。该框架主要负责管理SPI总线和SPI设备之间的通信,包括SPI核心驱动、SPI驱动程序模型、SPI总线控制器以及SPI设备驱动等。在Linux内核中,SPI框架提供了一系列API接口,使得SPI设备驱动程序能够方便地进行SPI设备的访问和操作。例如,在SPI设备驱动程
原创 2023-08-01 19:57:26
193阅读
框架主要负责管理SPI总线和SPI设备之间的通信,包括SPI核心驱动、SPI驱动程序模型、SPI总线控制器以及SPI设备驱动等
原创 2023-08-07 00:35:52
114阅读
linux内核中实现了nfs,nfs具体是用rpc来实现的,于是linux内核实现了rpc,rpc到底是什么,以及协议细节本文不讨论,网上书上多的是,包括协议编码规范也不说,本文仅仅描述一下linux内核的rpc实现框架linux内核的rpc模块实现涉及了大致三个小模块:一是rpc与用户层的接口;二是rpc的逻辑控制框架;三是rpc的通信框架。在这三个小模块里,rpc协议细节贯穿前后,毕竟就
原创 2010-02-09 21:14:00
770阅读
LINUX驱动程序框架Linux应用程序是通过系统调用来产生一个swi异常来进入内核态从而调用驱动程序。框图如下:用户进程利用系统调用在对设备文件进行诸如读写操作时,系统调用通过设备文件的主设备号找到相应的设备驱动程序,然后读取这个数据结构相应的函数指针,接着将控制权交给该函数。所以需要实现驱动程序的:open、read、write、ioctl等函数。所以一个驱动程序的一般步骤:定义驱动程序的入口
       
原创 2021-05-20 09:27:20
1185阅读
Linux内核混杂设备驱动编程框架混杂设备驱动定义:混杂设备官方定义:非标准的字符设备。混杂设备驱动本质还是字符设备驱动,只是混杂设备驱动的主设备号由Linux内核已经定义好,(为10)。各个混杂设备通过次设备号来区分。所以内核支持的混杂设备驱动管理的硬件个数为:2^20。缺点:所以混杂设备本身不能再次通过次设备号来区分。Linux内核描述混杂设备驱动的数据结构:struct mi...
原创 2021-08-31 14:41:55
386阅读
  • 1
  • 2
  • 3
  • 4
  • 5