CN111865824A - 一种串口通信中的双指针环形缓冲区设计方法及系统 - Google Patents
一种串口通信中的双指针环形缓冲区设计方法及系统 Download PDFInfo
- Publication number
- CN111865824A CN111865824A CN202010564758.3A CN202010564758A CN111865824A CN 111865824 A CN111865824 A CN 111865824A CN 202010564758 A CN202010564758 A CN 202010564758A CN 111865824 A CN111865824 A CN 111865824A
- Authority
- CN
- China
- Prior art keywords
- buffer area
- data
- static
- buffer
- state
- 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.)
- Pending
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 243
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000004891 communication Methods 0.000 title claims abstract description 19
- 230000003068 static effect Effects 0.000 claims abstract description 83
- 238000013507 mapping Methods 0.000 claims abstract description 7
- 238000013461 design Methods 0.000 claims abstract description 5
- 230000009977 dual effect Effects 0.000 claims description 6
- 239000007853 buffer solution Substances 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9031—Wraparound memory, e.g. overrun or underrun detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9005—Buffering arrangements using dynamic buffer space allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种串口通信中的双指针环形缓冲区设计方法及系统,方法包括实时获取数据状态;设置缓冲区剩余长度变量,并建立缓冲区剩余长度变量分别与读写数据之间的映射关系;根据读写数据的状态获取缓冲区剩余长度变量的变化,判断静态缓冲区的状态;当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入静态缓冲区;本发明通过使用静态环形缓冲区与动态缓冲区结合的方式,自动开辟动态缓冲区,避免了覆盖以前的数据,从而避免了数据丢失现象,同时,可以避免重复的开辟释放动态缓冲区,提高了内存利用率,进而提高了系统的运行效率。
Description
技术领域
本发明涉及计算机领域和通信领域,尤其涉及一种串口通信中的双指针环形缓冲区设计方法及系统。
背景技术
环形缓冲区是嵌入式系统软件设计中的一种常用数据结构,广泛应用到数据产生速率和数据处理速率不匹配的场合,在设计上一般采用先入先出的方式,一般采用预先静态分配内存的方式,由于嵌入式系统的内存资源非常有限,动态内存管理在多数情况下的运行效率和内存利用率都非常低,特别是频繁进行小容量内存单元的分配释放,会造成内存碎片,故多采用静态分配的方式来实现。
但是,目前静态环形缓冲区的设计存在如下问题:一方面,无法判断缓冲区是空还是满状态。另一方面当缓冲区满了,需要进行解决,如果通过保持一个元素不用,判断为缓冲区已满,会一直保留了一个元素空间未能使用,存在内存浪费,存储空间利用率不高;如果当缓冲区满状态时,不再写入数据,由于不再写入数据或覆盖原来的数据,会导致数据丢失;如果当缓冲区写满时,由于不再写入数据或覆盖原来的数据,会导致数据丢失。
发明内容
鉴于以上所述现有技术的缺点,本发明提供一种串口通信中的双指针环形缓冲区设计方法及系统,以解决上述技术问题。
本发明提供的串口通信中的双指针环形缓冲区设计方法,包括:
实时获取数据状态,所述数据状态包括数据读取和数据写入;
设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;
根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区。
可选的,当数据状态为写入数据时,将缓冲区剩余长度变量减1;
当数据状态为读取数据时,将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,判断静态缓冲区为空。
可选的,所述动态缓冲区包括动态内存。
可选的,当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区,待动态缓冲区内的全部数据写完后,释放动态缓冲区的内存。
可选的,所述静态缓冲区为环形缓冲区。
可选的,设置队头指针和队尾指针,所述队头指针指向可读数据,所述队尾指针指向可写数据,通过移动队头指针和队尾指针实现环形缓冲区数据的写入和读取。
可选的,将队头指针和队尾指针初始化为0,指向环形缓冲区数组的起始位,当写入数据时队头指针加1,当读取数据时队尾指针加1。
本发明还提供一种串口通信中的双指针环形缓冲区系统,包括:
数据存储模块,用于进行数据存储并实时获取数据状态,所述数据状态包括数据读取和数据写入;
缓冲区模块,用于设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区。
可选的,当数据状态为写入数据时,缓冲区模块将缓冲区剩余长度变量减1;
当数据状态为读取数据时,缓冲区模块将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,缓冲区模块判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,缓冲区模块判断静态缓冲区为空。
可选的,所述动态缓冲区包括动态内存,所述静态缓冲区为环形缓冲区。
本发明的有益效果:本发明中的串口通信中的双指针环形缓冲区设计方法,通过引入缓冲区剩余长度,准确判断出缓冲区是否写满,当缓冲区已满时,通过使用静态环形缓冲区与动态缓冲区结合的方式,自动开辟动态缓冲区;当静态环形缓冲区不满时,再将动态缓冲区的数据写入静态环形缓冲区,释放掉动态缓冲区的内存;本发明避免了覆盖以前的数据,从而避免了数据丢失现象,同时,可以避免重复的开辟释放动态缓冲区,提高了内存利用率,进而提高了系统的运行效率。
附图说明
图1是本发明实施例中串口通信中的双指针环形缓冲区设计方法的流程示意图。
图2是本发明实施例中串口通信中的双指针环形缓冲区设计方法的数据写入的流程示意图。
图3是本发明实施例中串口通信中的双指针环形缓冲区设计方法的数据读取的流程示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
如图1所示,本实施例中的串口通信中的双指针环形缓冲区设计方法,包括:
S11.实时获取数据状态,所述数据状态包括数据读取和数据写入;
S12.设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;
S13.根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
其中步骤S13包括
S131.当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
S132.当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区。
在本实施例中,在步骤S13中,根据缓冲区剩余长度变量的变化变化判断静态缓冲区的状态具体包括:
当数据状态为写入数据时,将缓冲区剩余长度变量减1;
当数据状态为读取数据时,将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,判断静态缓冲区为空。
在本实施例中,通过引入缓冲区剩余长度变量Lenth,当写入数据时Lenth减1,当读取数据时Lenth加1。
当Lenth=0时,判断为缓冲区已满,当Lenth等于缓冲区长度时,判断为缓冲区为空。通过这种方式对静态环形缓冲区写满状态进行判断。
在本实施例中,当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区,待动态缓冲区内的全部数据写完后,释放动态缓冲区的内存,数据写入流程如图2所示,
首先,判断环形缓冲区剩余长度是否满状态,即是否Lenth=0?
如果Lenth=0,则判断是否分配动态内存,如未分配则进行动态内存分配,如已分配,则将数据写入动态内存;
如果Lenth≠0,则写入环形缓冲区。
数据读取流程如图3所示,
首先,判断动态内存是否释放,
如未释放,则继续判断动态内存中是否有数据,如没有数据,则释放内存;如有数据则继续判断环形缓冲区是否为满状态,未满则将动态内存中的数据写入环形缓冲区并将队头指针Wri+1,Lenth-1,满则读取数据并将队尾指针Rdi+1,Lenth+1;
如已释放,在判断判断环形缓冲区是否为空,即Lenth是否等于环形缓冲区长度,如环形缓冲区为空,则返回空状态;如环形缓冲区未空,则读取数据并将队尾指针Rdi+1,Lenth+1。
在本实施例中,当静态环形缓冲区写满后(即Lenth=0),再有写入数据到来时,通过开辟一块动态内存,将写入数据存入动态内存,当环形缓冲区不满时,再将动态内存的数据写入环形缓冲区,动态内存的数据全部写入环形缓冲区后,释放掉动态内存。避免了覆盖以前的数据,从而避免了数据丢失现象。同时,可以避免重复的开辟释放动态缓冲区,提高内存利用率。
相应的,在本实施例还提供一种串口通信中的双指针环形缓冲区系统,包括:
数据存储模块,用于进行数据存储并实时获取数据状态,所述数据状态包括数据读取和数据写入;
缓冲区模块,用于设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区
在本实施例中,根据缓冲区剩余长度变量的变化变化判断静态缓冲区的状态具体包括:
当数据状态为写入数据时,将缓冲区剩余长度变量减1;
当数据状态为读取数据时,将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,判断静态缓冲区为空。
在本实施例中,通过引入缓冲区剩余长度变量Lenth,当写入数据时Lenth减1,当读取数据时Lenth加1。
当Lenth=0时,判断为缓冲区已满,当Lenth等于缓冲区长度时,判断为缓冲区为空。通过这种方式对静态环形缓冲区写满状态进行判断。
在本实施例中,当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区,待动态缓冲区内的全部数据写完后,释放动态缓冲区的内存。
在本实施例中,当静态环形缓冲区写满后(即Lenth=0),再有写入数据到来时,通过开辟一块动态内存,将写入数据存入动态内存,当环形缓冲区不满时,再将动态内存的数据写入环形缓冲区,动态内存的数据全部写入环形缓冲区后,释放掉动态内存。避免了覆盖以前的数据,从而避免了数据丢失现象。同时,可以避免重复的开辟释放动态缓冲区,提高内存利用率。
在上述实施例中,说明书对“本实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。“本实施例”的多次出现不一定全部都指代相同的实施例。在上述实施例中,尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是显而易见的。本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种串口通信中的双指针环形缓冲区设计方法,其特征在于,包括:
实时获取数据状态,所述数据状态包括数据读取和数据写入;
设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;
根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区。
2.根据权利要求1所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,
当数据状态为写入数据时,将缓冲区剩余长度变量减1;
当数据状态为读取数据时,将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,判断静态缓冲区为空。
3.根据权利要求2所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,所述动态缓冲区包括动态内存。
4.根据权利要求3所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区,待动态缓冲区内的全部数据写完后,释放动态缓冲区的内存。
5.根据权利要求1-4任一所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,所述静态缓冲区为环形缓冲区。
6.根据权利要求5所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,设置队头指针和队尾指针,所述队头指针指向可读数据,所述队尾指针指向可写数据,通过移动队头指针和队尾指针实现环形缓冲区数据的写入和读取。
7.根据权利要求6所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,将队头指针和队尾指针初始化为0,指向环形缓冲区数组的起始位,当写入数据时队头指针加1,当读取数据时队尾指针加1。
8.一种串口通信中的双指针环形缓冲区系统,其特征在于,包括:
数据存储模块,用于进行数据存储并实时获取数据状态,所述数据状态包括数据读取和数据写入;
缓冲区模块,用于设置缓冲区剩余长度变量,并建立所述缓冲区剩余长度变量分别与读写数据之间的映射关系;根据读写数据的状态获取缓冲区剩余长度变量的变化,并根据所述变化判断静态缓冲区的状态,所述静态缓冲区的状态包括空、未满和已满;
当静态缓冲区已满时,建立动态缓冲区,将新增写入的数据写入动态缓冲区,并继续判断静态缓冲区的状态;
当静态缓冲区的状态由已满变为未满时,将动态缓冲区的数据写入所述静态缓冲区。
9.根据权利要求8所述的串口通信中的双指针环形缓冲区系统,其特征在于,
当数据状态为写入数据时,缓冲区模块将缓冲区剩余长度变量减1;
当数据状态为读取数据时,缓冲区模块将缓冲区剩余长度变量加1;
当缓冲区剩余长度变量为0时,缓冲区模块判断静态缓冲区已满;
当缓冲区剩余长度变量与静态缓冲区的长度相等时,缓冲区模块判断静态缓冲区为空。
10.根据权利要求8所述的串口通信中的双指针环形缓冲区设计方法,其特征在于,所述动态缓冲区包括动态内存,所述静态缓冲区为环形缓冲区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010564758.3A CN111865824A (zh) | 2020-06-19 | 2020-06-19 | 一种串口通信中的双指针环形缓冲区设计方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010564758.3A CN111865824A (zh) | 2020-06-19 | 2020-06-19 | 一种串口通信中的双指针环形缓冲区设计方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111865824A true CN111865824A (zh) | 2020-10-30 |
Family
ID=72987466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010564758.3A Pending CN111865824A (zh) | 2020-06-19 | 2020-06-19 | 一种串口通信中的双指针环形缓冲区设计方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111865824A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080107396A1 (en) * | 2006-11-08 | 2008-05-08 | Tsung-Ning Chung | Systems and methods for playing back data from a circular buffer by utilizing embedded timestamp information |
CN101800867A (zh) * | 2010-01-19 | 2010-08-11 | 深圳市同洲电子股份有限公司 | 一种实现环形缓冲区的方法、装置及数字电视接收终端 |
CN102169420A (zh) * | 2011-04-18 | 2011-08-31 | 杭州海康威视系统技术有限公司 | 缓冲区循环读写方法及装置 |
US20120051366A1 (en) * | 2010-08-31 | 2012-03-01 | Chengzhou Li | Methods and apparatus for linked-list circular buffer management |
CN108491333A (zh) * | 2018-03-21 | 2018-09-04 | 广州多益网络股份有限公司 | 环形缓冲区的数据写入方法、装置、设备及介质 |
CN108768884A (zh) * | 2018-04-27 | 2018-11-06 | 江苏中科芯核电子科技有限公司 | 一种基于环形缓冲区的无线通信数据处理方法 |
CN110704335A (zh) * | 2019-09-03 | 2020-01-17 | 苏州浪潮智能科技有限公司 | 一种基于异步环形缓冲区的数据读取、写入方法及装置 |
CN111290708A (zh) * | 2020-01-19 | 2020-06-16 | 成都中嵌自动化工程有限公司 | 一种基于动态调整的环形缓冲区的数据处理方法及设备 |
-
2020
- 2020-06-19 CN CN202010564758.3A patent/CN111865824A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080107396A1 (en) * | 2006-11-08 | 2008-05-08 | Tsung-Ning Chung | Systems and methods for playing back data from a circular buffer by utilizing embedded timestamp information |
CN101800867A (zh) * | 2010-01-19 | 2010-08-11 | 深圳市同洲电子股份有限公司 | 一种实现环形缓冲区的方法、装置及数字电视接收终端 |
US20120051366A1 (en) * | 2010-08-31 | 2012-03-01 | Chengzhou Li | Methods and apparatus for linked-list circular buffer management |
CN102169420A (zh) * | 2011-04-18 | 2011-08-31 | 杭州海康威视系统技术有限公司 | 缓冲区循环读写方法及装置 |
CN108491333A (zh) * | 2018-03-21 | 2018-09-04 | 广州多益网络股份有限公司 | 环形缓冲区的数据写入方法、装置、设备及介质 |
CN108768884A (zh) * | 2018-04-27 | 2018-11-06 | 江苏中科芯核电子科技有限公司 | 一种基于环形缓冲区的无线通信数据处理方法 |
CN110704335A (zh) * | 2019-09-03 | 2020-01-17 | 苏州浪潮智能科技有限公司 | 一种基于异步环形缓冲区的数据读取、写入方法及装置 |
CN111290708A (zh) * | 2020-01-19 | 2020-06-16 | 成都中嵌自动化工程有限公司 | 一种基于动态调整的环形缓冲区的数据处理方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2661280C2 (ru) | Контроллер массива, твердотельный диск и способ для управления твердотельным диском для записи данных | |
CN102298561A (zh) | 一种对存储设备进行多通道数据处理的方法、系统和装置 | |
US20110145306A1 (en) | Method for trimming data on non-volatile flash media | |
US20070274303A1 (en) | Buffer management method based on a bitmap table | |
CN110209493B (zh) | 内存管理方法、装置、电子设备及存储介质 | |
US9697111B2 (en) | Method of managing dynamic memory reallocation and device performing the method | |
CN108496161A (zh) | 数据缓存装置及控制方法、数据处理芯片、数据处理系统 | |
KR102594657B1 (ko) | 비순차적 리소스 할당을 구현하는 방법 및 장치 | |
CN109992203A (zh) | 能够进行细粒度读取和/或写入操作的海量存储装置 | |
CN109298888B (zh) | 队列的数据存取方法及装置 | |
CN101673246A (zh) | 一种高效的先进先出数据池读写方法 | |
CN110806997A (zh) | 一种片上系统以及存储器 | |
CN107025184B (zh) | 一种数据管理方法及装置 | |
CN112311696B (zh) | 网络封包接收装置及方法 | |
CN108664577A (zh) | 一种基于flash空闲区的文件管理方法及系统 | |
CN107918613B (zh) | 因应服务质量的固态硬盘访问方法以及使用该方法的装置 | |
US7035988B1 (en) | Hardware implementation of an N-way dynamic linked list | |
CN109213423A (zh) | 基于地址屏障无锁处理并发io命令 | |
US7694041B2 (en) | Method for managing buffers pool and a system using the method | |
CN112596949B (zh) | 一种高效率的ssd删除数据恢复方法及系统 | |
CN111865824A (zh) | 一种串口通信中的双指针环形缓冲区设计方法及系统 | |
CN111143236A (zh) | 一种内存映射实现队列及其数据读取和写入方法 | |
US7681009B2 (en) | Dynamically updateable and moveable memory zones | |
CN115981565A (zh) | 存储器、数据存储方法及电子设备 | |
CN114546661A (zh) | 基于内存变换的动态内存分配方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201030 |
|
RJ01 | Rejection of invention patent application after publication |