linux下面的驱动虽然什么样的情形都有,但是dma驱动却并不少见。dma可以有很多的好处,其中最重要的功能就是能够帮助我们将数据搬来搬去,这个时候cpu就由时间去做别的事情了,提高了设备效率。...1、dma驱动在什么地方 drivers/dma 2、如何看s3c的dma驱动,先看Kconfig config S3C24XX_DMAC bool "Samsung S3C24XX DMA support....name = "s3c24xx-dma", }, .id_table = s3c24xx_dma_driver_ids, .probe = s3c24xx_dma_probe...); dma_cap_set(DMA_CYCLIC, s3cdma->slave.cap_mask); dma_cap_set(DMA_PRIVATE, s3cdma->slave.cap_mask...只要完成dma接口的适配,dma就可以正常使用了。当然,前提是,两个engine要进行注册使用。
1.两种DMA映射类型 1.1. 一致性DMA映射(Consistent DMA mappings ) 主要用于映射长时间使用的区域。...1.2 流式DMA映射(streaming DMA mapping) 主要用于一次性DMA传输,传输完成后就会释放。...2.指定DMA设备的寻址范围 include/linux/dma-mapping.h // 用于一致性内存映射的映射范围 static inline int dma_set_coherent_mask...mask); 3.DMA映射接口 3.1一致性DMA接口 分配较大DMA buffer // dev DMA控制器设备 // size 要分配的DMA buffer大小...释放的DMA buffer大小 // cpu_addr DMA buf的虚拟地址 // dma_handle DMA buf的物理地址 void dma_free_coherent
说明:日常高频使用,100%适用于CentOS7shell终端技巧ctrl + a ;ctrl + e #鼠标焦点到最前or最后ctrl a ctrl k # 清除当前行ctrl c # 结束命令...(file1|file2) #删除除了file1和file2的其他文件free -h #以合适的单位显示内存使用情况du -sh #查看目录文件大小df -sh #查看磁盘使用情况ps -ef | grep...nginx#查看正运行的nginx进程netstat -anp | grep ranger # netstat -anp:显示系统端口使用情况lsof -i:80 #使用-i:port来显示与指定端口相关的网络信息...are one of the most useful features of a Linux distribution....https://linuxhint.com/create-yum-local-repository/linux使用tree命令How to install tree in Unix/Linux.
这两天整理了调用流程,也找到了dma-coherent的用法。Linux的文档里没有详细说明dma-coherent的用法。...根据代码,如果dma的设备树里有dma-coherent,Linux则认为硬件会维护cache一致性,不会在dma运行过程中执行cache操作。...dma_map_single/dma_unmap_single的使用 设备驱动里一般调用dma_map_single()/dma_unmap_single()处理cache。...iommu和Xen虚拟机都需要提供dma_map_ops,于是使用其中的map、unmap函数。...以前也处理一个问题,arm的预测执行会导致软件完全没有使用的ddr被读取,必须在mmu table里设置对应地址的表项完全无效,才能杜绝这种情况。也许Linux之前遇到一些问题,才改成这样的操作。
* /root/rumenz.sh */3 * * * * sleep 90;/root/rumenz.sh 需要两个表达式实现 原文链接:https://rumenz.com/rumenbiji/linux-crontab-skills.html
linux下有哪些文件 普通文件 目录 符号链接 面向块的设备文件 面向字符的设备文件 管道和命名管道 套接字 当前系统中所有被打开的文件 > lsof COMMAND PID TID...列出被删除但占用空间的文件 在生产环境中,我们可能会使用df命令看到磁盘空间占满了,然而实际上又很难找到占满空间的文件,这常常是由于某个大文件被删除了,但是它却被某个进程打开,导致通过普通的方式找不到它的踪迹...TYPE DEVICE SIZE/OFF NODE NAME tail 28731 hyb 3r REG 8,15 228 138441 rumenz.sh 使用
而管道命令(|)的作用,是将左侧命令的标准输出转换为标准输入,提供给右侧命令作为参数使用。...比如,我们日常使用的 echo 命令就不接受管道传参。而 xargs 命令的作用,就是将标准输入转为命令行参数。...# 将标准输入转为命令行参数 > echo "hello rumenz" | xargs echo hello rumenz 需要注意的是 xargs 后面的默认跟的是 echo 命令,所以它可以单独使用...-d指定分隔符,默认使用空格分割 # 空格作为分隔符 $ echo "one two three" | xargs mkdir # 指定制表符\t作为分隔符 $ echo -e "a\tb\tc" |...txt" -print | xargs rm -f 批量下载文件 > cat rumenz.txt | xargs wget -c 原文链接:https://rumenz.com/rumenbiji/linux-xargs-skills.html
完全清除命令执行操作的历史记录 清理历史记录(只是清理了表层,可在.bash_history找到回) > history 清理记录历史的记录文件内容 > echo " " > .bash_history 关于history的小技巧...执行上一条 原文链接:https://rumenz.com/rumenbiji/linux-history-skill.html 微信公众号:入门小站
打印文件按#分割后,行长度为3的所有行 > awk -F '#' 'if(NF==3){print}' rumenz.txt NF是指awk正在处理的记录包含几个域(字段),这与域分隔符有关,默认为空 统计Linux...系统中每个用户所用的shell > cat /etc/passwd | awk -F ":" '{print $1" : "$7}' 用awk统计linux系统中所有的用户数 > cat /etc/passwd...求列的最大值 > cat 1.txt | awk 'BEGIN{a=0}{if($1>a) a=$1 fi}END{print a}' 原文链接:https://rumenz.com/rumenbiji/linux-awk-skills.html
你可以使用|^@!...rumenz.txt文本中以rumenz开头的行保存到1.txt文件 > sed -n '/^rumenz/w 1.txt' rumenz.txt 原文链接:https://rumenz.com/rumenbiji/linux-sed-skills.html
-xvf rumenz.tar.bz2 tar -xvf rumenz.tar.xz tar -xvf rumenz.tar.Z 原文链接:https://rumenz.com/rumenbiji/linux-tar-skills.html
原文链接:https://rumenz.com/rumenbiji/linux-grep-skills.html 微信公众号:入门小站
如果遇到链接中无文件名的情况,应该使用 -o 选项手动指定文件名,或使用重定向符号 同时下载多个文件 我们可以使用-o 或-O选项来同时指定多个链接,按照以下格式编写命令: > curl -O html...-L 跟随链接重定向 如果直接使用 curl 打开某些被重定向后的链接,这种情况下就无法获取我们想要的网页内容。...我们可以在命令中添加 -L 选项来跟随链接重定向: > curl -L http://json.im 使用 -A 自定义 User-Agent 我们可以使用 -A 来自定义用户***,例如下面的命令将伪装成安卓火狐浏览器对网页进行请求...-c保存Cookie 使用 cURL 访问页面的时候,默认是不会保存 Cookie 的curl -c "cookie.txt" https://json.im 使用 -b 读取 Cookie > curl...> curl --user name:passwd https://json.im 原文链接:https://rumenz.com/rumenbiji/linux-curl-skills.html
打印文件按#分割后,行长度为3的所有行 > awk -F '#' 'if(NF==3){print}' rumenz.txt NF是指awk正在处理的记录包含几个域(字段),这与域分隔符有关,默认为空 统计Linux...系统中每个用户所用的shell > cat /etc/passwd | awk -F ":" '{print $1" : "$7}' 用awk统计linux系统中所有的用户数 > cat /etc/passwd
linux下有哪些文件 普通文件 目录 符号链接 面向块的设备文件 面向字符的设备文件 管道和命名管道 套接字 当前系统中所有被打开的文件 > lsof COMMAND PID TID...列出被删除但占用空间的文件 在生产环境中,我们可能会使用df命令看到磁盘空间占满了,然而实际上又很难找到占满空间的文件,这常常是由于某个大文件被删除了,但是它却被某个进程打开,导致通过普通的方式找不到它的踪迹...FD TYPE DEVICE SIZE/OFF NODE NAME tail 28731 hyb 3r REG 8,15 228 138441 rumenz.sh使用...查看某个用户打开了哪些文件 > lsof -u rumenz 通过某个进程号显示该进程打开的文件 > lsof -p 12345 原文链接:https://rumenz.com/rumenbiji/linux-lsof-skills.html
完全清除命令执行操作的历史记录 清理历史记录(只是清理了表层,可在.bash_history找到回) > history 清理记录历史的记录文件内容 > echo " " > .bash_history 关于history的小技巧
如果遇到链接中无文件名的情况,应该使用 -o 选项手动指定文件名,或使用重定向符号 同时下载多个文件 我们可以使用-o 或-O选项来同时指定多个链接,按照以下格式编写命令: > curl -O html...-L 跟随链接重定向 如果直接使用 curl 打开某些被重定向后的链接,这种情况下就无法获取我们想要的网页内容。...我们可以在命令中添加 -L 选项来跟随链接重定向: > curl -L http://json.im 使用 -A 自定义 User-Agent 我们可以使用 -A 来自定义用户***,例如下面的命令将伪装成安卓火狐浏览器对网页进行请求...-c保存Cookie 使用 cURL 访问页面的时候,默认是不会保存 Cookie 的curl -c "cookie.txt" https://json.im 使用 -b 读取 Cookie > curl...> curl --user name:passwd https://json.im 原文链接:https://rumenz.com/rumenbiji/linux-curl-skills.html 微信公众号
领取专属 10元无门槛券
手把手带您无忧上云