E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux驱动-mstar
I2C子系统面试指南:基础原理、经典问答与答题技巧全解析
不管你是应聘
Linux驱动
开发、嵌入式软件工程师、SoC底层支持,还是BSP/系统调试,I2C的核心架构和调试经验都是面试高频关注点。掌握I2C子系统,关键不止是能写驱动,更
嵌入式Jerry
·
2025-07-02 21:14
Linux+内核
面试
职场和发展
linux
服务器
运维
单片机
java
linux驱动
开发(20)-DMA(四)
分散/聚集映射分散/聚集映射通过将虚拟地址上分散的DMA缓冲区通过一个类型为structscatterlist的数组或者链表组织起来,然后通过一次的DMA传输操作在主存RAM与设备之间传输数据,如图所示:图中显示了主存中三个分散的物理页面与设备之间进行的一次DMA传输时分散/聚集映射示意,其中单个物理页面与设备之间可以看做是一个单一的流式映射,每个这样的单一映射在内核中有数据结构structsca
yyc_audio
·
2025-06-29 23:46
linux驱动开发
驱动开发
linux
服务器
Linux 设备树详解:从概念到实战
关键词:设备树(DeviceTree)、DTS、DTC、DTB、嵌入式
Linux驱动
开发为什么需要设备树?在旧版Linux内核中,硬件信息(如内存映射、外设地址、中断号等)直接硬编码在内核源码中。
Jay_515
·
2025-06-28 09:40
Linux
学习
嵌入式
linux
设备树
Linux 驱动开发详解:从入门到实践
本文带你深入理解Linux内核驱动的核心机制,掌握从零编写字符设备驱动的完整流程一、
Linux驱动
概述:内核与硬件的桥梁
Linux驱动
是操作系统内核的一部分,负责管理硬件设备并向上层应用程序提供统一接口
Jay_515
·
2025-06-28 09:39
Linux
学习
linux
驱动
嵌入式
【
Linux驱动
开发 ---- 4.3_设备树配置与查看】
Linux驱动
开发----4.3_设备树配置与查看目录
Linux驱动
开发----4.3_设备树配置与查看1.查看设备树文件并理解设备节点的定义示例:查看设备树文件设备树节点示例:2.在设备树中增加自定义设备节点操作步骤
南窗的雨
·
2025-06-23 21:45
Linux开发
linux
驱动开发
运维
人工智能
ubuntu
架构
c语言
01-驱动开发开篇
概述这个主题已经构思了很久,也犹豫了很久,网上讲述
linux驱动
开发的博主非常多,我在想,我能给我读者带来什么呢。
A-花开堪折
·
2025-06-23 18:56
ARM
Linux驱动
linux
嵌入式硬件
Linux驱动
开发:Platform总线全解析
Linux驱动
开发专题:Platform总线详解目录
Linux驱动
开发专题:Platform总线详解1.前言2.Linux设备模型简介3.Platform总线简介Platform总线特点:4.Platform
隐身模式
·
2025-06-23 09:01
linux
驱动开发
Linux驱动
开发笔记4:新字符设备驱动
字符设备驱动开发重点是使用register_chrdev函数注册字符设备,当不再使用设备的时候就使用unregister_chrdev函数注销字符设备,驱动模块加载成功以后还需要手动使用mknod命令创建设备节点。新字符设备驱动:动态分配和释放设备号、自动创建设备节点、设置文件的私有数据。动态分配和释放设备号如果没有指定设备号的话就使用如下函数来申请设备号:intalloc_chrdev_regi
·
2025-06-22 20:59
【Linux 驱动中的 I/O 模型】
Linux驱动
中的I/O模型一、等待队列(WaitQueue)1.1原理与概念1.2代码示例1.3应用场景二、非阻塞访问(Non-blockingI/O)2.1原理与概念2.2代码示例2.3应用场景三、
mmoyula
·
2025-06-21 18:08
Android系统开发
linux
驱动开发
android
framework
【
Linux驱动
开发 ---- 4_驱动开发框架和 API】
Linux驱动
开发----4_驱动开发框架和API目录
Linux驱动
开发----4_驱动开发框架和API目标:1.Linux设备模型(LinuxDeviceModel)**设备模型的核心概念**:2.设备树
南窗的雨
·
2025-06-21 03:38
Linux开发
linux
驱动开发
人工智能
c++
c语言
嵌入式硬件
ubuntu
Linux驱动
程序(PWM接口)与超声波测距
一、利用阿里云服务器实现树莓派外网访问(SSH反向代理)1.树莓派端配置步骤1:安装SSH服务(若未安装)sudoapt-getinstallopenssh-server步骤2:创建反向代理连接-p22:指定阿里云服务器的SSH端口-qngfN:静默模式、后台运行、不分配伪终端-R:反向代理参数2222:阿里云服务器用于映射的端口(需自行定义未被占用的端口)username:阿里云服务器登录用户名
Yu_
·
2025-06-20 19:11
linux
linux驱动
开发(10)- 互斥锁mutex
用count=1的信号量实现的互斥方法不是Linux下经典的用法,Linux内核针对count=1的信号量重新定义了一个新的数据结构structmutex,一般都称其为互斥锁或者互斥体。同时内核根据使用场景的不同,把用于信号量的DOWN和UP操作在structmutex上作了优化与扩展,专门用于这种新的数据类型。互斥锁的定义与初始化互斥锁mutex的概念本来就来自semaphore,如果去除掉那些
yyc_audio
·
2025-06-16 10:04
linux驱动开发
驱动开发
linux
服务器
linux驱动
开发(9)- 信号量
相对于自旋锁,信号量的最大特点是允许调用它的线程进入睡眠(休眠)状态。这意味着试图获得某一信号量的进程会导致对处理器拥有权的丧失,也即出现进程的切换。我们记忆的时候可以把信号量想象成信号灯(红绿灯),获取不到信号量(红灯)的时候,需要休眠(排队等待)。休眠实际上也就是进入CPU调度的一个队列里面。信号量的定义与初始化信号量的定义如下:structsemaphore{spinlock_tlock;u
yyc_audio
·
2025-06-14 14:44
linux驱动开发
linux
驱动开发
运维
Linux驱动
开发并发与竞争 信号量使用 互斥体(Mutex)使用
信号量在
Linux驱动
开发中,信号量是一种重要的同步机制,用于控制对共享资源的访问,防止并发访问造成的数据不一致或竞争条件。以下是对信号量的详解,包括定义、使用方式、相关API、示例代码及注意事项。
Narcotis
·
2025-06-13 17:53
linux
驱动开发
学习
c++
arm开发
硬件工程
linux驱动
开发(6)-内核虚拟空间管理
vmalloc与vfreevmalloc函数也是内核模块会使用到的一个内存分配函数,它的特点是分配的虚拟地址空间是连续的,但是这段虚拟地址空间所映射的物理地址可能是不连续的。vmalloc函数主要对vmalloc区进行操作,它返回的虚拟地址就来自于该区域。在驱动程序中并不鼓励使用vmalloc函数,这主要是出于以下几个方面的考虑:首先,vmalloc的实现机制决定了它的使用效率没有kmalloc这
yyc_audio
·
2025-06-13 16:19
linux驱动开发
linux
驱动开发
Linux驱动
中mmap内存映射详解
mmap在linux哪里?什么是mmap?上图说了,mmap是操作这些设备的一种方法,所谓操作设备,比如IO端口(点亮一个LED)、LCD控制器、磁盘控制器,实际上就是往设备的物理地址读写数据。但是,由于应用程序不能直接操作设备硬件地址,所以操作系统提供了这样的一种机制——内存映射,把设备地址映射到进程虚拟地址,mmap就是实现内存映射的接口。操作设备还有很多方法,如ioctl、ioremapmm
书桐先生
·
2025-06-12 16:23
linux
mmap
嵌入式软件开发就业面试题。2022最新,最全总结。
7.
Linux驱动
程序的功能是什么?8.
Linux驱动
程序的分类有哪些?9.内核程序中申请内存使用什么函数?10.内核程序中申请内存和应用程序时申请内存有什么区别?11.自旋锁和信号
Execution_
·
2025-06-11 20:06
嵌入式软件面试题
面试
c语言
c++
linux
单片机
Linux阻塞和非阻塞IO
二、阻塞等待队列1.等待队列头2.等待队列项3.将队列项添加/移除等待队列头4.唤醒等待5.等待事件三、非阻塞轮询1.select2.poll3.epoll四、
Linux驱动
下的poll总结前言阻塞和非阻塞
-又又-
·
2025-06-11 15:06
linux
arm开发
c语言
嵌入式硬件
物联网
【Zephyr基础开发系列】01_Ubuntu搭建Zephyr环境
与常见的小型嵌入式RTOS相比,Zephyr继承了
Linux驱动
开发的优点,即采用了驱动(driver)-应用(app)分离的开发方式。----什么叫驱动与应用分离?
jz-炸芯片的zero
·
2025-06-11 00:41
Zephyr基础
linux
物联网
iot
驱动开发
mcu
XDMA pcie环路测试
环境,进行相关驱动开发,打驱动,然后进行应用层数据读写操作参考:(WIN)S04-CH01PCIEXDMA开发环境搭建以及环路测试-4-PCIEUISRC工程师开源站-三、如果是和ARM交互,那就是使用
linux
hahaha6016
·
2025-06-06 00:27
硬件设计
fpga开发
[
Linux驱动
开发一]最简单的内核模块
目录一、预备知识1.1什么是内核模块?1.2Linux内核模块组成部分二、源码编写1.1hello.c源码编写1.2Makefile编写三、源码编译3.1make编译3.2insmod加载内核模块3.3rmmod移除内核模块3.4查看内核模块3.4.1lsmod命令3.4.2cat/proc/modules3.4.3ls/sys/module/hello/3.5dmesg查看模块输出四、小结相关代
TD祥
·
2025-06-02 18:53
Linux驱动编程
驱动开发
linux
运维
Linux 驱动开发-模块加载过程
Linux驱动
开发->模块加载过程Linux内核加载模块的过程是一个复杂的系统操作,涉及多个步骤和子系统。
one客
·
2025-06-02 18:52
linux
驱动开发
arm开发
linux驱动
开发(1)-内核模块
内核模块模块最大的好处是可以动态扩展应用程序的功能而无须重新编译链接生成新的应用程序镜像,在微软的Windows系统上动态链接库DLL(DynamicLinkLibrary),Linux系统上的共享库so(sharedobject)文件的形式都属于广义上的模块。内核模块可以在linux内核运行期间动态扩展内核功能而无须重新启动系统,更无须为这些新增的功能重新编译一个新的系统内核镜像。内核模块的这个
yyc_audio
·
2025-06-02 18:19
linux驱动开发
linux
驱动开发
运维
LInux驱动
开发笔记(十)SPI子系统及其驱动
文章目录前言一、SPI驱动框架二、总线驱动2.1SPI总线的运行机制2.2重要数据结构2.2.1spi_controller2.2.2spi_driver2.2.3spi_device2.2.4spi_transfer2.2.5spi_message三、设备驱动的编写3.1设备树的修改3.2相关API函数3.2.1spi_setup()3.2.2spi_message_init()3.2.3spi
云雨歇
·
2025-05-31 15:18
Linux驱动开发笔记
linux
驱动开发
笔记
实时操作系统革命:实时
Linux驱动
的智能时代底层重构
一、智能时代对实时性的终极挑战在万物互联的智能时代,人类对机器响应速度的期待已突破物理极限。当工业机器人以亚毫米级精度执行微米级加工任务,当自动驾驶系统在130公里时速下需在10毫秒内完成决策切换,当医疗机器人需在5毫秒内响应神经电信号——这些场景共同指向一个核心命题:如何构建具备确定性响应能力的数字神经系统。这种需求催生了实时操作系统(RTOS)的技术革命,而实时Linux凭借其开源架构与模块化
望获linux
·
2025-05-28 06:32
行业Linux
linux
重构
运维
嵌入式软件
开源软件
操作系统
Linux系统时间同步与时区设置全攻略:适用于CentOS与Ubuntu的实用方法_centos 同步时间
最全的Linux教程,Linux从入门到精通======================linux从入门到精通(第2版)Linux系统移植
Linux驱动
开发入门与实战LINUX系统移植第2版Linux开源网络全栈详解从
m0面试大全
·
2025-05-26 03:47
程序员
linux
centos
ubuntu
Linux网络编程实战介绍
文章目录前言一、Linux网络编程介绍二、文章目录总结前言本专栏将为大家讲解Linux网络编程的知识,本专栏只需要有C语言基础即可学习,学习本专栏将大大提高你的C语言水平,当然了我也还会在ARM板子上进行实验将
Linux
花落已飘
·
2025-05-22 16:34
Linux网络编程实战
网络
linux
运维
嵌入式
Linux驱动
复习(2)imx6ull的GPIO操作
1、GPIO模块一般结构a.有多组GPIO,每组有多个GPIOb.使能:电源/时钟c.模式(Mode):引脚可用于GPIO或其他功能d.方向:引脚Mode设置为GPIO时,可以继续设置它是输出引脚,还是输入引脚e.数值:对于输出引脚,可以设置寄存器让它输出高、低电平对于输入引脚,可以读取寄存器得到引脚的当前电平2、GPIO寄存器操作a.芯片手册一般有相关章节,用来介绍:power/clock可以设
花间游想驾驭谁就驾驭谁
·
2025-05-20 23:31
嵌入式linux驱动
嵌入式Linux
arm
linux
驱动开发
学习
虹科技术|全新Linux环境PCAN驱动程序发布!CAN/CAN FD通信体验全面升级!
全新8.17.0版本的PCAN-
Linux驱动
程序正式发布,专为CAN和CANFD接口量身打造。无论是CAN2.0a/b还是CANFD的PCAN硬件产品,都能在我们的新驱动下“驰骋自如”。
虹科汽车智能互联
·
2025-05-19 23:29
CAN/CAN
FD总线
CAN总线通信
PCAN驱动
Linux环境
【
Linux驱动
】Linux 按键驱动开发指南
Linux按键驱动开发指南1、按键驱动开发基础1.1.按键驱动类型Linux下的按键驱动主要有两种实现方式:输入子系统驱动:最常用,通过input子系统上报按键事件字符设备驱动:较少用,需要自己实现文件操作接口1.2.输入子系统框架推荐使用input子系统实现按键驱动,主要组件:input_register_device()-注册输入设备input_report_key()-上报按键事件input
qq2108462953
·
2025-05-19 12:12
Linux驱动
linux
驱动开发
OpenHarmony系统HDF驱动开发介绍(补充)
Linux驱动
:配置文件DTS+驱动源码。二、HCS文件简介HCS(HDFConfigurationSource
天夏已微凉
·
2025-05-15 17:00
音频
OpenHarmony
驱动开发
音视频
harmonyos
Image Signal Processor(ISP)技术总结
代码风格Google开源项目风格指南ISPdriver总结
linux驱动
之ioctlCMOS传感器分类[1].CMOS图像传感器是高倾频高分辨率CMOS相机系统的核也组成部分,是整个系统的"眼睛"。
chinamaoge
·
2025-05-15 07:56
图像处理技术
isp
Windows CMD通过adb检查触摸屏
Linux驱动
是否被编译
检查CONFIG_TOUCHSCREEN_GT9XX是否启用,检查内核是否编译了GoodixGT9XX系列触摸屏的驱动支持WindowsCMD.exe输入:adbshell“zcat/proc/config.gz|grepCONFIG_TOUCHSCREEN_GT9XX”如果返回CONFIG_TOUCHSCREEN_GT9XX=y,表示驱动已编译进内核如果返回CONFIG_TOUCHSCREEN_
ShaneLab
·
2025-05-14 23:33
嵌入式Linux
adb
linux
运维
1.
linux驱动
开发前准备工作
1.
Linux驱动
开发前准备工作1.1nfs下烧写linux系统a.编译linux-3.5内核[root@localhostLinux]#tar-jzvflinux-3.5.tar.bz2[root@localhostLinux
songze_lee
·
2025-05-12 21:05
Linux驱动
Linux 驱动开发步骤及 SPI 设备驱动移植示例
Linux驱动
开发的一般步骤硬件了解:深入研究目标硬件设备的工作原理、寄存器映射、电气特性、中断机制等。例如,若开发网卡驱动,需清楚网卡如何与网络介质交互、数据包的收发流程、硬件缓冲区的管理等。
前进的程序员
·
2025-05-08 15:50
软件开发
linux
驱动开发
运维
platform总线(
Linux驱动
开发篇)
简单介绍platform驱动中的led驱动,input设备驱动,i2c驱动,spi驱动1.Platformled驱动最简单的了解platform平台的例子,可以理解为3部分,由驱动层,系统核心层,设备驱动三部分组成:驱动层:硬件设备注册部分。系统核心层:无设备驱动层:设备端的实现,如led闪烁等实际上之所以这里分成3部分,是为了与后面的设备驱动程序对应起来。使用步骤示例:(1)platform_d
栋哥爱做饭
·
2025-05-08 07:04
驱动开发
linux
ARM_
Linux驱动
开发——字符设备驱动开发(上)
目录一、
Linux驱动
开发思维二、
Linux驱动
开发分类三、“ARM_
Linux驱动
开发——字符设备驱动开发”字符设备驱动简介前言在分享
Linux驱动
开发之前,我想带大家首先回顾一下裸机驱动开发和
Linux
小小_扫地僧
·
2025-05-08 07:34
Linux
b树
数据结构
Linux驱动
开发: Linux下RTC实时时钟驱动
Linux内核版本:3.51.1Linux下RTC时间的读写分析1.1.1系统时间与RTC实时时钟时间Linux系统下包含两个时间:系统时间和RTC时间。系统时间:是由主芯片的定时器进行维护的时间,一般情况下都会选择芯片上最高精度的定时器作为系统时间的定时基准,以避免在系统运行较长时间后出现大的时间偏移。特点是掉电后不保存。RTC时间:是指系统中包含的RTC芯片内部所维护的时间。RTC芯片都有电池
DS小龙哥
·
2025-05-08 01:55
Linux系统编程与驱动开发
linux
STM32MP157A单片机移植
Linux驱动
深入版
需求整理在Linux设备树中新增leds节点,其有3个gpio属性,分别表示PE10对应led1,PF10对应led2,PE8对应led3,设备树键值对如下:leds{led1-gpio=;led2-gpio=;led3-gpio=;};内核驱动实现对灯控模块的初始化函数、模块退出函数、灯控模块各回调函数(open/release/unlocked_ioctl/read/write)。应用程序实现
Johnson Sheng
·
2025-05-07 21:00
单片机
stm32
linux
[实战] Peta
linux驱动
开发以及代码框架解读
目录Peta
linux驱动
开发以及代码框架解读一、引言二、步骤2.1创建PetaLinux工程2.2配置硬件描述文件2.3设备树配置2.4建立驱动框架2.5编辑`.bb`文件2.6编写驱动文件2.7编写
开发者认证为什么要改昵称呢
·
2025-05-02 20:00
驱动开发
linux
c语言
嵌入式硬件
驱动开发硬核特训 · Day 11(下篇):从 virtio_blk 看虚拟总线驱动模型的真实落地
在上篇中,我们已经从理论视角分析了“虚拟总线驱动模型”在
Linux驱动
体系中的独特定位。
嵌入式Jerry
·
2025-05-01 01:23
Linux+内核
驱动开发
嵌入式硬件
linux
嵌入式编程中应如何使用 mmap 访问 CPU 寄存器
/dev/memmmap详解
Linux驱动
虚拟地址和物理地址的映射嵌入式Linux应用程序如何读取(修改)芯片寄存器的值file-C-Buserrorwhenusingmmap-StackOverflowmmap
·
2025-04-26 22:43
typescript
嵌入式
Linux驱动
开发:LED实验
在嵌入式
Linux驱动
开发中,LED实验可以通过多种方式实现,主要包括设备树下的LED实验、新字符设备驱动的LED实验和GPIO子系统的LED实验。
阿牛的药铺
·
2025-04-26 22:14
LINUX驱动学习
linux
驱动开发
运维
嵌入式编程中应如何使用 mmap 访问 CPU 寄存器
/dev/memmmap详解
Linux驱动
虚拟地址和物理地址的映射嵌入式Linux应用程序如何读取(修改)芯片寄存器的值file-C-Buserrorwhenusingmmap-StackOverflowmmap
·
2025-04-26 14:30
typescript
在
Linux驱动
开发中使用DeepSeek的方法
在
Linux驱动
开发领域,DeepSeek作为一款强大的人工智能工具,能够为开发者提供多方面的有力支持,显著提升开发效率与质量。接下来将详细介绍如何利用DeepSeek助力
Linux驱动
开发工作。
前进的程序员
·
2025-04-24 20:02
人工智能
linux
运维
服务器
人工智能
linux sysfs使用cat无显示的原因:返回值未赋值
在
Linux驱动
中通过sysfs定义的文件使用cat命令无显示,通常由以下原因导致:1.show函数未正确实现原因:show函数(如show_status)未正确填充缓冲区或返回有效字节数。
liuluyang530
·
2025-04-21 21:33
linux
驱动
sysfs
泰山派GPIO子系统驱动---亮灯
本人
linux驱动
小白,文章基于B站up主李Sir______视频内容记录,做笔记用。如有错误欢迎指正。本文将以开发板第40引脚GPIO3_B4作为LED灯珠的控制引脚,高电平灯亮,低电平灯灭。
年纪青青
·
2025-04-20 15:07
linux
个人笔记
随笔
linux函数练习
linux
gpio驱动
泰山派
【嵌入式Linux】学习路径
从今天开始,我将围绕这块开发板,利用工作空闲时间对嵌入式
Linux驱动
和应用做一个系统的学习。如果你也是一个初学者,对于嵌入式Linu
all of the time
·
2025-04-20 04:51
Linux
linux
学习
运维
[实战]
linux驱动
框架与驱动开发实战
linux驱动
框架与驱动开发实战
Linux驱动
框架与驱动开发实战一、
Linux驱动
框架概述1.1
Linux驱动
的分类1.2
Linux驱动
的基本框架二、
Linux驱动
关键API详解2.1模块相关API2.2
jz_ddk
·
2025-04-15 23:44
linux
驱动开发
运维
c语言
嵌入式硬件
Linux驱动
开发 platfrom架构驱动介绍
Linux驱动
的platform架构主要用于嵌入式设备中,它是Linux内核设备模型的一部分,旨在简化设备驱动的开发。
Narcotis
·
2025-04-01 00:16
linux
架构
驱动开发
学习
c++
arm开发
嵌入式硬件
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他