RU2808634C1 - Dynamic real-time file systems compatibility determination - Google Patents

Dynamic real-time file systems compatibility determination Download PDF

Info

Publication number
RU2808634C1
RU2808634C1 RU2023100994A RU2023100994A RU2808634C1 RU 2808634 C1 RU2808634 C1 RU 2808634C1 RU 2023100994 A RU2023100994 A RU 2023100994A RU 2023100994 A RU2023100994 A RU 2023100994A RU 2808634 C1 RU2808634 C1 RU 2808634C1
Authority
RU
Russia
Prior art keywords
access
file system
data
file
simulator
Prior art date
Application number
RU2023100994A
Other languages
Russian (ru)
Inventor
Иван ЖДАНОВ
Александр ЗУДИН
Константин КОМАРОВ
Original Assignee
Парагон Софтвер Гмбх
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 Парагон Софтвер Гмбх filed Critical Парагон Софтвер Гмбх
Application granted granted Critical
Publication of RU2808634C1 publication Critical patent/RU2808634C1/en

Links

Abstract

FIELD: computer technology.
SUBSTANCE: method for dynamically determining compatibility of file systems, a system for accessing data in real time regardless of file systems, and a computer-readable storage medium. A method for dynamically determining file system compatibility and file system-independent data access in real time includes: providing file system access to a passive data memory for an active terminal and a simulator; receiving an access request from the active terminal by the simulator; recognition of the passive data memory file system by the simulator; selecting stored access rules that are suitable for fulfilling the access request in accordance with the recognized passive data storage file system; application of the selected access rules to access data by the simulator, which are specified in the access request; and performing access operations in accordance with the access request.
EFFECT: ability to access passive data memory regardless of the file system managing the passive data memory.
14 cl, 12 dwg

Description

Настоящее изобретение относится к способу динамического определения совместимости файловых систем и системе доступа к данным в реальном времени независимо от файловых систем. Согласно формуле изобретения конечный пользователь может получить доступ к пассивной памяти данных с любого терминала вне зависимости от файловой системы, под управлением которой находится пассивная память данных. Это позволяет избежать сложных многоэтапных процессов, которые, например, предусматривают преобразование файловой системы непосредственно на носителе данных. Таким образом, предлагаемый метод более эффективен и устойчив к ошибкам. Настоящее изобретение также относится к устройству и системе в соответствующих конфигурациях. Кроме того, предлагается компьютерный программный продукт с управляющими командами, реализующими этапы способа.The present invention relates to a method for dynamically determining file system compatibility and a real-time data access system independent of file systems. According to the claims, the end user can access the passive data memory from any terminal, regardless of the file system under which the passive data memory is located. This avoids complex multi-step processes that, for example, involve converting the file system directly on the storage medium. Thus, the proposed method is more efficient and error-resistant. The present invention also relates to an apparatus and system in corresponding configurations. In addition, a computer program product is proposed with control commands that implement the stages of the method.

В US 5463772 A1 показаны устройства для чтения и записи в память активных данных с заданной файловой системой.US 5463772 A1 shows devices for reading and writing active data memory with a specified file system.

В WO 2005/086039 A2 предлагается способ создания носителей данных со структурированной записью информации, и для этой цели предлагается преобразование данных и использование универсальной модели данных.WO 2005/086039 A2 proposes a method for creating storage media with a structured record of information, and for this purpose proposes data transformation and the use of a universal data model.

В WO 2018/031794 A1 показан способ записи на носитель информации.WO 2018/031794 A1 shows a method for recording on a storage medium.

В US 5742818 А показан способ преобразования файловой системы.US 5,742,818 A shows a method for converting a file system.

Известный уровень техники касается проблемы совместимости при попытке доступа к памяти данных с терминала. Например, конечное устройство не поддерживает файловую систему, под управлением которой работает память. Известный уровень техники предполагает, что в случае несовместимости, т. е. при работе с разными файловыми системами, файловая система памяти данных обычно преобразуется. Таким образом, файловая система памяти данных преобразуется в файловую систему, поддерживаемую терминалом. Это сложный процесс, и данные на носителе также теряются.The prior art addresses a compatibility issue when attempting to access data memory from a terminal. For example, the end device does not support the file system under which the memory operates. The prior art assumes that in case of incompatibility, i.e. when working with different file systems, the file system of the data memory is usually converted. In this way, the file system of the data memory is converted into a file system supported by the terminal. This is a complex process and the data on the media is also lost.

Перенос или преобразование из одной файловой системы в другую часто осуществляется путем форматирования всей памяти данных. Форматирование основано на стирании всех данных в хранилище во время реструктуризации. В начале операции записи оно является пустым. Это приводит к дополнительным проблемам, например, к необходимости резервного копирования данных или к возможной потере данных.Transferring or converting from one file system to another is often accomplished by formatting the entire data memory. Formatting is based on erasing all data in storage during restructuring. It is empty at the start of a write operation. This leads to additional problems, such as the need to back up data or possible data loss.

Кроме того, из уровня техники известна реализация эмуляции, когда имитируются функциональные возможности целевой системы. Эмуляция также является сложным процессом и требует значительных усилий для обеспечения уровня абстракции базового аппаратного и программного обеспечения целевой системы. Эмуляция сама по себе часто занимает много времени. Кроме того, для обмена информацией с пассивной памятью данных эти реализуемые функции являются избыточными. Обычно это не дает больших функциональных возможностей. Напротив, основная задача памяти данных состоит в том, чтобы просто действовать пассивно и исключительно хранить статические данные. Поэтому эмуляция также занимает много времени и склонна привносить ошибки при использовании.In addition, the implementation of emulation is known from the prior art, when the functionality of the target system is imitated. Emulation is also a complex process and requires significant effort to provide a layer of abstraction to the underlying hardware and software of the target system. Emulation itself often takes a long time. In addition, for exchanging information with a passive data memory, these implemented functions are redundant. This usually does not provide much functionality. In contrast, the main purpose of data memory is to simply act passively and exclusively store static data. Therefore, emulation also takes a long time and is prone to introduce errors when used.

Таким образом, известный уровень техники имеет недостаток, заключающийся в отсутствии способа, позволяющего конечному пользователю подключать пассивный носитель данных к терминалу таким образом, чтобы используемые файловые системы всегда были совместимы. Применяемые методы являются сложными, и сложное преобразование всей файловой системы обычно выполняется на этапе подготовки. Однако это считается невыгодным для пользователя, поскольку он обычно хочет записывать на носитель данные в реальном времени и, таким образом, не склонен прибегать к форматированию. Если в результате возникает опасность потери данных пользователя, такие процедуры не принимаются.Thus, the prior art has the disadvantage that there is no way for an end user to connect a passive storage medium to a terminal in such a way that the file systems used are always compatible. The techniques used are complex, and complex conversion of the entire file system is usually performed during the preparation phase. However, this is considered to be disadvantageous for the user since he usually wants to write data to the medium in real time and thus is not inclined to resort to formatting. If this results in a risk of loss of user data, such procedures will not be accepted.

Таким образом, целью предлагаемого изобретения является создание способа, который позволяет пользователю подключать пассивное устройство хранения данных к терминалу, не вызывая проблем с совместимостью файловых систем. Поэтому должен быть возможен независимый от файловой системы доступ к данным, который не влечет за собой потери данных и может осуществляться в режиме реального времени. Также целью настоящего изобретения является предложение соответственно сконфигурированного устройства и соответствующим образом сконфигурированной системы. Кроме того, должна быть предложена компьютерная программа с управляющими командами, которые реализуют предлагаемый способ или управляют устройством или сконфигурированной системой.Thus, the object of the present invention is to provide a method that allows a user to connect a passive storage device to a terminal without causing file system compatibility problems. Therefore, it must be possible to access data independent of the file system, which does not entail data loss and can be carried out in real time. It is also an object of the present invention to provide a suitably configured device and a suitably configured system. In addition, a computer program must be provided with control instructions that implement the proposed method or control the device or configured system.

Цель достигается способом, подходящим под описание в п. 1. Дополнительные предпочтительные конфигурации указаны в связанных пунктах формулы изобретения.The goal is achieved in a manner consistent with the description in claim 1. Additional preferred configurations are indicated in the related claims.

Соответственно, предлагается способ динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени, включающий предоставление доступа к файловой системе пассивного запоминающего устройства для активного терминального устройства и моделирующего устройства, которые соединены для передачи информации между пассивным запоминающим устройством данных и активным терминалом; способ приема запроса доступа от активного терминала с помощью моделирующего устройства, при этом в запросе доступа указываются данные для доступа и операции доступа к пассивной памяти данных; распознавание файловой системы пассивной памяти данных моделирующим устройством; выбор сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с предварительно определенной файловой системой пассивной памяти данных; применение моделирующим устройством выбранных правил для доступа к данным, указанным в запросе доступа; выполнение операций доступа в соответствии с запросом.Accordingly, a method is provided for dynamically establishing file system compatibility and accessing data independent of the file system in real time, including providing access to a file system of a passive storage device to an active terminal device and a simulator that are connected to transmit information between the passive data storage device and active terminal; a method of receiving an access request from an active terminal using a simulator, wherein the access request specifies access data and an access operation to a passive data memory; recognition of the passive data memory file system by the simulator; selecting stored access rules that are suitable for fulfilling the access request in accordance with a predefined passive data storage file system; application by the simulator of selected rules to access the data specified in the access request; performing access operations as requested.

Согласно изобретению динамическое установление совместимости файловых систем происходит таким образом, что аппаратное обеспечение носителя данных не эмулируется, а вместо этого выполняется адаптация на уровне данных или файлов таким образом, что данные с терминала могут быть записаны в пассивная память данных. Аппаратное обеспечение не симулируется, работа выполняется на уровне файлов, для которого эмуляция не требуется. Пассивная память данных также не имеет программного обеспечения, поэтому также не требуется устанавливать соответствие функций. Память данных обычно поддерживает только пассивные операции чтения или записи. Это позволяет использовать предлагаемый способ в режиме реального времени.According to the invention, dynamic establishment of file system compatibility occurs in such a way that the hardware of the storage medium is not emulated, but instead adaptation is performed at the data or file level so that data from the terminal can be written to a passive data memory. The hardware is not simulated, the work is done at the file level, which does not require emulation. The passive data memory is also software-free, so there is also no need to assign function mappings. Data memory typically supports only passive read or write operations. This allows the proposed method to be used in real time.

Согласно настоящему изобретению, реальное время означает отсутствие значительных задержек, то есть пользователь не замечает никаких задержек. Отдельные этапы процесса могут выполняться за доли секунды, так что у конечного пользователя создается впечатление, что процесс выполняется в режиме реального времени. С технической точки зрения безусловно существует время обработки, которое, однако, не может быть замечено пользователем-человеком.According to the present invention, real time means no significant delays, that is, the user does not notice any delays. Individual steps in the process can be completed in fractions of a second, giving the end user the impression that the process is happening in real time. From a technical point of view, there is certainly a processing time, which, however, cannot be noticed by the human user.

Согласно изобретению способ позволяет избежать необходимости эмулировать или передавать файловые системы на подготовительном этапе реализации способа. Таким образом, конечный пользователь может подключить носитель данных или пассивная память данных к терминалу с помощью моделирующего устройства и немедленно начать операции чтения и записи в памяти данных. Это означает, что данные в памяти данных могут быть доступны независимо от файловой системы. Доступ к данным означает, что поддерживаются как операции чтения, так и операции записи на носителе данных.According to the invention, the method avoids the need to emulate or transfer file systems in the preparatory stage of implementing the method. Thus, the end user can connect the storage medium or passive data memory to the terminal using the simulator and immediately begin reading and writing operations on the data memory. This means that the data in the data memory can be accessed independently of the file system. Data access means that both read and write operations are supported on the storage medium.

Для этого необходимо предоставить доступ к файловой системе. Предоставление доступа также называется операцией МОНТИРОВАНИЯ. В данном случае можно считать информацию о файловой системе пассивной памяти данных и уже с этого момента обладать сведениями о том, какие данные находятся в памяти. Это не требует значительных затрат времени, так что с точки зрения пользователя этот этап процесса также может выполняться в режиме реального времени, т. е. без ожидания. После предоставления доступа к файловой системе память данных связана с активным терминалом для передачи информации, а моделирующее устройство находится между ними. Предоставление доступа включает, например, соединение разъемов между памятью данных, моделирующим устройством и активным терминалом.To do this, you must provide access to the file system. Granting access is also called a MOUNT operation. In this case, you can read information about the file system of the passive data memory and from that moment have information about what data is in memory. This does not require a significant investment of time, so from the user's point of view this step of the process can also be carried out in real time, i.e. without waiting. After access to the file system is granted, the data memory is associated with the active terminal for information transfer, and the simulator is located between them. Providing access includes, for example, connecting connectors between the data memory, the simulator and the active terminal.

Соединение разъемов может быть выполнено таким образом, что пассивная память данных подключается непосредственно к моделирующему устройству, а оно, в свою очередь, подключается к активному терминалу. Однако также возможно обеспечить проводное соединение между памятью данных, моделирующим устройством и терминалом. Согласно одному аспекту настоящего изобретения доступ предоставляется посредством физического соединения между устройством хранения данных, моделирующим устройством и терминалом. Специалисту в данной области техники известны основные способы выполнения этого, а также способы проектирования такого подключения разъемов. В качестве примера можно привести USB, поэтому для этой цели можно использовать общеизвестные интерфейсы. Таким образом, пассивным устройством хранения данных может быть внешний жесткий диск, USB-накопитель или слот для SD-карты.The connection of the connectors can be done in such a way that the passive data memory is connected directly to the simulator, which in turn is connected to the active terminal. However, it is also possible to provide a wired connection between the data memory, the simulator and the terminal. According to one aspect of the present invention, access is provided through a physical connection between a storage device, a simulator, and a terminal. One skilled in the art will know the basic methods for doing this, as well as the methods for designing such connector connections. USB is an example, so well-known interfaces can be used for this purpose. So the passive storage device could be an external hard drive, a USB flash drive, or an SD card slot.

Моделирующее устройство может быть спроектировано как отдельное аппаратное устройство и может, например, иметь память данных, содержащую правила доступа. Моделирующее устройство также может быть реализовано как встроенная система, которая обеспечивает или реализует логику управления. Как правило, моделирующее устройство содержит по меньшей мере два интерфейса: пассивное запоминающее устройство, сообщающееся с моделирующим устройством через интерфейс, и активный терминал, сообщающийся с еще одним интерфейсом. В общем случае, также можно предусмотреть дополнительные интерфейсы, чтобы можно было подключить несколько запоминающих устройств. Также можно подключить несколько активных конечных устройств, чтобы они могли выполнять операции записи или чтения в памяти данных.The simulator may be designed as a separate hardware device and may, for example, have a data memory containing access rules. The simulator can also be implemented as an embedded system that provides or implements control logic. Typically, the simulator includes at least two interfaces: a passive storage device communicating with the simulator through an interface, and an active terminal communicating with yet another interface. In general, it is also possible to provide additional interfaces so that multiple storage devices can be connected. You can also connect multiple active end devices so that they can perform write or read operations on data memory.

Пассивная память данных не реализует отдельных функций, а служит только для хранения данных и поэтому может называться пассивной. Соответствующие операции записи и чтения инициируются и передаются активным терминалом. Таким образом, активный терминал инициирует способ согласно изобретению, чтобы получить доступ к пассивной памяти данных. Активный терминал хранит данные, которые организованы в соответствии с имеющейся файловой системой, или запрашивает данные, которые хранятся в пассивной памяти данных. Согласно изобретению соответствующие данные адаптируются в зависимости от поддерживаемой файловой системы активного устройства.Passive data memory does not implement individual functions, but serves only to store data and therefore can be called passive. The corresponding write and read operations are initiated and transmitted by the active terminal. Thus, the active terminal initiates the method according to the invention to access the passive data memory. The active terminal stores data that is organized according to the existing file system, or requests data that is stored in the passive data memory. According to the invention, the corresponding data is adapted depending on the supported file system of the active device.

Обычно активный терминал поддерживает первую файловую систему, а пассивное устройство хранения управляется второй файловой системой. Если при этом данные записываются в пассивную память, данные в формате первой файловой системы адаптируются таким образом, чтобы хранить их в формате второй файловой системы. Если данные запрашиваются из памяти, они переводятся из формата второй файловой системы таким образом, чтобы они соответствовали формату первой файловой системы. Как правило, для этой цели нет необходимости адаптировать пользовательские данные, необходимо адаптировать только дополнительные данные. Например, метаданные можно смоделировать таким образом, чтобы их можно было записывать в память или хранить на активном терминале. Дополнительные данные могут описывать пользовательские данные или содержать информацию о файловой системе. Дополнительные данные также могут содержать смещение, указывающее место физического расположения соответствующих блоков данных на накопителе.Typically, the active terminal supports the first file system, and the passive storage device is controlled by the second file system. If data is then written to passive memory, the data in the first file system format is adapted to be stored in the second file system format. If data is requested from memory, it is translated from the second file system format so that it matches the first file system format. Typically, there is no need to adapt user data for this purpose, only additional data needs to be adapted. For example, metadata can be modeled so that it can be written to memory or stored on the active terminal. Additional data may describe user data or contain file system information. The additional data may also include an offset indicating the physical location of the corresponding data blocks on the storage device.

Моделирующее устройство соответственно принимает запрос доступа от активного терминала, при этом в запросе доступа указываются данные, к которым требуется доступ, и операции доступа в памяти пассивных данных. Операции доступа могут представлять собой операции чтения или операции записи, а данные доступа описывают, что именно должно быть запрошено или передано. Данные доступа могут, например, указывать имя файла, который должен быть записан в память данных в соответствии с операцией доступа «запись». Запрос доступа инициируется активным терминалом и указывает нужные данные, не затрагивая файловую систему.The simulator accordingly receives an access request from the active terminal, wherein the access request specifies the data to be accessed and the access operations in the passive data memory. Access operations can be read operations or write operations, and access data describes what exactly is to be requested or transferred. The access data may, for example, indicate the name of a file to be written to the data memory in accordance with a write access operation. The access request is initiated by the active terminal and specifies the required data without affecting the file system.

Файловая система пассивного носителя данных затем определяется моделирующим устройством. Моделирующее устройство является посредником между активным терминалом и пассивной памятью данных. Таким образом, все сообщения и команды проходят через моделирующее устройство. Таким образом, подключенные участники информационного обмена, то есть активный терминал и пассивное запоминающее устройство, обмениваются данными только через моделирующее устройство.The file system of the passive storage medium is then determined by the simulator. The simulator acts as an intermediary between the active terminal and the passive data memory. Thus, all messages and commands pass through the simulator. Thus, the connected communication participants, that is, the active terminal and the passive storage device, exchange data only through the simulator.

Кроме того, существует выбор сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с определенной ранее файловой системой пассивной памяти данных. Сохраненные правила доступа могут быть определены, например, опытным путем или могут быть созданы на подготовительном этапе процесса. Правила доступа описывают, как следует моделировать данные, чтобы после их получения из первой файловой системы их можно было интерпретировать во второй файловой системе. Дополнительные данные, например метаданные, обычно адаптируются на этом этапе таким образом, что файлы или данные в формате первой операционной системы кодируются в соответствии с форматом второй операционной системы. Если, например, выполняется операция записи, активный терминал передает файлы в формате первой файловой системы или в формате файловой системы на активном терминале. Затем они моделируются в соответствии с правилами доступа таким образом, чтобы их можно было сохранить во второй файловой системе или в формате файловой системы. Если наоборот, выполняется операция чтения, данные второй файловой системы преобразуются таким образом, чтобы их они могли интерпретироваться активной файловой системой. Таким образом, данные преобразуются так, чтобы их можно было сохранить в файловой системе активного терминала.In addition, there is a selection of stored access rules that are suitable for fulfilling the access request in accordance with the previously defined passive data storage file system. Stored access rules can be determined, for example, empirically or can be created during the preparatory phase of the process. Access rules describe how data should be modeled so that once it is received from the first file system, it can be interpreted by the second file system. Additional data, such as metadata, is typically adapted at this stage such that files or data in the first operating system format are encoded according to the second operating system format. If, for example, a write operation is performed, the active terminal transfers files in the format of the first file system or in the format of the file system on the active terminal. They are then modeled according to access rules so that they can be stored in a second file system or file system format. If, on the contrary, a read operation is performed, the data of the second file system is transformed so that it can be interpreted by the active file system. In this way, the data is converted so that it can be stored in the file system of the active terminal.

Правила доступа могут быть выбраны таким образом, чтобы сохранялась таблица, которая описывает файловую систему активного терминала в первом столбце, файловую систему пассивной памяти данных во втором столбце и предоставляемые правила доступа в третьем столбце. Третий столбец может содержать указатель на соответствующие правила доступа. В качестве файловых систем могут использоваться FAT, FAT32, ExFAT, NTFS и другие.The access rules can be selected to maintain a table that describes the active terminal's file system in the first column, the passive data storage file system in the second column, and the provided access rules in the third column. The third column may contain a pointer to the corresponding access rules. FAT, FAT32, ExFAT, NTFS and others can be used as file systems.

Память данных с правилами доступа обычно встроена в моделирующее устройство, или память данных также может присутствовать в виде внешней памяти, из которой считываются данные. Аналогично память данных также может располагаться в активном терминале.A data memory with access rules is usually built into the simulator, or the data memory may also be present in the form of an external memory from which data is read. Likewise, the data memory can also be located in the active terminal.

Таким образом, правила доступа описывают правила преобразования данных для записи или чтения, чтобы они были в подходящем формате в каждом случае. То есть может быть предусмотрен анализ данных доступа таким образом, что данные полезной нагрузки отделяются от других данных, а другие данные преобразуются в формат файловой системы. В качестве опции также предусмотрено преобразование пользовательских данных, причем в типичном случае преобразуются только дополнительные данные или метаданные. Таким образом, можно очень эффективно выполнять модуляцию, и поэтому способ можно осуществлять в режиме реального времени. Таким образом, преобразование дополнительных данных может быть выполнено быстро, поскольку адаптируются данные, а не файловая система, и, как правило, адаптируются только метаданные. Это очень небольшой объем данных, который можно адаптировать без особых технических затрат.Thus, access rules describe the rules for transforming data for writing or reading so that it is in the appropriate format in each case. That is, analysis of the access data may be provided such that the payload data is separated from other data and the other data is converted into a file system format. Custom data conversion is also an option, with typically only additional data or metadata being converted. In this way, modulation can be performed very efficiently, and therefore the method can be carried out in real time. This way, additional data conversion can be done quickly because it is the data that is being adapted, not the file system, and typically only the metadata is being adapted. This is a very small amount of data that can be adapted without much technical effort.

Если выбраны правила доступа, они применяются к данным доступа, что означает, что данные для чтения или записи адаптируются таким образом, чтобы их можно было записать в файловую систему пассивной памяти данных или при чтении данных они адаптированы так, чтобы они соответствовали файловой системе активного терминала. Как уже было описано, часто бывает достаточно просто закодировать или смоделировать дополнительные данные, а не данные полезной нагрузки.If access rules are selected, they are applied to the access data, which means that the data being read or written is adapted so that it can be written to the file system of the passive data memory, or when the data is read, it is adapted so that it matches the file system of the active terminal . As already described, it is often sufficient to simply encode or model the additional data rather than the payload data.

Поскольку данные преобразуются так, чтобы они были в совместимом формате, можно инициировать этап выполнения операций доступа. Операции доступа могут быть либо операциями чтения, либо операциями записи. Поскольку данные доступны в нужном виде, они записываются в пассивную память данных или считываются из пассивной памяти данных.Since the data is converted so that it is in a compatible format, the access operations step can be initiated. Access operations can be either read or write operations. Since the data is available in the desired form, it is written to the passive data memory or read from the passive data memory.

Этапы способа могут выполняться итеративно таким образом, чтобы применялись выбранные правила доступа и выполнялись операции доступа для определенного потока данных. Например, набор файлов может быть запрошен активным терминалом, и в соответствии с операциями доступа может быть определено, достаточно ли однократной корректировки данных доступа или, например, правила доступа должны повторно применяться после каждой операции записи файла. Это означает, что метаданные могут быть адаптированы для каждого файла или что метаданные адаптируются только один раз, и все пользовательские данные перезаписываются. Порядок действий можно сохранить в памяти данных моделирующего устройства.The method steps may be performed iteratively such that selected access rules are applied and access operations are performed on a specific data stream. For example, a set of files may be requested by an active terminal, and according to the access operations, it can be determined whether a one-time adjustment of the access data is sufficient or, for example, the access rules must be reapplied after each file write operation. This means that the metadata can be adapted for each file, or that the metadata is adapted only once and all user data is overwritten. The procedure can be stored in the simulator's data memory.

Согласно одному аспекту настоящего изобретения предоставление доступа включает процесс монтирования, встраивание пассивного носителя данных в моделирующее устройство, встраивание пассивного носителя данных в активный терминал, соединение для обмена информацией, установление по меньшей мере одного соединения разъемов, активацию доступа, настройку прав доступа и/или передачу данных. Преимущество этого заключается в том, что память данных может быть считана при предоставлении доступа, и поэтому можно оценить имеющиеся данные во время операции чтения. Так, например, могут быть известны размеры файлов, и можно определить, как структурирован считываемый поток данных. В зависимости от этой информации можно оптимизировать применение выбранных правил доступа и выполнение операций доступа. Если, например, имеется много файлов меньшего размера, отдельные группы файлов могут быть прочитаны как поток данных, и поэтому применение выбранных правил доступа относится к нескольким файлам. Если файлы большие, правила доступа могут быть применены к каждому файлу. Подключение обеспечивает связь активного терминала с пассивной памятью данных через моделирующее устройство. Также возможно реализовать дополнительные механизмы безопасности, например можно назначить права доступа.According to one aspect of the present invention, providing access includes a mounting process, embedding a passive storage medium into a simulator, embedding a passive storage medium into an active terminal, a communication connection, establishing at least one connector connection, activating access, setting access rights, and/or transferring data. The advantage of this is that the data memory can be read when access is granted, and therefore the available data can be evaluated during the read operation. For example, file sizes can be known and it can be determined how the data stream being read is structured. Depending on this information, you can optimize the application of selected access rules and the execution of access operations. If, for example, there are many smaller files, individual groups of files may be read as a stream of data, and therefore the application of the selected access rules applies to several files. If the files are large, access rules can be applied to each file. The connection allows the active terminal to communicate with the passive data memory via the simulator. It is also possible to implement additional security mechanisms, for example, you can assign access rights.

Согласно еще одному аспекту настоящего изобретения активный терминал имеет операционную систему, которая формирует запрос на доступ. Преимущество состоит в том, что потоки данных могут быть указаны заранее, и поэтому известно, какие файлы запрашиваются. Таким образом, операционная система может указать, что большое количество файлов должно быть прочитано или записано, и поэтому выбранные правила доступа могут также применяться к одному или нескольким файлам. Следовательно, данные доступа могут быть сегментированы и адаптированы как единое целое или могут быть адаптированы отдельные сегменты, т. е. отдельные потоки данных. Таким образом можно объединять небольшие объемы данных, а правила доступа применяются один раз. Это означает, что такие файлы можно записывать и не нужно каждый раз корректировать дополнительные данные.According to another aspect of the present invention, the active terminal has an operating system that generates an access request. The advantage is that data streams can be specified in advance and therefore it is known which files are being requested. In this way, the operating system can indicate that a large number of files must be read or written, and therefore the selected access rules can also be applied to one or more files. Consequently, the access data can be segmented and adapted as a whole, or individual segments, i.e. individual data streams, can be adapted. In this way, small amounts of data can be combined, and access rules are applied only once. This means that such files can be written and there is no need to adjust additional data each time.

В соответствии с еще одним аспектом настоящего изобретения приложение и реализация выполняются итеративно для каждого потока данных, и при этом операционная система определяет поток данных. Преимущество состоит в том, что применение правил доступа и выполнение операций записи могут выполняться сколь угодно часто, так что после последней итерации все данные доступа считываются или записываются. Таким образом, потоки данных могут быть выбраны в зависимости от запрошенных или указанных файлов.In accordance with yet another aspect of the present invention, the application and implementation are performed iteratively for each data stream, wherein the operating system determines the data stream. The advantage is that applying access rules and performing write operations can be performed as often as desired, so that after the last iteration, all access data is read or written. In this way, data streams can be selected depending on the files requested or specified.

Согласно еще одному аспекту настоящего изобретения запрос доступа имеет по меньшей мере один запрос на чтение и/или запись. Преимущество состоит в том, что пассивная память данных может быть доступна как для чтения, так и для записи. В данном случае нет необходимости эмулировать функциональность пассивной памяти данных. Скорее в соответствии с изобретением происходит адаптация (мета)данных, подлежащих записи или чтению, и нет прямой адаптации файловой системы к пассивным данным.According to another aspect of the present invention, the access request has at least one read and/or write request. The advantage is that passive data memory can be read or written. In this case, there is no need to emulate the functionality of passive data memory. Rather, according to the invention, there is adaptation of the (meta)data to be written or read, and there is no direct adaptation of the file system to the passive data.

Согласно еще одному аспекту настоящего изобретения в запросе доступа указываются данные полезной нагрузки и/или дополнительные данные. Преимущество состоит в том, что в запросе доступа уже указано, какие данные являются пользовательскими, а какие дополнительными. Дополнительные данные могут быть, например, метаданными, описывающими полезные данные. Такими дополнительными данными являются размер файла или имя файла. Если файловая система не поддерживает определенные дополнительные данные, например используется другой набор символов, применение правил доступа происходит таким образом, что имя файла изменяется так, чтобы оно соответствовало набору символов файловой системы. Например, активный терминал хочет записать файлы в пассивную память данных и указывает пользовательские данные с именами файлов с умлаутом. Если умлауты не поддерживаются в файловой системе памяти данных, правило доступа предусматривает, например, что умлауты заменяются другой гласной или гласной и буквой «е».According to another aspect of the present invention, the access request specifies payload data and/or additional data. The advantage is that the access request already specifies which data is user-specific and which is optional. The additional data may be, for example, metadata describing the payload. Such additional data is the file size or file name. If the file system does not support certain additional data, such as using a different character set, access rules are enforced so that the file name is changed to match the file system's character set. For example, the active terminal wants to write files to the passive data memory and specifies user data with file names with an umlaut. If umlauts are not supported in the data storage file system, the access rule stipulates, for example, that umlauts are replaced by another vowel or a vowel and the letter "e".

Согласно еще одному аспекту настоящего изобретения данные доступа описывают имена файлов, абсолютные адреса памяти, относительные адреса памяти, типы и/или свойства файлов. Преимущество состоит в том, что данные доступа описывают, какая информация потенциально нуждается в адаптации. Если система пассивной памяти данных поддерживает только определенные адреса или имеет только определенный размер, передаваемые адреса памяти адаптируются так, чтобы данные доступа могли быть записаны в память данных. Если выполняется чтение файлов, эти данные доступа могут быть адаптированы таким образом, чтобы их можно было сохранить в файловой системе активного терминала.According to another aspect of the present invention, the access data describes file names, absolute memory addresses, relative memory addresses, file types and/or properties. The advantage is that the access data describes what information potentially needs adaptation. If the passive data memory system only supports certain addresses or has only a certain size, the transmitted memory addresses are adapted so that access data can be written to the data memory. If files are read, these access data can be adapted so that they can be stored in the file system of the active terminal.

Согласно еще одному аспекту настоящего изобретения операции доступа описывают операции чтения и/или записи. Преимущество состоит в том, что операции доступа описывают, как должны выполняться отдельные операции. Методы чтения или записи можно описать для каждой файловой системы.According to another aspect of the present invention, access operations describe read and/or write operations. The advantage is that access operations describe how individual operations should be performed. Reading or writing methods can be described for each file system.

Согласно еще одному аспекту настоящего изобретения правила доступа описывают операции модуляции, которые определяют, как следует моделировать дополнительные данные данных доступа, чтобы данные доступа считывались и/или записывались в соответствии с файловой системой. Преимущество состоит в том, что правила доступа задают преобразования или модуляции, которые преобразуют определенные данные доступа таким образом, что, если они отформатированы первой файловой системой, они переформатируются таким образом, чтобы они были совместимы со второй файловой системой.According to yet another aspect of the present invention, access rules describe modulation operations that determine how additional access data data should be modeled so that the access data is read and/or written in accordance with the file system. The advantage is that the access rules specify transformations or modulations that transform certain access data such that, if it is formatted by the first file system, it is reformatted so that it is compatible with the second file system.

Согласно еще одному аспекту настоящего изобретения правила доступа описывают, как данные в формате первой файловой системы должны быть записаны во вторую файловую систему и/или считаны из второй файловой системы. Преимущество состоит в том, что преобразование может происходить из файловой системы, которая может присутствовать на активном терминале, и файловой системы, которая присутствует в пассивной памяти данных. Таким образом, правила доступа описывают данные кодирования или процесс адаптации дополнительных данных. Как правило, необходимо адаптировать только дополнительные данные, но не обязательно данные полезной нагрузки.According to yet another aspect of the present invention, access rules describe how data in a first file system format is to be written to and/or read from a second file system. The advantage is that the conversion can occur from a file system that may be present on the active terminal and a file system that is present on the passive data memory. Thus, access rules describe encoding data or the process of adapting additional data. Typically, only the side data needs to be adapted, not necessarily the payload data.

Согласно еще одному аспекту настоящего изобретения пассивный носитель данных содержит носитель данных, такой как USB-накопитель, жесткий диск, карту памяти, сервер, сетевой компонент, DAS, NAS и/или локальный накопитель данных. Преимущество состоит в том, что можно также использовать стандартизированные спецификации, а также большое количество носителей данных. В данном случае также возможно обращение к нескольким пассивным запоминающим устройствам. NAS означает сетевое хранилище. DAS означает хранилище с прямым подключением.According to yet another aspect of the present invention, a passive storage medium comprises a storage medium such as a USB flash drive, a hard drive, a memory card, a server, a network component, a DAS, a NAS, and/or a local storage device. The advantage is that standardized specifications as well as a large number of storage media can also be used. In this case, it is also possible to access several passive storage devices. NAS stands for Network Attached Storage. DAS stands for Direct Attached Storage.

Согласно еще одному аспекту настоящего изобретения активный терминал представляет собой телевизионное устройство, принтер, маршрутизатор, DAS, NAS, портативный терминал, стационарный терминал, компьютер, телефон или сетевой компонент. Преимущество состоит в том, что активный терминал может быть реализован различными способами, и создается общий метод, который делает совместимыми совершенно разные файловые системы.According to another aspect of the present invention, the active terminal is a television device, printer, router, DAS, NAS, portable terminal, fixed terminal, computer, telephone or network component. The advantage is that the active terminal can be implemented in a variety of ways, and a common method is created that makes completely different file systems compatible.

Другим аспектом настоящего изобретения является его способность различать запросы доступа и решать, запрашивать ли доступ к пользовательским данным или к метаданным. В зависимости от типа запроса на доступ, запрос либо перенаправляется в пассивную память без модификации данных, либо метаданные приводятся в соответствующий формат с использованием правил трансляции.Another aspect of the present invention is its ability to distinguish between access requests and decide whether to request access to user data or metadata. Depending on the type of access request, the request is either redirected to passive memory without modification of the data, or the metadata is brought into the appropriate format using translation rules.

Другим аспектом настоящего изобретения является его способность извлекать только часть метаданных из пассивной памяти для отправки на терминал. Таким образом, только самая необходимая информация о запрошенных файлах предоставляется в режиме реального времени и с коротким временем отклика.Another aspect of the present invention is its ability to retrieve only a portion of metadata from passive memory for sending to the terminal. Thus, only the most necessary information about the requested files is provided in real time and with a short response time.

Другим аспектом настоящего изобретения является его способность сделать доступной в качестве отдельной памяти только определенную часть пассивной памяти, которая затем может быть предоставлена терминалом (обычно определенный подкаталог с его содержимым).Another aspect of the present invention is its ability to make available as separate memory only a certain part of the passive memory, which can then be provided by the terminal (usually a specific subdirectory with its contents).

Другим аспектом настоящего изобретения является его способность делать предварительный выбор и таким образом принимать решение о доступности файловых систем для терминала. Это делается либо с помощью переключателя, либо с помощью предварительно заданных файлов на внешнем носителе, таких как makeas.exFAT, который указывает моделирующему модулю создать внешнюю память с файловой системой exFAT. Таким образом, модуль моделирования может сделать файловую систему exFAT доступной для конечного устройства, поскольку эта файловая система широко используется с тех пор, как ее спецификации стали общедоступными (реализация exFAT с открытым исходным кодом поддерживается разработчиками корпорации Microsoft) и используется во многих встроенных устройствах, сотовых телефонах и других мультимедийных устройствах.Another aspect of the present invention is its ability to pre-select and thus decide on the availability of file systems for the terminal. This is done either by using a switch or by using predefined files on the external media, such as makeas.exFAT, which instructs the simulator to create external memory with the exFAT file system. In this way, the simulator can make the exFAT file system available to the end device, since this file system has been widely used since its specifications became publicly available (the open source exFAT implementation is maintained by Microsoft developers) and is used in many embedded devices, cellular phones and other multimedia devices.

Еще одним аспектом настоящего изобретения является его способность компенсировать серьезные недостатки FAT32, когда эта файловая система используется на терминале. Большим недостатком является ограничение размера файла, которое составляет 4 ГБ в системе FAT32. FAT32 накладывает дополнительное ограничение на количество адресуемых файлов в одном и том же подкаталоге, которое составляет 65534. Внешний носитель под управлением FAT32, скорее всего, поддерживается более старыми моделями конечных устройств и их ограничения также могут быть учтены для пользователя. Можно продолжать работать с ним. Настоящее изобретение решает проблему, связанную с большими файлами путем предоставления доступа для терминала к нескольким файлам с максимально допустимым размером 4 ГБ.Another aspect of the present invention is its ability to compensate for the serious shortcomings of FAT32 when this file system is used on a terminal. The big drawback is the file size limit, which is 4 GB on a FAT32 system. FAT32 imposes an additional limit on the number of addressable files in the same subdirectory, which is 65534. External media running FAT32 is likely to be supported by older endpoint models and their limitations may also be a user consideration. You can continue to work with it. The present invention solves the problem associated with large files by allowing the terminal to access multiple files with a maximum allowable size of 4 GB.

Второе ограничение FAT32, а именно максимальное количество адресуемых файлов в одном подкаталоге 65534, влияет на использование, если все файлы находятся в одном каталоге или подкаталоге. Хотя очень маловероятно, что придется извлекать информацию из подкаталога с более чем 65534 файлами, в этом случае настоящее изобретение будет информировать пользователя о том, что предел достигнут, и эти 65534 файла не могут быть доступны одновременно. Таким образом, пользователь будет знать, что не все файлы могут отображаться на устройстве, но все же доступны.The second limitation of FAT32, namely the maximum number of addressable files in a single subdirectory 65534, affects usage if all files are in the same directory or subdirectory. Although it is very unlikely that one would have to retrieve information from a subdirectory with more than 65,534 files, in this case the present invention would inform the user that the limit has been reached and those 65,534 files cannot be accessed at the same time. This way, the user will know that not all files can be displayed on the device, but are still available.

Согласно одному аспекту настоящего изобретения предполагается, что терминал поддерживает исключительно FAT32. Поддержка FAT32 в конечном устройстве применяется, если его модули или компоненты (например, установленные драйверы файловой системы) могут обращаться к локальной, внешней или виртуальной памяти в формате FAT32 для создания, восстановления, обновления или удаления файлов и каталогов.According to one aspect of the present invention, it is assumed that the terminal exclusively supports FAT32. FAT32 support in an end device is used if its modules or components (such as installed file system drivers) can access local, external, or virtual memory in FAT32 format to create, restore, update, or delete files and directories.

Память определена в соответствии с одним аспектом настоящего изобретения как блочное устройство, что означает, что основные операции состоят из блоков чтения и записи, которые адресуются посредством смещения или расположения в памяти. Предполагается, что конечное устройство имеет интерфейс USB для подключения к внешним носителям информации.Memory is defined in accordance with one aspect of the present invention as a block device, which means that basic operations consist of read and write blocks that are addressed by an offset or location in memory. It is assumed that the end device has a USB interface for connecting to external storage media.

Предположение о поддержке FAT32 в терминале обычно служит только для примера и не нацелено на ограничение возможных применений предлагаемого изобретения системой FAT32. Предположение, что терминал имеет интерфейс USB для подключения к внешним носителям данных, также принимается для примера и не направлено на ограничение возможных применений предлагаемого изобретения подключением через интерфейс USB. Если здесь упоминаются стандарты, такие как FAT или FAT32, это обычно обозначает файловую систему.The assumption of FAT32 support in the terminal is generally for illustrative purposes only and is not intended to limit the possible applications of the present invention to the FAT32 system. The assumption that the terminal has a USB interface for connecting to external storage media is also taken as an example and is not intended to limit the possible applications of the present invention to connection via a USB interface. When standards such as FAT or FAT32 are mentioned here, it usually refers to a file system.

Цель также достигается с помощью моделирующего устройства, которое может быть подключено между пассивной памятью данных и активным терминалом и предназначено для доступа активного терминала к файловой системе пассивной памяти данных, при этом моделирующее устройство также выполнено для приема запроса доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивному устройству хранения данных и дополнительно содержит информацию для распознавания файловой системы пассивной памяти данных, а модуль базы данных выполнен с возможностью выбора сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной файловой системой пассивной памяти данных, и дополнительно настраивают моделирующее устройство для применения выбранных правил доступа к данным доступа, которые указаны в запросе доступа, и дополнительно сконфигурированы для обеспечения операций доступа в соответствии с запросом доступа.The object is also achieved by using a simulator that can be connected between the passive data memory and the active terminal and is configured to allow the active terminal to access a file system of the passive data memory, wherein the simulator is also configured to receive an access request from the active terminal, wherein in the request access specifies access data and access operations to the passive data storage device and further contains information for recognizing the passive data storage file system, and the database module is configured to select stored access rules that are suitable for executing the access request in accordance with the recognized passive storage file system data, and further configure the simulator to apply selected access rules to the access data that are specified in the access request, and are further configured to provide access operations in accordance with the access request.

Моделирующее устройство пригодно для использования в предлагаемом способе. Кроме того, моделирующее устройство может быть использовано в предлагаемой конфигурации системы.The simulator is suitable for use in the proposed method. In addition, the simulator can be used in the proposed system configuration.

Цель также достигается за счет системной конфигурации для динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени с по крайней мере одним интерфейсным модулем, настроенным для предоставления доступа к файловой системе пассивной памяти данных для активного терминала и моделирующего устройства, которое поддерживает пассивную память данных, а активный терминал подключен между ними; моделирующее устройство настроено на прием запроса доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных; устройство моделирования настроено на распознавание файловой системы пассивной памяти данных; модуль базы данных, предназначенный для выбора сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной файловой системой пассивной памяти данных; устройство моделирования настроено для применения выбранных правил доступа к данным доступа, которые указаны в запросе доступа; и пассивную память данных, сконфигурированную для выполнения операций доступа в соответствии с запросом доступа.The goal is also achieved by system configuration to dynamically establish file system compatibility and file system independent data access in real time with at least one interface module configured to provide passive data memory file system access to the active terminal and simulator. which supports the passive data memory, and the active terminal is connected between them; the simulator is configured to receive an access request from the active terminal, wherein the access request specifies access data and access operations to the passive data memory; the simulator is configured to recognize the passive data memory file system; a database module for selecting stored access rules that are suitable for executing an access request in accordance with the recognized passive data memory file system; the simulator is configured to apply the selected access rules to the access data that are specified in the access request; and a passive data memory configured to perform access operations in accordance with the access request.

Цель также достигается компьютерным программным продуктом с управляющими командами, которые реализуют способ и управляют предлагаемой конфигурацией, когда они выполняются на компьютере.The object is also achieved by a computer program product with control instructions that implement the method and control the proposed configuration when executed on the computer.

Согласно изобретению особенно предпочтительно, чтобы способ можно было использовать для работы предлагаемых устройств и модулей или конфигурации системы. Предлагаемые устройства и приспособления подходят также для осуществления способа по изобретению. Таким образом, устройство или система в каждом случае реализует структурные элементы, подходящие для осуществления соответствующего способа. Однако структурные элементы также могут быть разработаны как этапы метода. Предлагаемый способ также предусматривает этапы реализации функции структурных элементов.According to the invention, it is particularly preferred that the method can be used to operate the proposed devices and modules or system configuration. The proposed devices and devices are also suitable for implementing the method according to the invention. Thus, the device or system in each case implements structural elements suitable for carrying out the corresponding method. However, structural elements can also be developed as method steps. The proposed method also includes stages of implementing the function of structural elements.

Дополнительные преимущества, элементы и детали изобретения вытекают из следующего описания, в котором аспекты изобретения подробно описаны со ссылками на чертежи. Элементы, упомянутые в формуле изобретения и в описании, могут быть существенными для изобретения по отдельности или в любой комбинации. Упомянутые выше и описанные элементы также можно использовать по отдельности или вместе в любой комбинации. Термины «левый», «правый», «верхний» и «нижний», используемые в описании примерных вариантов осуществления, относятся к чертежам в ориентации с обычно читаемыми обозначениями рисунков и символами ссылок. Показанные и описанные варианты осуществления не следует понимать как окончательные, но они являются иллюстративными для пояснения изобретения. Подробное описание предоставлено для информации специалистам в данной области техники; поэтому в описании известные схемы, структуры и способы не показаны и не объяснены подробно, чтобы не усложнять понимание настоящего описания. На рисунках показано следующее:Additional advantages, elements and details of the invention will appear from the following description, in which aspects of the invention are described in detail with reference to the drawings. The elements mentioned in the claims and description may be essential to the invention individually or in any combination. The elements mentioned above and described can also be used individually or together in any combination. The terms “left”, “right”, “top” and “bottom” as used in the description of exemplary embodiments refer to the drawings in an orientation with commonly read drawing legends and reference symbols. The embodiments shown and described are not to be construed as definitive, but are illustrative for explaining the invention. The detailed description is provided for the information of those skilled in the art; Therefore, in the description, known circuits, structures and methods are not shown or explained in detail so as not to complicate the understanding of the present description. The pictures show the following:

ФИГ. 1: Блок-схема известной конфигурации системы;FIG. 1: Block diagram of a known system configuration;

ФИГ. 2: Блок-схема системы для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с аспектом настоящего изобретения;FIG. 2: Block diagram of a system for dynamically establishing file system compatibility and real-time data access that is file system independent, in accordance with an aspect of the present invention;

ФИГ. 3: Блок-схема системы для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с еще одним аспектом настоящего изобретения;FIG. 3: Block diagram of a system for dynamically establishing file system compatibility and real-time data access that is independent of the file system, in accordance with another aspect of the present invention;

ФИГ. 4: Блок-схема метода для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с еще одним аспектом настоящего изобретения;FIG. 4: Flowchart of a method for dynamically establishing file system compatibility and real-time data access that is file system independent, in accordance with another aspect of the present invention;

ФИГ. 5:Блок-схема этапов способа, которые могут выполняться моделирующим устройством;FIG. 5: Flowchart of method steps that can be performed by the simulator;

ФИГ. 6:Блок-схема этапов способа согласно изобретению для обработки запроса доступа;FIG. 6: Flowchart of steps of a method according to the invention for processing an access request;

ФИГ. 7: Блок-схема этапов способа моделирующего устройства для считывания параметров файловой системы из пассивной памяти согласно изобретению;FIG. 7: Flowchart of steps of a simulator method for reading file system parameters from passive memory according to the invention;

ФИГ. 8А, 8Б: Таблицы для иллюстрации этапов способа применения сохраненных правил доступа согласно одному аспекту настоящего изобретения;FIG. 8A, 8B: Tables for illustrating steps of a method for applying stored access rules according to one aspect of the present invention;

ФИГ. 9A, 9Б: Таблицы для иллюстрации этапов способа применения сохраненных правил доступа согласно еще одному аспекту настоящего изобретения;FIG. 9A, 9B: Tables for illustrating steps of a method for applying stored access rules according to another aspect of the present invention;

ФИГ. 10: Таблицы для иллюстрации этапов способа использования сохраненных правил доступа согласно одному аспекту настоящего изобретения;FIG. 10: Tables for illustrating steps of a method for using stored access rules according to one aspect of the present invention;

На фиг. 1 показана конфигурация системы в соответствии с известным уровнем техники. Носитель данных расположен с левой стороны, а устройство терминала - с правой стороны, справа показано только соединение разъемов. Моделирующее устройство разработано таким образом, что аппаратное обеспечение эмулируется как с правой, так и с левой стороны. Это имеет место на имеющемся уровне техники, потому что устройство в середине подходит для пересылки команд управления на периферийные устройства. Таким образом, текущий уровень техники обычно не предусматривает пассивный носитель данных, скорее может быть подключено периферийное устройство, такое как устройство ввода. Таким образом, уровень техники также требует эмуляции функциональности, которая не является обязательной согласно изобретению.In fig. 1 shows a system configuration in accordance with the prior art. The storage medium is located on the left side and the terminal device is on the right side, only the connection of the connectors is shown on the right. The simulator is designed in such a way that the hardware is emulated on both the right and left sides. This is the case in the prior art because the device in the middle is suitable for forwarding control commands to peripheral devices. Thus, the current state of the art does not typically provide a passive storage medium, but rather a peripheral device such as an input device may be connected. Thus, the prior art also requires emulation of functionality, which is not necessary according to the invention.

Как видно из представленной фиг. 1, особенным недостатком предшествующего уровня техники является необходимость эмуляции посредством эмулятора 1 с левой стороны и эмулятора 2 с правой стороны. Таким образом, уровень техники предусматривает, что все подключенные терминалы должны эмулироваться, что требует значительных технических затрат и может даже приводить к ошибкам.As can be seen from the presented Fig. 1, a particular disadvantage of the prior art is the need for emulation by emulator 1 on the left side and emulator 2 on the right side. Thus, the state of the art requires that all connected terminals must be emulated, which requires significant technical effort and may even lead to errors.

В соответствии с изобретением этот недостаток преодолен на текущем уровне техники, и было неожиданно обнаружено, что корректировки необходимы только на уровне файла или данных. Кроме того, уровень техники не позволяет определять совместимость в режиме реального времени. Если, например, слева действительно находится носитель данных, в этом случае уровень техники предусматривает адаптацию файловой системы. Согласно изобретению адаптируется не файловая система, а только данные, которые должны быть прочитаны или записаны.According to the invention, this disadvantage has been overcome in the current state of the art, and it has surprisingly been discovered that adjustments are only necessary at the file or data level. In addition, the state of the art does not allow compatibility to be determined in real time. If, for example, there is actually a storage medium on the left, then the state of the art provides for adaptation of the file system. According to the invention, it is not the file system that is adapted, but only the data to be read or written.

На фиг. 2 показана конфигурация системы в соответствии с настоящим изобретением. Пассивный носитель данных расположен с левой стороны, а активный терминал, который не показан, расположен с правой стороны. Посередине находится моделирующее устройство М, которое подключено между носителем информации и терминалом для обмена информацией. Для этого соединения с помощью разъемов могут быть предусмотрены как с левой, так и с правой стороны, или в каждом случае предусмотрены кабели.In fig. 2 shows a system configuration in accordance with the present invention. The passive storage medium is located on the left side, and the active terminal, which is not shown, is located on the right side. In the middle there is a simulator M, which is connected between the storage medium and the terminal for information exchange. For this purpose, connections via connectors can be provided on both the left and right sides, or cables can be provided in each case.

На фиг. 2 также показана в нижней части память данных, которая хранит правила доступа в моделирующем устройстве М. Память данных может быть расположена вне устройства, причем память данных в предпочтительном варианте встроена в моделирующее устройство. Особенно выгодно по сравнению с текущим уровнем техники то, что в соответствии с предлагаемым изобретением нет необходимости в обеспечении компонентов 1, 2 эмуляции, а вместо этого достаточно обеспечить блок модуляции. Он расположен в центре моделирующего устройства М.In fig. 2 also shows in the lower part a data memory which stores the access rules in the simulator M. The data memory may be located external to the device, the data memory being preferably built into the simulator. It is particularly advantageous compared to the current state of the art that according to the invention it is not necessary to provide emulation components 1, 2, but instead it is sufficient to provide a modulation unit. It is located in the center of the M simulator.

На фиг. 3 показана предлагаемая конфигурация системы в другом виде, при этом соединение с помощью разъемов предусмотрено для пассивной памяти данных с левой стороны, а кабельное соединение предусмотрено с правой стороны. Возможна другая реализация, и кабельное соединение может располагаться с левой стороны. Используемые интерфейсы могут быть разработаны в соответствии со стандартными спецификациями. В предпочтительном варианте интерфейсы реализованы в стандарте USB.In fig. 3 shows the proposed system configuration in another view, with a connector connection provided for the passive data memory on the left side and a cable connection provided on the right side. Another implementation is possible, and the cable connection could be located on the left side. The interfaces used can be designed according to standard specifications. Preferably, the interfaces are implemented in the USB standard.

На фиг. 4 показана блок-схема способа динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени, для предоставления доступа 100 к файловой системе пассивной памяти для активного терминала и моделирующего устройства M, которое подключено между ними для передачи информации между ними; прием 101 запроса доступа от активного терминала с помощью моделирующего устройства, при этом в запросе доступа указываются данные для доступа и операции доступа к пассивной памяти данных; распознавание 102 файловой системы пассивной памяти данных моделирующим устройством; выбор 103 сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с предварительно определенной 102 файловой системой пассивной памяти данных; применение 104 моделирующим устройством выбранных правил для доступа к данным, указанным в запросе доступа; выполнение 105 операций доступа в соответствии с запросом.In fig. 4 shows a flow diagram of a method for dynamically establishing file system compatibility and file system independent data access in real time to provide passive memory file system access 100 to an active terminal and a simulator M that is connected between them to transfer information between them. ; receiving 101 an access request from the active terminal using the simulator, wherein the access request specifies access data and an access operation to the passive data memory; recognizing the passive data memory file system 102 by the simulator; selecting 103 stored access rules that are suitable for fulfilling the access request in accordance with the predefined 102 passive data memory file system; the simulator 104 applying selected rules to access the data specified in the access request; perform 105 access operations as requested.

Специалисту в данной области известно, что этапы могут иметь дополнительные подэтапы и, в частности, каждый этап способа может выполняться итеративно и/или в другом порядке.One skilled in the art will recognize that steps may have additional sub-steps and, in particular, each step of the method may be performed iteratively and/or in a different order.

Все нижеследующие процессы описываются с точки зрения конечного устройства, которое контролируется пользователем как основным действующим лицом.All the following processes are described from the point of view of the end device, which is controlled by the user as the main actor.

На фиг. 5 показано, какие действия моделирующее устройство 202 может выполнять в соответствии с изобретением, когда терминальное устройство 201 формирует запросы доступа для чтения. В данном случае терминал поддерживает FAT32 в качестве файловой системы, которая в дальнейшем будет называться файловой системой 1.In fig. 5 shows what actions the simulator 202 can perform in accordance with the invention when the terminal device 201 generates read access requests. In this case, the terminal supports FAT32 as a file system, which will henceforth be called file system 1.

Согласно одному аспекту настоящего изобретения запросы на доступ выполняются посредством интерфейса связи между терминалом и моделирующим устройством: это интерфейс USB 204.According to one aspect of the present invention, access requests are made through a communication interface between the terminal and the simulator: the USB interface 204.

Согласно одному аспекту настоящего изобретения в моделирующем устройстве реализованы два способа. Способ хранения дополнительных данных 206 и способ моделирования данных 207. Если данные считываются из пассивной памяти 203, этот процесс выполняется с помощью интерфейса связи 205. Однако не обязательно, чтобы пассивная память также была подключена через интерфейс USB, к которому подключено моделирующее устройство, 205 также может быть заменен шиной данных, так что пассивная память реализуется непосредственно как компонент моделирующего устройства.According to one aspect of the present invention, two methods are implemented in the simulator. A method for storing additional data 206 and a method for simulating data 207. If data is read from the passive memory 203, this process is performed using the communication interface 205. However, it is not necessary that the passive memory also be connected through the USB interface to which the simulator is connected 205 as well can be replaced by a data bus so that the passive memory is implemented directly as a component of the simulator.

Согласно одному аспекту настоящего изобретения последовательность событий зависит от того, какие запросы доступа были инициированы терминалом, в соответствии с которыми к терминалу подключено моделирующее устройство, к которому уже подключена пассивная память. В зависимости от версии конечного устройства этот порядок может отличаться от следующих рисунков.According to one aspect of the present invention, the sequence of events depends on which access requests have been initiated by the terminal, whereby a simulator that already has passive memory attached is connected to the terminal. Depending on the version of the end device, this order may differ from the following illustrations.

Согласно одному аспекту настоящего изобретения терминал взаимодействует с моделирующим устройством двумя способами: с одной стороны, компонент операционной системы терминала, отвечающий за USB-устройства, должен распознавать моделирующее устройство, подключенное через USB, как внешнее USB-устройство типа «память». С другой стороны, другой компонент операционной системы должен определить, как следует обращаться к подключенному устройству хранения на логическом уровне, в частности, какую файловую систему можно определить в памяти.According to one aspect of the present invention, the terminal communicates with the simulator in two ways: on the one hand, the terminal operating system component responsible for USB devices must recognize the simulator connected via USB as an external USB memory device. On the other hand, another component of the operating system must determine how the attached storage device should be accessed at the logical level, in particular what file system can be defined in memory.

Для первой связи с использованием протокола USB согласно одному аспекту настоящего изобретения по меньшей мере необходимо, чтобы моделирующее устройство имело важные параметры, например сообщало о количестве адресуемых блоков или размере блока в качестве необходимых действий в рамках объема поддержки протокола USB. Для этой цели может быть инициирован так называемый запрос идентификации 301, который, однако, может не быть обязательным в зависимости от реализации операционной системы. Конкретные действия в соответствии с USB-протоколом не рассматриваются, так как этот протокол может по существу выполняться специалистом в данной области техники без каких-либо проблем. Следует только отметить, что этот первый запрос идентификации уже приводит к тому, что моделирующее устройство может соответствующим образом выравниваться, и данные, необходимые для обработки таких запросов идентификации (количество адресуемых блоков), должны оставаться доступными.For first communication using the USB protocol, according to one aspect of the present invention, it is at least necessary for the simulator to have important parameters, such as reporting the number of addressable blocks or block size, as necessary actions within the scope of USB protocol support. For this purpose, a so-called 301 identification request can be initiated, which, however, may not be mandatory depending on the operating system implementation. Specific actions in accordance with the USB protocol are not discussed, since this protocol can essentially be performed by one skilled in the art without any problems. It should only be noted that this first identification request already causes the simulator to be aligned accordingly, and the data required to process such identification requests (number of addressable blocks) must remain available.

Согласно одному аспекту настоящего изобретения первым необходимым действием со стороны моделирующего устройства для этого является считывание параметров файловой системы из пассивной памяти 314, что подробно показано на фиг. 7. Файловая система в пассивной памяти, в дальнейшем именуемая файловой системой 2, распознается моделирующим устройством во время выполнения 314, при этом считываемые данные не ограничиваются удовлетворением первого запроса идентификации, а вместо этого сначала преобразуются в соответствии с изобретением таким образом, что они используются в качестве данных загрузочного сектора файловой системы 1, а затем также хранятся в моделирующем устройстве 206. Таким образом, существенные параметры для запроса идентификации также достаточно определены (количество адресуемых блоков, размер блока), моделирующее устройство выполняет запрос идентификации 310 в соответствии с протоколом USB.According to one aspect of the present invention, the first necessary action on the part of the simulator to do this is to read file system parameters from passive memory 314, as shown in detail in FIG. 7. The file system in the passive memory, hereinafter referred to as file system 2, is recognized by the simulator at run time 314, wherein the data read is not limited to satisfying the first identification request, but instead is first converted in accordance with the invention such that it is used in as boot sector data of file system 1, and then also stored in the simulator 206. Thus, the essential parameters for the identification request are also sufficiently defined (number of addressable blocks, block size), the simulator performs the identification request 310 in accordance with the USB protocol.

На следующем этапе операционная система терминала должна определить, как следует обращаться к подключенному устройству хранения на логическом уровне, в частности, какую файловую систему можно определить на устройстве хранения.In the next step, the terminal operating system must determine how the attached storage device should be accessed at the logical level, in particular, what file system can be defined on the storage device.

Для этого терминал может сгенерировать хотя бы один запрос на доступ, направленный на чтение из памяти хотя бы блока 0, так как он содержит информацию для определения файловой системы.To do this, the terminal can generate at least one access request aimed at reading at least block 0 from memory, since it contains information to determine the file system.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые показаны на фиг. 5 в качестве примера.To fulfill this access request, according to the invention, the following steps can be performed, which are shown in FIG. 5 as an example.

Первый запрос доступа 311 терминала: чтение сектора, начиная с позиции 0.First access request 311 terminal: read sector starting from position 0.

На первом этапе 312, согласно одному аспекту настоящего изобретения, проверяется, хранятся ли запрошенные данные уже в моделирующем устройстве. Не исключено, что запрос идентификации терминала 301 еще не сделан, а заменен запросом доступа 311. Хотя параметры пассивной памяти еще не были бы известны конечному устройству при выполнении 311, это не мешает конечному устройству генерировать запрос 311 на доступ, потому что позиция 0 всегда может быть прочитана, когда запоминающее устройство является адресуемым. В качестве примера предполагается, что запрос идентификации в соответствии с 301 не был сделан заранее. Таким образом, данные для первого сектора в позиции 0 еще не хранятся в соответствии с 206.In a first step 312, according to one aspect of the present invention, it is checked whether the requested data is already stored in the simulator. It is possible that the terminal identification request 301 has not yet been made, but has been replaced by an access request 311. Although the passive memory parameters would not yet be known to the end device when executing 311, this does not prevent the end device from generating an access request 311 because position 0 can always be read when the storage device is addressable. As an example, it is assumed that the 301 identity request has not been made in advance. Thus, the data for the first sector at position 0 is not yet stored according to 206.

На втором этапе 313 согласно одному аспекту настоящего изобретения проверяется, какие данные с точки зрения файловой системы 1 задействованы, когда сектор считывается из позиции 0. Следовательно, действие 313 обычно должно быть описано таким образом, чтобы в процессе считывания проверялось, являются ли данные дополнительными или пользовательскими, и, если это пользовательские данные, из какого файла с точки зрения файловой системы 1 они получаются.In a second step 313 according to one aspect of the present invention, it checks which data from the point of view of the file system 1 is involved when the sector is read from position 0. Therefore, the action 313 would typically be described such that the read process checks whether the data is optional or user data, and, if it is user data, from which file from the point of view of file system 1 it is obtained.

Для этого используются правила доступа. Как показано выше, правила доступа определяют, как метаданные из одной файловой системы должны быть преобразованы в метаданные другой файловой системы. Эти правила также определяют, какие области файловой системы, предусмотренные для структур файловой системы, соответствуют аналогичным областям другой файловой системы, и, таким образом, позволяют определить, включает ли запрос доступа метаданные в качестве дополнительных данных.Access rules are used for this. As shown above, access rules define how metadata from one file system should be converted to metadata from another file system. These rules also determine which file system areas provided for file system structures correspond to similar areas of another file system, and thus determine whether an access request includes metadata as additional data.

Согласно существующему правилу доступа 400, он включает в себя специальные дополнительные данные, в частности, так называемый загрузочный сектор, если сектор считывается с позиции 0.According to the existing access rule 400, it includes special additional data, in particular the so-called boot sector if the sector is read from position 0.

Согласно правилам доступа, загрузочный сектор для файловой системы 1 суммируется 314 таким образом, что все параметры файловой системы (размер файловой системы, размер логических блоков в файловой системе (так называемый кластер), начальная позиция для первого каталога и т. д.) уже достаточно определены. Это предполагает, что эти данные должны быть доступны для терминального устройства для обработки самого первого запроса доступа 311. В основном все параметры файловой системы 1 получаются или вычисляются из соответствующих параметров файловой системы 2 пассивной памяти. Правило 401 доступа содержит этот способ, в частности, оно определяет, как должны вычисляться параметры файловой системы 1 в зависимости от файловой системы 2 для соответствующей комбинации файловая система 1/файловая система 2 и какое конкретное правило доступа используется. На рисунке показано, как применяется это правило доступа к загрузочному сектору 401. Такое приложение не вызывает проблем, поскольку известен размер файловой системы и размер логических блоков может быть взят из файловой системы 2 (если это невозможно, к настройке размера блока применяются дополнительные правила доступа).According to the access rules, the boot sector for file system 1 is summed up 314 in such a way that all file system parameters (file system size, size of logical blocks in the file system (the so-called cluster), starting position for the first directory, etc.) are already sufficient defined. This assumes that this data must be available to the terminal device to process the very first access request 311. Basically all parameters of the file system 1 are obtained or calculated from the corresponding parameters of the passive memory file system 2. Access rule 401 contains this method, in particular, it specifies how the parameters of file system 1 depending on file system 2 are to be calculated for the corresponding file system 1/file system 2 combination and which specific access rule is used. The figure shows how this 401 boot sector access rule is applied. This application does not cause problems because the file system size is known and the logical block size can be taken from file system 2 (if this is not possible, additional access rules apply to the block size setting) .

Таким образом, моделирующее устройство смоделировало и сохранило данные для сектора 0 так, что терминал может использовать их для инициирования дальнейших процессов доступа.Thus, the simulator has simulated and stored data for sector 0 so that the terminal can use it to initiate further access processes.

Согласно одному аспекту настоящего изобретения конкретный присутствующий запрос 311 выполняется, когда предоставлены смоделированные данные загрузочного сектора.According to one aspect of the present invention, the specific present request 311 is executed when simulated boot sector data is provided.

Запрошенные данные 315 предоставляются через интерфейс связи (в данном случае USB). Таким образом, запрос 311 доступа завершается.The requested data 315 is provided via a communication interface (USB in this case). Thus, the access request 311 is completed.

Тот факт, что первый запрос на доступ приводит с считыванию загрузочного сектора FAT32 в качестве блока 1, определяет дальнейшие действия терминала.The fact that the first access request results in reading the FAT32 boot sector as block 1 determines the further actions of the terminal.

В принципе, согласно одному аспекту настоящего изобретения, можно предположить, что если первый блок распознан как допустимый загрузочный сектор с допустимым содержимым (параметрами файловой системы), операционная система терминального устройства продолжает запросы на доступ, чтобы определить файловую систему на памяти, предоставленной с помощью интерфейса USB. Такой процесс также можно назвать «опросом», целью которого является распознавание памяти как определенной, логически организованной файловой системы и раскрытие собственного логического интерфейса (так называемой «точки монтирования») в пределах операционной системы.In principle, according to one aspect of the present invention, it can be assumed that if the first block is recognized as a valid boot sector with valid contents (file system parameters), the terminal device operating system continues access requests to determine the file system on the memory provided by the interface USB. This process can also be called "polling", the purpose of which is to recognize memory as a specific, logically organized file system and expose its own logical interface (the so-called "mount point") within the operating system.

В качестве альтернативы, после того, как первый запрос на доступ был удовлетворен и содержимое первого блока оказалось похожим на загрузочный сектор, операционная система терминала также может отправить сообщение (так называемое «широковещательное сообщение») своим компонентам или приложениям, чтобы сообщить им о наличии нового накопителя. В результате ответственный компонент и драйвер файловой системы могут инициировать другой процесс, который часто называют «монтированием».Alternatively, after the first access request has been granted and the contents of the first block appear to resemble the boot sector, the terminal operating system can also send a message (called a "broadcast message") to its components or applications to inform them of the presence of a new drive. As a result, the responsible file system component and driver can initiate another process, often called a "mount".

Оба варианта приводят к одному и тому же результату, а именно к тому, что новая доступная память распознается как FAT32, и операционная система конечного устройства или по крайней мере один из компонентов или приложений может обращаться к ней как к логической файловой системе.Both options lead to the same result, namely that the new available memory is recognized as FAT32 and can be accessed as a logical file system by the end device operating system or at least one of the components or applications.

Согласно одному аспекту настоящего изобретения, монтирование этой файловой системы только для операций чтения или также для операций записи, зависит от следующих факторов: операционной системы терминала, объема поддержки соответствующей файловой системы и задачи, которую терминал имеет для внешних подключаемых носителей. Следующие пояснения относятся к режиму чтения-записи. Случай, когда файловая система монтируется в память только в режиме чтения, не нужно рассматривать отдельно, потому что способ, предложенный согласно изобретению, тем более может быть использован для режима чтения, если он приводит к ожидаемому успеху в режим чтения-записи.According to one aspect of the present invention, mounting this file system for read-only operations or also for write operations depends on the following factors: the operating system of the terminal, the amount of support for the corresponding file system, and the task that the terminal has for external mountable media. The following explanations apply to read-write mode. The case where the file system is mounted into memory only in read mode does not need to be considered separately, because the method proposed according to the invention can even more so be used for read mode if it leads to the expected success in read-write mode.

Таким образом, дальнейшие запросы доступа от конечного устройства зависят от того, какие задачи планируются в случае события «Доступна новая память». Возможно, терминал выполняет определенное приложение, которое пытается прочитать содержимое обнаруженной памяти, а это означает, что сначала осуществляется доступ к содержимому корневого каталога. Если ни одно приложение не запускается автоматически, пользователь, который подключает моделирующее устройство к устройству, предпринимает дальнейшие действия по вызову содержимого памяти и начинает с действия «вызов содержимого корневого каталога», чтобы затем определить дальнейшие действия. Чтобы получить содержимое корневого каталога, пользователь также может вводить терминальные команды, такие как «dir» или «ls». В лучшем случае можно ожидать, что терминальное устройство попытается прочитать содержимое корневого каталога при следующем запросе на доступ. Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 5 в качестве примера.Thus, further access requests from the end device depend on what tasks are scheduled in the event of a New Memory Available event. The terminal may be running a specific application that is trying to read the contents of the detected memory, meaning that the contents of the root directory are accessed first. If no application starts automatically, the user who connects the simulator to the device takes further action to recall the contents of the memory and starts with the action "call the contents of the root directory" to then determine further actions. To get the contents of the root directory, the user can also enter terminal commands such as "dir" or "ls". At best, you can expect the terminal device to try to read the contents of the root directory on the next access request. To fulfill this access request, the following actions can be performed according to the invention, which are also shown in FIG. 5 as an example.

В соответствии с одним аспектом настоящего изобретения предполагается, что область корневого каталога начинается в секторе X, занимает 100 секторов, и это было определено правилом, примененным к шагу 314. Соответственно, во втором запросе доступа 321 на чтение будет: 100 прочитанных секторов, начиная с сектора X.In accordance with one aspect of the present invention, it is assumed that the root directory area begins at sector X, occupies 100 sectors, and this was determined by the rule applied to step 314. Accordingly, in the second read access request 321 there will be: 100 sectors read, starting at sector X.

На первом этапе 312, согласно одному аспекту настоящего изобретения, проверяется, имеются ли уже запрошенные данные. В данном случае данные еще не доступны, потому что до сих пор терминал читал только сектор 0.In a first step 312, according to one aspect of the present invention, it is checked whether the requested data is already available. In this case, the data is not yet available because until now the terminal has only read sector 0.

На втором этапе 313 выполняется проверка того, какие данные с точки зрения файловой системы 1 задействованы, если считываются 100 секторов, начиная с позиции X. Для этого используются правила доступа.A second step 313 checks which data from the point of view of file system 1 is involved if 100 sectors are read starting at position X. Access rules are used for this.

Согласно правилу доступа 400, это то, что называется корневым каталогом, если доступ к сектору X осуществляется для смоделированной файловой системы, в частности, по всей запрошенной длине (100 секторов).According to access rule 400, this is what is called the root directory if sector X is accessed for the simulated file system, specifically the entire requested length (100 sectors).

Чтобы моделирующее устройство 202 могло хранить 206 данные для корневого каталога терминала, на следующем этапе 324 (см. фиг. 9) применяются дополнительные правила доступа таким образом, что метаданные генерируются в реальном времени для файлов в корневом каталоге этой файловой системы 1 в формате данных корневого каталога.In order for the simulator 202 to store 206 data for the root directory of the terminal, in the next step 324 (see FIG. 9) additional access rules are applied such that metadata is generated in real time for files in the root directory of this file system 1 in the root data format catalogue.

Таким образом, эти метаданные подходят для перезаписи файлов в файловой системе 2 таким образом, чтобы каждый компонент терминала, поддерживающий файловую систему 1 (в данном случае FAT32), интерпретировал их так, как если бы эти перезаписанные файлы хранились в моделирующем устройстве. Согласно изобретению эти метаданные сохраняются 206 для текущих и будущих запросов доступа от терминала.Thus, this metadata is suitable for overwriting files in file system 2 such that each terminal component that supports file system 1 (in this case FAT32) interprets it as if these overwritten files were stored in the simulator. According to the invention, this metadata is stored 206 for current and future access requests from the terminal.

Для применения правила доступа 324 может потребоваться считывание дополнительных метаданных из файловой системы 2, чтобы получить полную информацию о том, какие файлы структуры корневого каталога адресуются запрошенными 100 секторами и какой у них размер, а также методом 404 (см. фиг. 10) определить, в каких областях файловой системы 2 размещены упомянутые выше файлы.Applying access rule 324 may require reading additional metadata from file system 2 to obtain complete information about which files in the root directory structure are addressed by the requested 100 sectors and what their size is, and method 404 (see FIG. 10) to determine in which areas of file system 2 the files mentioned above are located.

В качестве промежуточного результата: при моделировании корневого каталога в формате, соответствующем файловой системе 1, может быть считано больше данных, чем запрошено, что неопасно, поскольку такие данные, которые изначально считываются избыточно, остаются доступными для дальнейших применений правил доступа.As an intermediate result, when simulating the root directory in a file system 1 format, more data may be read than requested, which is not harmful because such data, which is initially read redundantly, remains available for further access rule applications.

Фактически присутствующий запрос доступа на чтение от терминала с этапа 321 выполняется путем предоставления 100 секторов, смоделированных с использованием правила доступа.The actual read access request from the terminal from step 321 is fulfilled by providing 100 sectors modeled using the access rule.

Запрошенные данные предоставляются 325 через интерфейс связи (в данном случае USB). Таким образом, запрос 321 доступа завершается.The requested data is provided to the 325 via a communication interface (USB in this case). Thus, the access request 321 is completed.

После того, как содержимое корневого каталога стало доступным для терминала, его приложение может предложить пользователю выполнить дальнейшие действия, такие как открытие файлов или выбор содержимого файлов для определенных процессов (печать, воспроизведение видео/аудиофайлов и т. д.). На этом этапе доступ к содержимому файла должен осуществляться с внешнего носителя, а компонент операционной системы конечного устройства (или его драйвер файловой системы) должен генерировать запросы к смонтированному логическому тому, чтобы получить требуемое содержимое из файла.Once the contents of the root directory are made available to the terminal, its application can prompt the user to perform further actions, such as opening files or selecting file contents for specific processes (printing, playing video/audio files, etc.). At this point, the file's contents must be accessed from external media, and the target device's operating system component (or its file system driver) must issue requests to the mounted logical volume to obtain the required content from the file.

В соответствии с одним аспектом настоящего изобретения предполагается, что осуществляется доступ к содержимому файла ABC.ZYZ, и предполагается, что размер файла составляет 10 блоков.In accordance with one aspect of the present invention, it is assumed that the contents of the file ABC.ZYZ are being accessed, and the file size is assumed to be 10 blocks.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 5 в качестве примера.To fulfill this access request, the following actions can be performed according to the invention, which are also shown in FIG. 5 as an example.

Инициируется запрос доступа 351, который состоит в чтении 10 блоков из позиции Pos1, которые соответствуют первому кластеру файла ABC.ZYZ SC1 в файловой системе 1.Access request 351 is initiated, which consists of reading 10 blocks from position Pos1, which correspond to the first cluster of file ABC.ZYZ SC1 in file system 1.

Эти данные еще не запрошены, поэтому пока недоступны 206.This data has not yet been requested, so 206 is not yet available.

В первую очередь необходимо определить, включает ли этот запрос пользовательские данные или дополнительные данные 313.The first step is to determine whether this request includes user data or additional 313 data.

То, что этот запрос касается пользовательских данных, уже следует из того, что при моделировании структур FAT 402 для выполнения запроса 321 учитывался размер файла ABC.XYZ и для его содержимого в таблице размещения файлов имеется непрерывная смоделированная цепочка.The fact that this request concerns user data already follows from the fact that when modeling FAT 402 structures to execute request 321, the size of the ABC.XYZ file was taken into account and there is a continuous modeled chain for its contents in the file allocation table.

То есть способ 402 моделирования подходит для размещения существующих файлов файловой системы 2 в моделируемой файловой системе 1 таким образом, чтобы они не были фрагментированы, независимо от того, возникают ли эти файлы в файловой системе 2 из нескольких разделенных фрагментов содержимого.That is, the modeling method 402 is suitable for placing existing files of file system 2 in the simulated file system 1 such that they are not fragmented, regardless of whether those files in file system 2 arise from multiple fragmented pieces of content.

Таким образом, именно данные пользователя были считаны с помощью данных запроса доступа 351.Thus, it was the user data that was read using access request data 351.

На следующем этапе 354 согласно одному аспекту настоящего изобретения необходимо проверить, к каким пользовательским данным фактически осуществляется доступ. Не исключено, что конечное устройство может запросить доступ к нескольким файлам, а не только к ABC.XYZ. Это определяется методом 404 (см. фиг. 10), который определяет, какие файлы в файловой системе 2 фактически задействованы при доступе к определенным блокам с точки зрения файловой системы 1. Таким образом, этот способ 404 подходит для определения дальнейших действий, которые должны быть предприняты в конкретных контекстах для содержимого различных файлов при доступе. Такой контекст устанавливает, что при чтении определенных блоков из файловой системы 1, которые соответствуют пользовательским данным, соответствующие блоки для чтения всегда определяются в файловой системе 2. В результате пользовательские данные считываются соответствующим запросом доступа 355, направленным в пассивную память. Процесс 355 повторяется до тех пор, пока все данные, запрошенные посредством запроса 351, не будут считаны, если запрошенное содержимое не размещено в файловой системе 2 в виде непрерывной цепочки.In a next step 354, according to one aspect of the present invention, it is necessary to verify what user data is actually being accessed. It is possible that the end device may request access to multiple files, not just ABC.XYZ. This is determined by method 404 (see FIG. 10), which determines which files in file system 2 are actually accessed when certain blocks are accessed from the point of view of file system 1. Thus, this method 404 is suitable for determining further actions that should be taken. taken in specific contexts for the contents of various files when accessed. This context establishes that when certain blocks are read from file system 1 that correspond to user data, the corresponding blocks to read are always identified in file system 2. As a result, the user data is read by a corresponding access request 355 directed to passive memory. Process 355 is repeated until all data requested by request 351 has been read, unless the requested content is located on file system 2 in a continuous chain.

Запрошенные данные предоставляются 356 через интерфейс связи (в данном случае USB). Таким образом, запрос 351 доступа завершается.The requested data is provided to the 356 via the communication interface (USB in this case). Thus, the access request 351 is completed.

После предоставления содержимого корневого каталога для конечного устройства его приложение может предложить пользователю выполнить дальнейшие действия, например сохранить на смонтированном логическом томе данные, сгенерированные на конечном устройстве. Если, например, сканируются новые документы, подключенный логический том может быть выбран в качестве целевого хранилища.After providing the contents of the root directory to the target device, its application can prompt the user to take further actions, such as storing data generated on the target device on a mounted logical volume. If, for example, new documents are being scanned, a mounted logical volume can be selected as the target storage.

Предполагается, что конечное устройство пытается создать эти пользовательские данные в виде файла с именем XXX.ABC в корневом каталоге файловой системы 1 после того, как на конечном устройстве были сгенерированы пользовательские данные объемом 19 блоков, а содержимое вновь созданных файлов XXX.ABC, начиная с позиции Pos2.It is assumed that the end device attempts to create this user data as a file named XXX.ABC in the root directory of file system 1 after 19 blocks of user data have been generated on the end device, and the contents of the newly created XXX.ABC files starting with positions Pos2.

Кроме того, в соответствии с одним аспектом настоящего изобретения предполагается, что терминал не создает запрос на доступ, целью которого является описание имени и размера файла в корневом каталоге файловой системы 1 для нового файла, если еще не определены пользовательские данные, и такой запрос делается только в том случае, если описаны все пользовательские данные для этих вновь созданных данных.Moreover, in accordance with one aspect of the present invention, it is assumed that the terminal does not create an access request whose purpose is to describe the name and size of a file in the root directory of file system 1 for a new file if user data has not yet been defined, and such a request is made only in the event that all user data for this newly created data is described.

Причиной такого предположения является возможность реализации на терминале метода оптимизации запросов доступа на чтение и запись.The reason for this assumption is the possibility of implementing a method for optimizing read and write access requests on the terminal.

Если предполагается, что терминал пытается записать пользовательские данные до того, как метаданные для соответствующего файла будут описаны другим запросом на доступ, возникает неопределенность в смысле способа 404, заключающаяся в том, что новые блоки, подлежащие записи, еще не могут быть назначены файлу. Однако это состояние ожидания завершается не позднее формирования запроса доступа терминалом, предназначенного для обновления метаданных вновь созданных файлов в памяти.If it is assumed that the terminal is attempting to write user data before the metadata for the corresponding file has been described by another access request, there is an ambiguity in the sense of method 404 in that new blocks to be written cannot yet be assigned to the file. However, this waiting state ends no later than the generation of an access request by the terminal to update the metadata of newly created files in memory.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 6 в качестве примера.To fulfill this access request, the following actions can be performed according to the invention, which are also shown in FIG. 6 as an example.

Инициируется запрос доступа 331, который состоит из записи 19 блоков, начиная с позиции Pos2, которые соответствуют SCN + 1.Access request 331 is initiated, which consists of writing 19 blocks, starting at position Pos2, which correspond to SCN + 1.

Во-первых, необходимо проверить 332, доступны ли эти записываемые данные 206. Поскольку данные в позиции Pos2 не были ни прочитаны, ни записаны, они также пока недоступны.First, it is necessary to check 332 whether this write data 206 is available. Since the data at position Pos2 has neither been read nor written, it is also not available yet.

На следующем этапе необходимо определить, касается ли этот запрос пользовательских данных или дополнительных данных 333. Следовательно, действие 333 обычно должно быть описано таким образом, чтобы в процессе записи проверялось, касается ли запрос дополнительных или пользовательских данных, и, если он касается пользовательских данных, из какого файла с точки зрения файловой системы 1 они получаются.The next step is to determine whether the request is for user data or additional data 333. Therefore, action 333 would typically be described such that the recording process checks whether the request is for additional or user data and, if it is for user data, from which file from the point of view of file system 1 they are obtained.

Это еще не может быть четко определено, потому что эти блоки не хранятся ни как метаданные 206, ни как пользовательские данные в смысле 351. На следующем этапе 334 в соответствии со способом 405 (см. фиг. 9) первоначально предполагается, что задействованы пользовательские данные, и блоки, подлежащие записи, обрабатываются соответствующим образом. При этом начинается так называемое плавающее состояние, поскольку блоки еще не могут быть назначены файлу. Моделирующее устройство будет хранить данные, подлежащие записи, в качестве пользовательских данных до дальнейшего уведомления 206, но о завершении процесса записи сообщается 335 через интерфейс связи 204. Таким образом, запрос 331 доступа завершается.This cannot yet be clearly defined because these blocks are not stored either as metadata 206 or as user data in the sense of 351. In the next step 334, in accordance with method 405 (see FIG. 9), it is initially assumed that user data is involved , and blocks to be written are processed accordingly. This begins the so-called floating state, since blocks cannot yet be assigned to the file. The simulator will store the data to be written as user data until further notice 206, but the completion of the writing process is reported 335 through the communication interface 204. Thus, the access request 331 is completed.

Предполагается, что при обновлении содержимого корневого каталога для файловой системы 1 инициируется дополнительный запрос доступа 336, который предназначен для записи блока, начинающегося с позиции X + 99. Конкретно, это последний сектор корневого каталога.It is assumed that when updating the contents of the root directory for file system 1, an additional access request 336 is initiated, which is intended to write the block starting at position X + 99. Specifically, this is the last sector of the root directory.

Во-первых, необходимо проверить 332, доступны ли эти записываемые данные 206. Это имеет место в данном случае, потому что блок в позиции X + 99 уже был смоделирован 324 и зарезервирован 206 на шаге 321 в качестве корневого каталога для файловой системы 1.First, it is necessary to check 332 whether this write data is available 206. This is the case in this case because the block at position X+99 has already been modeled 324 and reserved 206 in step 321 as the root directory for filesystem 1.

Если блок данных уже доступен и если это метаданные, применение правил доступа может использоваться для определения 339 того, какие конкретные изменения задействованы. Соответствующий метод показан 406 на фиг. 9, который состоит в квалификации изменений в структуре корневого каталога и определении их как абстрактного описания, из которого можно сделать вывод, какие соответствующие изменения должны быть сделаны в файловой системе 2. Это новая запись для файла XXX.ABC, которого раньше не было в корневом каталоге. Это изменение можно описать так, как если бы конечному устройству требовалось создать новый файл с именем XXX.ABC размером 19 секторов, начиная с Pos2. Такое абстрактное описание действия также может быть похоже на описание в стандарте Posix.If a block of data is already available and if it is metadata, the application of access rules can be used to determine 339 which specific changes are involved. A corresponding method is shown 406 in FIG. 9, which consists of qualifying changes to the root directory structure and defining them as an abstract description from which it can be inferred what corresponding changes should be made to file system 2. This is a new entry for the file XXX.ABC, which was not previously in the root catalogue. This change can be described as if the end device needs to create a new file called XXX.ABC with a size of 19 sectors, starting with Pos2. This abstract description of an action may also be similar to the description in the Posix standard.

На следующем этапе согласно одному аспекту настоящего изобретения конкретное изменение должно быть применено к файловой системе 2 путем преобразования абстрактного описания в соответствующий запрос к пассивной памяти. В результате на файловой системе 2 создается запись для данных XXX.ABC, которая, однако, еще не указывает начальную позицию этого файла на файловой системе 2, хотя начальная позиция уже указана на файловой системе 1. Из этого следует, что в состоянии ожидания все еще присутствует неопределенность по смыслу 404 в отношении присваиваемости пользовательских данных конкретных файлов файловой системе 1. Однако эта неопределенность разрешается запросом доступа, направленным на обновление области с помощью FAT - об этом будет сказано позже.In a next step, according to one aspect of the present invention, the specific change is to be applied to file system 2 by converting the abstract description into a corresponding passive memory request. As a result, an entry is created on file system 2 for data XXX.ABC, which, however, does not yet indicate the starting position of this file on file system 2, although the starting position is already specified on file system 1. This implies that the pending state is still There is uncertainty in the sense of 404 regarding the assignment of user data of specific files to file system 1. However, this uncertainty is resolved by an access request aimed at updating the area using FAT - more on this later.

Наконец, выполнение процесса записи сообщается 340 через интерфейс связи 204. Таким образом, запрос 336 доступа завершается.Finally, completion of the write process is communicated 340 via communication interface 204. Thus, the access request 336 is completed.

После того, как конечное устройство или его приложение выполнили все необходимые пользовательские задачи, такие как сканирование документов и размещение этих данных на внешнем носителе или перенос другого пользовательского контента, внешний носитель может быть отключен от конечного устройства.After the end device or its application has completed all necessary user tasks, such as scanning documents and placing that data on external media or transferring other user content, the external media can be disconnected from the end device.

Некоторые конечные устройства явно запрашивают у пользователя отключение внешнего устройства, чтобы иметь возможность гарантировать безопасность данных для этих процессов. Тогда только пользователь будет нести ответственность за возможную потерю данных, если он удалит внешний носитель до того, как конечное устройство запросит выполнение процесса размонтирования, завершения которого ожидалось, и только потом отключение внешнего носителя от конечного устройства имело бы место. Такой безопасный метод отключения внешнего хранилища нелегко внедрить в качестве стандарта, поскольку пользователи проявляют нетерпение, когда дело доходит до отключения внешнего носителя от конечного устройства. Они не ожидают выполнения процесса размонтирования, что требует времени, а скорее хотят просто вытащить внешний носитель данных, как только действия с устройством будут завершены и устройство находится в состоянии ожидания, что можно легко понять по конечному устройству. Чтобы оправдать эти ожидания пользователя, операционная система терминального устройства обычно поддерживает технологию синхронизации для драйвера файловой системы, чтобы он мог работать с внешним носителем данных.Some end devices explicitly ask the user to disable the external device in order to be able to ensure data security for these processes. The user will then only be responsible for possible data loss if he removes the external media before the end device requests the unmount process that was expected to complete before the removal of the external media from the end device takes place. This secure method of disconnecting external storage is not easy to implement as a standard because users are impatient when it comes to disconnecting external storage from the end device. They do not wait for the unmount process to complete, which takes time, but rather simply want to remove the external storage media once the device activities are completed and the device is in a standby state, which can be easily understood by the end device. To meet these user expectations, the terminal device operating system typically supports synchronization technology for the file system driver so that it can work with external storage media.

Эта технология всегда поддерживает внешний носитель данных в актуальном состоянии, очищая содержимое данных файловой системы, которые хранятся в основной памяти конечного устройства - обычно это инициируется самой операционной системой. Это означает следующее. После того, как конечное устройство или его приложение выполнили свои задачи, в которых могут быть задействованы внешние носители информации, и перешло в состояние ожидания (и ожидает дальнейших действий или указаний от пользователя), драйвер файловой системы или аналогичный компонент может очищать блоки, которые еще не были записаны на внешний носитель - это обеспечивает безопасность данных, если внешний носитель внезапно отключится. Такой метод синхронизации приводит к дополнительным запросам доступа к внешней памяти.This technology always keeps external storage media up to date by clearing the contents of file system data stored in the main memory of the target device - usually initiated by the operating system itself. This means the following. After an end device or its application has completed its tasks, which may involve external storage media, and has entered a standby state (and awaits further action or instructions from the user), a file system driver or similar component can clear blocks that are not yet were not recorded on external media - this ensures data security if the external media suddenly turns off. This synchronization method results in additional requests to access external memory.

Чтобы облегчить такую попытку чтения и записи с помощью FAT, в соответствии с изобретением могут быть выполнены следующие действия, такие как чтение FAT из файловой системы 1.To facilitate such an attempt to read and write using FAT, the following actions can be performed in accordance with the invention, such as reading FAT from file system 1.

Следует отметить, что запрос доступа, направленный на чтение FAT, возникает не позднее, чем при первой попытке чтения файла после монтирования или после первой попытки доступа к подкаталогу после монтирования.It should be noted that a FAT read access request occurs no later than the first attempt to read a file after mounting or the first attempt to access a subdirectory after mounting.

Поскольку FAT (FAT Allocation Table) - это таблица, определяющая размещение файлов в файловой системе 1, такие структуры никоим образом не существуют в файловой системе 2 и возникают только благодаря применению правил доступа к параллельной структуре файловой системы 2. В результате FAT хранится на моделирующем устройстве 202. Кроме того, такие структуры перезаписывают метаданные не для отдельных файлов, а для всех файлов, расположенных в файловой системе 1, и представляют собой тип дополнительных данных, не являющихся данными пользователя.Since the FAT (FAT Allocation Table) is a table that defines the placement of files in file system 1, such structures do not exist in any way in file system 2 and only arise through the application of access rules to the parallel structure of file system 2. As a result, the FAT is stored on the simulator 202. In addition, such structures overwrite metadata not for individual files, but for all files located in file system 1, and represent a type of additional data that is not user data.

Однако FAT 324 не моделируется кумулятивно для всех файлов, присутствующих в файловой системе 2, а только для файлов, запрошенных 314 во время запроса доступа путем прямого указания пути к файлу), если для этого файла не моделируются метаданные, описывающие его размещение. Результатом такого моделирования является применимость способа 404, позволяющего назначать файлы пользовательским данным.However, FAT 324 is not modeled cumulatively for all files present in file system 2, but only for files requested 314 during an access request by directly specifying the file path) unless metadata describing its location is modeled for that file. The result of this modeling is the applicability of a method 404 that allows files to be assigned to user data.

Соответствующий метод показан на фиг. 9, который состоит в квалификации изменений 405 в FAT и определении их как абстрактного описания, из которого можно сделать вывод, какие соответствующие изменения должны быть сделаны в файловой системе 2.The corresponding method is shown in Fig. 9, which consists of qualifying changes 405 to FAT and defining them as an abstract description from which it can be inferred what corresponding changes should be made to file system 2.

В первую очередь следует отметить, что по правилу доступа 400 можно легко определить, находятся ли данные по запросу доступа в зоне FAT.The first thing to note is that using access rule 400, you can easily determine whether the data for an access request is in the FAT zone.

Предполагается, что обновление FAT направлено как минимум на сопоставление цепочки размещения для файла XXX.ABC. Поскольку операции записи на конечном устройстве выполняются оптимизированным образом, нельзя ожидать, что обновление FAT будет сосредоточено только на определенной цепочке размещения для определенного файла. Скорее ожидается, что обновления FAT для нескольких файлов будут кумулятивными. Какие именно изменения ожидаются, можно определить 405 путем сравнения состояния FAT.The FAT update is expected to at least match the placement chain for the XXX.ABC file. Since write operations on the end device are performed in an optimized manner, the FAT update cannot be expected to focus only on a specific allocation chain for a specific file. Rather, FAT updates to multiple files are expected to be cumulative. Exactly what changes are expected can be determined by 405 by comparing the FAT status.

Это новая запись для файла XXX.ABC, для которого еще не существовало цепочки распределения. Таким образом, это изменение можно описать так, как если бы конечному устройству требовалось создать непрерывную цепочку размещения для нового файла с именем XXX.ABC, который включает 19 секторов, начиная с (SCN + 1).This is a new entry for file XXX.ABC for which there is no distribution chain yet. Thus, this change can be described as if the end device needs to create a continuous allocation chain for a new file named XXX.ABC, which includes 19 sectors starting at (SCN + 1).

На следующем этапе целевое изменение должно быть применено 405 к файловой системе 2, поскольку это абстрактное описание должно адаптировать структуры файловой системы 2, которые управляют размещением пользовательских данных в файловой системе. Это также означает, что больше нет никакой неопределенности в отношении присваиваемости пользовательских данных в смысле способа 404, и эти пользовательские данные, которые должны быть записаны в соответствии с запросом 331, которые все еще хранились в моделирующем устройстве, теперь записываются в соответствующее положение пассивной памяти.In the next step, the target change must be applied 405 to filesystem 2, since this abstract description must adapt the structures of filesystem 2 that control the placement of user data in the filesystem. This also means that there is no longer any uncertainty regarding the assignability of user data in the sense of method 404, and this user data to be written according to request 331, which was still stored in the simulator, is now written to the corresponding passive memory location.

В результате не только создается запись для данных XXX.ABC в файловой системе 2, как это было сделано при обработке запроса 336, но также указывается размещение файла XXX.ABC как в файловой системе 1, так и в файловой системе 2.This not only creates an entry for the XXX.ABC data on file system 2, as was done when processing request 336, but also specifies the location of the XXX.ABC file on both file system 1 and file system 2.

Наконец, о завершении процесса записи сообщается через интерфейс связи 204. Таким образом, запрос на доступ к FAT завершается.Finally, the completion of the writing process is signaled through the communication interface 204. Thus, the FAT access request is completed.

Наконец, следует отметить, что действия терминального устройства, выполняемые в другом месте, могут происходить в другом порядке, и все изменения в файловой системе 1 всегда приводят непосредственно к запросу доступа. В результате вышеупомянутые действия моделирующего устройства не изменяются, поскольку всегда последовательное обновление файловой системы 1 приводит к состоянию ожидания в смысле исключения метода 404.Finally, it should be noted that terminal device actions performed elsewhere may occur in a different order, and all changes to filesystem 1 always result directly in an access request. As a result, the above simulator actions do not change, since always a sequential update of file system 1 results in a wait state in the sense of method 404 exception.

Список ссылочных символов List of reference symbols

1 эмулятор 11 emulator 1

2 эмулятор 22 emulator 2

M Моделирующее устройствоM Simulator

(100) - (105) см. подробное описание(100) - (105) see detailed description

(201) Терминал(201) Terminal

(202) Моделирующее устройство(202) Simulator

(203) Пассивное устройство хранения(203) Passive storage device

(204) Интерфейс связи (201) - (202)(204) Communication interface (201) - (202)

(205) Интерфейс связи (202) - (203)(205) Communication interface (202) - (203)

(206) Процедура хранения дополнительных данных(206) Additional data storage procedure

(207) Методы моделирования данных(207) Data modeling methods

(301), (310), (311), (312), (313), (315), (325), (351), (355), (356) - см. подробное описание.(301), (310), (311), (312), (313), (315), (325), (351), (355), (356) - see detailed description.

(314) Моделирование структуры загрузочного сектора и параметров файловой системы(314) Modeling the structure of the boot sector and file system parameters

(324) Моделирование данных каталога(324) Catalog data modeling

(354) Указание пользовательских данных при чтении(354) Specifying user data when reading

(331), (332), (333), (335), (336), (349) - см. подробное описание. (331), (332), (333), (335), (336), (349) - see detailed description.

(334) Указание пользовательских данных при записи(334) Specifying user data when writing

(339) Квалификация изменений метаданных(339) Qualification of metadata changes

(314) Моделирование структуры загрузочного сектора для (файловой системы 1) на основе (файловой системы 2)(314) Modeling the boot sector structure for (file system 1) based on (file system 2)

(Файловая система 1) Файловая система 1(File system 1) File system 1

(Файловая система 2) Файловая система 2(File system 2) File system 2

(BytesPerSector) Размер сектора в байтах: параметр, который имеет исходное (IN) значение (Value1_2) и, возможно, получает новое (OUT) значение и новый формат (Value1_1) посредством преобразования согласно правилу доступа (BS1)(BytesPerSector) Sector size in bytes: a parameter that has an original (IN) value (Value1_2) and possibly receives a new (OUT) value and a new format (Value1_1) through conversion according to an access rule (BS1)

Дополнительные параметры или характеристики файловой системы:Additional file system options or characteristics:

(SectorPerCluster) Количество секторов в кластере(SectorPerCluster) Number of sectors in the cluster

(ClusterPerVolume) Количество кластеров в томе(ClusterPerVolume) Number of clusters in the volume

(VolumeLabel) Метка тома(VolumeLabel) Volume label

(Etc) - и т. д.(Etc) - etc.

(FSPropertyN) Свойство N файловой системы: другой параметр в (Файловая система 2), который имеет исходное (IN) значение (ValueN_2) и, возможно, новое (OUT) значение и новый формат (ValueN_1)(FSPropertyN) Filesystem N property: another parameter in (Filesystem 2) that has an original (IN) value (ValueN_2) and possibly a new (OUT) value and a new format (ValueN_1)

(IN) начальное значение(IN) initial value

(ValueN) Значение N(ValueN) Value of N

(Правило) правило, правило доступа (BS2, BS3 и т. д.)(Rule) rule, access rule (BS2, BS3, etc.)

(Out) конечное значение(Out) final value

(BSMemberN)(BSMemberN)

(AV) Доступно: уведомление о доступности для секторов, зарезервированных в (206). (EMPTY) означает «не занято» - (AV) означает «занято»(AV) Available: Availability notification for sectors reserved in (206). (EMPTY) means "not busy" - (AV) means "busy"

(Last) Последний: позиция зарезервированного сектора(Last) Last: reserved sector position

(324) Моделирование данных каталога (324) Catalog data modeling

(StateNow) Текущее состояние: текущее состояние FAT в файловой системе 1(StateNow) Current State: Current state of FAT on file system 1

(StateNow-1) Предыдущее состояние FAT в файловой системе 1, возможно неизвестное, еще не инициализированное состояние.(StateNow-1) Previous FAT state on file system 1, possibly unknown, not yet initialized state.

(Директория, Файловая система 1) Структура каталогов в файловой системе 1 (смоделированная)(Directory, Filesystem 1) Directory structure in filesystem 1 (simulated)

(Директория, Файловая система 2) Структура каталогов в файловой системе 2(Directory, Filesystem 2) Directory structure in filesystem 2

(File1… FileN) Файл 1… Файл N: Имена файловых объектов(File1... FileN) File 1... File N: File object names

(Ext1… ExtN) Расширение 1… Расширение N: расширения файловых объектов(Ext1… ExtN) Extension 1… Extension N: file object extensions

(Size1..SizeN) Размер 1 ... Размер N: размер файловых объектов.(Size1..SizeN) Size 1 ... Size N: size of file objects.

(Sc1… ScN) Стартовый кластер 1… Стартовый кластер N: первый кластер файла с точки зрения FAT. Это значение моделируется для файловой системы 1 согласно (402).(Sc1... ScN) Start cluster 1... Start cluster N: the first cluster of the file from the point of view of FAT. This value is modeled for file system 1 according to (402).

(Nc1ofN) Следующий кластер 1 из N: следующий кластер 1 на N(Nc1ofN) Next cluster 1 of N: next cluster 1 of N

(M + 1) следующая свободная позиция в FAT на (файловая система 1)(M+1) next free position in FAT on (filesystem 1)

(402) Этот метод моделирует структуры FAT в файловой системе 1 для файлов, запрошенных файловой системой 2. В результате размещение файлов в файловой системе 1 изначально не фрагментировано.(402) This method simulates the FAT structures in file system 1 for files requested by file system 2. As a result, the placement of files in file system 1 is not initially fragmented.

(402a) Запуск итеративного процесса «Чтение содержимое корневого каталога (файловая система 2)»(402a) Starting the iterative process "Reading the contents of the root directory (file system 2)"

(402b) Оценка определения начальных кластеров для итеративно обрабатываемого содержимого.(402b) Evaluating the definition of initial clusters for iteratively processed content.

(402c) Моделирование (файловой системы 1) в области с итеративно обрабатываемым содержимым(402c) Simulation of (file system 1) in an area with iteratively processed content

(402d) Завершение итеративного процесса «Чтение содержимое корневого каталога (файловая система 2)»(402d) Ending the iterative process "Reading the contents of the root directory (file system 2)"

(405) Квалификация изменений в FAT (405) Qualification of changes to FAT

(StateNow) Текущее состояние: текущее состояние FAT в файловой системе 1(StateNow) Current State: Current state of FAT on file system 1

(StateNow-1) Предыдущее состояние FAT в файловой системе 1(StateNow-1) Previous FAT state on file system 1

(ScN) Стартовый кластер N: первый кластер файла с точки зрения FAT N(ScN) Start cluster N: the first cluster of the file in terms of FAT N

(Nc1ofN) Следующий кластер 1 из N: следующий кластер 1 на N(Nc1ofN) Next cluster 1 of N: next cluster 1 of N

(LcofN) Последний кластер из N: последний кластер из N(LcofN) Last cluster of N: last cluster of N

(Free) свободно: незанятый сектор(Free) free: unoccupied sector

(M + 1) следующая свободная позиция в FAT на (файловая система 1)(M+1) next free position in FAT on (filesystem 1)

(Last) Последний сектор: позиция зарезервированного сектора(Last) Last sector: reserved sector position

(QualifiedDifferenceFAT) Оценка, т. е. результат квалификации этих изменений: разница между (StateNow) и (StateNow-1) может быть описана как новая цепочка для «Create_a_new_file»; новая цепочка должна начинаться с кластера (K + M + 1) и иметь длину 19 секторов (L).(QualifiedDifferenceFAT) Evaluation, i.e. result of qualification of these changes: the difference between (StateNow) and (StateNow-1) can be described as a new chain for "Create_a_new_file"; the new chain must start from a cluster (K + M + 1) and have a length of 19 sectors (L).

(406) Квалификация изменений в структуре каталогов(406) Qualifying changes to directory structure

(StateNow) Текущее состояние: текущее состояние структуры каталогов в файловой системе 1(StateNow) Current State: The current state of the directory structure in file system 1

(StateNow-1) Фактическое состояние 1: исходное состояние структуры каталогов в файловой системе 1(StateNow-1) Actual State 1: Initial state of the directory structure in file system 1

(File1), (File2), (File3), (FileN) Файл 1, Файл 2… Файл N: имена файловых объектов в соответствии с записями в структуре каталогов, от 1 до N(File1), (File2), (File3), (FileN) File 1, File 2... File N: names of file objects according to entries in the directory structure, from 1 to N

(Ext1), (Ext2), (Ext3), (ExtN) Расширение 1… Расширение N: расширения файловых объектов, в соответствии с записями в структуре каталогов, от 1 до N(Ext1), (Ext2), (Ext3), (ExtN) Extension 1... Extension N: extensions of file objects, according to entries in the directory structure, from 1 to N

(Size1), (Size2), (Size3), (SizeN) Размер 1… Размер N: размеры файловых объектов, согласно записям в структуре каталогов, от 1 до N(Size1), (Size2), (Size3), (SizeN) Size 1... Size N: sizes of file objects, according to entries in the directory structure, from 1 to N

(Sc1), (Sc2), (Sc3), (ScN), (Sc N+1) Стартовые кластеры файловых объектов, соответствующих записям в структуре каталогов, от 1 до N+1(Sc1), (Sc2), (Sc3), (ScN), (Sc N+1) Starting clusters of file objects corresponding to entries in the directory structure, from 1 to N+1

(QualifiedDifferenceDir) Результат квалификации этих изменений: разница между (StateNow) и (StateNow-1) может быть описана как операция создания нового файла; новый файл имеет имя XXX с расширением ABC, начинается с (SC N + 1) и имеет длину 19 * 512 байт.(QualifiedDifferenceDir) The result of qualifying these changes: the difference between (StateNow) and (StateNow-1) can be described as the operation of creating a new file; the new file is named XXX with extension ABC, starts with (SC N+1) and is 19*512 bytes long.

(404) Определение принадлежности пользовательских данных к файлам (404) Determining whether user data belongs to files

(ScN) Стартовый кластер N: первый кластер файла с точки зрения FAT N(ScN) Start cluster N: the first cluster of the file in terms of FAT N

(Nc1ofN) Следующий кластер 1 из N: следующий кластер 1 на N(Nc1ofN) Next cluster 1 of N: next cluster 1 of N

(LcofN) Последний кластер из N: последний кластер из N(LcofN) Last cluster of N: last cluster of N

(M + 1) следующая свободная позиция в FAT на (файловая система 1)(M+1) next free position in FAT on (filesystem 1)

(Free) свободно: незанятый сектор(Free) free: unoccupied sector

(Last) Последний сектор: позиция зарезервированного сектора(Last) Last sector: reserved sector position

(Range) Диапазон: секторы, занятые файловой системой(Range) Range: sectors occupied by the file system

(Файловая система 1) Файловая система 1(File system 1) File system 1

(OFFSET) Смещение: в дополнение к части сегмента второй компонент (целочисленное значение) в адресе памяти(OFFSET) Offset: in addition to the segment part, the second component (integer value) in the memory address

(Size1) Размер 1: размер файлового объекта.(Size1) Size 1: The size of the file object.

(File1_fs2) Файл 1 в файловой системе 2(File1_fs2) File 1 on file system 2

(File1_fs2) Файл 1 в файловой системе 2(File1_fs2) File 1 on file system 2

(Ext1), (Ext2), (Ext3), (ExttN) Расширение 1… Расширение N: расширения файловых объектов,(Ext1), (Ext2), (Ext3), (ExttN) Extension 1… Extension N: file object extensions,

(Size1), (Size2), (Size3), (SizeN) Размер 1… Размер N: размер файлового объекта(Size1), (Size2), (Size3), (SizeN) Size 1… Size N: file object size

(File1), (File2), (File3), (FileN) Файл 1… Файл N: имена файловых объектов.(File1), (File2), (File3), (FileN) File 1... File N: names of file objects.

Claims (26)

1. Способ динамического определения совместимости файловых систем и доступа к данным независимо от файловой системы в реальном времени, включающий:1. A method for dynamically determining file system compatibility and data access regardless of the file system in real time, including: - предоставление доступа (100) к файловой системе пассивной памяти данных для активного терминала и моделирующего устройства (М), которое коммуникативно соединено между пассивной памятью данных и активным терминалом;- providing access (100) to the file system of the passive data memory for the active terminal and the simulator (M), which is communicatively connected between the passive data memory and the active terminal; - прием (101) запроса доступа от активного терминала моделирующим устройством (М), при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных;- receiving (101) an access request from the active terminal by the simulator (M), while the access request specifies access data and access operations to the passive data memory; - распознавание (102) файловой системы пассивной памяти данных моделирующим устройством (М);- recognition (102) of the file system of the passive data memory by the simulator (M); - выбор (103) сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной (102) файловой системой пассивной памяти данных, при этом правила доступа выбираются таким образом, что предоставляется таблица, в первом столбце которой описывается файловая система активного терминала, во втором столбце которой описывается файловая система пассивной памяти данных и в третьем столбце которой содержится указатель, который указывает на соответствующие правила доступа;- selecting (103) stored access rules that are suitable for fulfilling the access request in accordance with the recognized (102) file system of the passive data memory, wherein the access rules are selected in such a way that a table is provided, the first column of which describes the file system of the active terminal, the second column of which describes the passive data storage file system and the third column of which contains a pointer that points to the corresponding access rules; - применение (104) выбранных правил доступа к данным доступа моделирующим устройством (М), которые указаны в запросе доступа; и- application (104) of selected access rules to access data by the simulator (M), which are specified in the access request; And - выполнение (105) операций доступа в соответствии с запросом доступа.- performing (105) access operations in accordance with the access request. 2. Способ по п. 1, характеризующийся тем, что предоставление доступа (100) включает распознавание загрузочных секторов, процесс монтирования, интеграцию пассивной памяти данных в моделирующее устройство (М), интеграцию носителя пассивных данных в активный терминал, коммуникативное взаимодействие, установление по меньшей мере одного соединения через разъем, активацию доступа, настройку прав доступа и/или обмен передачу данных.2. The method according to claim 1, characterized in that granting access (100) includes recognition of boot sectors, a mounting process, integration of a passive data memory into a simulator (M), integration of a passive data carrier into an active terminal, communication interaction, establishment of at least at least one connection through a connector, activating access, setting access rights and/or exchanging data. 3. Способ по п. 1 или 2, характеризующийся тем, что активный терминал имеет операционную систему, которая формирует запрос доступа.3. The method according to claim 1 or 2, characterized in that the active terminal has an operating system that generates an access request. 4. Способ по п. 3, характеризующийся тем, что применение (104) и выполнение (105) осуществляют итеративно для каждого потока данных, при этом операционная система определяет поток данных.4. The method according to claim 3, characterized in that application (104) and execution (105) are carried out iteratively for each data stream, while the operating system determines the data stream. 5. Способ по любому из предшествующих пунктов, характеризующийся тем, что запрос доступа содержит по меньшей мере один запрос на чтение и/или запись.5. A method according to any one of the preceding claims, characterized in that the access request contains at least one read and/or write request. 6. Способ по любому из предшествующих пунктов, характеризующийся тем, что в запросе доступа указываются полезная нагрузка и/или дополнительные данные.6. A method as claimed in any one of the preceding claims, characterized in that the access request specifies a payload and/or additional data. 7. Способ по любому из предшествующих пунктов, характеризующийся тем, что данные доступа описывают имена файлов, абсолютные адреса памяти, относительные адреса памяти, типы и/или свойства файлов.7. A method as claimed in any one of the preceding claims, characterized in that the access data describes file names, absolute memory addresses, relative memory addresses, file types and/or properties. 8. Способ по любому из предшествующих пунктов, характеризующийся тем, что операции доступа описывают операции чтения и/или записи.8. A method according to any of the preceding claims, characterized in that the access operations describe read and/or write operations. 9. Способ по любому из предшествующих пунктов, характеризующийся тем, что правила доступа описывают операции модуляции, которые определяют, как следует моделировать дополнительные данные данных доступа, чтобы данные доступа считывались и/или записывались в соответствии с файловой системой.9. A method as claimed in any one of the preceding claims, characterized in that the access rules describe modulation operations that determine how additional access data data should be modeled so that the access data is read and/or written in accordance with the file system. 10. Способ по любому из предшествующих пунктов, характеризующийся тем, что правила доступа описывают то, как записывать данные, соответствующие первой файловой системе, во вторую файловую систему и/или считывать из второй файловой системы.10. A method according to any one of the preceding claims, characterized in that the access rules describe how to write data corresponding to the first file system to the second file system and/or read from the second file system. 11. Способ по любому из предшествующих пунктов, характеризующийся тем, что распознавание (102) файловой системы включает распознавание загрузочных секторов.11. A method according to any one of the preceding claims, characterized in that the recognition (102) of the file system includes the recognition of boot sectors. 12. Способ по любому из предшествующих пунктов, характеризующийся тем, что выполнение (105) операций записи в соответствии с запросом доступа, когда размер файла ограничивается файловой системой, разделяет соответствующий файл по меньшей мере на два отдельных файла.12. The method according to any one of the preceding claims, characterized in that performing (105) write operations in accordance with the access request when the file size is limited by the file system splits the corresponding file into at least two separate files. 13. Система для динамического определения совместимости файловых систем и доступа к данным в реальном времени независимо от файловой системы, включающая:13. A system for dynamically determining the compatibility of file systems and accessing data in real time, regardless of the file system, including: - по меньшей мере один интерфейсный модуль, выполненный с возможностью предоставлять доступ (100) к файловой системе пассивной памяти данных для активного терминала, и моделирующее устройство (М), которое коммуникативно соединено между пассивной памятью данных и активным терминалом;- at least one interface module configured to provide access (100) to the file system of the passive data memory for the active terminal, and a simulator (M) that is communicatively connected between the passive data memory and the active terminal; - моделирующее устройство (М) выполнено с возможностью принимать (101) запрос доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных;- the simulator (M) is configured to receive (101) an access request from the active terminal, wherein the access request specifies access data and access operations to the passive data memory; - моделирующее устройство (М) предназначено для распознавания (102) файловой системы пассивного носителя данных;- the simulator (M) is designed to recognize (102) the file system of the passive storage medium; - модуль базы данных, выполненный с возможностью выбирать (103) сохраненные правила доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной (102) файловой системой пассивной памяти данных, при этом правила доступа выбираются таким образом, что предоставляется таблица, в первом столбце которой описывается файловая система активного терминала, во втором столбце которой описывается файловая система пассивной памяти данных и в третьем столбце которой содержится указатель, который указывает на соответствующие правила доступа;- a database module configured to select (103) stored access rules that are suitable for executing an access request in accordance with the recognized (102) passive data memory file system, wherein the access rules are selected such that a table is provided in the first column which describes the file system of the active terminal, the second column of which describes the file system of the passive data memory, and the third column of which contains a pointer that points to the corresponding access rules; - моделирующее устройство (М) выполнено с возможностью применять (104) выбранные правила доступа к данным доступа, которые указаны в запросе доступа; и- the simulator (M) is configured to apply (104) selected access rules to the access data, which are specified in the access request; And - пассивная память данных, выполненная с возможностью выполнять (105) операции доступа в соответствии с запросом доступа.- a passive data memory configured to perform (105) access operations in accordance with an access request. 14. Машиночитаемый носитель информации, содержащий процессор и память, содержащую управляющие команды, исполняемые процессором, которые реализуют способы по любому из пп. 1–12.14. A computer-readable storage medium containing a processor and memory containing control commands executed by the processor, which implement the methods according to any one of claims. 1–12.
RU2023100994A 2020-06-18 2020-11-30 Dynamic real-time file systems compatibility determination RU2808634C1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP20020284.4 2020-06-18

Publications (1)

Publication Number Publication Date
RU2808634C1 true RU2808634C1 (en) 2023-11-30

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5463772A (en) * 1993-04-23 1995-10-31 Hewlett-Packard Company Transparent peripheral file systems with on-board compression, decompression, and space management
RU2398275C2 (en) * 2005-02-28 2010-08-27 Майкрософт Корпорейшн File system presented inside database
US20100306284A1 (en) * 2009-06-01 2010-12-02 Mstar Semiconductor, Inc. File System and File System Converting Method
RU2409847C2 (en) * 2005-03-28 2011-01-20 Майкрософт Корпорейшн Mapping system model to database object
US9489396B2 (en) * 2011-07-01 2016-11-08 V3 Systems Holdings, Inc. Intermediation of hypervisor file system and storage device models

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5463772A (en) * 1993-04-23 1995-10-31 Hewlett-Packard Company Transparent peripheral file systems with on-board compression, decompression, and space management
RU2398275C2 (en) * 2005-02-28 2010-08-27 Майкрософт Корпорейшн File system presented inside database
RU2409847C2 (en) * 2005-03-28 2011-01-20 Майкрософт Корпорейшн Mapping system model to database object
US20100306284A1 (en) * 2009-06-01 2010-12-02 Mstar Semiconductor, Inc. File System and File System Converting Method
US9489396B2 (en) * 2011-07-01 2016-11-08 V3 Systems Holdings, Inc. Intermediation of hypervisor file system and storage device models

Similar Documents

Publication Publication Date Title
US5581740A (en) System for reading CD ROM data from hard disks
US8504648B2 (en) Method and apparatus for storage-service-provider-aware storage system
US9235583B2 (en) Virtual media with folder-mount function
TWI421692B (en) System of virtual media with folder-mount function and operation method thereof
JP4807683B2 (en) Data storage
JP4406224B2 (en) Image file management method and recording medium therefor
US8156292B2 (en) Methods for implementation of data formats on a removable disk drive storage system
US7546307B2 (en) Virtual block storage to filesystem translator
US6606651B1 (en) Apparatus and method for providing direct local access to file level data in client disk images within storage area networks
JP2007334878A (en) Long-term data archiving system and method
JP2005535019A (en) Storage management bridge
KR102263357B1 (en) System for supporting user-level dma i/o in distributed filesystem environment and method for the same
US20180232396A1 (en) Methods and systems for displaying virtual files side-by-side with non-virtual files and for instantaneous file transfer
CN1710546A (en) Systems and methods for building a disk image
JPWO2007099636A1 (en) File system migration method, file system migration program, and file system migration apparatus
US20060085487A1 (en) Computer for storage device and method of control for storage device
WO2015179562A9 (en) Avoiding full file replication using sparse files
RU2808634C1 (en) Dynamic real-time file systems compatibility determination
US11720529B2 (en) Methods and systems for data storage
JP2001084168A (en) Inter-different kind computer high speed data exchange system and extent extraction and conversion program recording medium
CA3133737C (en) Dynamically establishing a compabtibility of file systems in real time
CN115442083A (en) Equipment access method, data exchange method, device, equipment and storage medium
CN110059425B (en) EDA (electronic design automation) simulation technology of SD (secure digital) card file system based on SD card mirror image file
TWI408552B (en) Method for accessing files in a management system
JP2006277143A (en) Shared file system, setting method, and setting program