CN101808186A - 一种加快内存拷贝速度的方法 - Google Patents
一种加快内存拷贝速度的方法 Download PDFInfo
- Publication number
- CN101808186A CN101808186A CN 201010133607 CN201010133607A CN101808186A CN 101808186 A CN101808186 A CN 101808186A CN 201010133607 CN201010133607 CN 201010133607 CN 201010133607 A CN201010133607 A CN 201010133607A CN 101808186 A CN101808186 A CN 101808186A
- Authority
- CN
- China
- Prior art keywords
- byte
- assignment
- bytes
- memory copying
- copying speed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 12
- 208000034423 Delivery Diseases 0.000 claims description 12
- 238000012384 transportation and delivery Methods 0.000 claims description 12
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000004044 response Effects 0.000 abstract 2
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 230000036632 reaction speed Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001351 cycling effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- RZVAJINKPMORJF-UHFFFAOYSA-N Acetaminophen Chemical compound CC(=O)NC1=CC=C(O)C=C1 RZVAJINKPMORJF-UHFFFAOYSA-N 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Images
Landscapes
- Read Only Memory (AREA)
- Executing Machine-Instructions (AREA)
Abstract
本发明涉及嵌入式软件领域,具体的说是涉及一种加快内存拷贝速度的方法。本发明公开了一种加快内存拷贝速度的方法,解决现有技术中内存拷贝速度慢导致数字机顶盒反应慢的问题。其技术方案的要点是:一种加快内存拷贝速度的方法,包括以下步骤:a.判断要拷贝的字节数是否小于16,如果是,则执行步骤b,否则执行步骤c;b.进行单字节赋值,返回步骤a;c.对目标地址进行4字节对齐操作:如果目标地址对4取模不为0,则采取单字节赋值方式,直到目标地址移位到对4取模为0;d.对源地址进行4字节对齐操作,每次赋值时采用4字节赋值。本发明的有益效果是:加快内存拷贝速度,进而提高数字机顶盒反应速度。
Description
技术领域
本发明涉及嵌入式软件领域,具体的说是涉及一种加快内存拷贝速度的方法。
背景技术
目前随着数字电视飞速发展,应用的不断增加,使得机顶盒的运行速度变得比较慢,人们对数字机顶盒反应速度的要求越来越高。而机顶盒软件中用到了非常多的标准C内存拷贝库函数memcpy,因此,内存拷贝的速度将影响机顶盒的反应速度。传统方法中是采用while循环一个一个字节的赋值方式来实现内存间的拷贝,即拷贝1M的内存,需要执行1024*1024次循环条件判断,速度比较慢,不能满足人们对数字机顶盒快速反应的需要。
发明内容
本发明所要解决的技术问题是:提出一种加快内存拷贝速度的方法,解决现有技术中内存拷贝速度慢导致数字机顶盒反应慢的问题。
本发明解决上述技术问题所采用的技术方案是:一种加快内存拷贝速度的方法,包括以下步骤:
a.判断要拷贝的字节数是否小于16,如果是,则执行步骤b,否则执行步骤c;
b.进行单字节赋值,返回步骤a;
c.对目标地址进行4字节对齐操作:如果目标地址对4取模不为0,则采取单字节赋值方式,直到目标地址移位到对4取模为0;
d.对源地址进行4字节对齐操作,包括:
d1.如果源地址对4取模为0,且要拷贝的字节数大于等于64字节,每次进行4个字节的赋值,连续进行16次,不足64字节的,按每4个字节赋值,不足4个字节的,采用单字节赋值;
d2.如果源地址对4取模不为0,且要拷贝的字节数大于等于48个字节,每次进行4个字节的赋值,连续进行12次,不足48字节的,按每4个字节赋值,连续赋值2次,不足8个字节的,采用单字节赋值。
本发明的有益效果是:加快内存拷贝速度,进而提高数字机顶盒反应速度。
附图说明
图1为本发明的方法流程图。
具体实施方式
下面结合附图本发明作进一步的描述。
本发明提出一种加快内存拷贝速度的方法,解决现有技术中内存拷贝速度慢导致数字机顶盒反应慢的问题,其主要改进点在于:采用一次多字节赋值,多字节移位的方式减少循环条件判断语句的执行来实现加快内存拷贝速度,特别对于较大内存的拷贝速度提高非常明显。
如图1所示,本发明中的加快内存拷贝速度的方法,采用以下步骤实现:
1.判断要拷贝的字节数是否小于16,如果小于16则无需进行一次多字节赋值,执行步骤2,如果大于16则需要进行一次多字节赋值,执行步骤3;
2.进行单字节赋值,返回步骤1;
3.对目标地址进行4字节对齐操作,主要是因为有的嵌入式软件的操作系统有4字节对齐的要求,不对齐将出错;如果目标地址对4取模不为0,则采取单字节赋值方式,直到目标地址移位到对4取模为0;
4.对源地址进行4字节对齐操作,如果源地址对4取模为0,且要拷贝的字节数大于等于64字节,则执行步骤5,否则执行步骤8;
5.每次进行4个字节的赋值,连续进行16次;
6.不足64字节的,按每4个字节赋值;
7.不足4个字节的,采用单字节赋值;
8.如果源地址对4取模不为0,且要拷贝的字节数大于等于48个字节,每次进行4个字节的赋值,连续进行12次;
9.不足48字节的,按每4个字节赋值,连续赋值2次;
10.不足8个字节的,采用单字节赋值。
Claims (1)
1.一种加快内存拷贝速度的方法,其特征在于:包括以下步骤:
a.判断要拷贝的字节数是否小于16,如果是,则执行步骤b,否则执行步骤c;
b.进行单字节赋值,返回步骤a;
c.对目标地址进行4字节对齐操作:如果目标地址对4取模不为0,则采取单字节赋值方式,直到目标地址移位到对4取模为0;
d.对源地址进行4字节对齐操作,包括:
d1.如果源地址对4取模为0,且要拷贝的字节数大于等于64字节,每次进行4个字节的赋值,连续进行16次,不足64字节的,按每4个字节赋值,不足4个字节的,采用单字节赋值;
d2.如果源地址对4取模不为0,且要拷贝的字节数大于等于48个字节,每次进行4个字节的赋值,连续进行12次,不足48字节的,按每4个字节赋值,连续赋值2次,不足8个字节的,采用单字节赋值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101336079A CN101808186B (zh) | 2010-03-26 | 2010-03-26 | 一种加快内存拷贝速度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101336079A CN101808186B (zh) | 2010-03-26 | 2010-03-26 | 一种加快内存拷贝速度的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101808186A true CN101808186A (zh) | 2010-08-18 |
CN101808186B CN101808186B (zh) | 2012-01-25 |
Family
ID=42609793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101336079A Expired - Fee Related CN101808186B (zh) | 2010-03-26 | 2010-03-26 | 一种加快内存拷贝速度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101808186B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473057A (zh) * | 2013-09-10 | 2013-12-25 | 江苏中科梦兰电子科技有限公司 | 一种memcpy函数的优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05176138A (ja) * | 1991-12-25 | 1993-07-13 | Sharp Corp | コピー制御方法 |
JPH09261388A (ja) * | 1996-03-18 | 1997-10-03 | Canon Inc | 複写制御装置 |
CN1937720A (zh) * | 2005-12-29 | 2007-03-28 | 康佳集团股份有限公司 | 电视机设置信息复制方法和系统 |
CN1959636A (zh) * | 2006-11-17 | 2007-05-09 | 迈普(四川)通信技术有限公司 | 嵌入式设备引导方法 |
CN101651794A (zh) * | 2009-08-11 | 2010-02-17 | 深圳同方蓝色数码有限公司 | 一种拷贝电视机存储器数据的方法及智能拷贝器 |
-
2010
- 2010-03-26 CN CN2010101336079A patent/CN101808186B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05176138A (ja) * | 1991-12-25 | 1993-07-13 | Sharp Corp | コピー制御方法 |
JPH09261388A (ja) * | 1996-03-18 | 1997-10-03 | Canon Inc | 複写制御装置 |
CN1937720A (zh) * | 2005-12-29 | 2007-03-28 | 康佳集团股份有限公司 | 电视机设置信息复制方法和系统 |
CN1959636A (zh) * | 2006-11-17 | 2007-05-09 | 迈普(四川)通信技术有限公司 | 嵌入式设备引导方法 |
CN101651794A (zh) * | 2009-08-11 | 2010-02-17 | 深圳同方蓝色数码有限公司 | 一种拷贝电视机存储器数据的方法及智能拷贝器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473057A (zh) * | 2013-09-10 | 2013-12-25 | 江苏中科梦兰电子科技有限公司 | 一种memcpy函数的优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101808186B (zh) | 2012-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105302580B (zh) | 一种通过gpu纹理共享实现快速获取游戏图像的方法和系统 | |
WO2008111049A3 (en) | System and method for a virtual hosted operating system | |
WO2012004450A3 (en) | Method and apparatus for aggregating and linking place data | |
CN102419713A (zh) | 基于nandflash的机顶盒的软件升级方法 | |
WO2012102568A3 (en) | Smart set-top box and operating method for smart service and digital television service using single operating system | |
WO2013189341A3 (zh) | 动态修改应用启动图标的方法、消息的发送方法、终端 | |
WO2016036139A3 (ko) | 블루투스 le(low energy) 기술을 이용하여 디바이스를 제어하기 위한 방법 및 장치 | |
CN102629240A (zh) | 一种串口通信方法与装置 | |
JP2011250231A5 (ja) | 情報伝送システム、情報伝送方法、受光装置、受光方法、及び、プログラム | |
US9753732B2 (en) | Embedded branch prediction unit | |
WO2008015446A8 (en) | Sparse integral image descriptors with application to motion analysis | |
CN100378687C (zh) | 一种高速缓存预取模块及其方法 | |
CN101808186B (zh) | 一种加快内存拷贝速度的方法 | |
WO2017054541A1 (zh) | 一种处理器及其处理任务的方法、存储介质 | |
EP2254329A3 (en) | Information processing device and method and program | |
CN102857819B (zh) | 一种纹理图片的加载方法及显示终端、服务器和系统 | |
BR112015012163A2 (pt) | método e aparelho para processamento de sinal digital de serviço | |
JP2011507377A5 (zh) | ||
Kanani et al. | A study of the damages to historical monuments due to climatic factors and air pollution and offering solutions | |
US8509254B2 (en) | Direct memory access engine physical memory descriptors for multi-media demultiplexing operations | |
CN102360297A (zh) | 在线应用加载的方法 | |
CN106683033B (zh) | 一种乱序OpenGL接口处理方法 | |
NL2001174A1 (nl) | Applicatie uitvoering werkwijze en apparaat. | |
CN101504613B (zh) | 用于受限系统的分布式动态二进制翻译方法 | |
CN103578407A (zh) | Led显示屏 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120125 |
|
CF01 | Termination of patent right due to non-payment of annual fee |