Linux
polarisyj86
这个作者很懒,什么都没留下…
展开
-
linux mmc设备挂载流程解析
linux的emmc驱动在drivers\mmc\card\block.c,其mmc_dirver结构体如下:[cpp] view plain copy static struct mmc_driver mmc_driver = { .drv= { .name = "mmcblk", }, .probe = mmc_转载 2016-11-02 15:07:23 · 1819 阅读 · 0 评论 -
Linux字符设备驱动开发之内存读写的应用实例
字符设备是Linux系统三大类设备之一(字符设备、块设备、网络设备),作为Linux最简单的一类设备,字符设备常用来传输一些简单的控制命令或者少量的数据。本篇文章分享了如何在Linux内核中创建一个字符设备,并在应用程序中测试该设备的实例。该字符设备通过在内核中创建一段内存空间,并将这段空间作为字符设备读写访问的目标地址,来实现Linux内核字符设备驱动与应用程序的通信。1. 操作系统Li...原创 2019-08-02 12:53:06 · 2023 阅读 · 1 评论 -
linux内核module_platform_driver宏解析
该函数实际是一个宏,module_platform_driver在include/linux/platform_device.h中定义如下:/* module_platform_driver() - Helper macro for drivers that don't do * anything special in module init/exit. This eliminates ...原创 2019-07-30 16:33:36 · 1504 阅读 · 0 评论 -
Linux设备驱动之platform按键驱动
转自:点击打开1. platform设备模型原理从Linux 2.6起引入了一套新的驱动管理和注册机制,platform_device和platform_driver,Linux中大部分的设备驱动都可以使用这套机制。platform是一条虚拟的总线。设备用platform_device表示,驱动用platform_driver进行注册,Linux platform driver机制和传统的...转载 2019-07-29 15:24:27 · 331 阅读 · 0 评论 -
Linux系统的7种文件类型
1. 普通文件类型Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-]2. 目录文件类型就是目录, 能用 # cd 命令进入的。第一个属性为 [d],例如 [drwxrwxrwx]3. 块设备文件类型块设备文件 : 就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号...原创 2019-07-01 10:54:22 · 1448 阅读 · 0 评论 -
浅谈linux中的根文件系统(rootfs的原理和介绍)
转自:点击打开linux中有一个让很多初学者都不是特别清楚的概念,叫做“根文件系统”。我接触linux前前后后也好几年了,但是对这个问题,至今也不是特别的清楚,至少没法给出一个很全面很到位的解释。于是,今天我们就来理一理这个话题。一、先交代一下文件系统在开始讨论根文件系统这个话题之前,我们必首先交代一下文件系统这个概念。毕竟,根文件系统只是文件系统中的一种比较特殊的形式而已。根据伟大的...转载 2019-07-03 10:58:11 · 23385 阅读 · 0 评论 -
Linux内核中的常用宏container_of的解释
转发:点击打开开发平台:Ubuntu11.04编 译器:gcc version 4.5.2 (Ubuntu/Linaro4.5.2-8ubuntu4)Container_of在Linux内核中是一个常用的宏,用于从包含在某个结构中的指针获得结构本身的指针,通俗地讲就是通过结构体变量中某个成员的首地址进而获得整个结构体变量的首地址。Container_o...转载 2019-06-25 21:00:08 · 229 阅读 · 0 评论 -
在Linux内核中增加新驱动模块
转自:点击打开开发环境开发板:A33-Vstar开发板系统: Linux/arm 3.4.39 KernelUbuntu版本:Ubuntu14.04----------------------------------------------------新增内核驱动,并可以通过make menuconfig配置。内核完整路径:~/A33-Vstar/dragonbo...转载 2019-06-04 20:09:19 · 3465 阅读 · 0 评论 -
Linux终端命令行的常用快捷键
转自:点击打开history 显示命令历史列表↑(Ctrl+p) 显示上一条命令↓(Ctrl+n) 显示下一条命令!num 执行命令历史列表的第num条命令!! 执行上一条命令!?string? 执行含有string字符串的最新命令Ctrl+r 然后输入若干字符,开始向上搜索包含该字符的命令,继续按Ctrl+r,搜索上一条匹配的命令Ctrl+s 与Ctrl+r类似,...转载 2019-06-19 09:58:02 · 1043 阅读 · 0 评论 -
linux内核编译时出现“make: arm-linux-gcc:command not found"解决方法
一般出现这个错误是因为没有设置环境变量。解决方法:1. 首先找到arm-linux-gcc所在目录, 使用命令find -name arm-linux-gcc系统会显示arm-linux-gcc所在的路径,如/home/user/linux/bin/arm-linux-gcc2. 将arm-linux-gcc所在路径加入系统环境变量。2.1 如果想对系统内所有用户都生效,...原创 2019-04-19 11:27:39 · 11148 阅读 · 3 评论 -
ubuntu环境下与windows共享文件夹samba的搭建
ubuntu环境下,如果需要与windows共享文件夹或文佳,需要在ubuntu下安装samba服务,具体步骤如下:一、首先,要获取管理员权限,输入命令:sudo -s,然后输入用户登陆密码;二、安装samba服务(保证网络连接畅通),输入命令:sudo apt-get install samba;三、创建共享文件夹share,输入命令:mkdir /home/user/share ...原创 2019-03-18 11:33:27 · 314 阅读 · 0 评论 -
Linux 学习之路 ----查看CPU状态
转自Martin文章:点击链接前几天被问到在Linux命令行下输入top命令之后出现的信息表示什么意思,今天就总结一下。top命令是Linux下常用的性能分析工具,但本质上它提供了实时的对系统处理器的状态监视在命令行中输入top将输出一下信息:top - 23:16:12 up 7:40, 1 user, load average: 0.97, 0.98, 1.01Ta...转载 2019-03-07 16:16:24 · 887 阅读 · 0 评论 -
Linux驱动卸载时出现“Device 'xxx' does not have a release() function, it is broken and must be fixed”的解决办法
在用platform bus方法编写Linux内核驱动模块时,在模块卸载过程中,如果系统出现提示“Device 'xxx' does not have a release() function, it is broken and must be fixed.” 说明系统在卸载是找不到release()函数,这个函数对应在结构体struct platform_device中的成员struct dev...原创 2019-08-21 10:48:15 · 1676 阅读 · 0 评论