linux内核驱动开发
文章平均质量分 88
一个两个四个三
Python领域资深菜鸟,分布式产品边缘开发,经常部署openstack
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
FAE工程师总结
与房产销售,市场销售不一样的是TI的FAE和TSE依靠自己的技术性和对TI产品的了解再结合用户的研发产品为用户进行推荐跟踪解决客户的问题,当然能得到TI支持的客户都是在行业里很有名的公司,比如华为,施耐德,比亚迪等等。必要的时候,也可以踢一下皮球:比如说,客户板子用了自家芯片,又用了别家MCU,出现工作不正常,你只需要把你这边芯片工作原理,和可能出现这种情况的原因说清楚,客户没办法证明一定是你芯片的问题,就可以让他们也联系跟这个问题有关的芯片原厂就可以了。所以,只要是芯片公司,FAE团队是必不可少的。原创 2024-11-04 20:14:22 · 2198 阅读 · 0 评论 -
Linux platform子系统和设备树
Linux内核在启动的时候,要求把设备树文件传递给它。它拿到设备树之后,会解析设备树文件,从而识别设备信息因为设备的信息是针对于特定平台的,如果我们在Linux内核中包含太多设备信息,则Linux内核移植性就会变差。引入设备树之后,设备的信息的描述不再在是以代码的形式存在于Linux内核源代码中dtc,device tree compiler,是将.dts 编译为.dtb需要用到的**编译工具,**是编译设备树的小工具。原创 2024-10-11 16:28:22 · 629 阅读 · 0 评论 -
内核模块编译与内核编程总结
也就是说,如果你确定你要加载的驱动模块不依赖其他驱动模块的话,既可以insmod也可以modprobe,当然insmod可以在任何目录下执行,更方便一些。内核中已加载模块的信息也存在于/sys/module目录下,加载hello.ko后,内核中将包含/sys/module/hello目录,该目录下又有一个refcnt文件和一个sections目录,在/sys/module/hello目录下运行。结构体来描述进程,该结构体中包含描述该进程内存资源、文件系统资源、文件资源、tty资源、信号处理等的指针。原创 2024-09-30 15:18:04 · 1026 阅读 · 0 评论 -
linux 守护进程的实现
【代码】linux 守护进程的实现。转载 2024-09-24 16:47:59 · 213 阅读 · 0 评论 -
insmod & depmod & modprobe的区别及用法
目录下,也就是modprobe加载内核模块之所以不需要指定路径是因为modprobe命令有默认的加载路径。文件中列举了modproe可加载的内核文件以及内核文件所依赖的文件。假如一个内核模块位于。上面已经说过了,用于生成modprobe依赖的。文件中,也无法通过modeprobe命令加载。: modprobe加载内核的文件必须位于。: modeprobe加载内核模块时依赖于。目录下,但是该模块未添加到。原创 2024-09-23 15:56:53 · 598 阅读 · 0 评论 -
一文理解ifneq ($(KERNELRELEASE),)
在第一次读取执行此Makefile时,KERNELRELEASE没有被定义,所以make将读取执行else之后的内容,如果make的目标是clean,直接执行clean操作,然后结束。make将继续读取else之前的内容。else之前的内容为kbuild语法的语句,指明模块源码中各文件的依赖关系,以及要生成的目标模块名。表明然后返回到当前目录继续读入、执行当前的Makefile。指明跳转到内核源码目录下读取那里的Makefile;当make的目标为all时,原创 2024-09-23 15:34:03 · 731 阅读 · 0 评论 -
内核驱动开发之系统移植
没有arm硬件,想在x86宿主机编译arm的目标机内核。(要知道同一个命令,转换为二进制指令,arm和x86架构系统可能是不同的,所以要分别编译)目标机和主机内核架构相同:称为普通编译;架构不同,称为交叉编译file命令:可以查看文件的属性,可以知道是在什么架构下编译的。# 如下:build文件是ELF头 64bit的**小端(LSB表示小端)**可执行程序,arm架构readelf:用于显示elf格式目标文件的信息(windows叫PE头,Linux叫ELF头),如。size::读取可执行程序的大小。原创 2024-09-20 17:02:32 · 1664 阅读 · 0 评论 -
中断IRQ总结
中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。原创 2024-09-11 23:18:14 · 1211 阅读 · 0 评论 -
linux用户态与内核态通信二:Netlink
Netlink是linux提供的用于内核和用户态进程之间的通信方式。但是注意虽然Netlink主要用于用户空间和内核空间的通信,但是也能用于用户空间的两个进程通信。只是进程间通信有其他很多方式,一般不用Netlink。除非需要用到Netlink的广播特性时。转载 2024-09-04 14:54:42 · 614 阅读 · 0 评论 -
linux用户态与内核态通信一:proc文件系统
(1) proc是虚拟文件系统,虚拟的意思就是proc文件系统里的文件不对应硬盘上任何文件,我们用去查看proc目录下的文件大小都是零;(2) proc文件系统是开放给上层了解内核运行状态的窗口,通过读取proc系统里的文件,可以知道内核中一些重要数据结构的数值,从而知道内核的运行情况,也可以方便调试内核和应用程序;转载 2024-09-04 14:48:29 · 534 阅读 · 0 评论 -
step1-模电数电
电路原理、模拟电路、数字电路、微机原理(计算机组成结构、工作原理)、c语言、arm开发(嵌入式领域都是用的arm板)、开发环境(如何搭建嵌入式开发环境,PC机编程环境、运行环境)、应用开发(开发应用入手)、嵌入式OS(操作系统本身原理:调度、进程管理、多线程、中断、定时器、系统移植)、驱动开发。原创 2024-08-26 18:38:52 · 1066 阅读 · 0 评论 -
arm接口技术三--裸机开发环境搭建与GPIO开发步骤总结
工作寄存器地址和内存地址统一编址;对寄存器的操作和内存地址的操作都一样,都可以用指针指向地址,进行读写。原创 2024-08-24 18:41:22 · 934 阅读 · 0 评论 -
arm接口技术一--arm核总结
ARM是的缩写。ARM是一家微处理器企业,设计了大量的高性能、廉价、低功耗的RISC处理器。ARM只设计芯片,不生产,授权半导体厂商并提供服务。ARM11之后,ARM核命名为Cortex,分为三个系列:A、R、M。A系列主要用于消费电子领域,可以跑操作系统;R系列,主要用于工业控制、医疗器械、新能源汽车领域,对实时要求比较高;M系列主要是单片机,功能不是特别强大,不跑操作系统。原创 2024-08-24 18:40:15 · 1526 阅读 · 0 评论 -
arm接口技术二--指令集与异常处理
0x0。原创 2024-08-24 18:38:10 · 1121 阅读 · 0 评论 -
linux多进程与多线程总结
2 linux多进程与多线程2.1 进程间通信2.1.1 管道2.1.2 信号2.1.3 消息队列2.1.4 共享内存3 线程4 IO多路复用4.1 非阻塞IO4.2 IO多路复用。原创 2024-08-24 18:33:18 · 1570 阅读 · 0 评论 -
Linux字符设备驱动开发一
linux字符设备驱动开发原创 2024-03-13 00:21:56 · 1454 阅读 · 1 评论
分享