在Linux 驱动程序中,可以使用等待队列来实现阻塞进程的唤醒。等待队列的头部定义如下,是一个双向列表。 struct list_head { struct list_head *next, *prev; }; struct __wait_queue_head { spinlock_t lock; ...
分类:
系统相关 时间:
2019-11-18 20:34:56
阅读次数:
111
linux驱动程序开发1、linux驱动工程师需要具备的知识 1)硬件的知识 看懂电路原理图 (二极管 三极管 电阻...) 底板和核心板中名称相同的导线是同一条导线 目的:找到要驱动的硬件和CPU的连接方式 熟悉常见的接口:gpio uart i2c 1-wire spi 485 can usb ...
分类:
其他好文 时间:
2019-11-12 20:30:14
阅读次数:
111
linux驱动 面试题 1.解释命令ls -amore具体含义.2.LINUX中的管道指什么重定向又指什么3.GCC -g -o test.elf test.c的具体含义.4.浅述GCC编译器在编译时都有哪几个过程5,在题3的基础上编写一MAKEFILE文件,要求能自动完成编译和清除功能6.说明uc ...
分类:
系统相关 时间:
2019-11-07 19:03:17
阅读次数:
128
1、前言在嵌入式系统中,许多SoC的内部都包含了pin控制器,通过芯片内部的pin控制器,我们可以配置一个或者一组引脚的状态和功能特性,Linux内核为了统一各SoC厂商的引脚管理,提供了pinctrl子系统。 2、引脚功能分类嵌入式芯片手册往往有一个GPIO控制的章节来描述SoC的引脚如何进行配置 ...
分类:
系统相关 时间:
2019-11-04 21:36:37
阅读次数:
216
矩阵化一维 前缀和思想: for(ri i=1;i<=n;i++) for(ri j=1;j<=m;j++) { scanf("%lld",&arr[i][j]); arr[i][j]=arr[i-1][j]+arr[i][j-1]-arr[i-1][j-1]+arr[i][j]; } 应用: 题目 ...
分类:
其他好文 时间:
2019-10-30 13:31:31
阅读次数:
107
一、驱动更新 本示例为更新网卡驱动,把新的驱动文件放到/root/目录下,然后执行下面的命令 1. 备份已有的文件,将新的文件复制的相应位置 mv /lib/modules/ /kernel/drivers/net/ethernet/intel/i40e/i40e.ko /tmp cp /root/ ...
分类:
系统相关 时间:
2019-08-21 11:15:45
阅读次数:
111
P. S. 其实在 Win 10 上也可以装老版本的 VirtualBox 然后再安装 Fedora,是我傻逼了。 现在我对装系统编译内核已经轻车熟路了,这里还是记录一下大概的步骤吧。 ...
分类:
系统相关 时间:
2019-08-03 12:49:06
阅读次数:
107
今天记录一下简单的Linux驱动程序怎么写以及如何加载/卸载驱动 以hello.c为例: hello.c #ifndef __KERNEL__ # define __KERNEL__ #endif #ifndef MODULE # define MODULE #endif #include <lin ...
分类:
系统相关 时间:
2019-06-21 22:17:38
阅读次数:
214
wireless_tools交叉编译: 1.cd wireless_tools.29 2.mkdir __install 3.git df Makefile 4.make 5.make install ...
分类:
其他好文 时间:
2019-06-17 20:42:45
阅读次数:
153
Kobjects Sysfs Operations Buses, Devices, and Drivers Classes Firmware ...
分类:
系统相关 时间:
2019-05-27 11:48:01
阅读次数:
167