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--驱动开发
linux
驱动开发
:Linux 内核的一些函数
1、MKDEV(ma,mi)构造设备号,将主设备号和次设备号转换为设备号类型(dev_t)。MKDEV宏将主设备号(ma)左移20位,然后与次设备号(mi)相与,得到设备号。dev_t结构主设备号12位
吻等离子
·
2023-07-18 11:39
嵌入式
算法
全志F1C200S嵌入式
驱动开发
(spi-nand驱动)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】和v3s一样,f1c200s也支持tf卡、spi-nor、spi-nand启动。前面也说过,tf卡由于机械结构的原因,更适合拿来学习,spi-nor和spi-nand比较适合用来进行工业部署和消费娱乐领域。只是spi-nor容量较小,一般最大也就32MB,spi-nand较大一点,可以达到128MB,因
嵌入式-老费
·
2023-07-18 11:06
全志soc嵌入式开发
驱动开发
Windows
驱动开发
环境搭建
Windows
驱动开发
环境搭建及windbg调试工具安装使用引言了解Windows
驱动开发
环境下载Windows
驱动开发
环境根据需要下载安装对应版本的VisualStudio下载安装对应的WDK工具包编写第一个驱动代码总结参考资料引言对于
跑不了的你
·
2023-07-18 10:08
Windows驱动
windows
驱动开发
Linux--
在vim中查看man手册中某个函数的库函数 !man 函数名
比如我用到fork函数,但是我不知道它的库函数,在不想退出vim的情况下,我们可以在命令模式下输入以下指令:!manfork示例:注:默认打开的是man手册最底部,需要往上翻才能找到库函数
一念男
·
2023-07-18 09:53
Linux
linux
Linux--
进程替换(转载)
目录0.引入1.替换原理2.替换函数execlexecvexeclpexecleexecvpexecvpeexecve3.调用自定义程序4.exec函数解释5.命名理解0.引入创建子进程的目的是什么?就是为了让子进程帮我执行特定的任务让子进程执行父进程的一部分代码如果子进程想执行一个全新的程序代码呢?那么就要使用进程的程序替换为什么要有程序替换?也就是说子进程想执行一个全新的程序代码!这份代码看似
一念男
·
2023-07-18 02:59
Linux
linux
运维
服务器
Linux--
回收僵尸子进程:waitid,waitpid
waitid:pid_twait(int*status);注:①status==NULL,表明不管子进程现在是什么状态,我都要等②wait(NULL)时,它将暂停执行,直到任何一个子进程终止。在等待期间,父进程会阻塞,并且不会继续执行后面的代码,直到子进程结束或出现错误。③返回值:如果执行成功则返回子进程识别码(PID),如果有错误发生则返回-1.失败原因存于errno中.waitpid:pid_
一念男
·
2023-07-17 20:17
Linux
linux
服务器
全志F1C200S嵌入式
驱动开发
(解决reboot失败的问题)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】上一次做了rootfs之后,就马不停蹄地测试了几个常用的命令。比如cd、ls、date、time、reboot这样的命令。其他命令测试结果都还好,就是这个reboot命令当死就没有生效,现场的打印结果是这样的,#reboot#Stoppingnetwork:ifdown:interfacelonotco
嵌入式-老费
·
2023-07-17 19:25
全志soc嵌入式开发
驱动开发
Linux--
进程等待wait/waitpid && status详解 && (非)阻塞等待(代码)(转载)
文章目录进程等待原因进程等待方法waitwaitpid获取子进程status(非)阻塞等待进程的非阻塞等待方式代码进程的阻塞等待方式代码进程等待原因fork创建了子进程,子进程帮父进程完成某种任务后,父进程需要用wait或者waitpid等待子进程的退出。那为什么要进程等待?1、通过获取子进程退出的消息,父进程可以得知子进程的执行结果。2、进程等待可以保证子进程先退出,父进程后退出。3、子进程退出
一念男
·
2023-07-17 18:39
linux
Linux--
阻塞等待和非阻塞等待
阻塞等待:一般都是在内核中阻塞,等待被唤醒例如scanf和cin,只要运行到这里时,键盘不输入,程序就会一直挂在这儿非阻塞等待:我们的父进程通过调用waitpid来进行等待,如果子进程没有退出,我们waitpid这个系统调用,立马返回!
一念男
·
2023-07-17 18:07
Linux
linux
全志F1C200S嵌入式
驱动开发
(制作根文件系统)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】前两天我们制作f1c200s内核的时候,其实已经使用了根文件系统。只不过当时使用的系统是v3s的根文件系统,没有运行起来,这也算正常。毕竟f1c200s和v3s的cpu是不一样的,一些指令肯定有所差别。所以我们有必要使用arm-linux-gnueabi-gcc7.2的版本来对buildroot重新编一
嵌入式-老费
·
2023-07-17 12:40
全志soc嵌入式开发
驱动开发
全志F1C200S嵌入式
驱动开发
(sd卡驱动)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】说是sd卡,其实是microsd卡,或者称之为tf卡更合适。一般的soc都支持从tf卡启动,所以用tf卡来学习soc、驱动和linux,对新人来说是比较合适的。前面我们已经用sd卡构建了一个类似于最小软件框架的系统,使得linux可以顺利在f1c200s上面运行起来。这说明了两个问题,第一,uboot包
嵌入式-老费
·
2023-07-17 12:08
全志soc嵌入式开发
驱动开发
驱动开发
—day8
1、在内核模块中启用定时器,定时1s,让led1闪烁#include#include#include#include#include#includestructdevice_node*dnode;structgpio_desc*gpiono;//定义定时器对象structtimer_listmytimer;unsignedintstate=0;//定义定时器处理函数voidmytimer_func
三只小鸹貔
·
2023-07-17 10:03
驱动开发
全志F1C200S嵌入式
驱动开发
(串口驱动)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】对于uboot、kernel和rootfs来说,他们的串口输出一般都是uart0。一般这么做,是没有问题的。只不过我们自己买的这块f1c200s电路板,设计者把uart转ttl的接口,改接到了uart1上面。不过这样也没有关系,我们正好可以学习下,在f1c200s下面如何添加新的串口驱动。1、找到需要添
嵌入式-老费
·
2023-07-17 10:32
全志soc嵌入式开发
驱动开发
2020-05-30 Mac OS 配置OpenGL环境
有关OpenGL,GLFW和GLADOpenGL是一个标准,具体实现由
驱动开发
商对特定显卡实现GLFW:是针对OpenGL的C语言库,提供了渲染物体所需的最低限度接口,允许创建OpenGL上下文。
Daniel梁
·
2023-07-17 10:22
uboot-uboot网络初始化分析
、选择网络初始化函数二、通用初始化eth_common_init()驱动内容board_eth_init网络注册函数前言@和原子哥一起学习Linux开发环境:I.MX6Ull开发板参考内容:正点原子的
驱动开发
教程
子歌的宏定义
·
2023-07-17 10:42
linux
阿尔法开发板
网络
驱动开发
ACP-敏捷方法的实现
常用的敏捷实践包含:精益、看板、Scrum、XP极限编程、水晶、DSDM动态系统开发、FDD功能
驱动开发
、AUP敏捷统一过程、OpenUP。《敏捷实践指南》将敏捷方法和看板方法是为精益方法的子集。
旺财是只猫
·
2023-07-17 05:46
Linux--
基础IO
目录1.打开文件1.1系统调用与库函数1.2系统调用接口1.2.1open1.2.2write2.默认打开的三个流2.1内存文件与磁盘文件3.文件描述符的本质3.1原理3.1.1用接口函数举例3.2分配规则3.2FILE是什么3.3重定向3.3.1dup2函数1.打开文件文件是由进程打开读写的,也是由进程关闭的;那么平时在使用printf等函数的时候,为什么不需要先打开文件?因为任何进程在运行的时
久菜
·
2023-07-17 02:42
操作系统
linux
unix
服务器
混合开发:TDD、DDD和BDD交集的值
目录TDD测试
驱动开发
:Test-drivendevelopment,即测试
驱动开发
BDD行为
驱动开发
:Behavior-drivendevelopment,即行为
驱动开发
DDD领域驱动设计:Domain-driveDesign
程序猿鬼谷子
·
2023-07-16 11:25
嵌入式学习(五)——嵌入式Linux设备
驱动开发
(二)
:电子工程学院转自:https://blog.csdn.net/light_in_dark/article/details/73368942【嵌牛导读】:对于嵌入式系统的学习来说,学习嵌入式Linux
驱动开发
是十分重要的环节
d895d298aaa1
·
2023-07-16 04:53
面向 C++ 的测试
驱动开发
测试
驱动开发
(TDD)背景及综述测试
驱动开发
是Kent提出的一种新的软件开发流程,现在已广为人知,这种开发方法依赖于极短重复的开发周期,面对开发需求,开发人员要先开发代码测试用例,这些代码实现的测试用例定义了工程要实现的需求
Python编程导师
·
2023-07-15 23:34
2020-06-27:持续集成+测试
驱动开发
-影响Scrum每迭代交付能力的开发实践
持续集成大师MartinFowler对持续集成是这样定义的:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。影响及价值:减少风险:一天中进行多次的集成,并做了相应的
king_ea30
·
2023-07-15 20:51
驱动开发
作业3——GPIO子系统
作业1:在内核模块中启用定时器,定时1s,让LED1以1s为周期实现流水灯myled.c(驱动文件)/**Copyright(c)2023byHuijieXia,AllRightsReserved.*@Author:HuijieXia*@Date:2023-06-2908:56:26*@LastEditTime:2023-07-1115:36:16*@FilePath:/B_Drive/day8/
欲上层楼 再上层楼
·
2023-07-15 20:13
驱动开发
【IMX6ULL
驱动开发
学习】16.睡眠机制_poll机制_fasync异步通知(按键控制LED)
学完了休眠唤醒机制、poll机制、异步通知、定时器、tasklet、工作队列、mmap、input子系统后,该沉淀沉淀了一、睡眠机制案例:APP程序读取按键值-睡眠机制(阻塞或非阻塞)1.等待队列头创建staticDECLARE_WAIT_QUEUE_HEAD(key_waitqueue);2.等待队列wait_event_interruptible(wq,condition);等待wq队列,当c
晨少爱学习
·
2023-07-15 20:39
IMX6ULL
驱动开发
imx6ull
poll
fasync
异步通知
睡眠机制
非阻塞
RT-Thread初识学习-05-设备操作
RTT并没有提供软件包给我们使用,并且我们不需要使用HAL库进行开发,而是想使用RTT给我们的函数,比如下面的rt_device_find()等,那么我们就需要将该设备注册到驱动中,类似于linux的
驱动开发
简单点的学玩
·
2023-07-15 18:18
#
RT_Thread
学习
k210学习篇(六)UART
uart模块主要用于
驱动开发
板上的异步串口,可以自由对uart进行配置。k210一共有3个uart,每个uart可以进行自由的引脚映射。
ODF..
·
2023-07-15 16:25
K210
学习
驱动开发
-day10
驱动代码:#include#include#include#include#include#include#include#include#include#include#include#include#include#includestructcdev*cdev;unsignedintmajor=500;unsignedintminor=0;dev_tdevno;structclass*cls;
三只小鸹貔
·
2023-07-15 08:33
驱动开发
嵌入式linux
驱动开发
之移远4G模块EC800驱动移植指南
回顾下移远4G模块移植过程,还是蛮简单的。一通百通,无论是其他4G模块都是一样的。这里记录下过程,分享给有需要的人。环境使用正点原子的imax6ul开发板,板子默认支持中兴和移远EC20的驱动,这里要移植使用的是移远4G模块EC800。环境准备imax6ul开发板虚拟机(Ubuntu18.04)交叉编译工具链内核源码安装依赖#安装lzop工具,用于生成压缩或解压镜像sudoapt-getinsta
特立独行的猫a
·
2023-07-15 08:32
嵌入式应用开发实战
linux应用开发
linux
驱动开发
运维
全志F1C200S嵌入式
驱动开发
(uboot自动加载kernel和dtb)
【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:
[email protected]
】这两天都在解决linux无法进入rootfs的问题,目前为止还没有什么进展。在处理过程当中,换了编译器、换了kernel、换了buildroot版本,但是都没有从根本上解决这一问题。唯一还没有换的,估计只剩下sd卡了。由于测试过程当中需要一直输入uboot命令,比较麻烦。所以就想着怎么从uboot直接跳
嵌入式-老费
·
2023-07-15 08:57
全志soc嵌入式开发
驱动开发
linux
运维
VS2019重新指定安装路径
0x01:小编想要搭建VS2019
驱动开发
环境;0x02:但是因为没有什么经验,安装VS的时候直接点下一步,事后才发现,安装路径错了,在网上也着了一些文章,有说删注册表啥的,但是从微软的官网了解到,是因为我们的
Configure-Handler
·
2023-07-15 07:23
环境搭建
visual
studio
code
Linux--
信号--信号的产生方式--核心转储--0104
1.什么是信号生活中的信号:红绿灯,狼烟,撤退、集合...。我们认识这些信号,首先是因为自己记住了对应场景下的信号+后续需要执行的动作。如果信号没有产生,我们依旧知道如何处理这个信号。收到信号,我们不一定会马上处理。在我们无法立即处理时,也一定要被先记住。1.2Linux信号本质是一种通知机制,用户或者操作系统通过发送一定的信号,通知进程,某些事情已经发生,需要后续处理。1.3kill-l查看系统
Gosolo!
·
2023-07-15 04:53
Linux
linux
运维
服务器
golang 示例测试example_golang编写测试用例
1.LearnGowithtests当学习一门语言时,最有效的办法不是每一章的去阅读概念,而是通过例子探索学习.如果没有学习过Go语言的,强烈建议通过编写测试学习Go语言,不仅为测试
驱动开发
打下基础,还是可以使用
weixin_39849762
·
2023-07-14 21:02
golang
示例测试example
基于pinctrl与gpio子系统点灯实验,灯不亮问题
基于pinctrl与gpio子系统点灯实验,灯不亮问题实验平台:正点原子alpha开发板,核心板V1.6,底板V2.1芯片:IMX6ULL现象跟着《I.MX6U嵌入式Linux
驱动开发
指南V1.8》第四十五章做实验驱动挂载上了
JasonComing
·
2023-07-14 19:01
linux
imx6ull
pinctrl
gpio
驱动问题
TDD BDD和DDD
TDDTest-drivendevelopment,即测试
驱动开发
。一种开发过程中应用方法。其思想为先根据需求抽象接口,先编写测试用例,然后在开始编写开发代码。
SimpleFunc
·
2023-07-14 18:24
Linux--
虚拟内存地址空间(转载)
目录一.进程地址空间2.验证上述进程地址空间3.LinuxvsWindows二.了解虚拟内存地址空间0.通过代码引出虚拟内存地址空间概念1.什么是虚拟内存地址空间2.虚拟内存地址空间的设计方式三.深入虚拟内存地址空间1.虚拟内存地址空间与物理内存之间的映射2.一个程序经过编译器到进程运行时的过程(帮助理解虚拟与物理之间映射关系)3.虚拟内存地址空间存在的价值四.重新理解fork函数1.为什么会有两
一念男
·
2023-07-14 12:21
Linux
linux
Linux--
批量化注释和删除
批量化注释:1.CTRL+V进入块模式2.H左J下K上L右控制作用范围3.Capslock将输入转化成大写4.输入大写字母I,进入插入模式5.输入//后按ESC6.批量化注释成功批量化删除:1.CTRL+V进入块模式2.H左J下K上L右控制作用范围3.输入d4.批量化删除成功
一念男
·
2023-07-14 12:50
Linux
linux
嵌入式内核及
驱动开发
高级
一、起源仅devfs,导致开发不方便以及一些功能难以支持:热插拔不支持一些针对所有设备的统一操作(如电源管理)不能自动mknod用户查看不了设备信息设备信息硬编码,导致驱动代码通用性差,即没有分离设备和驱动二、新方案uevent机制:sysfs+uevent+udevd(上层app)2.1sysfs:一种用内存模拟的文件系统,系统启动时mount到/sys目录sysfs用途:(类似于windows
码上有
·
2023-07-14 12:16
驱动开发
嵌入式LinuxLED
驱动开发
实验
目录:1.Linux下LED灯的驱动原理1.1.地址映射1.1.1.实际物理地址映射到虚拟地址的函数1.1.2.内存访问函数2.硬件原理图分析3.实验程序编写3.1.驱动程序编写3.2.应用程序编写4.运行测试1.Linux下LED灯的驱动原理我们在裸机实验的时候,都是通过配置底层的寄存器来进行点亮LED灯的操作的。我们现在还没有学习到设备树的相关知识,所以,我们也是通过在字符设备驱动框架的基础上
嵌入式进阶之路
·
2023-07-14 12:44
驱动开发
linux
低代码平台的实现原理
基于模型驱动的可视化开发是当前低代码平台实现的主要实现技术,为什么基于模型
驱动开发
成为了低代码的主要技术途径,本文阐述其基本的实现原理。一、模型驱动原理模型驱动是一种软件开发方法,利用一系列模型的设
冲浪中台
·
2023-07-14 12:09
低代码
python
java
Linux--
验证内存地址空间排布
验证:#include#includeintg_val1=10;intg_val2=20;intg_val3;intg_val4;intmain(intargc,char*argv[],char*env[]){//任务:验证进程地址空间//代码区printf("codeaddress:%p\n",main);//只读常量区constchar*p1="hello";printf("onlyread:
一念男
·
2023-07-14 12:38
Linux
linux
linux lsmod(查看驱动模块)和 ls /dev(驱动设备)
当
驱动开发
人员编写好驱动代码,并生成驱动代码对应的驱动模块后,可以通过insmodxxx.ko将驱动模块(.ko)加载到linux操作系统中。
滨边美波她男友
·
2023-07-14 06:01
linux
内核驱动
linux
运维
服务器
C++的应用方向
1、嵌入式开发嵌入式相关的岗位需求比较多,主要是硬件产品的
驱动开发
,很多大公司,比如华为、小米、vivo和一些芯片公司都在大量的招聘嵌
贝壳里的海-AI
·
2023-07-14 06:24
C++篇
c++
TDD和单元测试
这篇博客的动机是解释测试
驱动开发
中使用的测试的性质和目的。为了避免混淆,我将使用表达式TDD测试来引用测试
驱动开发
环境中使用的测试类型。
闰土月下追猹
·
2023-07-14 05:30
工具
单元测试
tdd
驱动开发
作业4
作业1在内核模块中启用定时器,定时1s,让led1一秒亮,一秒灭全部代码#include#include#include#include#include#include#include#includestructdevice_node*dnode;structgpio_desc*gpiono;structtimer_listmytimer;//定义定时器对象//定义定时器处理函数voidmytim
zjuthqy
·
2023-07-14 04:28
华清远见
驱动开发
驱动开发
作业6
题目要求同作业5,但是使用platform总线注册驱动Repo#include#include#include#include#include#include#include#include#includeintmajor;structclass*cls;structdevice*dev;structresource*res;structdevice_node*dnode;unsignedinti
zjuthqy
·
2023-07-14 04:28
华清远见
驱动开发
Valve 签约开源 Linux 图形
驱动开发
者
导读据外媒phoronix报道,Valve最近聘用了著名开源Linux图形
驱动开发
者AlyssaRosenzweig,以改进开源Linux图形驱动程序堆栈,增强Linux游戏生态系统。
csdn_linuxprobe
·
2023-07-14 04:28
linux
驱动开发
运维
驱动开发
作业1
下面代码中的gpio.h和rcc.h是led项目中的common/include目录下的stm32mp1xx_gpio.h和stm32mp1xx_rcc.h所以不贴代码了,完整的目录查看这个仓库这里直接把GPIOE/GPIOF,RCC结构体的地址映射到虚拟地址中用户空间应用程序的代码没有修改,也不贴上来了,输入1,2,3分别对应开关LED1,2,3#include#include#include#
zjuthqy
·
2023-07-14 04:57
驱动开发
驱动开发
作业2
使用ioctl替换write/read控制LED、蜂鸣器、马达、风扇,并使用udev来自动创建设备文件完整代码目录,请看这个仓库依然使用之前ARM课程中的common中的结构体代码都差不多,就贴个led.c,用户空间测试代码test.c和头文件head.h不同设备dev,cls以及major命名要不同FSMP1A扩展板引脚:LED1,LED2,LED3:PE10,PF10,PE8蜂鸣器:PB6马达
zjuthqy
·
2023-07-14 04:57
驱动开发
驱动开发
作业3
编写LED灯的驱动,创建三个设备文件,每个设备文件和一个LED灯绑定,当操作这个设备文件时只能控制设备文件对应的这盏灯。完整目录,查看这个仓库注册设备驱动对象cdev_add也需要对三个LED分别添加,否则LED2和LED3的设备文件虽然生成,但是无法被用户空间打开#include#include#include#include#include#include#include#include#in
zjuthqy
·
2023-07-14 04:57
华清远见
驱动开发
驱动开发
-day9
驱动代码:#include#include#include#include#include#include#include#include#include#include#includestructcdev*cdev;unsignedintmajor=500;unsignedintminor=0;dev_tdevno;structclass*cls;structdevice*dev;structd
三只小鸹貔
·
2023-07-14 04:52
驱动开发
字符设备
驱动开发
(最初方式)
目录:1.字符设备驱动简介2.字符设备
驱动开发
步骤2.1.驱动模块的加载与卸载2.2.Makefile的编写2.3.字符设备的注册与注销2.3.1.设备号的组成2.3.2.设备号的分配2.4.具体操作函数的实现
嵌入式进阶之路
·
2023-07-14 04:20
驱动开发
linux
ubuntu
上一页
25
26
27
28
29
30
31
32
下一页
按字母分类:
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
其他