linux传输文件到linux速度慢,linux中往nand(jffs2)中拷贝文件时速度慢的问题

最近在调试nand和jffs2时,发现将一个文件从SD卡拷贝到jffs2的NAND分区时,速度非常慢,和从NAND中拷出(例如拷贝到SD卡)相比,慢了近5倍。一开始以为是驱动写NAND和读NAND的差异,后来用mtd-utile的nand write测试了一下,nand write的速度和nand read的也差不多。

由于mtd-utile的nand write/ nand read没有经过jffs2文件系统,于是将疑点定位在jffs2文件中。

经过一番debug,对各个模块进行耗时统计,经于找到元凶:fs/jffs2/compr.c 中的jffs2_comress()函数,绝大部分多出的耗时全在这个函数里。原来在menuconfig的时候没有选择 Advanced compression option for JFFS2, 但里面确默认使用了priority的压缩方式。重新设置成no compression后,OK,速度正常了。

以下是往jffs2文件系统中copy时的调用流程(竟然没有走mtdblock.c文件,一开始以为是经过这个文件中的mtd->write函数指针调用到nand_write函数的):

fs/read_write.c      do_sync_write -> filp->f_op->aio_write()

jf/jffs2/file.c           .aio_write = generic_file_aio_write,

mm/filemap.c:        generic_file_aio_write->

__generic_file_aio_write ->

generic_file_buffered_write->

generic_perform_write->a_ops->write_end()

fs/jffs2/file.c:        .write_end = jffs2_write_end,

jffs2_write_end->

fs/jffs2/write.c:           jffs2_write_inode_range->

jffs2_write_dnode->

fs/jffs2/wbuf.c:                         jffs2_flash_writev->

c->mtd->write()

__jffs2_flush_wbuf()->

c->mtd->write()

drivers/mtd/nand/nand_base.c:

mtd->write = nand_write;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/498565.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Deepmind 预测地图论文背后:神经科学或将助力AI迎来新突破

来源:AI科技评论概要:这篇论文中,Deepmind通过对主管人类长期记忆行为的“海马体”(hippocampus)神经元活动的研究,进一步提出了可以转化为神经网络架构的“预测图”理论。对人类神经网络的理解越来越在左右…

c语言更改编译时字体,c习题编译时出现空的字符常量,怎么修改?

题目要求&#xff1a;统计各个数字&#xff0c;空白符以及所有其他字符出现的次数。[CODE]#include main(){int c, i, nwhite, nother;int ndigit[10];nwhite nother 0;for (i 0; i < 10; i)ndigit[i] 0;while ((c getchar()) ! EOF)if (c > ’0′ && c <…

你所未知的人工智能应用领域

来源&#xff1a;199IT互联网数据中心 概要&#xff1a;一组专家为我们详细描述了随着我们所使用的机器变得越来越智能&#xff0c;我们周围的世界正在如何发生变化的图景。 对有些人来说&#xff0c;人工智能和机器人技术的普及对我们的隐私、工作甚至人身安全构成了威胁&…

c语言高亮字符,C语言必背18个程序+190例--语法高亮

《C语言必背18个程序190例--语法高亮》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《C语言必背18个程序190例--语法高亮(111页珍藏版)》请在人人文库网上搜索。1、C语言必背18个经典程序输入什么显示什么main()int c&#xff1b;cgetchar()&#xff1b;同时(c&#…

原来你是这样子的OpenAI!来看看它背后那些有趣的人和事

来源&#xff1a;AI科技大本营 概要&#xff1a;它的目标非常明确&#xff0c;就是要确保人类安全&#xff0c;确保人类的权益不受未来机器人的影响&#xff0c;确保人类可以长久地与智能机器人共存。 提到OpenAI&#xff0c;业内可谓无人不知&#xff0c;无人不晓。 这可是人气…

C语言for循环的嵌套例题,c语言 for循环的嵌套(含答案)

c语言 for循环的嵌套(含答案)第 33、34 课时 for 循环的嵌套实验题一&#xff1a;1、下面程序的功能是计算:至 50 中是 7 的倍数的数值之和,请选择填空。D#include main() int i,sum 0; for(i1;i Bmain() int a,b,c,i; ac0; for(i0;imain() int i; #imain() int x,i; for(i1;im…

c语言bellman算法,求 最短路径中BELLMAN FORD算法实现的C程序

匿名用户1级2010-06-01 回答//这个是邻接表typedef struct oo{int len,num;struct oo *next;} link;typedef struct{int num;link *next;} graph;/*node[]图的邻接表n节点总数s源点dis[]到源点的最短路径长度pre[]最短路径上的前驱结点算法返回true&#xff0c;当且仅当途中不包…

Gartner十大IT预测:七大数字巨头,有五家将心甘情愿“自我颠覆”

来源&#xff1a;凤凰科技 概要&#xff1a;Gartner的预测&#xff0c;以及支持这些预测的假设&#xff0c;表明企业首席信息官必须首先是业务战略师&#xff0c;然后才是技术专家。 Gartner的预测&#xff0c;以及支持这些预测的假设&#xff0c;表明企业首席信息官必须首先是…

谷歌花4亿英镑下注AI开始有回报 DeepMind创收了

来源&#xff1a;腾讯科技 概要&#xff1a;DeepMind虽然还保持独立运营&#xff0c;但其对于谷歌产品的贡献恰逢其时。该公司2016年对于Alphabet其他公司的产品和服务所作出的贡献价值4000万英镑&#xff0c;这也是该公司首次创收。 外媒指出&#xff0c;Alphabet子公司谷歌周…

2016全球教育机器人发展白皮书

来源&#xff1a;199IT互联网数据中心 概要&#xff1a;白皮书梳理了全球教育机器人发展现状与趋势。从教育机器人的全球重要研究机构、市场产品评测、需求调研、产业链分析及未来市场发展预测&#xff0c;进行阐述。 白皮书梳理了全球教育机器人发展现状与趋势。从教育机器人的…

android上的java编译器,Android Studio:需要一个java编译器

我在尝试运行android应用程序时遇到错误。我在Windows 8 64位上运行android studio 0.3.2。Android Studio&#xff1a;需要一个java编译器这里的错误java: System Java Compiler was not found in classpath:java.lang.ClassNotFoundException: com.sun.tools.javac.api.Javac…

谷歌硬件战略缺陷:无法围绕谷歌助手打造硬件体系

来源&#xff1a;元器件交易网 概要&#xff1a;谷歌希望大规模销售基于谷歌助手的硬件&#xff0c;战略调整或许是其中重要的一步。 谷歌是否犯了重大错误&#xff1f; 谷歌正在以“人工智能优先”的战略取代此前“移动优先”的战略&#xff0c;并公开地推进这一战略。这是个大…

android 代码 升级rom,ROM之家简析:Android手机系统怎么升级

Android系统现在基本上每年都会有一次大的升级&#xff0c;以及很多次小的升级&#xff0c;对于手机用户来说&#xff0c;当然希望自己能用上最新版本的系统。除了手机厂商也会在适当时间发布官方版本系统升级&#xff0c;也可以自己在网上下载安装第三方系统升级。目前安卓手机…

在这场人工智能“战争”中,这些国家都在做些什么?

来源&#xff1a;Future智能 概要&#xff1a; 人工智能是引领未来的战略性技术&#xff0c;世界主要发达国家都已经把发展人工智能都作为提升其国家竞争力、维护国家安全的重要战略&#xff0c;进行针对性布局&#xff0c;力图在新一轮国际科技竞争中掌握主导权。 人工智能是引…

android使用 注解框架,Android实践 | 注解框架ButterKnife基本使用

使用ButterKnife&#xff0c;我们可以不用写很多的findViewById()语句&#xff0c;以及通过getResources获取String、Color等资源&#xff0c;这可以让我们的代码更加简洁&#xff0c;使用起来也很方便。下面来看怎么用吧&#xff01;首先当然是添加依赖(建议去github查看最新版…

DeepMind成立DMES新部门,旨在研究AI带来的社会伦理问题

来源&#xff1a;36kr 概要&#xff1a;随着人工智能的发展越来越成熟&#xff0c;随之带来的伦理和道德问题也成为了社会讨论的焦点问题之一。DeepMind成立了一个新部门&#xff0c;旨在专门研究人工智能带来的社会伦理问题。 DMES将于2018年启动关于算法偏见、问责制和自主杀…

android 文本倒影,android案例---图片处理倒影效果

今天记录下看到的一个图片处理倒影效果&#xff0c;方便以后用到先看看效果device-2017-08-12-160216.pngas截出来的图貌似都挺大的ok&#xff0c;那我们现在来分析代码,完整代码/**** param context 上下文* param resId 图片id* param percent 倒影的深度* return Bitma…

Android模拟器启动3个g,android,模拟器_android 模拟器用3.18的内核无法启动,一直黑屏。,android,模拟器,内核 - phpStudy...

android 模拟器用3.18的内核无法启动&#xff0c;一直黑屏。今天git clone 了android 源码master分支&#xff0c;编译完成后启动模拟器发现系统版本是6.0.1&#xff0c;但是内核版本居然是3.4.67&#xff0c;而不是最新的版本3.18. 为什么源码里的内核没有同步更新呢&#xff…

干货|一文全解深度学习中的卷积

来源&#xff1a;1024深度学习 概要&#xff1a;卷积现在可能是深度学习中最重要的概念。正是靠着卷积和卷积神经网络&#xff0c;深度学习才超越了几乎其他所有的机器学习手段。 译自Tim Dettmers的Understanding Convolution in Deep Learning。有太多的公开课、教程在反复传…

零售业将成人工智能系统支出额最高的行业

来源&#xff1a;人工智能和大数据 概要&#xff1a;预计2017年零售业和银行业在认知和人工智能系统方面的支出最高&#xff0c;分别达到17.4亿美元和17.2亿美元。 根据IDC《全球半年度认知/人工智能系统支出指南》最新预测&#xff0c;到2021年&#xff0c;全球认知和人工智能…