CN117076407A - Information processing method, device, terminal and storage medium - Google Patents

Information processing method, device, terminal and storage medium Download PDF

Info

Publication number
CN117076407A
CN117076407A CN202311113537.4A CN202311113537A CN117076407A CN 117076407 A CN117076407 A CN 117076407A CN 202311113537 A CN202311113537 A CN 202311113537A CN 117076407 A CN117076407 A CN 117076407A
Authority
CN
China
Prior art keywords
information
application
read
file
data
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
Application number
CN202311113537.4A
Other languages
Chinese (zh)
Inventor
李志刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202311113537.4A priority Critical patent/CN117076407A/en
Publication of CN117076407A publication Critical patent/CN117076407A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The disclosure provides an information processing method and device, a terminal and a storage medium. The information processing method comprises the following steps: responding to a first preset operation, and starting a first application; acquiring attribute information of a first application; acquiring read record information of a first application based on attribute information of the first application; pre-reading corresponding data information in the read record information to a cache based on the time stamp information in the read record information; determining first data information which is read by a first application and does not exist in a cache; and updating the read record information based on the first data information when the first application exits. According to the embodiment of the disclosure, the effect of iterative learning can be achieved, the pre-reading efficiency and accuracy are improved, the phenomenon of blocking or frame loss caused by reading operation is reduced, and the use experience of a user is improved.

Description

Information processing method, device, terminal and storage medium
Technical Field
The present disclosure relates to the field of information technologies, and in particular, to an information processing method and apparatus, a terminal, and a storage medium.
Background
IO (Input/Output) refers to the read and write operations of a file, and since the file is stored in an external memory (e.g., UFS or EMMC), the read and write speeds and delays of the external memory are much slower than those of the internal memory (e.g., DDR), typically with a gap of 1-2 orders of magnitude. There is therefore a caching mechanism for file data at the operating system level (referred to as a page cache). In general, the read-write of the file is performed through a cache (cache), and the cache of the file belongs to the operating system layer. The writing operation of the file is generally that the data can be returned after being written into the cache, and the operation of actually writing into the external memory is uniformly completed by the operating system. The write operation of the file is therefore normally not blocked and normally does not affect the real-time nature of the application. Typically, the delay or blocking of the application is that certain data needs to be read from the file. Accordingly, it is desirable to improve the read operation of an application to reduce the delay or jamming of the application.
Disclosure of Invention
In order to solve the existing problems, the present disclosure provides an information processing method and apparatus, a terminal, and a storage medium.
The present disclosure adopts the following technical solutions.
An embodiment of the present disclosure provides an information processing method, including: responding to a first preset operation, and starting a first application; acquiring attribute information of the first application; acquiring read record information of the first application based on the attribute information of the first application; pre-reading corresponding data information in the read record information to a cache based on the time stamp information in the read record information; determining first data information which is read by the first application and does not exist in the cache; and updating the read record information based on the first data information when the first application exits.
Another embodiment of the present disclosure provides an information processing apparatus including: a starting unit configured to start a first application in response to a first preset operation; an attribute information acquisition unit configured to acquire attribute information of the first application; a read information acquisition unit configured to acquire read record information of the first application based on the attribute information of the first application; a pre-reading unit configured to pre-read corresponding data information in the read record information to a cache based on the time stamp information in the read record information; a determining unit configured to determine first data information read by the first application and not existing in the cache; and the updating unit is configured to update the read record information based on the first data information when the first application exits.
In some embodiments, the present disclosure provides a terminal comprising: at least one memory and at least one processor; the memory is used for storing program codes, and the processor is used for calling the program codes stored in the memory to execute the information processing method.
In some embodiments, the present disclosure provides a storage medium for storing program code for performing the above-described information processing method.
According to the method and the device, the corresponding data information in the read record information is read to the cache in advance based on the timestamp information in the read record information, so that the accuracy of the read in advance can be improved. In addition, when the first application exits, the reading record information is updated based on the first data information, so that the effect of iterative learning can be achieved, the pre-reading efficiency is improved, the phenomenon of blocking or frame loss caused by reading operation is reduced, and the use experience of a user is improved.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by reference to the following detailed description when taken in conjunction with the accompanying drawings. The same or similar reference numbers will be used throughout the drawings to refer to the same or like elements. It should be understood that the figures are schematic and that elements and components are not necessarily drawn to scale.
Fig. 1 is a flowchart of an information processing method of an embodiment of the present disclosure.
Fig. 2 is an overall block diagram of an information processing flow of an embodiment of the present disclosure.
Fig. 3 is an overall process flow of an IO pre-read module of an embodiment of the present disclosure.
Fig. 4 is a process flow after receiving an application start event according to an embodiment of the present disclosure.
Fig. 5 is a process flow after receiving an application exit event according to an embodiment of the present disclosure.
Fig. 6 is a process flow of an IO operation monitoring module of an embodiment of the present disclosure.
Fig. 7 is a partial unit for an information processing apparatus according to an embodiment of the present disclosure.
Fig. 8 is a schematic structural view of an electronic device of an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure have been shown in the accompanying drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustration purposes only and are not intended to limit the scope of the present disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in and/or in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like in this disclosure are merely used to distinguish between different devices, modules, or units and are not used to define an order or interdependence of functions performed by the devices, modules, or units.
It should be noted that references to "a" and "an" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be construed as "one or more" unless the context clearly indicates otherwise.
The names of messages or information interacted between the various devices in the embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
The software and hardware platform adopted by the current Virtual Reality (VR) product is very similar to a mobile phone, and is based on an Android system, and most of bottom technologies are universal. However, VR scenes also differ from cell phone scenes in some way: the VR scene has very high real-time requirements, and once display delay is overlarge or the influence of the cartoon on the user experience is large; in the VR scene, a single foreground application is kept active, background applications and services are fewer, and the method is not like a mobile phone application, which can keep a plurality of applications in the background; 3. because the applications in VR scenarios are 3D applications, the installation packages and resource files of the general applications are relatively large.
Because the cache of the file belongs to the operating system layer, after the data of a certain file read by one process enters the cache, if the other process reads the same file, the operating system can not execute IO operation any more, but directly returns the data from the cache, so that the reading operation of the file is fast.
IO pre-reading is a technique of pre-reading more data before actually reading the data to improve the IO efficiency of a disk by using a page cache mechanism of an operating system. The pre-read may cache data on disk in advance to respond quickly in subsequent requests. Thus, the number of actual IO requests to the disk can be reduced, and the system performance is improved.
The IO pre-reading strategy mainly comprises the following two steps:
1. multi-read strategy
The multi-reading strategy is a method for automatically reading a file with a length larger than the required length when the file is read, so that if the file is read later, the data in the cache can be read, and the method has a better optimizing effect on a scene of file sequential reading, and basically has no effect on a random reading scene. The Android operating system defaults to this policy and can set the read-ahead length.
2. Application launch optimization
The Android system is also introduced with an optimization of application starting, and a basic strategy is to record the offset address and the length of files and file data read by the application from the starting to the finishing stage when the application is started for the first time. When the application is started next time, file data are read into the cache in advance according to the information such as the offset address, the length and the like of the file recorded last time, and the effect of optimizing the application starting time is achieved.
The UID in android is used to identify an application, is assigned at the time of application installation, and does not change during the time that the application is present on the handset. An application can only have one UID, and multiple applications can share the same UID using shareduser id, provided that the signatures of the applications are identical.
inode (index node) refers to a data structure in many "Unix-like file systems" that describes file system objects (including files, directories, device files, sockets, pipes, etc.). Each inode stores attributes and disk block locations of file system object data. The file system object properties contain various metadata (e.g., last modification time), as well as user group (owner) and rights data.
The specific application scenario of the VR is that the existing scheme cannot truly solve the pain point problem of the user. Because VR applications are typically large, the startup time itself is long, and even if recording the first startup read file information, the subsequent pre-reading in advance can improve some startup time, but this optimization is not obvious to the user. For example, the application start time increases from 10 seconds to 9 seconds, and the user may not be aware at all.
The most influencing user experience is that in the process of using the application normally by the user, problems such as blocking or frame loss are caused by delay introduced by IO operation, and the problems are often random and difficult to reproduce and solve.
The method adopts iterative learning and pre-reading in advance, reduces IO operation delay of a user in the application process, thereby reducing the phenomenon of blocking or frame loss caused by IO operation and improving the use experience of the user. The design concept of the present disclosure is that, from the start of application start to the exit of application, access information of file data not in cache is read in each use process of the whole-process recording application, including offset time, file name, offset address, length, etc. relative to the application start point, and then after the next start of application, the file data to be used is read in advance in time period (according to a timestamp) into cache (cache). Because VR scene is basically a single application scene and user's use habit is relatively fixed, so through several iterative learning, just can accomplish accurate prereading basically, effectively solve IO delay and bring the problem such as card dun.
Fig. 1 provides a flowchart of an information processing method of an embodiment of the present disclosure. The information processing method of the present disclosure may include step S101 of starting a first application in response to a first preset operation. In some embodiments, the first preset operation may include a click operation, a gesture operation, a voice instruction, or the like, for example, clicking on an icon of the first application through a handle. In some embodiments, the first application is run in the foreground after the first application is launched.
In some embodiments, the method of the present disclosure may further include step S102 of acquiring attribute information of the first application. In some embodiments, the attribute information of the first application may be obtained from an application management module of the operating system. By acquiring the attribute information of the first application, it is possible to know what the first application is currently started, thereby determining which application to acquire the read record information at the time of the next.
In some embodiments, the method of the present disclosure may further include step S103 of acquiring the read record information of the first application based on the attribute information of the first application. As described above, by acquiring the attribute information of the first application, it is already known which application the first application currently started is, so that the read record information of the first application can be acquired purposefully. In some embodiments, the read record information is historical read record information for the first application that facilitates determining which data information to pre-read to satisfy the fast information read for the first application.
In some embodiments, the method of the present disclosure may further include step S104 of pre-reading the corresponding data information in the read record information to the cache based on the time stamp information in the read record information. In the present disclosure, the earlier or more data information is not pre-read, which may result in excessive memory consumption. The present disclosure performs pre-reading based on time stamp information, for example, assuming that the read record information shows that a certain data block is read 3 minutes after the start-up, the pre-reading may be performed after the start-up of the first application, for example, 2 minutes 59s or other suitable time, to avoid pre-reading too early or too much, thereby improving accuracy of the pre-reading. That is, the pre-reading is performed according to the time stamp information, which contributes to achieving accurate pre-reading.
In some embodiments, the method of the present disclosure may further include step S105 of determining first data information read by the first application that is not present in the cache. In some embodiments, the data information read by the first application is not all pre-read, some, for example, from an external memory. Reading of this portion of the data information obviously increases the read time and is not intended to read the data from the cache as fast. By determining the first data information which is read by the first application and does not exist in the cache and adding the first data information into the read record information, the first data information can be read in advance when the first application is started next time, so that the reading efficiency of the first data information is improved, and the delay of the reading operation is reduced.
In some embodiments, the method of the present disclosure may further include step S106, when the first application exits, updating the read record information based on the first data information. As described above, by determining the first data information which is read by the first application and is not in the cache, and updating the read record information based on the first data information when the first application exits, that is, adding the first data information into the read record information, the first data information can be read in advance after the first application is started next time, so that the effect of iterative learning is achieved, the pre-reading efficiency and accuracy can be continuously improved, the delay caused by the reading operation is reduced, and the use experience of a user is improved.
In some embodiments, the information processing methods of the present disclosure are applied to Virtual Reality (VR) scenes. The VR scene has very high real-time requirements, and once display delay is overlarge or the influence of the cartoon on the user experience is large; in the VR scene, a single foreground application is kept active, background applications and services are fewer, and the background applications are not kept much like mobile phone applications; in addition, applications in VR scenes are mostly 3D applications, so that installation packages and resource files of general applications are relatively large. In VR scenarios, applications that users often use are not too many, so through the learning feedback mechanism of the present disclosure, faster and faster effects can be achieved. By the information processing method, delay of reading operation of the application in the VR scene can be effectively reduced, and therefore use experience of a user is effectively improved.
In some embodiments, the attribute information includes an application identity identifier, e.g., a UID. Typically, each application corresponds to an application identity identifier to identify the application.
In some embodiments, the read record information includes the timestamp information, a file node number, an offset address, and a data length. In some embodiments, the timestamp information is a time in milliseconds from the start of the application, 0 representing the application start time. In some embodiments, the file node number may uniquely identify a file, which may be converted to a file name. In some embodiments, the offset address is an offset address from the beginning of the file, for example in 4KB. In some embodiments, the unit of data length is typically 4KB.
In some embodiments, the information processing method of the present disclosure further includes: setting the value of a file in the read record information as a first preset initial value; from the start to the exit of the first application, when the file is read, the value of the file is increased by 1; when the file is not read, subtracting 1 from the value of the file; a file having a value of 0 is determined, and the file having the value of 0 is removed from the read record information when the read record information is updated. This is a concept that introduces a file access counter: if the first application is started to exit, the file count is increased by 1 after the file is read; if no access has been made, the file count is decremented by 1, and a first preset initial value (e.g., 4, 5 or 6) is set for the first access. If a certain file is pre-read loaded for the first time and is not accessed for 5 consecutive times (assuming that the first preset initial value is 5), the file can be not loaded in the follow-up process, so that excessive memory is avoided. The file with the value of 0 is removed from the read record information, so that the memory occupation is reduced, and the pre-reading precision is improved.
In some embodiments, the information processing method of the present disclosure further includes: setting the value of a file data block in the read record information as a second preset initial value; from the starting to the exiting of the first application, when the file data block is read, adding 1 to the value of the file data block; subtracting 1 from the value of the file data block when the file data block is not read; a file data block having a value of 0 is determined, and the file data block having a value of 0 is removed from the read record information when the read record information is updated. This is a concept that introduces a file data access read counter: if the first application is started to exit, the file data count is increased by 1 after reading a certain block of file data of the file; if no access has been made, the file data count is decremented by 1, and a second preset initial value (e.g., 4, 5 or 6) is set for the first access. If a certain block of data of a certain file is pre-read loaded for the first time, if the data is not accessed for 5 consecutive times (assuming that the second preset initial value is 5), the block of file data can be not loaded later, so that excessive memory is avoided. The file data block with the value of 0 is removed from the read record information, so that the memory occupation is reduced, and the pre-reading precision is improved.
In some embodiments, determining that the first data information read by the first application that is not present in the cache includes determining whether the first data information read by the first application that is not present in the cache is present. In some embodiments, if it is determined that there is present, updating the read record information based on the first data information; if it is determined that the read record information does not exist, this means that the read record information does not need to be updated based on the first data information. In some embodiments, updating the read record information based on the first data information upon exit of the first application comprises: when the first data information exists and the first application exits, the read record information is updated based on the first data information. In some embodiments, when the file or the file data block is not accessed for a number of times exceeding the preset value and the first data information is not present, the relevant file or file data block may be deleted only from the read record information.
The following description is made in connection with some specific cases. As shown in fig. 2, the IO operation record corresponds to the read record information, which is the relevant information of the IO read operation actually performed in the normal working process of the application, including the UID of the application, inode of the operation file, timestamp information, offset address, data length, and the like. The read record information may be stored in a file or in a database.
The IO read-ahead module in FIG. 2 is an independent service process that runs all the way through after the operating system is started. The IO pre-reading module is also a main control module, and when an application is started, the application management module of the operating system can send UID information of the application to the IO pre-reading module. And then the service process acquires IO read record information of the UID from the IO operation record module according to the applied UID information, stores the related information into an IO operation record buffer area, and reads part or all of data of the related file into the cache in advance according to the timestamp. And if the application reads the part of data again, the part of data can be directly obtained from the cache, so that the purpose of reducing IO delay is achieved. The IO pre-reading module also transmits UID information to the IO operation monitoring module, and the IO operation monitoring module filters according to the UID information.
The IO operation monitoring module in FIG. 2 is a module in the kernel of the operating system, after UID information is transmitted to the IO pre-reading module after the application is started, the UID information is also transmitted to the IO operation monitoring module by the IO pre-reading module, and the IO operation monitoring module monitors all IO reading operations of the designated UID and marks the cache hit condition and cache miss information. The information is stored in an application IO access record buffer area, IO read record information is updated according to the content of the buffer area when the application exits, and the next time the application is started, the read record information is read in advance according to the updated IO operation record or read record information. The IO operation monitoring module also updates a file data access bitmap (bitmap) for identifying a file data area used by the application.
In some embodiments, each installed application creates a database file separately to store the IO operation record or read record information, where the database file is stored under a preset path, and the IO pre-reading module may access the database file. In addition, in order to avoid unnecessary data from being read in and consume excessive memory, the present disclosure also introduces an access file counter and an access file data counter. IO operation in the present disclosure refers to read operation, and cache refers to page cache. The IO operation record is used for recording related information of one IO read operation, including timestamp information, file node number and the like, and because the block size of the file system is 4KB, the offset address and the length of the record are both 4KB in size, so that a file with the maximum 16384GB can be supported.
In some embodiments, for bitmaps, each bit represents a block of 4KB, the occupied size is the roundup (len/4K/8); each file is divided by taking 4KB as a unit, each 4KB corresponds to 1 bit, and the space size occupied by bitmaps is different according to the size of the file. If the application is started to exit, the read data area bit is set to be 1, otherwise, the read data area bit is set to be 0. If the bitmap area is 0, it indicates that the entire file has not been read.
In some embodiments, the IO pre-reading module has a master control function, and is automatically operated when turned on, so that the overall flow is relatively simple, and after the program is initialized, the IO pre-reading module is a always-circulated event receiving and processing mechanism, as shown in fig. 3. In some embodiments, the initialization configuration is mainly to configure some communication resources of the operating system, in order to monitor information such as starting and stopping of an application, an event is required to be sent to the IO pre-reading module to send information such as UID of the application when related operations are executed by the application management module of the operating system, and related initialization configuration is also required to be performed when the IO pre-reading module receives the events. In addition, a black-and-white list of monitoring applications is configured, because some built-in applications or system applications are small, and optimization is not necessary.
In some embodiments, there are some events that require snoop processing: the method comprises the steps of applying a starting event, judging that the UID accords with a processing condition, reading a pre-reading database, and starting pre-reading processing; applying an exit event, starting learning iterative processing, and updating an IO access record database or reading record information according to the access condition; applying unloading events, deleting related information such as a database corresponding to the UID; and (5) applying an update event, and deleting related information such as a database corresponding to the UID.
In some embodiments, as shown in FIG. 4, the processing after receipt of an application start event is as follows: a) Judging whether the UID needs to be processed, if so, continuing to the next step, and if not, exiting the processing; b) Judging whether IO operation records (or read record information) exist (the application is started to run for the first time and does not have IO operation records), if so, continuing the next step, otherwise, exiting the processing; c) Reading the IO operation record corresponding to the UID to a buffer area through an operation interface of a database; d) Creating a thread to complete the IO pre-reading function, wherein the pre-reading function is completed by using the thread because all data is not read in at the beginning and needs to be accurately pre-read according to the time stamp; e) And finishing processing and waiting for a new event to come.
In some embodiments, as shown in FIG. 5, the processing after receipt of the application exit event is as follows: a) Judging whether the UID needs to be processed, if so, continuing to the next step, and if not, exiting the processing; b) Judging whether a read-ahead thread corresponding to the UID is running or not, if so, stopping the thread, wherein the read-ahead thread is not required to work any more because the application exits; c) Judging whether IO operation records exist (when the application is started and run for the first time, the IO operation records are not exist), if not, creating, and if so, reading into a buffer area when the application is started; d) Reading a newly added IO access record (corresponding to first data information) in the current application execution process, and information such as a file access counter, a file data access counter and the like, updating the IO operation record according to the information, and completing the iterative learning process; e) And finishing processing and waiting for a new event to come.
In some embodiments, application offload event handling is simple, namely the deletion of the IO access record corresponding to the UID. In some embodiments, for application update event processing, since it cannot be predicted which files and flows are modified by the application update, the processing manner is the same as application offloading, for simplicity, that is, the IO access record corresponding to the UID is deleted.
In some embodiments, the IO operation monitoring module is a processing module added in a file reading interface function process in an operating system kernel, and the processing flow is as shown in fig. 6: 1) Judging whether the UID of the current operation is consistent with the UID to be monitored, if so, continuing processing, otherwise, skipping the subsequent processing; 2) Judging whether an inode of a current operation file is already monitored, if the inode is not described as the first operation of the file, firstly creating an IO operation record buffer area and a file data access bitmap, and then continuing; 3) Judging whether the data content to be read in the read operation is in the page cache or not, if the data content is not read before the data content is not described in the page cache, and if the real IO read operation is needed, recording the information of the IO operation into an IO operation record, and then continuing; 4) Updating the bitmap of file data access according to the offset address and the data length of the current access; 5) The process is ended.
By adopting the information processing method disclosed by the invention, the application does not need to be modified, and the delay caused by the reading operation can be effectively avoided after the normal use for several times. In addition, by continuously updating the read record information, namely by a self-adaptive iterative learning method, unnecessary internal memory and IO consumption can be effectively reduced on the premise of ensuring the pre-reading effect.
The embodiment of the present disclosure also provides an information processing apparatus 400, and fig. 7 is a partial unit for the information processing apparatus 400 of the embodiment of the present disclosure. The information processing apparatus 400 includes a startup unit 401, an attribute information acquisition unit 402, a read information acquisition unit 403, a pre-reading unit 404, a determination unit 405, and an update unit 406. In some embodiments, the starting unit 401 is configured to start the first application in response to a first preset operation. In some embodiments, the attribute information acquisition unit 402 is configured to acquire attribute information of the first application. In some embodiments, the read information obtaining unit 403 is configured to obtain the read record information of the first application based on the attribute information of the first application. In some embodiments, the pre-reading unit 404 is configured to pre-read corresponding data information in the read record information to the cache based on the timestamp information in the read record information. The determining unit 405 is configured to determine first data information read by a first application that is not present in the cache. In some embodiments, the updating unit 406 is configured to update the read record information based on the first data information when the first application exits.
It should be understood that the descriptions regarding the information processing method also apply to the information processing apparatus 400 herein, and for the sake of simplicity, detailed descriptions thereof will not be provided herein.
In some embodiments, the information processing method is applied to a virtual reality scene. In some embodiments, the attribute information includes an application identity identifier. In some embodiments, the read record information includes timestamp information, a file node number, an offset address, and a data length. In some embodiments, the information processing apparatus further includes: a first setting unit configured to set a value of a file in the read record information as a first preset initial value; a first value changing unit configured to: from the start to the exit of the first application, when the file is read, the value of the file is increased by 1; when the file is not read, subtracting 1 from the value of the file; and a first file determining and updating unit configured to determine a file having a value of 0 and remove the file having the value of 0 from the read record information when updating the read record information. In some embodiments, the information processing apparatus further includes: a second setting unit configured to set a value of a file data block in the read record information to a second preset initial value; a second value changing unit configured to: from the starting to the exiting of the first application, when the file data block is read, adding 1 to the value of the file data block; subtracting 1 from the value of the file data block when the file data block is not read; and a second file determination and updating unit configured to determine a file data block having a value of 0, and remove the file data block having a value of 0 from the read record information when updating the read record information. In some embodiments, determining that the first data information read by the first application that is not present in the cache includes determining whether the first data information read by the first application that is not present in the cache is present; updating the read record information based on the first data information when the first application exits includes: when the first data information exists and the first application exits, the read record information is updated based on the first data information.
In addition, the present disclosure also provides a terminal, including: at least one memory and at least one processor; the memory is used for storing program codes, and the processor is used for calling the program codes stored in the memory to execute the information processing method.
Further, the present disclosure also provides a computer storage medium storing a program code for executing the above-described information processing method.
The information processing method and apparatus of the present disclosure are described above based on the embodiments and application. In addition, the present disclosure also provides a terminal and a storage medium, which are described below.
Referring now to fig. 8, a schematic diagram of an electronic device (e.g., a terminal device or server) 500 suitable for use in implementing embodiments of the present disclosure is shown. The terminal devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and the like, and stationary terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 8 is merely an example and should not be construed to limit the functionality and scope of use of the disclosed embodiments.
As shown in fig. 8, the electronic device 500 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 501, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 502 or a program loaded from a storage means 508 into a Random Access Memory (RAM) 503. In the RAM503, various programs and data required for the operation of the electronic apparatus 500 are also stored. The processing device 501, the ROM 502, and the RAM503 are connected to each other via a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
In general, the following devices may be connected to the I/O interface 505: input devices 506 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; an output device 507 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 508 including, for example, magnetic tape, hard disk, etc.; and communication means 509. The communication means 509 may allow the electronic device 500 to communicate with other devices wirelessly or by wire to exchange data. While fig. 8 shows an electronic device 500 having various means, it is to be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead.
In particular, according to embodiments of the present disclosure, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method shown in the flowcharts. In such an embodiment, the computer program may be downloaded and installed from a network via the communication means 509, or from the storage means 508, or from the ROM 502. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing device 501.
It should be noted that the computer readable medium described in the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present disclosure, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
In some implementations, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperText Transfer Protocol ), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the internet (e.g., the internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to perform the methods of the present disclosure described above.
Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments of the present disclosure may be implemented by means of software, or may be implemented by means of hardware. Wherein the names of the units do not constitute a limitation of the units themselves in some cases.
The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary states of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a system on a chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided an information processing method including: responding to a first preset operation, and starting a first application; acquiring attribute information of the first application; acquiring read record information of the first application based on the attribute information of the first application; pre-reading corresponding data information in the read record information to a cache based on the time stamp information in the read record information; determining first data information which is read by the first application and does not exist in the cache; and updating the read record information based on the first data information when the first application exits.
According to one or more embodiments of the present disclosure, the information processing method is applied to a virtual reality scene.
According to one or more embodiments of the present disclosure, the attribute information includes an application identity identifier.
According to one or more embodiments of the present disclosure, the read record information includes the timestamp information, a file node number, an offset address, and a data length.
According to one or more embodiments of the present disclosure, the information processing method further includes: setting the value of the file in the read record information as a first preset initial value; from the start to the exit of the first application, when the file is read, the value of the file is increased by 1; subtracting 1 from the value of the file when the file is not read; determining a file with a value of 0, and removing the file with the value of 0 from the read record information when updating the read record information.
According to one or more embodiments of the present disclosure, the information processing method further includes: setting the value of the file data block in the read record information as a second preset initial value; from the start to the exit of the first application, when the file data block is read, the value of the file data block is increased by 1; subtracting 1 from the value of the file data block when the file data block is not read; determining a file data block with a value of 0, and removing the file data block with a value of 0 from the read record information when updating the read record information.
According to one or more embodiments of the present disclosure, determining that the first data information read by the first application that does not exist in the cache includes determining whether there is first data information read by the first application that does not exist in the cache; updating the read record information based on the first data information when the first application exits includes: when the first data information exists and the first application exits, the read record information is updated based on the first data information.
According to one or more embodiments of the present disclosure, there is provided an information processing apparatus including: a starting unit configured to start a first application in response to a first preset operation; an attribute information acquisition unit configured to acquire attribute information of the first application; a read information acquisition unit configured to acquire read record information of the first application based on the attribute information of the first application; a pre-reading unit configured to pre-read corresponding data information in the read record information to a cache based on the time stamp information in the read record information; a determining unit configured to determine first data information read by the first application and not existing in the cache; and the updating unit is configured to update the read record information based on the first data information when the first application exits.
According to one or more embodiments of the present disclosure, there is provided a terminal including: at least one memory and at least one processor; wherein the at least one memory is configured to store program code, and the at least one processor is configured to invoke the program code stored by the at least one memory to perform any of the methods described above.
According to one or more embodiments of the present disclosure, there is provided a storage medium for storing program code for performing the above-described method.
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by persons skilled in the art that the scope of the disclosure referred to in this disclosure is not limited to the specific combinations of features described above, but also covers other embodiments which may be formed by any combination of features described above or equivalents thereof without departing from the spirit of the disclosure. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).
Moreover, although operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are example forms of implementing the claims.

Claims (10)

1. An information processing method, characterized in that the information processing method comprises:
responding to a first preset operation, and starting a first application;
acquiring attribute information of the first application;
acquiring read record information of the first application based on the attribute information of the first application;
pre-reading corresponding data information in the read record information to a cache based on the time stamp information in the read record information;
determining first data information which is read by the first application and does not exist in the cache;
and updating the read record information based on the first data information when the first application exits.
2. The information processing method according to claim 1, characterized in that the information processing method is applied to a virtual reality scene.
3. The information processing method according to claim 1, wherein the attribute information includes an application identifier.
4. The information processing method according to claim 1, wherein the read record information includes the time stamp information, a file node number, an offset address, and a data length.
5. The information processing method according to claim 1, characterized by further comprising:
setting the value of the file in the read record information as a first preset initial value;
from the start to the exit of the first application, when the file is read, the value of the file is increased by 1; subtracting 1 from the value of the file when the file is not read;
determining a file with a value of 0, and removing the file with the value of 0 from the read record information when updating the read record information.
6. The information processing method according to claim 1, characterized by further comprising:
setting the value of the file data block in the read record information as a second preset initial value;
from the start to the exit of the first application, when the file data block is read, the value of the file data block is increased by 1; subtracting 1 from the value of the file data block when the file data block is not read;
determining a file data block with a value of 0, and removing the file data block with a value of 0 from the read record information when updating the read record information.
7. The information processing method according to claim 1, wherein determining that the first data information read by the first application that does not exist in the cache includes determining whether there is the first data information read by the first application that does not exist in the cache;
updating the read record information based on the first data information when the first application exits includes:
when the first data information exists and the first application exits, the read record information is updated based on the first data information.
8. An information processing apparatus, characterized in that the information processing apparatus comprises:
a starting unit configured to start a first application in response to a first preset operation;
an attribute information acquisition unit configured to acquire attribute information of the first application;
a read information acquisition unit configured to acquire read record information of the first application based on the attribute information of the first application;
a pre-reading unit configured to pre-read corresponding data information in the read record information to a cache based on the time stamp information in the read record information;
a determining unit configured to determine first data information read by the first application and not existing in the cache;
And the updating unit is configured to update the read record information based on the first data information when the first application exits.
9. A terminal, comprising:
at least one memory and at least one processor;
wherein the at least one memory is configured to store program code, and the at least one processor is configured to invoke the program code stored in the at least one memory to perform the information processing method of any of claims 1 to 7.
10. A storage medium storing program code for executing the information processing method according to any one of claims 1 to 7.
CN202311113537.4A 2023-08-31 2023-08-31 Information processing method, device, terminal and storage medium Pending CN117076407A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311113537.4A CN117076407A (en) 2023-08-31 2023-08-31 Information processing method, device, terminal and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311113537.4A CN117076407A (en) 2023-08-31 2023-08-31 Information processing method, device, terminal and storage medium

Publications (1)

Publication Number Publication Date
CN117076407A true CN117076407A (en) 2023-11-17

Family

ID=88702189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311113537.4A Pending CN117076407A (en) 2023-08-31 2023-08-31 Information processing method, device, terminal and storage medium

Country Status (1)

Country Link
CN (1) CN117076407A (en)

Similar Documents

Publication Publication Date Title
US11146502B2 (en) Method and apparatus for allocating resource
CN112035529B (en) Caching method, caching device, electronic equipment and computer readable storage medium
CN111198777A (en) Data processing method, device, terminal and storage medium
CN114706820B (en) Scheduling method, system, electronic device and medium for asynchronous I/O request
CN115543965A (en) Cross-machine-room data processing method, device, storage medium, and program product
CN111400625A (en) Page processing method and device, electronic equipment and computer readable storage medium
CN114661428A (en) Atomic operation processing method, equipment, device and storage medium
CN111258800A (en) Page processing method and device and electronic equipment
CN113127438B (en) Method, apparatus, server and medium for storing data
CN113297267A (en) Data caching and task processing method, device, equipment and storage medium
WO2023273564A1 (en) Virtual machine memory management method and apparatus, storage medium, and electronic device
CN117992410A (en) Small file data processing method and device, electronic equipment and storage medium
CN117076407A (en) Information processing method, device, terminal and storage medium
US12050807B2 (en) Memory management system and method
CN115495020A (en) File processing method and device, electronic equipment and readable storage medium
CN111459893B (en) File processing method and device and electronic equipment
CN115269063A (en) Process creation method, system, device and medium
CN112163176A (en) Data storage method and device, electronic equipment and computer readable medium
CN112860439A (en) Application starting method and device, terminal and storage medium
CN112882831A (en) Data processing method and device
CN112306683A (en) Function hijacking method, device, medium and electronic equipment
CN114625433B (en) Application program starting method and system
US20240256352A1 (en) System and method for managing data retention in distributed systems
CN111831655B (en) Data processing method, device, medium and electronic equipment
CN114205416B (en) Resource caching method, device, electronic equipment and computer readable medium

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