USB 端点被绑在接口中. USB 接口只处理一类 USB 逻辑连接, 例如一个鼠标, 一个键盘, 或者一个音频流. 一些 USB 设备有多个接口, 例如一个 USB 扬声器可能有 2 个接口: 一个 USB 键盘给按钮和一个 USB 音频流. 因为一个 USB 接口表示基本的功能, 每个 USB
转载
2019-07-07 19:09:00
218阅读
2评论
Linux 内核里面有一个函数wait_for_completion,这是一个内核同步机制的函数,同步机制如果是早期的读者应该看过我发的文章,如果没有看过的可以看看Linux 专辑文章里...
原创
2021-07-28 15:53:03
416阅读
Linux 内核里面有一个函数wait_for_completion,这是一个内核同步机制的函数,同步机制如果是早期的读者应该看过我发的文章,如果没有看过的可以看看Linux 专辑文章里...
原创
2022-03-11 18:04:17
1326阅读
USB 接口是自己被捆绑到配置的. 一个 USB 设备可有多个配置并且可能在它们之间转换 以便改变设备的状态. 例如, 一些允许固件被下载到它们的设备包含多个配置来实现这个. 一个配置只能在一个时间点上被使能. Linux 处理多配置 USB 设备不是太好, 但是, 幸 运的是, 它们很少. lin
转载
2019-07-07 19:10:00
421阅读
2评论
在Linux内核文档中,GPIO接口被广泛应用于与硬件设备进行通信和控制。GPIO(General Purpose Input/Output)是一种通用的输入输出接口,可用于连接各种外部设备,如传感器、执行器、按钮等。在Linux内核文档中,有一整套有关GPIO接口的文档,其中包括了GPIO子系统的框架、API函数的使用方法等内容。
在Linux内核中,GPIO接口被实现为一个独立的模块,该模块
原创
2024-05-24 11:26:00
86阅读
这篇主要记录一下如何下载linux内核源码,并编译使用。 首先下载源码:在安卓源码目录下新建kernel目录:mkdir kernel 然后运行git clo
转载
2023-08-30 21:58:12
36阅读
为了抓住一个自定义的内核函数是如何被执行的,需要一定的调试手段,其实就需要一种跟踪手段就可以了,理论上不太复杂,可是Linux内核的调试接口太多了,始终找不到一个方便的,直到遇到了ftrace,它简单的使用文件系统作为接口,不需要安装任何用户态程序,和杂乱的发行版毫无关系,这正合我意,相比SystemTap等复杂的前置设置等调试手段,简直棒极了。因为我很讨厌为了做一件理论上很简单的事而去花去大量的
原创
2013-04-06 09:59:00
1578阅读
class_simple 接口意图是易于使用, 以至于没人会抱怨没有暴露至少一个包含设备的被 分配的号的属性. 使用这个接口只不过是一对函数调用, 没有通常的和 Linux 设备模型 关联的样板. 第一步是创建类自身. 使用一个对 class_simple_create 的调用来完成: struct
转载
2019-07-07 21:41:00
103阅读
2评论
Linux网络接口分为4个部分,分别为:网络设备接口:负责从物理接口接受和发送数据 网络接口核心:为网络接口提供统一的发送接口,屏蔽各种各样的物理介质,同时又负责把来自下层的包向合适的协议配送 网络协议族:是各种协议具体实现的部分 网络接口socket层:为用户提供网络服务的编程接口一、TCP/IP协议栈4层模型网络接口层(链路层):是模型的基层,负责数据帧的发送和接受。 互联层...
原创
2021-11-18 17:35:38
312阅读
Linux网络接口分为4个部分,分别为:网络设备接口:负责从物理接口接受和发送数据 网络接口核心:为网络接口提供统一的发送接口,屏蔽各种各样的物理介质,同时又负责把来自下层的包向合适的协议配送 网络协议族:是各种协议具体实现的部分
原创
2022-03-03 10:07:52
869阅读
为了抓住一个自定义的内核函数是如何被执
转载
2013-04-06 17:08:00
272阅读
1. pm_runtime_enable/pm_runtime_disable 使能/禁止runtime PM,分别对dev->power.disable_depth执行++和--操作,这个变量的初始化值是1,默认是disable的状态。 2. pm_runtime_get_sync/pm_runt
转载
2019-10-25 18:14:00
299阅读
2评论
ARMLinux 内核ARMLinux 内核 陈文智 wzchen@ 浙江大学计算机学院 2009年5月 提纲 1. ARM系统结构简介 2. ARM-Linux内存管理 3. ARM-Linux 的中断响应和处理 4. ARM-Linux系统调用 5. 系统的启动和初始化 6. ARM-Linux进程管理和调度 7. Linux的模块机制 1. ARM系统结构简介 ARM有7种运行状态: 用户状
介绍一些内核给我们提供的用于在内核中创建线程的内核接口函数。 其实在linux内核中,无论是进程还是线程,都是用struct task_struct结构体来表示的。 用于创建一个内核线程的函数: struct task_struct * kthread_create
原创
2014-11-26 13:54:52
8681阅读
时钟中断:是硬件中的定时器以固定的时间产生一次中断。 时钟中断频率:1s中的时钟中断次数; 我们可以通过更改相应的配置,来改变一个系统的时钟中断频率。 先来看看X86平台上的时钟中断频率:
原创
2014-11-26 20:39:47
8303阅读
转自:http://blog.csdn.net/joard_yang/article/details/6225937译自:linux-2.6.31.14/Documentation/input/multi-touch-protocol.txt简介 为了使用功能强大的多点触控设备,就需要一种方案去上...
转载
2016-01-07 01:24:00
135阅读
2评论
linux内核系统调用API源码路径:include\linux\syscalls.h源码:/* * syscalls.h - Linux syscall interfaces (non-ar
原创
2022-09-19 13:57:10
547阅读
# 如何实现Linux内核提供接口给Python调用
在现代软件开发中,Python被广泛使用,其简洁的语法和强大的库使得它非常适合快速开发应用程序。然而,在某些情况下,我们需要通过Python调用Linux内核提供的接口,以实现更底层的功能。这篇文章将指导你如何实现这一目标,注意本文假设你已经具备一定的Linux和Python基础。
## 整体流程
在我们开始之前,先概述一下整个流程。以下
原创
2024-08-01 13:07:25
106阅读
linux内核中的sort函数,事实上跟我们所说的qsort函数非常像,我们来看看qsort: qsort 的函数原型是 void qsort(void*base,size_t num,size_t width,int(__cdecl*compare)(const void*,const void*
转载
2017-07-11 17:57:00
379阅读
2评论
Linux内核的特点: 结合了unix操作系统的一些基础概念Linux内核的任务: 1.从技术层面讲,内核是硬件与软件之间的一个中间层。作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。 2.从应用程序的层面讲,应用程序与硬件没有联系,只与内核有联系,内核是应用程序知道的层次中的最底层。在实际工作中内核抽象了相关细节。 3.内核是一个资源管理程序。负责将可用的