CN113253942A - 文件写方法及其装置、文件读方法及其装置、设备和介质 - Google Patents
文件写方法及其装置、文件读方法及其装置、设备和介质 Download PDFInfo
- Publication number
- CN113253942A CN113253942A CN202110707718.4A CN202110707718A CN113253942A CN 113253942 A CN113253942 A CN 113253942A CN 202110707718 A CN202110707718 A CN 202110707718A CN 113253942 A CN113253942 A CN 113253942A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- efs
- data volume
- baseband chip
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephone Function (AREA)
Abstract
本公开提出一种文件写方法及其装置、文件读方法及其装置、设备及介质,其中,写方法包括:根据加密文件系统EFS文件中未写入基带芯片的第一数据量,及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包;通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。该方案可实现对任意的EFS文件进行写操作,可提升该方法的灵活性和适用性。
Description
技术领域
本公开涉及终端技术领域,尤其涉及一种文件写方法及其装置、文件读方法及其装置、设备和介质。
背景技术
在基带芯片所在的软件系统内,读写EFS(Encrypted File System,加密文件系统)文件较为方便、容易,但是在终端的操作系统内对基带芯片内的EFS文件进行读写操作并不容易,其中,可通过基带芯片厂商提供的EFS文件读写操作接口来读写EFS文件,然而上述接口仅是针对个别指定的EFS文件进行读写操作,灵活性和可扩展性不高,并且上述接口并不支持数据量较大的EFS文件的读写操作。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本公开提出了如下技术方案:
本公开第一方面实施例提出了一种文件写方法,应用于终端的处理器,包括:
根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及所述处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;
根据所述第二数据量,对所述EFS文件中未写入所述基带芯片的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
通过所述数据通道将各所述数据包发送至所述基带芯片,以使所述基带芯片缓存各所述数据包中的数据,并在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
本公开第二方面实施例提出了另一种文件写方法,应用于终端的基带芯片,包括:
通过数据通道接收至少一个数据包;
对所述至少一个数据包进行解析得到所携带的数据,以及加密文件系统EFS文件的总数据量;
将所述至少一个数据包携带的数据写入缓存;
在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
本公开第三方面实施例提出了一种文件读方法,应用于终端的处理器,包括:
响应于加密文件系统EFS文件的读取请求,通过数据通道向基带芯片发送所述EFS文件的信息,以从所述基带芯片获取所述EFS文件的至少一个数据包;
对所述至少一个数据包进行解析得到携带的数据,以及所述EFS文件的总数据量;
对所述至少一个数据包携带的数据进行保存;
在保存的数据量大于或等于所述EFS文件的总数据量时,向发送所述读取请求的调用方返回保存的数据。
本公开第四方面实施例提出了另一种文件读方法,应用于终端的基带芯片,包括:
通过数据通道接收加密文件系统EFS文件的信息;
根据所述EFS文件的信息,确定所述EFS文件未读取的第三数据量;
根据所述第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;
根据所述第四数据量,对所述EFS文件未读取的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
通过所述数据通道将各所述数据包发送至运行有所述终端操作系统的处理器。
本公开第五方面实施例提出了一种文件写装置,应用于终端的处理器,包括:
处理单元,用于根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及所述处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;
所述处理单元,还用于根据所述第二数据量,对所述EFS文件中未写入所述基带芯片的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
收发单元,用于通过所述数据通道将各所述数据包发送至所述基带芯片,以使所述基带芯片缓存各所述数据包中的数据,并在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
本公开第六方面实施例提出了另一种文件写装置,应用于终端的基带芯片,包括:
收发单元,用于通过数据通道接收至少一个数据包;
处理单元,用于对所述至少一个数据包进行解析得到所携带的数据,以及加密文件系统EFS文件的总数据量;
所述处理单元,还用于将所述至少一个数据包携带的数据写入缓存;
所述处理单元,还用于在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
本公开第七方面实施例提出了一种文件读装置,应用于终端的处理器,包括:
收发单元,用于响应于加密文件系统EFS文件的读取请求,通过数据通道向基带芯片发送所述EFS文件的信息,以从所述基带芯片获取所述EFS文件的至少一个数据包;
处理单元,用于对所述至少一个数据包进行解析得到携带的数据,以及所述EFS文件的总数据量;
所述处理单元,还用于对所述至少一个数据包携带的数据进行保存;
收发单元,还用于在保存的数据量大于或等于所述EFS文件的总数据量时,向发送所述读取请求的调用方返回保存的数据。
本公开第八方面实施例提出了另一种文件读装置,应用于终端的基带芯片,包括:
收发单元,用于通过数据通道接收加密文件系统EFS文件的信息;
处理单元,用于根据所述EFS文件的信息,确定所述EFS文件未读取的第三数据量;
所述处理单元,还用于根据所述第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;
所述处理单元,还用于根据所述第四数据量,对所述EFS文件未读取的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
所述收发单元,还用于通过所述数据通道将各所述数据包发送至运行有所述终端操作系统的处理器。
本公开第九方面实施例提出了一种终端,包括:处理器和基带芯片;
其中,所述处理器,用于执行如本公开第一方面实施例提出的文件写方法,或者,执行如本公开第三方面实施例提出的文件读方法;
所述基带芯片,用于执行如本公开第二方面实施例提出的文件写方法,或者,执行如本公开第四方面实施例提出的文件读方法。
本公开第十方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开第一方面实施例提出的文件写方法,或者,实现如本公开第二方面实施例提出的文件写方法,或者,实现如本公开第三方面实施例提出的文件读方法,或者,实现如本公开第四方面实施例提出的文件读方法。
本公开第十一方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本公开第一方面实施例提出的文件写方法,或者,执行如本公开第二方面实施例提出的文件写方法,或者,执行如本公开第三方面实施例提出的文件读方法,或者,执行如本公开第四方面实施例提出的文件读方法。
本公开的技术方案,通过终端的处理器根据EFS文件中未写入基带芯片的第一数据量,以及该处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包;通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行写操作,并且也支持数据量较大的EFS文件的写操作,可以提升该方法的灵活性和适用性。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本公开一实施例所提供的文件写方法的流程示意图;
图2为本公开另一实施例所提供的文件写方法的流程示意图;
图3为本公开另一实施例所提供的文件写方法的流程示意图;
图4为本公开另一实施例所提供的文件写方法的流程示意图;
图5为本公开一实施例所提供的文件读方法的流程示意图;
图6为本公开另一实施例所提供的文件读方法的流程示意图;
图7为本公开另一实施例所提供的文件读方法的流程示意图;
图8为本申请实施例中EFS文件的读写过程示意图;
图9为本公开一实施例所提供的文件写装置的结构示意图;
图10为本公开另一实施例所提供的文件写装置的结构示意图;
图11为本公开一实施例所提供的文件读装置的结构示意图;
图12为本公开另一实施例所提供的文件读装置的结构示意图;
图13示出了适于用来实现本公开实施方式的示例性终端的框图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
下面参考附图描述本公开实施例的文件写方法及其装置、文件读方法及其装置、设备和介质。
图1为本公开一实施例所提供的文件写方法的流程示意图。
本公开实施例的文件写方法,可以应用于终端的处理器,该处理器运行有终端操作系统。可选地,该文件写方法具体可以应用于终端操作系统内部的应用模块,所述应用模块用于读写EFS文件。
其中,所述应用模块可以是HAL(Hardware Abstraction Layer,硬件抽象层)层的应用模块,或者,也可以是应用层面上的应用模块,本公开对此并不作限制。
其中,终端可以为手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
如图1所示,该文件写方法可以包括以下步骤:
步骤101,根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量。
在本公开实施例中,EFS文件未写入基带芯片的第一数据量,可以根据EFS文件的总数据量,以及处理器发送至基带芯片的已传输数据量确定。其中,处理器发送至基带芯片的已传输数据量,即为基带芯片已缓存的数据量。比如,标记EFS文件的总数据量为size,已传输数据量为write,则第一数据量可以为size-write。
在本公开实施例中,数据通道比如可以为QMI(Qualcom Message Interface,高通信息接口)通道。应当理解的是,数据通道的建立,一次可以传输固定字节数的数据,上述固定字节数不能设置的过大,否则会浪费传输空间,并且,上述固定字节数也不能设置的过小,否则将无法满足传输需求。并且,由于不同EFS文件的文件大小不同,因此数据通道可以传输的最大字节数(本公开中记为单次传输的最大数据量),只需满足常规EFS文件的文件大小即可。比如,单次传输的最大数据量可以为500个字节,当然也可以为其他字节数,本公开对此并不作限制。可选地,标记该最大数据量为max。
在本公开实施例中,可以根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量。比如,可以标记该第二数据量为tran。
在本公开实施例的一种可能的实现方式中,可以将第一数据量与单次传输的最大数据量进行比较,判断该第一数据量是否小于或者等于最大数据量,在第一数据量小于或者等于最大数据量的情况下,可以确定只需一次传输,该一次传输所需传输的第二数据量等于第一数据量,即可以将第一数据量作为该一次传输的第二数据量。
而在第一数据量大于最大数据量的情况下,可以确定需要多次传输,针对每次传输,可以将第一数据量与最大数据量进行比较,在第一数据量小于最大数据量的情况下,可以将第一数据量作为本次传输的第二数据量,而在第一数据量大于或等于最大数据量的情况下,可以将最大数据量作为本次传输的第二数据量。
步骤102,根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包。
在本公开实施例中,针对每次传输,可以根据本次传输的第二数据量,对EFS文件中未写入基带芯片的数据,和包含EFS文件的总数据量的信息进行打包,得到本次传输的数据包。例如,可以从EFS文件的第write个字节位置开始打包,包长为tran,将size、write也一并打包,得到本次传输的数据包。
步骤103,通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
在本公开实施例中,处理器可以通过数据通道将每次传输的数据包发送至基带芯片,相应的,基带芯片通过数据通道接收到各数据包后,可以缓存各数据包中的数据,并在缓存的数据量大于或者等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
本公开实施例的文件写方法,通过根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包;通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行写操作,并且也支持数据量较大的EFS文件的写操作,可以提升该方法的灵活性和适用性。
在本公开实施例的一种可能的实现方式中,针对每次传输,基带芯片在成功缓存对应的数据包的情况下,还可以向处理器发送成功标签,相应的,处理器在接收到成功标签的情况下,可以对已传输数据量(write)进行更新。下面结合图2,对上述过程进行详细说明。
图2为本公开另一实施例所提供的文件写方法的流程示意图。
本公开实施例的文件写方法,可以应用于终端的处理器,该处理器运行有终端操作系统。可选地,该文件写方法具体可以应用于终端操作系统内部的应用模块。
如图2所示,该文件写方法可以包括以下步骤:
步骤201,根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量。
步骤202,根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包。
步骤203,通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据。
其中,基带芯片在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
步骤201至203的执行过程可以参见上述实施例的执行过程,在此不做赘述。
步骤204,接收成功标签,其中,成功标签是基带芯片每当成功缓存一个数据包的情况下发送的。
在本公开实施例中,针对每次传输,基带芯片在成功缓存对应的数据包的情况下,还可以向处理器发送成功标签,相应的,处理器可以接收基带芯片发送的成功标签。
步骤205,根据第二数据量,更新发送至基带芯片的已传输数据量。
在本公开实施例中,处理器在接收到成功标签的情况下,可以根据第二数据量对已传输数据量(write)进行更新。例如,更新后的write可以为:更新前的write+tran。
进一步地,在对处理器发送至基带芯片的已传输数据量进行更新后,还可以判断更新后的已传输数据量是否大于或者等于EFS文件的总数据量,若是,则执行步骤206,若否,则执行步骤207。
步骤206,在已传输数据量大于或等于EFS文件的总数据量的情况下,停止采用数据通道传输EFS文件。
在本公开实施例中,在已传输数据量大于或等于EFS文件的总数据量的情况下,可以确定EFS文件传输完毕,因此,处理器可以停止采用数据通道传输EFS文件。
步骤207,在已传输数据量小于EFS文件的总数据量的情况下,继续采用数据通道对EFS文件中未写入基带芯片的数据进行传输。
在本公开实施例中,在已传输数据量小于EFS文件的总数据量的情况下,可以确定EFS文件未传输完毕,因此,处理器可以继续采用数据通道对EFS文件中未写入基带芯片的数据进行传输。
本公开实施例的文件写方法,通过接收成功标签,其中,成功标签是基带芯片每当成功缓存一个数据包的情况下发送的,根据第二数据量,更新发送至基带芯片的已传输数据量,由此,可以实现在每次传输后,对处理器已传输的数据量进行更新,从而处理器根据更新后的已传输数据量判断是否停止传输过程,可以避免未更新已传输数据量而造成基带芯片无法执行EFS文件写操作的情况,提升基带芯片执行EFS文件写操作的成功率。
上述为终端的处理器执行的方法实施例,本公开还提出一种由基带芯片执行的方法实施例。
图3为本公开另一实施例所提供的文件写方法的流程示意图。
本公开实施例的文件写方法,可以应用于基带芯片,该基带芯片用于读写EFS文件。
如图3所示,该文件写方法可以包括以下步骤:
步骤301,通过数据通道接收至少一个数据包。
在本公开实施例中,终端的处理器可以通过自身与基带芯片之间的数据通道,向基带芯片发送至少一个数据包。其中,处理器生成数据包的过程可以参见上述任一实施例,在此不做赘述。
作为一种示例,当EFS文件的总数据量小于或者等于数据通道单次传输的最大数据量时,处理器可以通过数据通道向基带芯片发送一个数据包。而当EFS文件的总数据量大于数据通道单次传输的最大数据量时,处理器可以通过数据通道向基带芯片发送多个数据包。
步骤302,对至少一个数据包进行解析得到所携带的数据,以及EFS文件的总数据量。
在本公开实施例中,针对每个数据包,基带芯片可以对该数据包进行解析,得到该数据包所携带的数据,以及EFS文件的总数据量。
步骤303,将至少一个数据包携带的数据写入缓存。
在本公开实施例中,针对每个数据包,基带芯片解析得到该数据包所携带的数据后,可以将该数据包所携带的数据写入缓存。
步骤304,在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
在本公开实施例中,基带芯片可以判断缓存的数据量是否大于或者等于EFS文件的总数据量,在缓存的数据量小于EFS文件的总数据量的情况下,基带芯片可以继续接收处理器发送的数据包,并将接收到的数据包所携带的数据写入缓存中,而在缓存的数据量大于或等于EFS文件的总数据量时,可以确定EFS文件接收完毕,因此,基带芯片可以根据缓存的数据进行基带芯片的EFS文件写操作。
在本公开实施例的一种可能的实现方式中,在缓存的数据量大于或者等于EFS文件的总数据量的情况下,基带芯片可以调用基带内部接口,以根据缓存的数据进行基带芯片的EFS文件写操作。即本申请中,可以通过调用基带内部接口,将缓存的数据写入EFS文件。
在本公开实施例的一种可能的实现方式中,基带芯片每当成功缓存一个数据包中数据的情况下,可以向运行有终端操作系统的处理器发送成功标签,从而处理器在接收到成功标签后,可以对发送至基带芯片的已传输数据量进行更新。
本公开实施例的文件写方法,通过数据通道接收至少一个数据包,并对至少一个数据包进行解析得到所携带的数据,以及EFS文件的总数据量;将至少一个数据包携带的数据写入缓存,以在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行写操作,并且也支持数据量较大的EFS文件的写操作,可以提升该方法的灵活性和适用性。
作为一种示例,以数据通道为QMI通道进行示例性说明,处理器或应用模块侧的文件写方法和基带芯片侧的文件写方法的流程图可以如图4所示。
处理器或应用模块侧(即图4中的用户侧):当处理器或应用模块通过QMI通道向基带芯片发送至少一个数据包后,处理器或应用模块可以根据是否接收到成功标签,来确定是否成功写一次数据,若是,则处理器或应用模块更新已传输至基带芯片的数据量,本公开中记为已传输数据量,并根据已传输数据量判断EFS文件是否已写完(即判断EFS文件是否传输完毕),若是,则停止传输EFS文件。
基带芯片侧:针对每次通过QMI通道接收到的数据包,基带芯片可以将该数据包写入缓存,并根据缓存的数据量判断EFS文件中的数据是否均已缓存至基带芯片,若是,则调用基带内部接口将缓存的数据写入EFS文件。
上述为文件写方法对应的实施例,本公开还提出一种文件读方法。
图5为本公开一实施例所提供的文件读方法的流程示意图。
本公开实施例的文件读方法,可以应用于终端的处理器,该处理器运行有终端操作系统。可选地,该文件读方法具体可以应用于终端操作系统内部的应用模块,所述应用模块用于读写EFS文件。
如图5所示,该文件读方法可以包括以下步骤:
步骤501,响应于EFS文件的读取请求,通过数据通道向基带芯片发送EFS文件的信息,以从基带芯片获取EFS文件的至少一个数据包。
在本公开实施例中,EFS文件的信息中可以包括EFS文件的标识、保存的数据量(即处理器已接收到的总数据量)和最近一次接收到的数据包所携带的数据量中的至少一个。其中,通过EFS文件的标识可唯一识别一个EFS文件,基带芯片可通过EFS文件的标识获取EFS文件的总数据量。
在本公开实施例中,当处理器通过调用接口接收到调用方发送的EFS文件的读取请求时,可以响应于该读取请求,通过数据通道向基带芯片发送EFS文件的信息,以从基带芯片获取EFS文件的至少一个数据包。
可选地,基带芯片在通过数据通道接收到EFS文件的信息时,可以根据EFS文件的信息,确定EFS文件未读取的第三数据量,比如,基带芯片可以根据EFS文件的标识,调用基带芯片的内部接口,以得到EFS文件的总数据量,从而基带芯片可以根据EFS文件的总数据量和已读取的数据量,确定未读取的第三数据量。之后,基带芯片可以根据第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量,根据第四数据量,对EFS文件未读取的数据和包含EFS文件的总数据量的信息进行打包,以得到各数据包,从而可以通过数据通道将各数据包发送至运行有终端操作系统的处理器,相应的,处理器可以获取各数据包,即获取EFS文件的至少一个数据包。
步骤502,对至少一个数据包进行解析得到携带的数据,以及EFS文件的总数据量。
在本公开实施例中,针对每个数据包,处理器可以对该数据包进行解析,得到该数据包所携带的数据,以及EFS文件的总数据量。
步骤503,对至少一个数据包携带的数据进行保存。
在本公开实施例中,针对每个数据包,处理器在解析得到该数据包所携带的数据后,可以将该数据包所携带的数据进行保存。
步骤504,在保存的数据量大于或等于EFS文件的总数据量时,向发送读取请求的调用方返回保存的数据。
在本公开实施例中,处理器可以判断保存的数据量是否大于或者等于EFS文件的总数据量,在保存的数据量小于EFS文件的总数据量的情况下,处理器可以继续接收基带芯片发送的数据包,并将接收到的数据包所携带的数据进行保存,而在保存的数据量大于或者等于EFS文件的总数据量的情况下,可以确定EFS文件读取完毕或接收完毕,因此,可以向发送读取请求的调用方返回保存的数据。
本公开实施例的文件读方法,通过响应于EFS文件的读取请求,通过数据通道向基带芯片发送EFS文件的信息,以从基带芯片获取EFS文件的至少一个数据包;对至少一个数据包进行解析得到携带的数据,以及EFS文件的总数据量;对至少一个数据包携带的数据进行保存;在保存的数据量大于或等于EFS文件的总数据量时,向发送读取请求的调用方返回保存的数据。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行读操作,并且也支持数据量较大的EFS文件的读操作,可以提升该方法的灵活性和适用性。
上述为应用模块执行的方法实施例,本公开还提出一种由基带芯片执行的方法实施例。
图6为本公开另一实施例所提供的文件读方法的流程示意图。
本公开实施例的文件读方法,可以应用于基带芯片,该基带芯片用于读写EFS文件。
如图6所示,该文件写方法可以包括以下步骤:
步骤601,通过数据通道接收EFS文件的信息。
在本公开实施例中,EFS文件的信息中可以包括EFS文件的标识、已读取的数据量和最近一次发送的数据包所携带的数据量中的至少一个。
在本公开实施例中,处理器在通过调用接口接收到调用方发送的EFS文件的读取请求时,可以响应于该读取请求,通过数据通道向基带芯片发送EFS文件的信息,相应的,基带芯片可以接收该EFS文件的信息。
步骤602,根据EFS文件的信息,确定EFS文件未读取的第三数据量。
在本公开实施例中,EFS文件未读取的第三数据量,可以根据EFS文件的总数据量以及已读取的数据量确定。即,可以将EFS文件的总数据量减去已读取的数据量,得到未读取的第三数据量。
在本公开实施例的一种可能的实现方式中,基带芯片可以根据EFS文件的标识,调用基带芯片的内部接口,以得到EFS文件的总数据量,根据EFS文件的总数据量和已读取的数据量,确定未读取的第三数据量。即,可以将EFS文件的总数据量减去已读取的数据量,得到第三数据量。
例如,标记EFS文件的总数据量为size,已读取的数据量(即处理器已接收的总数据量)为recv,则第三数据量可以为size-recv。
步骤603,根据第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量。
在本公开实施例中,基带芯片可以根据EFS文件未读取的第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量。
在本公开实施例的一种可能的实现方式中,可以将第三数据量与单次传输的最大数据量进行比较,判断该第三数据量是否小于或者等于最大数据量,在第三数据量小于或者等于最大数据量的情况下,可以确定只需一次传输,该一次传输所需传输的第四数据量等于第三数据量,即可以将第三数据量作为该一次传输的第四数据量。
而在第三数据量大于最大数据量的情况下,可以确定需要多次传输,针对每次传输,可以将第三数据量与最大数据量进行比较,在第三数据量小于最大数据量的情况下,可以将第三数据量作为本次传输的第四数据量,而在第一数据量大于或等于最大数据量的情况下,可以将最大数据量作为本次传输的第四数据量。
步骤604,根据第四数据量,对EFS文件未读取的数据和EFS文件的总数据量的信息进行打包,以得到各数据包。
在本公开实施例中,针对每次传输,可以根据本次传输的第四数据量,对EFS文件未读取的数据和包含EFS文件的总数据量的信息进行打包,以得到本次传输的数据包。例如,标记第四数据量为tran,可以从EFS文件的第recv个字节位置开始打包,包长为tran,同size一并打包,得到本次传输的数据包。
步骤605,通过数据通道将各数据包发送至运行有终端操作系统的处理器。
在本公开实施例中,基带芯片可以通过数据通道将每次传输的数据包发送至运行有终端操作系统的处理器,从而处理器可以获取每次传输的数据包,以对各次传输的数据包进行解析得到携带的数据以及EFS文件的总数据量,对各次传输的数据包所携带的数据进行保存;在保存的数据量大于或等于EFS文件的总数据量时,向发送读取请求的调用方返回保存的数据。
本公开实施例的文件读方法,通过数据通道接收EFS文件的信息,并根据EFS文件的信息,确定EFS文件未读取的第三数据量;根据第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;根据第四数据量,对EFS文件未读取的数据和EFS文件的总数据量的信息进行打包,以得到各数据包;通过数据通道将各数据包发送至运行有终端操作系统的处理器。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行读操作,并且也支持数据量较大的EFS文件的读操作,可以提升该方法的灵活性和适用性。
作为一种示例,以数据通道为QMI通道进行示例性说明,处理器或应用模块侧的文件读方法,以及基带芯片侧的文件读方法的流程图可以如图7所示。
处理器或应用模块侧(图7中的用户侧):当处理器或应用模块通过QMI通道读取一次数据后,可以保存本次读取到的数据,并利用本次传输读取的数据量(即第二数据量tran),对已接收的总数据量(即基带芯片已传输的数据量recv)进行更新,并根据recv,判断EFS文件是否读取完毕,若是,则将保存的数据,同recv一并返回给接口调用方。
基站芯片侧:可以通过基带芯片的内部接口获取EFS文件的总数据量,根据recv,确定EFS文件是否读取完毕,若否,则继续向处理器或应用模块传输数据包。判断调用基带芯片内部的接口,是否成功获取EFS文件的数据包,若是,则从EFS文件的第recv个字节位置开始打包,包长为tran,同size一并返回至用户侧。
作为一种应用场景,EFS文件的读写过程可以如图8所示。
写过程:
处理器根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量,并根据第二数据量,对EFS文件中未写入基带芯片的数据和包含EFS文件的总数据量的信息进行打包,以得到各数据包;之后可以通过数据通道将各数据包发送至基带芯片。
基带芯片在获取到各数据包后,可以对各数据包进行解析得到所携带的数据,以及EFS文件的总数据量,并将各数据包携带的数据写入缓存,并判断缓存的数据量是否小于EFS文件的总数据量,若是,则基带芯片可以继续接收处理器发送的数据包,并将接收到的数据包所携带的数据写入缓存中,若否,则基带芯片可以调用基带内部接口,将缓存的数据写入EFS文件。
读过程为:
处理器获取调用方发送的读取请求,响应于该读取请求,通过数据通道向基带芯片发送EFS文件的信息。其中,EFS文件的信息包括EFS文件的标识、已读取的数据量和最近一次发送的数据包所携带的数据量。
基带芯片根据EFS文件的标识,调用基带芯片的内部接口,以得到EFS文件的总数据量,并将EFS文件的总数据量减去已读取的数据量,得到未读取的第三数据量。之后可以根据未读取的第三数据量和数据通道单次传输的最大数据量,确定单次传输的第四数据量,并根据第四数据量,对EFS文件未读取的数据和包含EFS文件的总数据量的信息进行打包,以得到各数据包,并通过数据通道将各数据包发送至处理器。
处理器获取各数据包,并对各数据包中的数据进行保存。判断保存的数据量是否小于EFS文件的总数据量,若是,则处理器可以继续接收基带芯片发送的数据包,并将接收到的数据包所携带的数据进行保存,若否,则处理器可以确定EFS文件读取完毕或接收完毕,因此,可以向发送读取请求的调用方返回保存的数据。
需要说明的是,上述仅以先写后读进行示例,实际应用时,本申请对读写的时序不作限制,也可以先读后写。
与上述图1至图2实施例提供的文件写方法相对应,本公开还提供一种文件写装置,由于本公开实施例提供的文件写装置与上述图1至图2实施例提供的文件写方法相对应,因此在文件写方法的实施方式也适用于本公开实施例提供的文件写装置,在本公开实施例中不再详细描述。
图9为本公开一实施例所提供的文件写装置的结构示意图。该文件写装置可以应用于终端的处理器。
如图9所示,该文件写装置900可以包括:处理单元901和收发单元902。
其中,处理单元901,用于根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量。
处理单元901,还用于根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包。
收发单元902,用于通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
进一步地,在本公开实施例的一种可能的实现方式中,处理单元901,具体用于:针对每次传输,将第一数据量与最大数据量比较;在第一数据量小于最大数据量的情况下,将第一数据量作为本次传输的第二数据量;在第一数据量大于或等于最大数据量的情况下,将最大数据量作为本次传输的第二数据量。
进一步地,在本公开实施例的一种可能的实现方式中,收发单元902,还用于接收成功标签,其中,成功标签是基带芯片每当成功缓存一个数据包的情况下发送的。
处理单元901,还用于根据第二数据量,更新发送至基带芯片的已传输数据量。
进一步地,在本公开实施例的一种可能的实现方式中,处理单元901,还用于:在已传输数据量大于或等于EFS文件的总数据量的情况下,停止采用数据通道传输EFS文件;在已传输数据量小于EFS文件的总数据量的情况下,继续采用数据通道对EFS文件中未写入基带芯片的数据进行传输。
本公开实施例的文件写装置,通过根据EFS文件中未写入基带芯片的第一数据量,以及处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;根据第二数据量,对EFS文件中未写入基带芯片的数据和EFS文件的总数据量的信息进行打包,以得到各数据包;通过数据通道将各数据包发送至基带芯片,以使基带芯片缓存各数据包中的数据,并在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行写操作,并且也支持数据量较大的EFS文件的写操作,可以提升该方法的灵活性和适用性。
与上述图3实施例提供的文件写方法相对应,本公开还提供一种文件写装置,由于本公开实施例提供的文件写装置与上述图3实施例提供的文件写方法相对应,因此在文件写方法的实施方式也适用于本公开实施例提供的文件写装置,在本公开实施例中不再详细描述。
图10为本公开另一实施例所提供的文件写装置的结构示意图。该文件写装置可以应用于基带芯片。
如图10所示,该文件写装置1000可以包括:收发单元1001和处理单元1002。
其中,收发单元1001,用于通过数据通道接收至少一个数据包。
处理单元1002,用于对至少一个数据包进行解析得到所携带的数据,以及加密文件系统EFS文件的总数据量。
处理单元1002,还用于将至少一个数据包携带的数据写入缓存。
处理单元1002,还用于在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。
进一步地,在本公开实施例的一种可能的实现方式中,处理单元1002,具体用于:在缓存的数据量大于或等于EFS文件的总数据量时,调用基带内部接口,以根据缓存的数据进行基带芯片的EFS文件写操作。
进一步地,在本公开实施例的一种可能的实现方式中,收发单元1001,还用于:每当成功缓存一个数据包中数据的情况下,向运行有终端操作系统的处理器发送成功标签。
本公开实施例的文件写装置,通过数据通道接收至少一个数据包,并对至少一个数据包进行解析得到所携带的数据,以及EFS文件的总数据量;将至少一个数据包携带的数据写入缓存,以在缓存的数据量大于或等于EFS文件的总数据量时,根据缓存的数据进行基带芯片的EFS文件写操作。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行写操作,并且也支持数据量较大的EFS文件的写操作,可以提升该方法的灵活性和适用性。
与上述图5实施例提供的文件读方法相对应,本公开还提供一种文件读装置,由于本公开实施例提供的文件读装置与上述图5实施例提供的文件读方法相对应,因此在文件读方法的实施方式也适用于本公开实施例提供的文件读装置,在本公开实施例中不再详细描述。
图11为本公开一实施例所提供的文件读装置的结构示意图。该文件读装置可以应用于终端的处理器。
如图11所示,该文件读装置1100可以包括:收发单元1101和处理单元1102。
其中,收发单元1101,用于响应于加密文件系统EFS文件的读取请求,通过数据通道向基带芯片发送EFS文件的信息,以从基带芯片获取EFS文件的至少一个数据包;
处理单元1102,用于对至少一个数据包进行解析得到携带的数据,以及EFS文件的总数据量;
处理单元1102,还用于对至少一个数据包携带的数据进行保存;
收发单元1101,还用于在保存的数据量大于或等于EFS文件的总数据量时,向发送读取请求的调用方返回保存的数据。
进一步地,在本公开实施例的一种可能的实现方式中,EFS文件的信息中包括EFS文件的标识、保存的数据量和最近一次接收到的数据包所携带的数据量中的至少一个。
本公开实施例的文件读装置,通过响应于EFS文件的读取请求,通过数据通道向基带芯片发送EFS文件的信息,以从基带芯片获取EFS文件的至少一个数据包;对至少一个数据包进行解析得到携带的数据,以及EFS文件的总数据量;对至少一个数据包携带的数据进行保存;在保存的数据量大于或等于EFS文件的总数据量时,向发送读取请求的调用方返回保存的数据。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行读操作,并且也支持数据量较大的EFS文件的读操作,可以提升该方法的灵活性和适用性。
与上述图6实施例提供的文件读方法相对应,本公开还提供一种文件读装置,由于本公开实施例提供的文件读装置与上述图6实施例提供的文件读方法相对应,因此在文件读方法的实施方式也适用于本公开实施例提供的文件读装置,在本公开实施例中不再详细描述。
图12为本公开另一实施例所提供的文件读装置的结构示意图。
如图12所示,该文件读装置1200可以包括:收发单元1201和处理单元1202。
其中,收发单元1201,用于通过数据通道接收加密文件系统EFS文件的信息。
处理单元1202,用于根据EFS文件的信息,确定EFS文件未读取的第三数据量。
处理单元1202,还用于根据第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量。
处理单元1202,还用于根据第四数据量,对EFS文件未读取的数据和EFS文件的总数据量的信息进行打包,以得到各数据包。
收发单元1201,还用于通过数据通道将各数据包发送至运行有终端操作系统的处理器。
进一步地,在本公开实施例的一种可能的实现方式中,处理单元1202,具体用于:针对每次传输,将第三数据量与最大数据量比较;在第三数据量小于最大数据量的情况下,将第三数据量作为本次传输的第四数据量;在第三数据量大于或等于最大数据量的情况下,将最大数据量作为本次传输的第四数据量。
进一步地,在本公开实施例的一种可能的实现方式中,EFS文件的信息中包括EFS文件的标识、已读取的数据量和最近一次发送的数据包所携带的数据量中的至少一个;处理单元1202,具体用于:根据EFS文件的标识,调用基带芯片的内部接口,以得到EFS文件的总数据量;根据EFS文件的总数据量,和已读取的数据量,确定第三数据量。
本公开实施例的文件读装置,通过数据通道接收EFS文件的信息,并根据EFS文件的信息,确定EFS文件未读取的第三数据量;根据第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;根据第四数据量,对EFS文件未读取的数据和EFS文件的总数据量的信息进行打包,以得到各的数据包;通过数据通道将各数据包发送至运行有终端操作系统的处理器。本公开中,对EFS文件的类型、大小等并无限制,可以实现对任意的EFS文件进行读操作,并且也支持数据量较大的EFS文件的读操作,可以提升该方法的灵活性和适用性。
为了实现上述实施例,本公开还提出一种终端,包括:处理器和基带芯片;
其中,所述处理器,用于执行如本公开图1或图2实施例提出的文件写方法,或者,执行如图5实施例提出的文件读方法。
所述基带芯片,用于执行如本公开图3实施例提出的文件写方法,或者,执行如图6实施例提出的文件读方法。
为了实现上述实施例,本公开还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开任一实施例提出的文件写方法,或者,实现如本公开任一实施例提出的文件读方法。
为了实现上述实施例,本公开还提出一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本公开任一实施例提出的文件写方法,或者,执行如本公开任一实施例提出的文件读方法。
图13示出了适于用来实现本公开实施方式的示例性终端的框图。图13显示的终端12仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,终端12以通用计算设备的形式表现。终端12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
终端12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被终端12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。终端12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图13未显示,通常称为“硬盘驱动器”)。尽管图13中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read Only Memory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本公开所描述的实施例中的功能和/或方法。
终端12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该终端12交互的设备通信,和/或与使得该终端12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,终端12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide AreaNetwork;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与终端12的其它模块通信。应当明白,尽管图中未示出,可以结合终端12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述任一实施例中提及的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、 “示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (21)
1.一种文件写方法,其特征在于,应用于终端的处理器,包括以下步骤:
根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及所述处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;
根据所述第二数据量,对所述EFS文件中未写入所述基带芯片的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
通过所述数据通道将各所述数据包发送至所述基带芯片,以使所述基带芯片缓存各所述数据包中的数据,并在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
2.根据权利要求1所述的方法,其特征在于,所述根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及所述处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量,包括:
针对每次传输,将所述第一数据量与所述最大数据量比较;
在所述第一数据量小于所述最大数据量的情况下,将所述第一数据量作为本次传输的所述第二数据量;
在所述第一数据量大于或等于所述最大数据量的情况下,将所述最大数据量作为本次传输的所述第二数据量。
3.根据权利要求1或2所述的方法,其特征在于,所述通过所述数据通道将各所述数据包发送至所述基带芯片之后,还包括:
接收成功标签,其中,所述成功标签是所述基带芯片每当成功缓存一个数据包的情况下发送的;
根据所述第二数据量,更新发送至所述基带芯片的已传输数据量。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第二数据量,更新发送至所述基带芯片的已传输数据量之后,还包括:
在所述已传输数据量大于或等于所述EFS文件的总数据量的情况下,停止采用所述数据通道传输所述EFS文件;
在所述已传输数据量小于所述EFS文件的总数据量的情况下,继续采用所述数据通道对所述EFS文件中未写入基带芯片的数据进行传输。
5.一种文件写方法,其特征在于,应用于终端的基带芯片,包括以下步骤:
通过数据通道接收至少一个数据包;
对所述至少一个数据包进行解析得到所携带的数据,以及加密文件系统EFS文件的总数据量;
将所述至少一个数据包携带的数据写入缓存;
在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
6.根据权利要求5所述的文件写方法,其特征在于,所述在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作,包括:
在缓存的数据量大于或等于所述EFS文件的总数据量时,调用基带内部接口,以根据缓存的数据进行所述基带芯片的EFS文件写操作。
7.一种文件读方法,其特征在于,应用于终端的处理器,包括以下步骤:
响应于加密文件系统EFS文件的读取请求,通过数据通道向基带芯片发送所述EFS文件的信息,以从所述基带芯片获取所述EFS文件的至少一个数据包;
对所述至少一个数据包进行解析得到携带的数据,以及所述EFS文件的总数据量;
对所述至少一个数据包携带的数据进行保存;
在保存的数据量大于或等于所述EFS文件的总数据量时,向发送所述读取请求的调用方返回保存的数据。
8.根据权利要求7所述的方法,其特征在于,
所述EFS文件的信息中包括所述EFS文件的标识、所述保存的数据量和最近一次接收到的数据包所携带的数据量中的至少一个。
9.一种文件读方法,其特征在于,应用于终端的基带芯片,包括以下步骤:
通过数据通道接收加密文件系统EFS文件的信息;
根据所述EFS文件的信息,确定所述EFS文件未读取的第三数据量;
根据所述第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;
根据所述第四数据量,对所述EFS文件未读取的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
通过所述数据通道将各所述数据包发送至运行有终端操作系统的处理器。
10.根据权利要求9所述的方法,其特征在于,所述根据所述第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量,包括:
针对每次传输,将所述第三数据量与所述最大数据量比较;
在所述第三数据量小于所述最大数据量的情况下,将所述第三数据量作为本次传输的所述第四数据量;
在所述第三数据量大于或等于所述最大数据量的情况下,将所述最大数据量作为本次传输的所述第四数据量。
11.根据权利要求9或10所述的方法,其特征在于,所述EFS文件的信息中包括所述EFS文件的标识、已读取的数据量和最近一次发送的数据包所携带的数据量中的至少一个;所述根据所述EFS文件的信息,确定所述EFS文件未读取的第三数据量,包括:
根据所述EFS文件的标识,调用所述基带芯片的内部接口,以得到所述EFS文件的总数据量;
根据所述EFS文件的总数据量,和所述已读取的数据量,确定所述第三数据量。
12.一种文件写装置,其特征在于,应用于终端的处理器,包括:
处理单元,用于根据加密文件系统EFS文件中未写入基带芯片的第一数据量,以及所述处理器与基带芯片之间的数据通道单次传输的最大数据量,确定单次传输的第二数据量;
所述处理单元,还用于根据所述第二数据量,对所述EFS文件中未写入所述基带芯片的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
收发单元,用于通过所述数据通道将各所述数据包发送至所述基带芯片,以使所述基带芯片缓存各所述数据包中的数据,并在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
13.根据权利要求12所述的装置,其特征在于,所述处理单元,具体用于:
针对每次传输,将所述第一数据量与所述最大数据量比较;
在所述第一数据量小于所述最大数据量的情况下,将所述第一数据量作为本次传输的所述第二数据量;
在所述第一数据量大于或等于所述最大数据量的情况下,将所述最大数据量作为本次传输的所述第二数据量。
14.根据权利要求12或13所述的装置,其特征在于,
所述收发单元,还用于接收成功标签,其中,所述成功标签是所述基带芯片每当成功缓存一个数据包的情况下发送的;
所述处理单元,还用于根据所述第二数据量,更新发送至所述基带芯片的已传输数据量。
15.根据权利要求14所述的装置,其特征在于,所述处理单元,还用于:
在所述已传输数据量大于或等于所述EFS文件的总数据量的情况下,停止采用所述数据通道传输所述EFS文件;
在所述已传输数据量小于所述EFS文件的总数据量的情况下,继续采用所述数据通道对所述EFS文件中未写入基带芯片的数据进行传输。
16.一种文件写装置,其特征在于,应用于终端的基带芯片,包括:
收发单元,用于通过数据通道接收至少一个数据包;
处理单元,用于对所述至少一个数据包进行解析得到所携带的数据,以及加密文件系统EFS文件的总数据量;
所述处理单元,还用于将所述至少一个数据包携带的数据写入缓存;
所述处理单元,还用于在缓存的数据量大于或等于所述EFS文件的总数据量时,根据缓存的数据进行所述基带芯片的EFS文件写操作。
17.根据权利要求16所述的装置,其特征在于,所述处理单元,具体用于:
在缓存的数据量大于或等于所述EFS文件的总数据量时,调用基带内部接口,以根据缓存的数据进行所述基带芯片的EFS文件写操作。
18.一种文件读装置,其特征在于,应用于终端的处理器,包括:
收发单元,用于响应于加密文件系统EFS文件的读取请求,通过数据通道向基带芯片发送所述EFS文件的信息,以从所述基带芯片获取所述EFS文件的至少一个数据包;
处理单元,用于对所述至少一个数据包进行解析得到携带的数据,以及所述EFS文件的总数据量;
所述处理单元,还用于对所述至少一个数据包携带的数据进行保存;
收发单元,还用于在保存的数据量大于或等于所述EFS文件的总数据量时,向发送所述读取请求的调用方返回保存的数据。
19.一种文件读装置,其特征在于,应用于终端的基带芯片,包括:
收发单元,用于通过数据通道接收加密文件系统EFS文件的信息;
处理单元,用于根据所述EFS文件的信息,确定所述EFS文件未读取的第三数据量;
所述处理单元,还用于根据所述第三数据量,以及数据通道单次传输的最大数据量,确定单次传输的第四数据量;
所述处理单元,还用于根据所述第四数据量,对所述EFS文件未读取的数据和所述EFS文件的总数据量的信息进行打包,以得到各数据包;
所述收发单元,还用于通过所述数据通道将各所述数据包发送至运行有终端操作系统的处理器。
20.一种终端,其特征在于,包括:处理器和基带芯片;
其中,所述处理器,用于执行如权利要求1-4中任一所述的文件写方法,或者,执行如权利要求7或8中任一所述的文件读方法;
所述基带芯片,用于执行如权利要求5或6中任一所述的文件写方法,或者,执行如权利要求9-11中任一所述的文件读方法。
21.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的文件写方法,或者,实现如权利要求5或6中任一所述的文件写方法,或者,实现如权利要求7或8中任一所述的文件读方法,或者,实现如权利要求9-11中任一所述的文件读方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110707718.4A CN113253942B (zh) | 2021-06-25 | 2021-06-25 | 文件写方法及其装置、文件读方法及其装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110707718.4A CN113253942B (zh) | 2021-06-25 | 2021-06-25 | 文件写方法及其装置、文件读方法及其装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113253942A true CN113253942A (zh) | 2021-08-13 |
CN113253942B CN113253942B (zh) | 2022-12-20 |
Family
ID=77189634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110707718.4A Active CN113253942B (zh) | 2021-06-25 | 2021-06-25 | 文件写方法及其装置、文件读方法及其装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113253942B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345925A (zh) * | 2008-08-28 | 2009-01-14 | 深圳华为通信技术有限公司 | 一种文件下载的方法和装置 |
CN101753870A (zh) * | 2008-12-01 | 2010-06-23 | 希姆通信息技术(上海)有限公司 | 手机流媒体文件播放系统 |
US20110131351A1 (en) * | 2009-11-30 | 2011-06-02 | Noeldner David R | Coalescing Multiple Contexts into a Single Data Transfer in a Media Controller Architecture |
US20140207991A1 (en) * | 2013-01-24 | 2014-07-24 | Qualcomm Innovation Center, Inc. | Hardware accelerated communications over a chip-to-chip interface |
CN105808977A (zh) * | 2014-12-30 | 2016-07-27 | Tcl集团股份有限公司 | 一种文件读操作、写操作的处理方法及装置 |
CN106021144A (zh) * | 2016-05-20 | 2016-10-12 | 中国电子科技集团公司第十研究所 | 基带芯片输入缓冲方法 |
CN106570431A (zh) * | 2016-10-24 | 2017-04-19 | 广东欧珀移动通信有限公司 | 一种文件读取方法及装置 |
CN107124737A (zh) * | 2017-05-27 | 2017-09-01 | 努比亚技术有限公司 | 移动终端及数据包传输方法 |
CN110769465A (zh) * | 2019-10-24 | 2020-02-07 | Oppo(重庆)智能科技有限公司 | 数据传输方法及装置、电子设备及可读存储介质 |
CN111198843A (zh) * | 2019-12-19 | 2020-05-26 | 西安交通大学 | 一种基于应用处理器片上总线控制的文件系统写加速方法 |
-
2021
- 2021-06-25 CN CN202110707718.4A patent/CN113253942B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345925A (zh) * | 2008-08-28 | 2009-01-14 | 深圳华为通信技术有限公司 | 一种文件下载的方法和装置 |
CN101753870A (zh) * | 2008-12-01 | 2010-06-23 | 希姆通信息技术(上海)有限公司 | 手机流媒体文件播放系统 |
US20110131351A1 (en) * | 2009-11-30 | 2011-06-02 | Noeldner David R | Coalescing Multiple Contexts into a Single Data Transfer in a Media Controller Architecture |
US20140207991A1 (en) * | 2013-01-24 | 2014-07-24 | Qualcomm Innovation Center, Inc. | Hardware accelerated communications over a chip-to-chip interface |
CN105808977A (zh) * | 2014-12-30 | 2016-07-27 | Tcl集团股份有限公司 | 一种文件读操作、写操作的处理方法及装置 |
CN106021144A (zh) * | 2016-05-20 | 2016-10-12 | 中国电子科技集团公司第十研究所 | 基带芯片输入缓冲方法 |
CN106570431A (zh) * | 2016-10-24 | 2017-04-19 | 广东欧珀移动通信有限公司 | 一种文件读取方法及装置 |
CN107124737A (zh) * | 2017-05-27 | 2017-09-01 | 努比亚技术有限公司 | 移动终端及数据包传输方法 |
CN110769465A (zh) * | 2019-10-24 | 2020-02-07 | Oppo(重庆)智能科技有限公司 | 数据传输方法及装置、电子设备及可读存储介质 |
CN111198843A (zh) * | 2019-12-19 | 2020-05-26 | 西安交通大学 | 一种基于应用处理器片上总线控制的文件系统写加速方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113253942B (zh) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271327B (zh) | 内存管理方法及装置 | |
CN108595203B (zh) | 应用功能执行方法、移动终端和计算机可读存储介质 | |
EP1923780B1 (en) | Apparatus and method for verifying update data in mobile communication system | |
US8885633B2 (en) | Data communication method, data communication system, and communication terminal | |
CN110381207B (zh) | 通信终端连接的方法、装置、计算机设备和存储介质 | |
CN109587732B (zh) | 一种服务质量流的传输方法及装置 | |
CN115827506A (zh) | 数据写入方法、数据读取方法、装置、处理核和处理器 | |
US10136115B2 (en) | Video shooting method and apparatus | |
CN113253942B (zh) | 文件写方法及其装置、文件读方法及其装置、设备和介质 | |
CN112787769A (zh) | 确定nfi的方法、装置、设备和存储介质 | |
CN110324784B (zh) | 通信范围信息的处理方法及终端 | |
KR100259914B1 (ko) | 복합 무선단말기의 데이터 동기방법 | |
CN113543345B (zh) | 资源确定方法、指示方法及设备 | |
JP5498378B2 (ja) | プロセッサ間通信のためのシステム、プロセッサ、装置および方法 | |
CN102055671A (zh) | 一种多应用发包的优先级管理方法 | |
EP1577785B1 (en) | Modem sharing device in a PDA phone | |
JP2011505623A (ja) | メモリ使用量を改善する方法、装置、およびコンピュータプログラム | |
EP4092917A1 (en) | Data transmission method, apparatus and system | |
JP2005228242A (ja) | 移動体通信システムおよび移動端末機器 | |
KR101048432B1 (ko) | 이동통신 단말기의 파일을 이용한 메시지 전송 방법 | |
CN113094117A (zh) | 处理方法、终端及存储介质 | |
CN114766090A (zh) | 一种报文缓存方法、集成电路系统及存储介质 | |
KR100560248B1 (ko) | 전용 캐쉬를 이용한 이동 통신 단말기의 데이터 저장 방법 | |
CN116582231B (zh) | 处理方法、通信设备及存储介质 | |
KR100643805B1 (ko) | 순서 태그를 포함한 메시지 전송 방법 및 상기 방법을수행하는 이동통신 단말기 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |