ДИНАМИЧЕСКОЕ ОПРЕДЕЛЕНИЕ СОВМЕСТИМОСТИ ФАЙЛОВЫХ СИСТЕМ В РЕАЛЬНОМ ВРЕМЕНИ Российский патент 2023 года по МПК G06F3/06 G06F16/16 

Описание патента на изобретение RU2808634C1

Настоящее изобретение относится к способу динамического определения совместимости файловых систем и системе доступа к данным в реальном времени независимо от файловых систем. Согласно формуле изобретения конечный пользователь может получить доступ к пассивной памяти данных с любого терминала вне зависимости от файловой системы, под управлением которой находится пассивная память данных. Это позволяет избежать сложных многоэтапных процессов, которые, например, предусматривают преобразование файловой системы непосредственно на носителе данных. Таким образом, предлагаемый метод более эффективен и устойчив к ошибкам. Настоящее изобретение также относится к устройству и системе в соответствующих конфигурациях. Кроме того, предлагается компьютерный программный продукт с управляющими командами, реализующими этапы способа.

В US 5463772 A1 показаны устройства для чтения и записи в память активных данных с заданной файловой системой.

В WO 2005/086039 A2 предлагается способ создания носителей данных со структурированной записью информации, и для этой цели предлагается преобразование данных и использование универсальной модели данных.

В WO 2018/031794 A1 показан способ записи на носитель информации.

В US 5742818 А показан способ преобразования файловой системы.

Известный уровень техники касается проблемы совместимости при попытке доступа к памяти данных с терминала. Например, конечное устройство не поддерживает файловую систему, под управлением которой работает память. Известный уровень техники предполагает, что в случае несовместимости, т. е. при работе с разными файловыми системами, файловая система памяти данных обычно преобразуется. Таким образом, файловая система памяти данных преобразуется в файловую систему, поддерживаемую терминалом. Это сложный процесс, и данные на носителе также теряются.

Перенос или преобразование из одной файловой системы в другую часто осуществляется путем форматирования всей памяти данных. Форматирование основано на стирании всех данных в хранилище во время реструктуризации. В начале операции записи оно является пустым. Это приводит к дополнительным проблемам, например, к необходимости резервного копирования данных или к возможной потере данных.

Кроме того, из уровня техники известна реализация эмуляции, когда имитируются функциональные возможности целевой системы. Эмуляция также является сложным процессом и требует значительных усилий для обеспечения уровня абстракции базового аппаратного и программного обеспечения целевой системы. Эмуляция сама по себе часто занимает много времени. Кроме того, для обмена информацией с пассивной памятью данных эти реализуемые функции являются избыточными. Обычно это не дает больших функциональных возможностей. Напротив, основная задача памяти данных состоит в том, чтобы просто действовать пассивно и исключительно хранить статические данные. Поэтому эмуляция также занимает много времени и склонна привносить ошибки при использовании.

Таким образом, известный уровень техники имеет недостаток, заключающийся в отсутствии способа, позволяющего конечному пользователю подключать пассивный носитель данных к терминалу таким образом, чтобы используемые файловые системы всегда были совместимы. Применяемые методы являются сложными, и сложное преобразование всей файловой системы обычно выполняется на этапе подготовки. Однако это считается невыгодным для пользователя, поскольку он обычно хочет записывать на носитель данные в реальном времени и, таким образом, не склонен прибегать к форматированию. Если в результате возникает опасность потери данных пользователя, такие процедуры не принимаются.

Таким образом, целью предлагаемого изобретения является создание способа, который позволяет пользователю подключать пассивное устройство хранения данных к терминалу, не вызывая проблем с совместимостью файловых систем. Поэтому должен быть возможен независимый от файловой системы доступ к данным, который не влечет за собой потери данных и может осуществляться в режиме реального времени. Также целью настоящего изобретения является предложение соответственно сконфигурированного устройства и соответствующим образом сконфигурированной системы. Кроме того, должна быть предложена компьютерная программа с управляющими командами, которые реализуют предлагаемый способ или управляют устройством или сконфигурированной системой.

Цель достигается способом, подходящим под описание в п. 1. Дополнительные предпочтительные конфигурации указаны в связанных пунктах формулы изобретения.

Соответственно, предлагается способ динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени, включающий предоставление доступа к файловой системе пассивного запоминающего устройства для активного терминального устройства и моделирующего устройства, которые соединены для передачи информации между пассивным запоминающим устройством данных и активным терминалом; способ приема запроса доступа от активного терминала с помощью моделирующего устройства, при этом в запросе доступа указываются данные для доступа и операции доступа к пассивной памяти данных; распознавание файловой системы пассивной памяти данных моделирующим устройством; выбор сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с предварительно определенной файловой системой пассивной памяти данных; применение моделирующим устройством выбранных правил для доступа к данным, указанным в запросе доступа; выполнение операций доступа в соответствии с запросом.

Согласно изобретению динамическое установление совместимости файловых систем происходит таким образом, что аппаратное обеспечение носителя данных не эмулируется, а вместо этого выполняется адаптация на уровне данных или файлов таким образом, что данные с терминала могут быть записаны в пассивная память данных. Аппаратное обеспечение не симулируется, работа выполняется на уровне файлов, для которого эмуляция не требуется. Пассивная память данных также не имеет программного обеспечения, поэтому также не требуется устанавливать соответствие функций. Память данных обычно поддерживает только пассивные операции чтения или записи. Это позволяет использовать предлагаемый способ в режиме реального времени.

Согласно настоящему изобретению, реальное время означает отсутствие значительных задержек, то есть пользователь не замечает никаких задержек. Отдельные этапы процесса могут выполняться за доли секунды, так что у конечного пользователя создается впечатление, что процесс выполняется в режиме реального времени. С технической точки зрения безусловно существует время обработки, которое, однако, не может быть замечено пользователем-человеком.

Согласно изобретению способ позволяет избежать необходимости эмулировать или передавать файловые системы на подготовительном этапе реализации способа. Таким образом, конечный пользователь может подключить носитель данных или пассивная память данных к терминалу с помощью моделирующего устройства и немедленно начать операции чтения и записи в памяти данных. Это означает, что данные в памяти данных могут быть доступны независимо от файловой системы. Доступ к данным означает, что поддерживаются как операции чтения, так и операции записи на носителе данных.

Для этого необходимо предоставить доступ к файловой системе. Предоставление доступа также называется операцией МОНТИРОВАНИЯ. В данном случае можно считать информацию о файловой системе пассивной памяти данных и уже с этого момента обладать сведениями о том, какие данные находятся в памяти. Это не требует значительных затрат времени, так что с точки зрения пользователя этот этап процесса также может выполняться в режиме реального времени, т. е. без ожидания. После предоставления доступа к файловой системе память данных связана с активным терминалом для передачи информации, а моделирующее устройство находится между ними. Предоставление доступа включает, например, соединение разъемов между памятью данных, моделирующим устройством и активным терминалом.

Соединение разъемов может быть выполнено таким образом, что пассивная память данных подключается непосредственно к моделирующему устройству, а оно, в свою очередь, подключается к активному терминалу. Однако также возможно обеспечить проводное соединение между памятью данных, моделирующим устройством и терминалом. Согласно одному аспекту настоящего изобретения доступ предоставляется посредством физического соединения между устройством хранения данных, моделирующим устройством и терминалом. Специалисту в данной области техники известны основные способы выполнения этого, а также способы проектирования такого подключения разъемов. В качестве примера можно привести USB, поэтому для этой цели можно использовать общеизвестные интерфейсы. Таким образом, пассивным устройством хранения данных может быть внешний жесткий диск, USB-накопитель или слот для SD-карты.

Моделирующее устройство может быть спроектировано как отдельное аппаратное устройство и может, например, иметь память данных, содержащую правила доступа. Моделирующее устройство также может быть реализовано как встроенная система, которая обеспечивает или реализует логику управления. Как правило, моделирующее устройство содержит по меньшей мере два интерфейса: пассивное запоминающее устройство, сообщающееся с моделирующим устройством через интерфейс, и активный терминал, сообщающийся с еще одним интерфейсом. В общем случае, также можно предусмотреть дополнительные интерфейсы, чтобы можно было подключить несколько запоминающих устройств. Также можно подключить несколько активных конечных устройств, чтобы они могли выполнять операции записи или чтения в памяти данных.

Пассивная память данных не реализует отдельных функций, а служит только для хранения данных и поэтому может называться пассивной. Соответствующие операции записи и чтения инициируются и передаются активным терминалом. Таким образом, активный терминал инициирует способ согласно изобретению, чтобы получить доступ к пассивной памяти данных. Активный терминал хранит данные, которые организованы в соответствии с имеющейся файловой системой, или запрашивает данные, которые хранятся в пассивной памяти данных. Согласно изобретению соответствующие данные адаптируются в зависимости от поддерживаемой файловой системы активного устройства.

Обычно активный терминал поддерживает первую файловую систему, а пассивное устройство хранения управляется второй файловой системой. Если при этом данные записываются в пассивную память, данные в формате первой файловой системы адаптируются таким образом, чтобы хранить их в формате второй файловой системы. Если данные запрашиваются из памяти, они переводятся из формата второй файловой системы таким образом, чтобы они соответствовали формату первой файловой системы. Как правило, для этой цели нет необходимости адаптировать пользовательские данные, необходимо адаптировать только дополнительные данные. Например, метаданные можно смоделировать таким образом, чтобы их можно было записывать в память или хранить на активном терминале. Дополнительные данные могут описывать пользовательские данные или содержать информацию о файловой системе. Дополнительные данные также могут содержать смещение, указывающее место физического расположения соответствующих блоков данных на накопителе.

Моделирующее устройство соответственно принимает запрос доступа от активного терминала, при этом в запросе доступа указываются данные, к которым требуется доступ, и операции доступа в памяти пассивных данных. Операции доступа могут представлять собой операции чтения или операции записи, а данные доступа описывают, что именно должно быть запрошено или передано. Данные доступа могут, например, указывать имя файла, который должен быть записан в память данных в соответствии с операцией доступа «запись». Запрос доступа инициируется активным терминалом и указывает нужные данные, не затрагивая файловую систему.

Файловая система пассивного носителя данных затем определяется моделирующим устройством. Моделирующее устройство является посредником между активным терминалом и пассивной памятью данных. Таким образом, все сообщения и команды проходят через моделирующее устройство. Таким образом, подключенные участники информационного обмена, то есть активный терминал и пассивное запоминающее устройство, обмениваются данными только через моделирующее устройство.

Кроме того, существует выбор сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с определенной ранее файловой системой пассивной памяти данных. Сохраненные правила доступа могут быть определены, например, опытным путем или могут быть созданы на подготовительном этапе процесса. Правила доступа описывают, как следует моделировать данные, чтобы после их получения из первой файловой системы их можно было интерпретировать во второй файловой системе. Дополнительные данные, например метаданные, обычно адаптируются на этом этапе таким образом, что файлы или данные в формате первой операционной системы кодируются в соответствии с форматом второй операционной системы. Если, например, выполняется операция записи, активный терминал передает файлы в формате первой файловой системы или в формате файловой системы на активном терминале. Затем они моделируются в соответствии с правилами доступа таким образом, чтобы их можно было сохранить во второй файловой системе или в формате файловой системы. Если наоборот, выполняется операция чтения, данные второй файловой системы преобразуются таким образом, чтобы их они могли интерпретироваться активной файловой системой. Таким образом, данные преобразуются так, чтобы их можно было сохранить в файловой системе активного терминала.

Правила доступа могут быть выбраны таким образом, чтобы сохранялась таблица, которая описывает файловую систему активного терминала в первом столбце, файловую систему пассивной памяти данных во втором столбце и предоставляемые правила доступа в третьем столбце. Третий столбец может содержать указатель на соответствующие правила доступа. В качестве файловых систем могут использоваться FAT, FAT32, ExFAT, NTFS и другие.

Память данных с правилами доступа обычно встроена в моделирующее устройство, или память данных также может присутствовать в виде внешней памяти, из которой считываются данные. Аналогично память данных также может располагаться в активном терминале.

Таким образом, правила доступа описывают правила преобразования данных для записи или чтения, чтобы они были в подходящем формате в каждом случае. То есть может быть предусмотрен анализ данных доступа таким образом, что данные полезной нагрузки отделяются от других данных, а другие данные преобразуются в формат файловой системы. В качестве опции также предусмотрено преобразование пользовательских данных, причем в типичном случае преобразуются только дополнительные данные или метаданные. Таким образом, можно очень эффективно выполнять модуляцию, и поэтому способ можно осуществлять в режиме реального времени. Таким образом, преобразование дополнительных данных может быть выполнено быстро, поскольку адаптируются данные, а не файловая система, и, как правило, адаптируются только метаданные. Это очень небольшой объем данных, который можно адаптировать без особых технических затрат.

Если выбраны правила доступа, они применяются к данным доступа, что означает, что данные для чтения или записи адаптируются таким образом, чтобы их можно было записать в файловую систему пассивной памяти данных или при чтении данных они адаптированы так, чтобы они соответствовали файловой системе активного терминала. Как уже было описано, часто бывает достаточно просто закодировать или смоделировать дополнительные данные, а не данные полезной нагрузки.

Поскольку данные преобразуются так, чтобы они были в совместимом формате, можно инициировать этап выполнения операций доступа. Операции доступа могут быть либо операциями чтения, либо операциями записи. Поскольку данные доступны в нужном виде, они записываются в пассивную память данных или считываются из пассивной памяти данных.

Этапы способа могут выполняться итеративно таким образом, чтобы применялись выбранные правила доступа и выполнялись операции доступа для определенного потока данных. Например, набор файлов может быть запрошен активным терминалом, и в соответствии с операциями доступа может быть определено, достаточно ли однократной корректировки данных доступа или, например, правила доступа должны повторно применяться после каждой операции записи файла. Это означает, что метаданные могут быть адаптированы для каждого файла или что метаданные адаптируются только один раз, и все пользовательские данные перезаписываются. Порядок действий можно сохранить в памяти данных моделирующего устройства.

Согласно одному аспекту настоящего изобретения предоставление доступа включает процесс монтирования, встраивание пассивного носителя данных в моделирующее устройство, встраивание пассивного носителя данных в активный терминал, соединение для обмена информацией, установление по меньшей мере одного соединения разъемов, активацию доступа, настройку прав доступа и/или передачу данных. Преимущество этого заключается в том, что память данных может быть считана при предоставлении доступа, и поэтому можно оценить имеющиеся данные во время операции чтения. Так, например, могут быть известны размеры файлов, и можно определить, как структурирован считываемый поток данных. В зависимости от этой информации можно оптимизировать применение выбранных правил доступа и выполнение операций доступа. Если, например, имеется много файлов меньшего размера, отдельные группы файлов могут быть прочитаны как поток данных, и поэтому применение выбранных правил доступа относится к нескольким файлам. Если файлы большие, правила доступа могут быть применены к каждому файлу. Подключение обеспечивает связь активного терминала с пассивной памятью данных через моделирующее устройство. Также возможно реализовать дополнительные механизмы безопасности, например можно назначить права доступа.

Согласно еще одному аспекту настоящего изобретения активный терминал имеет операционную систему, которая формирует запрос на доступ. Преимущество состоит в том, что потоки данных могут быть указаны заранее, и поэтому известно, какие файлы запрашиваются. Таким образом, операционная система может указать, что большое количество файлов должно быть прочитано или записано, и поэтому выбранные правила доступа могут также применяться к одному или нескольким файлам. Следовательно, данные доступа могут быть сегментированы и адаптированы как единое целое или могут быть адаптированы отдельные сегменты, т. е. отдельные потоки данных. Таким образом можно объединять небольшие объемы данных, а правила доступа применяются один раз. Это означает, что такие файлы можно записывать и не нужно каждый раз корректировать дополнительные данные.

В соответствии с еще одним аспектом настоящего изобретения приложение и реализация выполняются итеративно для каждого потока данных, и при этом операционная система определяет поток данных. Преимущество состоит в том, что применение правил доступа и выполнение операций записи могут выполняться сколь угодно часто, так что после последней итерации все данные доступа считываются или записываются. Таким образом, потоки данных могут быть выбраны в зависимости от запрошенных или указанных файлов.

Согласно еще одному аспекту настоящего изобретения запрос доступа имеет по меньшей мере один запрос на чтение и/или запись. Преимущество состоит в том, что пассивная память данных может быть доступна как для чтения, так и для записи. В данном случае нет необходимости эмулировать функциональность пассивной памяти данных. Скорее в соответствии с изобретением происходит адаптация (мета)данных, подлежащих записи или чтению, и нет прямой адаптации файловой системы к пассивным данным.

Согласно еще одному аспекту настоящего изобретения в запросе доступа указываются данные полезной нагрузки и/или дополнительные данные. Преимущество состоит в том, что в запросе доступа уже указано, какие данные являются пользовательскими, а какие дополнительными. Дополнительные данные могут быть, например, метаданными, описывающими полезные данные. Такими дополнительными данными являются размер файла или имя файла. Если файловая система не поддерживает определенные дополнительные данные, например используется другой набор символов, применение правил доступа происходит таким образом, что имя файла изменяется так, чтобы оно соответствовало набору символов файловой системы. Например, активный терминал хочет записать файлы в пассивную память данных и указывает пользовательские данные с именами файлов с умлаутом. Если умлауты не поддерживаются в файловой системе памяти данных, правило доступа предусматривает, например, что умлауты заменяются другой гласной или гласной и буквой «е».

Согласно еще одному аспекту настоящего изобретения данные доступа описывают имена файлов, абсолютные адреса памяти, относительные адреса памяти, типы и/или свойства файлов. Преимущество состоит в том, что данные доступа описывают, какая информация потенциально нуждается в адаптации. Если система пассивной памяти данных поддерживает только определенные адреса или имеет только определенный размер, передаваемые адреса памяти адаптируются так, чтобы данные доступа могли быть записаны в память данных. Если выполняется чтение файлов, эти данные доступа могут быть адаптированы таким образом, чтобы их можно было сохранить в файловой системе активного терминала.

Согласно еще одному аспекту настоящего изобретения операции доступа описывают операции чтения и/или записи. Преимущество состоит в том, что операции доступа описывают, как должны выполняться отдельные операции. Методы чтения или записи можно описать для каждой файловой системы.

Согласно еще одному аспекту настоящего изобретения правила доступа описывают операции модуляции, которые определяют, как следует моделировать дополнительные данные данных доступа, чтобы данные доступа считывались и/или записывались в соответствии с файловой системой. Преимущество состоит в том, что правила доступа задают преобразования или модуляции, которые преобразуют определенные данные доступа таким образом, что, если они отформатированы первой файловой системой, они переформатируются таким образом, чтобы они были совместимы со второй файловой системой.

Согласно еще одному аспекту настоящего изобретения правила доступа описывают, как данные в формате первой файловой системы должны быть записаны во вторую файловую систему и/или считаны из второй файловой системы. Преимущество состоит в том, что преобразование может происходить из файловой системы, которая может присутствовать на активном терминале, и файловой системы, которая присутствует в пассивной памяти данных. Таким образом, правила доступа описывают данные кодирования или процесс адаптации дополнительных данных. Как правило, необходимо адаптировать только дополнительные данные, но не обязательно данные полезной нагрузки.

Согласно еще одному аспекту настоящего изобретения пассивный носитель данных содержит носитель данных, такой как USB-накопитель, жесткий диск, карту памяти, сервер, сетевой компонент, DAS, NAS и/или локальный накопитель данных. Преимущество состоит в том, что можно также использовать стандартизированные спецификации, а также большое количество носителей данных. В данном случае также возможно обращение к нескольким пассивным запоминающим устройствам. NAS означает сетевое хранилище. DAS означает хранилище с прямым подключением.

Согласно еще одному аспекту настоящего изобретения активный терминал представляет собой телевизионное устройство, принтер, маршрутизатор, DAS, NAS, портативный терминал, стационарный терминал, компьютер, телефон или сетевой компонент. Преимущество состоит в том, что активный терминал может быть реализован различными способами, и создается общий метод, который делает совместимыми совершенно разные файловые системы.

Другим аспектом настоящего изобретения является его способность различать запросы доступа и решать, запрашивать ли доступ к пользовательским данным или к метаданным. В зависимости от типа запроса на доступ, запрос либо перенаправляется в пассивную память без модификации данных, либо метаданные приводятся в соответствующий формат с использованием правил трансляции.

Другим аспектом настоящего изобретения является его способность извлекать только часть метаданных из пассивной памяти для отправки на терминал. Таким образом, только самая необходимая информация о запрошенных файлах предоставляется в режиме реального времени и с коротким временем отклика.

Другим аспектом настоящего изобретения является его способность сделать доступной в качестве отдельной памяти только определенную часть пассивной памяти, которая затем может быть предоставлена терминалом (обычно определенный подкаталог с его содержимым).

Другим аспектом настоящего изобретения является его способность делать предварительный выбор и таким образом принимать решение о доступности файловых систем для терминала. Это делается либо с помощью переключателя, либо с помощью предварительно заданных файлов на внешнем носителе, таких как makeas.exFAT, который указывает моделирующему модулю создать внешнюю память с файловой системой exFAT. Таким образом, модуль моделирования может сделать файловую систему exFAT доступной для конечного устройства, поскольку эта файловая система широко используется с тех пор, как ее спецификации стали общедоступными (реализация exFAT с открытым исходным кодом поддерживается разработчиками корпорации Microsoft) и используется во многих встроенных устройствах, сотовых телефонах и других мультимедийных устройствах.

Еще одним аспектом настоящего изобретения является его способность компенсировать серьезные недостатки FAT32, когда эта файловая система используется на терминале. Большим недостатком является ограничение размера файла, которое составляет 4 ГБ в системе FAT32. FAT32 накладывает дополнительное ограничение на количество адресуемых файлов в одном и том же подкаталоге, которое составляет 65534. Внешний носитель под управлением FAT32, скорее всего, поддерживается более старыми моделями конечных устройств и их ограничения также могут быть учтены для пользователя. Можно продолжать работать с ним. Настоящее изобретение решает проблему, связанную с большими файлами путем предоставления доступа для терминала к нескольким файлам с максимально допустимым размером 4 ГБ.

Второе ограничение FAT32, а именно максимальное количество адресуемых файлов в одном подкаталоге 65534, влияет на использование, если все файлы находятся в одном каталоге или подкаталоге. Хотя очень маловероятно, что придется извлекать информацию из подкаталога с более чем 65534 файлами, в этом случае настоящее изобретение будет информировать пользователя о том, что предел достигнут, и эти 65534 файла не могут быть доступны одновременно. Таким образом, пользователь будет знать, что не все файлы могут отображаться на устройстве, но все же доступны.

Согласно одному аспекту настоящего изобретения предполагается, что терминал поддерживает исключительно FAT32. Поддержка FAT32 в конечном устройстве применяется, если его модули или компоненты (например, установленные драйверы файловой системы) могут обращаться к локальной, внешней или виртуальной памяти в формате FAT32 для создания, восстановления, обновления или удаления файлов и каталогов.

Память определена в соответствии с одним аспектом настоящего изобретения как блочное устройство, что означает, что основные операции состоят из блоков чтения и записи, которые адресуются посредством смещения или расположения в памяти. Предполагается, что конечное устройство имеет интерфейс USB для подключения к внешним носителям информации.

Предположение о поддержке FAT32 в терминале обычно служит только для примера и не нацелено на ограничение возможных применений предлагаемого изобретения системой FAT32. Предположение, что терминал имеет интерфейс USB для подключения к внешним носителям данных, также принимается для примера и не направлено на ограничение возможных применений предлагаемого изобретения подключением через интерфейс USB. Если здесь упоминаются стандарты, такие как FAT или FAT32, это обычно обозначает файловую систему.

Цель также достигается с помощью моделирующего устройства, которое может быть подключено между пассивной памятью данных и активным терминалом и предназначено для доступа активного терминала к файловой системе пассивной памяти данных, при этом моделирующее устройство также выполнено для приема запроса доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивному устройству хранения данных и дополнительно содержит информацию для распознавания файловой системы пассивной памяти данных, а модуль базы данных выполнен с возможностью выбора сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной файловой системой пассивной памяти данных, и дополнительно настраивают моделирующее устройство для применения выбранных правил доступа к данным доступа, которые указаны в запросе доступа, и дополнительно сконфигурированы для обеспечения операций доступа в соответствии с запросом доступа.

Моделирующее устройство пригодно для использования в предлагаемом способе. Кроме того, моделирующее устройство может быть использовано в предлагаемой конфигурации системы.

Цель также достигается за счет системной конфигурации для динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени с по крайней мере одним интерфейсным модулем, настроенным для предоставления доступа к файловой системе пассивной памяти данных для активного терминала и моделирующего устройства, которое поддерживает пассивную память данных, а активный терминал подключен между ними; моделирующее устройство настроено на прием запроса доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных; устройство моделирования настроено на распознавание файловой системы пассивной памяти данных; модуль базы данных, предназначенный для выбора сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной файловой системой пассивной памяти данных; устройство моделирования настроено для применения выбранных правил доступа к данным доступа, которые указаны в запросе доступа; и пассивную память данных, сконфигурированную для выполнения операций доступа в соответствии с запросом доступа.

Цель также достигается компьютерным программным продуктом с управляющими командами, которые реализуют способ и управляют предлагаемой конфигурацией, когда они выполняются на компьютере.

Согласно изобретению особенно предпочтительно, чтобы способ можно было использовать для работы предлагаемых устройств и модулей или конфигурации системы. Предлагаемые устройства и приспособления подходят также для осуществления способа по изобретению. Таким образом, устройство или система в каждом случае реализует структурные элементы, подходящие для осуществления соответствующего способа. Однако структурные элементы также могут быть разработаны как этапы метода. Предлагаемый способ также предусматривает этапы реализации функции структурных элементов.

Дополнительные преимущества, элементы и детали изобретения вытекают из следующего описания, в котором аспекты изобретения подробно описаны со ссылками на чертежи. Элементы, упомянутые в формуле изобретения и в описании, могут быть существенными для изобретения по отдельности или в любой комбинации. Упомянутые выше и описанные элементы также можно использовать по отдельности или вместе в любой комбинации. Термины «левый», «правый», «верхний» и «нижний», используемые в описании примерных вариантов осуществления, относятся к чертежам в ориентации с обычно читаемыми обозначениями рисунков и символами ссылок. Показанные и описанные варианты осуществления не следует понимать как окончательные, но они являются иллюстративными для пояснения изобретения. Подробное описание предоставлено для информации специалистам в данной области техники; поэтому в описании известные схемы, структуры и способы не показаны и не объяснены подробно, чтобы не усложнять понимание настоящего описания. На рисунках показано следующее:

ФИГ. 1: Блок-схема известной конфигурации системы;

ФИГ. 2: Блок-схема системы для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с аспектом настоящего изобретения;

ФИГ. 3: Блок-схема системы для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с еще одним аспектом настоящего изобретения;

ФИГ. 4: Блок-схема метода для динамического установления совместимости файловых систем и доступа к данным в реальном времени, который не зависит от файловой системы, в соответствии с еще одним аспектом настоящего изобретения;

ФИГ. 5:Блок-схема этапов способа, которые могут выполняться моделирующим устройством;

ФИГ. 6:Блок-схема этапов способа согласно изобретению для обработки запроса доступа;

ФИГ. 7: Блок-схема этапов способа моделирующего устройства для считывания параметров файловой системы из пассивной памяти согласно изобретению;

ФИГ. 8А, 8Б: Таблицы для иллюстрации этапов способа применения сохраненных правил доступа согласно одному аспекту настоящего изобретения;

ФИГ. 9A, 9Б: Таблицы для иллюстрации этапов способа применения сохраненных правил доступа согласно еще одному аспекту настоящего изобретения;

ФИГ. 10: Таблицы для иллюстрации этапов способа использования сохраненных правил доступа согласно одному аспекту настоящего изобретения;

На фиг. 1 показана конфигурация системы в соответствии с известным уровнем техники. Носитель данных расположен с левой стороны, а устройство терминала - с правой стороны, справа показано только соединение разъемов. Моделирующее устройство разработано таким образом, что аппаратное обеспечение эмулируется как с правой, так и с левой стороны. Это имеет место на имеющемся уровне техники, потому что устройство в середине подходит для пересылки команд управления на периферийные устройства. Таким образом, текущий уровень техники обычно не предусматривает пассивный носитель данных, скорее может быть подключено периферийное устройство, такое как устройство ввода. Таким образом, уровень техники также требует эмуляции функциональности, которая не является обязательной согласно изобретению.

Как видно из представленной фиг. 1, особенным недостатком предшествующего уровня техники является необходимость эмуляции посредством эмулятора 1 с левой стороны и эмулятора 2 с правой стороны. Таким образом, уровень техники предусматривает, что все подключенные терминалы должны эмулироваться, что требует значительных технических затрат и может даже приводить к ошибкам.

В соответствии с изобретением этот недостаток преодолен на текущем уровне техники, и было неожиданно обнаружено, что корректировки необходимы только на уровне файла или данных. Кроме того, уровень техники не позволяет определять совместимость в режиме реального времени. Если, например, слева действительно находится носитель данных, в этом случае уровень техники предусматривает адаптацию файловой системы. Согласно изобретению адаптируется не файловая система, а только данные, которые должны быть прочитаны или записаны.

На фиг. 2 показана конфигурация системы в соответствии с настоящим изобретением. Пассивный носитель данных расположен с левой стороны, а активный терминал, который не показан, расположен с правой стороны. Посередине находится моделирующее устройство М, которое подключено между носителем информации и терминалом для обмена информацией. Для этого соединения с помощью разъемов могут быть предусмотрены как с левой, так и с правой стороны, или в каждом случае предусмотрены кабели.

На фиг. 2 также показана в нижней части память данных, которая хранит правила доступа в моделирующем устройстве М. Память данных может быть расположена вне устройства, причем память данных в предпочтительном варианте встроена в моделирующее устройство. Особенно выгодно по сравнению с текущим уровнем техники то, что в соответствии с предлагаемым изобретением нет необходимости в обеспечении компонентов 1, 2 эмуляции, а вместо этого достаточно обеспечить блок модуляции. Он расположен в центре моделирующего устройства М.

На фиг. 3 показана предлагаемая конфигурация системы в другом виде, при этом соединение с помощью разъемов предусмотрено для пассивной памяти данных с левой стороны, а кабельное соединение предусмотрено с правой стороны. Возможна другая реализация, и кабельное соединение может располагаться с левой стороны. Используемые интерфейсы могут быть разработаны в соответствии со стандартными спецификациями. В предпочтительном варианте интерфейсы реализованы в стандарте USB.

На фиг. 4 показана блок-схема способа динамического установления совместимости файловых систем и доступа к данным независимо от файловой системы в режиме реального времени, для предоставления доступа 100 к файловой системе пассивной памяти для активного терминала и моделирующего устройства M, которое подключено между ними для передачи информации между ними; прием 101 запроса доступа от активного терминала с помощью моделирующего устройства, при этом в запросе доступа указываются данные для доступа и операции доступа к пассивной памяти данных; распознавание 102 файловой системы пассивной памяти данных моделирующим устройством; выбор 103 сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с предварительно определенной 102 файловой системой пассивной памяти данных; применение 104 моделирующим устройством выбранных правил для доступа к данным, указанным в запросе доступа; выполнение 105 операций доступа в соответствии с запросом.

Специалисту в данной области известно, что этапы могут иметь дополнительные подэтапы и, в частности, каждый этап способа может выполняться итеративно и/или в другом порядке.

Все нижеследующие процессы описываются с точки зрения конечного устройства, которое контролируется пользователем как основным действующим лицом.

На фиг. 5 показано, какие действия моделирующее устройство 202 может выполнять в соответствии с изобретением, когда терминальное устройство 201 формирует запросы доступа для чтения. В данном случае терминал поддерживает FAT32 в качестве файловой системы, которая в дальнейшем будет называться файловой системой 1.

Согласно одному аспекту настоящего изобретения запросы на доступ выполняются посредством интерфейса связи между терминалом и моделирующим устройством: это интерфейс USB 204.

Согласно одному аспекту настоящего изобретения в моделирующем устройстве реализованы два способа. Способ хранения дополнительных данных 206 и способ моделирования данных 207. Если данные считываются из пассивной памяти 203, этот процесс выполняется с помощью интерфейса связи 205. Однако не обязательно, чтобы пассивная память также была подключена через интерфейс USB, к которому подключено моделирующее устройство, 205 также может быть заменен шиной данных, так что пассивная память реализуется непосредственно как компонент моделирующего устройства.

Согласно одному аспекту настоящего изобретения последовательность событий зависит от того, какие запросы доступа были инициированы терминалом, в соответствии с которыми к терминалу подключено моделирующее устройство, к которому уже подключена пассивная память. В зависимости от версии конечного устройства этот порядок может отличаться от следующих рисунков.

Согласно одному аспекту настоящего изобретения терминал взаимодействует с моделирующим устройством двумя способами: с одной стороны, компонент операционной системы терминала, отвечающий за USB-устройства, должен распознавать моделирующее устройство, подключенное через USB, как внешнее USB-устройство типа «память». С другой стороны, другой компонент операционной системы должен определить, как следует обращаться к подключенному устройству хранения на логическом уровне, в частности, какую файловую систему можно определить в памяти.

Для первой связи с использованием протокола USB согласно одному аспекту настоящего изобретения по меньшей мере необходимо, чтобы моделирующее устройство имело важные параметры, например сообщало о количестве адресуемых блоков или размере блока в качестве необходимых действий в рамках объема поддержки протокола USB. Для этой цели может быть инициирован так называемый запрос идентификации 301, который, однако, может не быть обязательным в зависимости от реализации операционной системы. Конкретные действия в соответствии с USB-протоколом не рассматриваются, так как этот протокол может по существу выполняться специалистом в данной области техники без каких-либо проблем. Следует только отметить, что этот первый запрос идентификации уже приводит к тому, что моделирующее устройство может соответствующим образом выравниваться, и данные, необходимые для обработки таких запросов идентификации (количество адресуемых блоков), должны оставаться доступными.

Согласно одному аспекту настоящего изобретения первым необходимым действием со стороны моделирующего устройства для этого является считывание параметров файловой системы из пассивной памяти 314, что подробно показано на фиг. 7. Файловая система в пассивной памяти, в дальнейшем именуемая файловой системой 2, распознается моделирующим устройством во время выполнения 314, при этом считываемые данные не ограничиваются удовлетворением первого запроса идентификации, а вместо этого сначала преобразуются в соответствии с изобретением таким образом, что они используются в качестве данных загрузочного сектора файловой системы 1, а затем также хранятся в моделирующем устройстве 206. Таким образом, существенные параметры для запроса идентификации также достаточно определены (количество адресуемых блоков, размер блока), моделирующее устройство выполняет запрос идентификации 310 в соответствии с протоколом USB.

На следующем этапе операционная система терминала должна определить, как следует обращаться к подключенному устройству хранения на логическом уровне, в частности, какую файловую систему можно определить на устройстве хранения.

Для этого терминал может сгенерировать хотя бы один запрос на доступ, направленный на чтение из памяти хотя бы блока 0, так как он содержит информацию для определения файловой системы.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые показаны на фиг. 5 в качестве примера.

Первый запрос доступа 311 терминала: чтение сектора, начиная с позиции 0.

На первом этапе 312, согласно одному аспекту настоящего изобретения, проверяется, хранятся ли запрошенные данные уже в моделирующем устройстве. Не исключено, что запрос идентификации терминала 301 еще не сделан, а заменен запросом доступа 311. Хотя параметры пассивной памяти еще не были бы известны конечному устройству при выполнении 311, это не мешает конечному устройству генерировать запрос 311 на доступ, потому что позиция 0 всегда может быть прочитана, когда запоминающее устройство является адресуемым. В качестве примера предполагается, что запрос идентификации в соответствии с 301 не был сделан заранее. Таким образом, данные для первого сектора в позиции 0 еще не хранятся в соответствии с 206.

На втором этапе 313 согласно одному аспекту настоящего изобретения проверяется, какие данные с точки зрения файловой системы 1 задействованы, когда сектор считывается из позиции 0. Следовательно, действие 313 обычно должно быть описано таким образом, чтобы в процессе считывания проверялось, являются ли данные дополнительными или пользовательскими, и, если это пользовательские данные, из какого файла с точки зрения файловой системы 1 они получаются.

Для этого используются правила доступа. Как показано выше, правила доступа определяют, как метаданные из одной файловой системы должны быть преобразованы в метаданные другой файловой системы. Эти правила также определяют, какие области файловой системы, предусмотренные для структур файловой системы, соответствуют аналогичным областям другой файловой системы, и, таким образом, позволяют определить, включает ли запрос доступа метаданные в качестве дополнительных данных.

Согласно существующему правилу доступа 400, он включает в себя специальные дополнительные данные, в частности, так называемый загрузочный сектор, если сектор считывается с позиции 0.

Согласно правилам доступа, загрузочный сектор для файловой системы 1 суммируется 314 таким образом, что все параметры файловой системы (размер файловой системы, размер логических блоков в файловой системе (так называемый кластер), начальная позиция для первого каталога и т. д.) уже достаточно определены. Это предполагает, что эти данные должны быть доступны для терминального устройства для обработки самого первого запроса доступа 311. В основном все параметры файловой системы 1 получаются или вычисляются из соответствующих параметров файловой системы 2 пассивной памяти. Правило 401 доступа содержит этот способ, в частности, оно определяет, как должны вычисляться параметры файловой системы 1 в зависимости от файловой системы 2 для соответствующей комбинации файловая система 1/файловая система 2 и какое конкретное правило доступа используется. На рисунке показано, как применяется это правило доступа к загрузочному сектору 401. Такое приложение не вызывает проблем, поскольку известен размер файловой системы и размер логических блоков может быть взят из файловой системы 2 (если это невозможно, к настройке размера блока применяются дополнительные правила доступа).

Таким образом, моделирующее устройство смоделировало и сохранило данные для сектора 0 так, что терминал может использовать их для инициирования дальнейших процессов доступа.

Согласно одному аспекту настоящего изобретения конкретный присутствующий запрос 311 выполняется, когда предоставлены смоделированные данные загрузочного сектора.

Запрошенные данные 315 предоставляются через интерфейс связи (в данном случае USB). Таким образом, запрос 311 доступа завершается.

Тот факт, что первый запрос на доступ приводит с считыванию загрузочного сектора FAT32 в качестве блока 1, определяет дальнейшие действия терминала.

В принципе, согласно одному аспекту настоящего изобретения, можно предположить, что если первый блок распознан как допустимый загрузочный сектор с допустимым содержимым (параметрами файловой системы), операционная система терминального устройства продолжает запросы на доступ, чтобы определить файловую систему на памяти, предоставленной с помощью интерфейса USB. Такой процесс также можно назвать «опросом», целью которого является распознавание памяти как определенной, логически организованной файловой системы и раскрытие собственного логического интерфейса (так называемой «точки монтирования») в пределах операционной системы.

В качестве альтернативы, после того, как первый запрос на доступ был удовлетворен и содержимое первого блока оказалось похожим на загрузочный сектор, операционная система терминала также может отправить сообщение (так называемое «широковещательное сообщение») своим компонентам или приложениям, чтобы сообщить им о наличии нового накопителя. В результате ответственный компонент и драйвер файловой системы могут инициировать другой процесс, который часто называют «монтированием».

Оба варианта приводят к одному и тому же результату, а именно к тому, что новая доступная память распознается как FAT32, и операционная система конечного устройства или по крайней мере один из компонентов или приложений может обращаться к ней как к логической файловой системе.

Согласно одному аспекту настоящего изобретения, монтирование этой файловой системы только для операций чтения или также для операций записи, зависит от следующих факторов: операционной системы терминала, объема поддержки соответствующей файловой системы и задачи, которую терминал имеет для внешних подключаемых носителей. Следующие пояснения относятся к режиму чтения-записи. Случай, когда файловая система монтируется в память только в режиме чтения, не нужно рассматривать отдельно, потому что способ, предложенный согласно изобретению, тем более может быть использован для режима чтения, если он приводит к ожидаемому успеху в режим чтения-записи.

Таким образом, дальнейшие запросы доступа от конечного устройства зависят от того, какие задачи планируются в случае события «Доступна новая память». Возможно, терминал выполняет определенное приложение, которое пытается прочитать содержимое обнаруженной памяти, а это означает, что сначала осуществляется доступ к содержимому корневого каталога. Если ни одно приложение не запускается автоматически, пользователь, который подключает моделирующее устройство к устройству, предпринимает дальнейшие действия по вызову содержимого памяти и начинает с действия «вызов содержимого корневого каталога», чтобы затем определить дальнейшие действия. Чтобы получить содержимое корневого каталога, пользователь также может вводить терминальные команды, такие как «dir» или «ls». В лучшем случае можно ожидать, что терминальное устройство попытается прочитать содержимое корневого каталога при следующем запросе на доступ. Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 5 в качестве примера.

В соответствии с одним аспектом настоящего изобретения предполагается, что область корневого каталога начинается в секторе X, занимает 100 секторов, и это было определено правилом, примененным к шагу 314. Соответственно, во втором запросе доступа 321 на чтение будет: 100 прочитанных секторов, начиная с сектора X.

На первом этапе 312, согласно одному аспекту настоящего изобретения, проверяется, имеются ли уже запрошенные данные. В данном случае данные еще не доступны, потому что до сих пор терминал читал только сектор 0.

На втором этапе 313 выполняется проверка того, какие данные с точки зрения файловой системы 1 задействованы, если считываются 100 секторов, начиная с позиции X. Для этого используются правила доступа.

Согласно правилу доступа 400, это то, что называется корневым каталогом, если доступ к сектору X осуществляется для смоделированной файловой системы, в частности, по всей запрошенной длине (100 секторов).

Чтобы моделирующее устройство 202 могло хранить 206 данные для корневого каталога терминала, на следующем этапе 324 (см. фиг. 9) применяются дополнительные правила доступа таким образом, что метаданные генерируются в реальном времени для файлов в корневом каталоге этой файловой системы 1 в формате данных корневого каталога.

Таким образом, эти метаданные подходят для перезаписи файлов в файловой системе 2 таким образом, чтобы каждый компонент терминала, поддерживающий файловую систему 1 (в данном случае FAT32), интерпретировал их так, как если бы эти перезаписанные файлы хранились в моделирующем устройстве. Согласно изобретению эти метаданные сохраняются 206 для текущих и будущих запросов доступа от терминала.

Для применения правила доступа 324 может потребоваться считывание дополнительных метаданных из файловой системы 2, чтобы получить полную информацию о том, какие файлы структуры корневого каталога адресуются запрошенными 100 секторами и какой у них размер, а также методом 404 (см. фиг. 10) определить, в каких областях файловой системы 2 размещены упомянутые выше файлы.

В качестве промежуточного результата: при моделировании корневого каталога в формате, соответствующем файловой системе 1, может быть считано больше данных, чем запрошено, что неопасно, поскольку такие данные, которые изначально считываются избыточно, остаются доступными для дальнейших применений правил доступа.

Фактически присутствующий запрос доступа на чтение от терминала с этапа 321 выполняется путем предоставления 100 секторов, смоделированных с использованием правила доступа.

Запрошенные данные предоставляются 325 через интерфейс связи (в данном случае USB). Таким образом, запрос 321 доступа завершается.

После того, как содержимое корневого каталога стало доступным для терминала, его приложение может предложить пользователю выполнить дальнейшие действия, такие как открытие файлов или выбор содержимого файлов для определенных процессов (печать, воспроизведение видео/аудиофайлов и т. д.). На этом этапе доступ к содержимому файла должен осуществляться с внешнего носителя, а компонент операционной системы конечного устройства (или его драйвер файловой системы) должен генерировать запросы к смонтированному логическому тому, чтобы получить требуемое содержимое из файла.

В соответствии с одним аспектом настоящего изобретения предполагается, что осуществляется доступ к содержимому файла ABC.ZYZ, и предполагается, что размер файла составляет 10 блоков.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 5 в качестве примера.

Инициируется запрос доступа 351, который состоит в чтении 10 блоков из позиции Pos1, которые соответствуют первому кластеру файла ABC.ZYZ SC1 в файловой системе 1.

Эти данные еще не запрошены, поэтому пока недоступны 206.

В первую очередь необходимо определить, включает ли этот запрос пользовательские данные или дополнительные данные 313.

То, что этот запрос касается пользовательских данных, уже следует из того, что при моделировании структур FAT 402 для выполнения запроса 321 учитывался размер файла ABC.XYZ и для его содержимого в таблице размещения файлов имеется непрерывная смоделированная цепочка.

То есть способ 402 моделирования подходит для размещения существующих файлов файловой системы 2 в моделируемой файловой системе 1 таким образом, чтобы они не были фрагментированы, независимо от того, возникают ли эти файлы в файловой системе 2 из нескольких разделенных фрагментов содержимого.

Таким образом, именно данные пользователя были считаны с помощью данных запроса доступа 351.

На следующем этапе 354 согласно одному аспекту настоящего изобретения необходимо проверить, к каким пользовательским данным фактически осуществляется доступ. Не исключено, что конечное устройство может запросить доступ к нескольким файлам, а не только к ABC.XYZ. Это определяется методом 404 (см. фиг. 10), который определяет, какие файлы в файловой системе 2 фактически задействованы при доступе к определенным блокам с точки зрения файловой системы 1. Таким образом, этот способ 404 подходит для определения дальнейших действий, которые должны быть предприняты в конкретных контекстах для содержимого различных файлов при доступе. Такой контекст устанавливает, что при чтении определенных блоков из файловой системы 1, которые соответствуют пользовательским данным, соответствующие блоки для чтения всегда определяются в файловой системе 2. В результате пользовательские данные считываются соответствующим запросом доступа 355, направленным в пассивную память. Процесс 355 повторяется до тех пор, пока все данные, запрошенные посредством запроса 351, не будут считаны, если запрошенное содержимое не размещено в файловой системе 2 в виде непрерывной цепочки.

Запрошенные данные предоставляются 356 через интерфейс связи (в данном случае USB). Таким образом, запрос 351 доступа завершается.

После предоставления содержимого корневого каталога для конечного устройства его приложение может предложить пользователю выполнить дальнейшие действия, например сохранить на смонтированном логическом томе данные, сгенерированные на конечном устройстве. Если, например, сканируются новые документы, подключенный логический том может быть выбран в качестве целевого хранилища.

Предполагается, что конечное устройство пытается создать эти пользовательские данные в виде файла с именем XXX.ABC в корневом каталоге файловой системы 1 после того, как на конечном устройстве были сгенерированы пользовательские данные объемом 19 блоков, а содержимое вновь созданных файлов XXX.ABC, начиная с позиции Pos2.

Кроме того, в соответствии с одним аспектом настоящего изобретения предполагается, что терминал не создает запрос на доступ, целью которого является описание имени и размера файла в корневом каталоге файловой системы 1 для нового файла, если еще не определены пользовательские данные, и такой запрос делается только в том случае, если описаны все пользовательские данные для этих вновь созданных данных.

Причиной такого предположения является возможность реализации на терминале метода оптимизации запросов доступа на чтение и запись.

Если предполагается, что терминал пытается записать пользовательские данные до того, как метаданные для соответствующего файла будут описаны другим запросом на доступ, возникает неопределенность в смысле способа 404, заключающаяся в том, что новые блоки, подлежащие записи, еще не могут быть назначены файлу. Однако это состояние ожидания завершается не позднее формирования запроса доступа терминалом, предназначенного для обновления метаданных вновь созданных файлов в памяти.

Чтобы выполнить этот запрос доступа, согласно изобретению могут быть выполнены следующие действия, которые также показаны на фиг. 6 в качестве примера.

Инициируется запрос доступа 331, который состоит из записи 19 блоков, начиная с позиции Pos2, которые соответствуют SCN + 1.

Во-первых, необходимо проверить 332, доступны ли эти записываемые данные 206. Поскольку данные в позиции Pos2 не были ни прочитаны, ни записаны, они также пока недоступны.

На следующем этапе необходимо определить, касается ли этот запрос пользовательских данных или дополнительных данных 333. Следовательно, действие 333 обычно должно быть описано таким образом, чтобы в процессе записи проверялось, касается ли запрос дополнительных или пользовательских данных, и, если он касается пользовательских данных, из какого файла с точки зрения файловой системы 1 они получаются.

Это еще не может быть четко определено, потому что эти блоки не хранятся ни как метаданные 206, ни как пользовательские данные в смысле 351. На следующем этапе 334 в соответствии со способом 405 (см. фиг. 9) первоначально предполагается, что задействованы пользовательские данные, и блоки, подлежащие записи, обрабатываются соответствующим образом. При этом начинается так называемое плавающее состояние, поскольку блоки еще не могут быть назначены файлу. Моделирующее устройство будет хранить данные, подлежащие записи, в качестве пользовательских данных до дальнейшего уведомления 206, но о завершении процесса записи сообщается 335 через интерфейс связи 204. Таким образом, запрос 331 доступа завершается.

Предполагается, что при обновлении содержимого корневого каталога для файловой системы 1 инициируется дополнительный запрос доступа 336, который предназначен для записи блока, начинающегося с позиции X + 99. Конкретно, это последний сектор корневого каталога.

Во-первых, необходимо проверить 332, доступны ли эти записываемые данные 206. Это имеет место в данном случае, потому что блок в позиции X + 99 уже был смоделирован 324 и зарезервирован 206 на шаге 321 в качестве корневого каталога для файловой системы 1.

Если блок данных уже доступен и если это метаданные, применение правил доступа может использоваться для определения 339 того, какие конкретные изменения задействованы. Соответствующий метод показан 406 на фиг. 9, который состоит в квалификации изменений в структуре корневого каталога и определении их как абстрактного описания, из которого можно сделать вывод, какие соответствующие изменения должны быть сделаны в файловой системе 2. Это новая запись для файла XXX.ABC, которого раньше не было в корневом каталоге. Это изменение можно описать так, как если бы конечному устройству требовалось создать новый файл с именем XXX.ABC размером 19 секторов, начиная с Pos2. Такое абстрактное описание действия также может быть похоже на описание в стандарте Posix.

На следующем этапе согласно одному аспекту настоящего изобретения конкретное изменение должно быть применено к файловой системе 2 путем преобразования абстрактного описания в соответствующий запрос к пассивной памяти. В результате на файловой системе 2 создается запись для данных XXX.ABC, которая, однако, еще не указывает начальную позицию этого файла на файловой системе 2, хотя начальная позиция уже указана на файловой системе 1. Из этого следует, что в состоянии ожидания все еще присутствует неопределенность по смыслу 404 в отношении присваиваемости пользовательских данных конкретных файлов файловой системе 1. Однако эта неопределенность разрешается запросом доступа, направленным на обновление области с помощью FAT - об этом будет сказано позже.

Наконец, выполнение процесса записи сообщается 340 через интерфейс связи 204. Таким образом, запрос 336 доступа завершается.

После того, как конечное устройство или его приложение выполнили все необходимые пользовательские задачи, такие как сканирование документов и размещение этих данных на внешнем носителе или перенос другого пользовательского контента, внешний носитель может быть отключен от конечного устройства.

Некоторые конечные устройства явно запрашивают у пользователя отключение внешнего устройства, чтобы иметь возможность гарантировать безопасность данных для этих процессов. Тогда только пользователь будет нести ответственность за возможную потерю данных, если он удалит внешний носитель до того, как конечное устройство запросит выполнение процесса размонтирования, завершения которого ожидалось, и только потом отключение внешнего носителя от конечного устройства имело бы место. Такой безопасный метод отключения внешнего хранилища нелегко внедрить в качестве стандарта, поскольку пользователи проявляют нетерпение, когда дело доходит до отключения внешнего носителя от конечного устройства. Они не ожидают выполнения процесса размонтирования, что требует времени, а скорее хотят просто вытащить внешний носитель данных, как только действия с устройством будут завершены и устройство находится в состоянии ожидания, что можно легко понять по конечному устройству. Чтобы оправдать эти ожидания пользователя, операционная система терминального устройства обычно поддерживает технологию синхронизации для драйвера файловой системы, чтобы он мог работать с внешним носителем данных.

Эта технология всегда поддерживает внешний носитель данных в актуальном состоянии, очищая содержимое данных файловой системы, которые хранятся в основной памяти конечного устройства - обычно это инициируется самой операционной системой. Это означает следующее. После того, как конечное устройство или его приложение выполнили свои задачи, в которых могут быть задействованы внешние носители информации, и перешло в состояние ожидания (и ожидает дальнейших действий или указаний от пользователя), драйвер файловой системы или аналогичный компонент может очищать блоки, которые еще не были записаны на внешний носитель - это обеспечивает безопасность данных, если внешний носитель внезапно отключится. Такой метод синхронизации приводит к дополнительным запросам доступа к внешней памяти.

Чтобы облегчить такую попытку чтения и записи с помощью FAT, в соответствии с изобретением могут быть выполнены следующие действия, такие как чтение FAT из файловой системы 1.

Следует отметить, что запрос доступа, направленный на чтение FAT, возникает не позднее, чем при первой попытке чтения файла после монтирования или после первой попытки доступа к подкаталогу после монтирования.

Поскольку FAT (FAT Allocation Table) - это таблица, определяющая размещение файлов в файловой системе 1, такие структуры никоим образом не существуют в файловой системе 2 и возникают только благодаря применению правил доступа к параллельной структуре файловой системы 2. В результате FAT хранится на моделирующем устройстве 202. Кроме того, такие структуры перезаписывают метаданные не для отдельных файлов, а для всех файлов, расположенных в файловой системе 1, и представляют собой тип дополнительных данных, не являющихся данными пользователя.

Однако FAT 324 не моделируется кумулятивно для всех файлов, присутствующих в файловой системе 2, а только для файлов, запрошенных 314 во время запроса доступа путем прямого указания пути к файлу), если для этого файла не моделируются метаданные, описывающие его размещение. Результатом такого моделирования является применимость способа 404, позволяющего назначать файлы пользовательским данным.

Соответствующий метод показан на фиг. 9, который состоит в квалификации изменений 405 в FAT и определении их как абстрактного описания, из которого можно сделать вывод, какие соответствующие изменения должны быть сделаны в файловой системе 2.

В первую очередь следует отметить, что по правилу доступа 400 можно легко определить, находятся ли данные по запросу доступа в зоне FAT.

Предполагается, что обновление FAT направлено как минимум на сопоставление цепочки размещения для файла XXX.ABC. Поскольку операции записи на конечном устройстве выполняются оптимизированным образом, нельзя ожидать, что обновление FAT будет сосредоточено только на определенной цепочке размещения для определенного файла. Скорее ожидается, что обновления FAT для нескольких файлов будут кумулятивными. Какие именно изменения ожидаются, можно определить 405 путем сравнения состояния FAT.

Это новая запись для файла XXX.ABC, для которого еще не существовало цепочки распределения. Таким образом, это изменение можно описать так, как если бы конечному устройству требовалось создать непрерывную цепочку размещения для нового файла с именем XXX.ABC, который включает 19 секторов, начиная с (SCN + 1).

На следующем этапе целевое изменение должно быть применено 405 к файловой системе 2, поскольку это абстрактное описание должно адаптировать структуры файловой системы 2, которые управляют размещением пользовательских данных в файловой системе. Это также означает, что больше нет никакой неопределенности в отношении присваиваемости пользовательских данных в смысле способа 404, и эти пользовательские данные, которые должны быть записаны в соответствии с запросом 331, которые все еще хранились в моделирующем устройстве, теперь записываются в соответствующее положение пассивной памяти.

В результате не только создается запись для данных XXX.ABC в файловой системе 2, как это было сделано при обработке запроса 336, но также указывается размещение файла XXX.ABC как в файловой системе 1, так и в файловой системе 2.

Наконец, о завершении процесса записи сообщается через интерфейс связи 204. Таким образом, запрос на доступ к FAT завершается.

Наконец, следует отметить, что действия терминального устройства, выполняемые в другом месте, могут происходить в другом порядке, и все изменения в файловой системе 1 всегда приводят непосредственно к запросу доступа. В результате вышеупомянутые действия моделирующего устройства не изменяются, поскольку всегда последовательное обновление файловой системы 1 приводит к состоянию ожидания в смысле исключения метода 404.

Список ссылочных символов

1 эмулятор 1

2 эмулятор 2

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

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

(201) Терминал

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

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

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

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

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

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

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

(314) Моделирование структуры загрузочного сектора и параметров файловой системы

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

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

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

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

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

(314) Моделирование структуры загрузочного сектора для (файловой системы 1) на основе (файловой системы 2)

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

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

(BytesPerSector) Размер сектора в байтах: параметр, который имеет исходное (IN) значение (Value1_2) и, возможно, получает новое (OUT) значение и новый формат (Value1_1) посредством преобразования согласно правилу доступа (BS1)

Дополнительные параметры или характеристики файловой системы:

(SectorPerCluster) Количество секторов в кластере

(ClusterPerVolume) Количество кластеров в томе

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

(Etc) - и т. д.

(FSPropertyN) Свойство N файловой системы: другой параметр в (Файловая система 2), который имеет исходное (IN) значение (ValueN_2) и, возможно, новое (OUT) значение и новый формат (ValueN_1)

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

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

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

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

(BSMemberN)

(AV) Доступно: уведомление о доступности для секторов, зарезервированных в (206). (EMPTY) означает «не занято» - (AV) означает «занято»

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

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

(StateNow) Текущее состояние: текущее состояние FAT в файловой системе 1

(StateNow-1) Предыдущее состояние FAT в файловой системе 1, возможно неизвестное, еще не инициализированное состояние.

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

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

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

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

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

(Sc1… ScN) Стартовый кластер 1… Стартовый кластер N: первый кластер файла с точки зрения FAT. Это значение моделируется для файловой системы 1 согласно (402).

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

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

(402) Этот метод моделирует структуры FAT в файловой системе 1 для файлов, запрошенных файловой системой 2. В результате размещение файлов в файловой системе 1 изначально не фрагментировано.

(402a) Запуск итеративного процесса «Чтение содержимое корневого каталога (файловая система 2)»

(402b) Оценка определения начальных кластеров для итеративно обрабатываемого содержимого.

(402c) Моделирование (файловой системы 1) в области с итеративно обрабатываемым содержимым

(402d) Завершение итеративного процесса «Чтение содержимое корневого каталога (файловая система 2)»

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

(StateNow) Текущее состояние: текущее состояние FAT в файловой системе 1

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

(ScN) Стартовый кластер N: первый кластер файла с точки зрения FAT N

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

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

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

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

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

(QualifiedDifferenceFAT) Оценка, т. е. результат квалификации этих изменений: разница между (StateNow) и (StateNow-1) может быть описана как новая цепочка для «Create_a_new_file»; новая цепочка должна начинаться с кластера (K + M + 1) и иметь длину 19 секторов (L).

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

(StateNow) Текущее состояние: текущее состояние структуры каталогов в файловой системе 1

(StateNow-1) Фактическое состояние 1: исходное состояние структуры каталогов в файловой системе 1

(File1), (File2), (File3), (FileN) Файл 1, Файл 2… Файл N: имена файловых объектов в соответствии с записями в структуре каталогов, от 1 до N

(Ext1), (Ext2), (Ext3), (ExtN) Расширение 1… Расширение N: расширения файловых объектов, в соответствии с записями в структуре каталогов, от 1 до N

(Size1), (Size2), (Size3), (SizeN) Размер 1… Размер N: размеры файловых объектов, согласно записям в структуре каталогов, от 1 до N

(Sc1), (Sc2), (Sc3), (ScN), (Sc N+1) Стартовые кластеры файловых объектов, соответствующих записям в структуре каталогов, от 1 до N+1

(QualifiedDifferenceDir) Результат квалификации этих изменений: разница между (StateNow) и (StateNow-1) может быть описана как операция создания нового файла; новый файл имеет имя XXX с расширением ABC, начинается с (SC N + 1) и имеет длину 19 * 512 байт.

(404) Определение принадлежности пользовательских данных к файлам

(ScN) Стартовый кластер N: первый кластер файла с точки зрения FAT N

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

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

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

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

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

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

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

(OFFSET) Смещение: в дополнение к части сегмента второй компонент (целочисленное значение) в адресе памяти

(Size1) Размер 1: размер файлового объекта.

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

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

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

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

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

Похожие патенты RU2808634C1

название год авторы номер документа
УСТРОЙСТВО ДОСТУПА К ПОЛУПРОВОДНИКОВОЙ КАРТЕ ПАМЯТИ, КОМПЬЮТЕРНО-СЧИТЫВАЕМЫЙ НОСИТЕЛЬ ЗАПИСИ, СПОСОБ ИНИЦИАЛИЗАЦИИ И ПОЛУПРОВОДНИКОВАЯ КАРТА ПАМЯТИ 2000
  • Маеда Такудзи
  • Хирота Теруто
RU2257609C2
ЗАЩИЩЁННОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО 2018
  • Лукакс Сандор
  • Турику Дан-Кристьян
RU2768196C2
СПОСОБ ЗАПОМИНАНИЯ С ДВОЙНЫМ ПРОТОКОЛИРОВАНИЕМ И НОСИТЕЛЬ ДАННЫХ ДЛЯ НЕГО 2003
  • Ким Дзеонг-Ки
  • Бае Донг-Сук
  • Ким Йанг-Ги
  • Парк Сеунг-Мин
  • Ким Чае-Киу
RU2319227C2
ЗАПУСК ПРИЛОЖЕНИЙ СО СЪЕМНОГО НОСИТЕЛЯ 2007
  • Кхалиди Юсеф А.
  • Таллури Мадхусудхан
RU2446452C2
АРЕНДА КАТАЛОГА 2011
  • Крус Дэвид Мэттью
  • Джордж Мэтью
  • Хавевала Сарош Сирус
  • Оллред Кристиан Грегори
  • Кристиансен Нил Роберт
RU2596986C2
ФАЙЛОВАЯ СЛУЖБА, ИСПОЛЬЗУЮЩАЯ ИНТЕРФЕЙС СОВМЕСТНОГО ФАЙЛОВОГО ДОСТУПА И ПЕРЕДАЧИ СОСТОЯНИЯ ПРЕДСТАВЛЕНИЯ 2015
  • Колдер Брэдли Джин
  • Эдвардс Эндрю Джеймс
  • Аройя Исхаи Бен
  • Гебель Дэвид Аллен
  • У Цзешен
  • Харидас Джайден
  • Гангули Шувабрата
  • Хэндел Мэттью Дуглас
  • Дэмир Озан
  • Ганем Жан
RU2686594C2
Накопитель магнитный с разделёнными областями 2020
  • Носков Александр Георгиевич
RU2757659C1
СПОСОБ ЗАЩИТЫ ДОСТУПНОСТИ И КОНФИДЕНЦИАЛЬНОСТИ ХРАНИМЫХ ДАННЫХ И СИСТЕМА НАСТРАИВАЕМОЙ ЗАЩИТЫ ХРАНИМЫХ ДАННЫХ 2014
  • Косолапов Юрий Владимирович
RU2584755C2
РАСШИРЯЕМАЯ ФАЙЛОВАЯ СИСТЕМА 2005
  • Збиковски Марк Дж.
  • Тхинд Равиндер С.
  • Пудипедди Рависанкар В.
  • Хавевала Сарош С.
  • Готдже Висхал В.
RU2420794C2
СПОСОБ ЗАПИСИ ДАННЫХ НА НАКОПИТЕЛЬ ЦИФРОВОЙ ИНФОРМАЦИИ НА БАЗЕ FLASH-ПАМЯТИ ТИПА NAND 2016
  • Образцов Сергей Александрович
  • Коршунова Ксения Петровна
  • Воропаев Алексей Владимирович
  • Чукляев Евгений Игоревич
  • Чукляев Илья Игоревич
RU2636107C1

Иллюстрации к изобретению RU 2 808 634 C1

Реферат патента 2023 года ДИНАМИЧЕСКОЕ ОПРЕДЕЛЕНИЕ СОВМЕСТИМОСТИ ФАЙЛОВЫХ СИСТЕМ В РЕАЛЬНОМ ВРЕМЕНИ

Изобретение относится к способу динамического определения совместимости файловых систем, системе доступа к данным в реальном времени независимо от файловых систем и машиночитаемому носителю информации. Техническим результатом является обеспечение возможности доступа к пассивной памяти данных вне зависимости от файловой системы, под управлением которой находится пассивная память данных. Способ динамического определения совместимости файловых систем и доступа к данным независимо от файловой системы в реальном времени включает: предоставление доступа к файловой системе пассивной памяти данных для активного терминала и моделирующего устройства; прием запроса доступа от активного терминала моделирующим устройством; распознавание файловой системы пассивной памяти данных моделирующим устройством; выбор сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной файловой системой пассивной памяти данных; применение выбранных правил доступа к данным доступа моделирующим устройством, которые указаны в запросе доступа; и выполнение операций доступа в соответствии с запросом доступа. 3 н. и 11 з.п. ф-лы, 12 ил.

Формула изобретения RU 2 808 634 C1

1. Способ динамического определения совместимости файловых систем и доступа к данным независимо от файловой системы в реальном времени, включающий:

- предоставление доступа (100) к файловой системе пассивной памяти данных для активного терминала и моделирующего устройства (М), которое коммуникативно соединено между пассивной памятью данных и активным терминалом;

- прием (101) запроса доступа от активного терминала моделирующим устройством (М), при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных;

- распознавание (102) файловой системы пассивной памяти данных моделирующим устройством (М);

- выбор (103) сохраненных правил доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной (102) файловой системой пассивной памяти данных, при этом правила доступа выбираются таким образом, что предоставляется таблица, в первом столбце которой описывается файловая система активного терминала, во втором столбце которой описывается файловая система пассивной памяти данных и в третьем столбце которой содержится указатель, который указывает на соответствующие правила доступа;

- применение (104) выбранных правил доступа к данным доступа моделирующим устройством (М), которые указаны в запросе доступа; и

- выполнение (105) операций доступа в соответствии с запросом доступа.

2. Способ по п. 1, характеризующийся тем, что предоставление доступа (100) включает распознавание загрузочных секторов, процесс монтирования, интеграцию пассивной памяти данных в моделирующее устройство (М), интеграцию носителя пассивных данных в активный терминал, коммуникативное взаимодействие, установление по меньшей мере одного соединения через разъем, активацию доступа, настройку прав доступа и/или обмен передачу данных.

3. Способ по п. 1 или 2, характеризующийся тем, что активный терминал имеет операционную систему, которая формирует запрос доступа.

4. Способ по п. 3, характеризующийся тем, что применение (104) и выполнение (105) осуществляют итеративно для каждого потока данных, при этом операционная система определяет поток данных.

5. Способ по любому из предшествующих пунктов, характеризующийся тем, что запрос доступа содержит по меньшей мере один запрос на чтение и/или запись.

6. Способ по любому из предшествующих пунктов, характеризующийся тем, что в запросе доступа указываются полезная нагрузка и/или дополнительные данные.

7. Способ по любому из предшествующих пунктов, характеризующийся тем, что данные доступа описывают имена файлов, абсолютные адреса памяти, относительные адреса памяти, типы и/или свойства файлов.

8. Способ по любому из предшествующих пунктов, характеризующийся тем, что операции доступа описывают операции чтения и/или записи.

9. Способ по любому из предшествующих пунктов, характеризующийся тем, что правила доступа описывают операции модуляции, которые определяют, как следует моделировать дополнительные данные данных доступа, чтобы данные доступа считывались и/или записывались в соответствии с файловой системой.

10. Способ по любому из предшествующих пунктов, характеризующийся тем, что правила доступа описывают то, как записывать данные, соответствующие первой файловой системе, во вторую файловую систему и/или считывать из второй файловой системы.

11. Способ по любому из предшествующих пунктов, характеризующийся тем, что распознавание (102) файловой системы включает распознавание загрузочных секторов.

12. Способ по любому из предшествующих пунктов, характеризующийся тем, что выполнение (105) операций записи в соответствии с запросом доступа, когда размер файла ограничивается файловой системой, разделяет соответствующий файл по меньшей мере на два отдельных файла.

13. Система для динамического определения совместимости файловых систем и доступа к данным в реальном времени независимо от файловой системы, включающая:

- по меньшей мере один интерфейсный модуль, выполненный с возможностью предоставлять доступ (100) к файловой системе пассивной памяти данных для активного терминала, и моделирующее устройство (М), которое коммуникативно соединено между пассивной памятью данных и активным терминалом;

- моделирующее устройство (М) выполнено с возможностью принимать (101) запрос доступа от активного терминала, при этом в запросе доступа указываются данные доступа и операции доступа к пассивной памяти данных;

- моделирующее устройство (М) предназначено для распознавания (102) файловой системы пассивного носителя данных;

- модуль базы данных, выполненный с возможностью выбирать (103) сохраненные правила доступа, которые подходят для выполнения запроса доступа в соответствии с распознанной (102) файловой системой пассивной памяти данных, при этом правила доступа выбираются таким образом, что предоставляется таблица, в первом столбце которой описывается файловая система активного терминала, во втором столбце которой описывается файловая система пассивной памяти данных и в третьем столбце которой содержится указатель, который указывает на соответствующие правила доступа;

- моделирующее устройство (М) выполнено с возможностью применять (104) выбранные правила доступа к данным доступа, которые указаны в запросе доступа; и

- пассивная память данных, выполненная с возможностью выполнять (105) операции доступа в соответствии с запросом доступа.

14. Машиночитаемый носитель информации, содержащий процессор и память, содержащую управляющие команды, исполняемые процессором, которые реализуют способы по любому из пп. 1–12.

Документы, цитированные в отчете о поиске Патент 2023 года RU2808634C1

US 5463772 A1, 31.10.1995
Приспособление для суммирования отрезков прямых линий 1923
  • Иванцов Г.П.
SU2010A1
US 9489396 B2, 08.11.2016
ФАЙЛОВАЯ СИСТЕМА, ПРЕДСТАВЛЕННАЯ ВНУТРИ БАЗЫ ДАННЫХ 2006
  • Ричинс Джек С.
  • Хантер Джейсон Т.
  • Ачарья Сринивасмурти П.
RU2398275C2
ОТОБРАЖЕНИЕ МОДЕЛИ ФАЙЛОВОЙ СИСТЕМЫ В ОБЪЕКТ БАЗЫ ДАННЫХ 2006
  • Шукла Амит
  • Нори Анил Кумар
  • Демироски Беким
  • Фридман Грегори С.
  • Хантер Джейсон Т.
  • Пирс Джеффри Т.
  • Ньюман Майкл Дж.
  • Эллис Найджел Р.
  • Ачария Сринивасмуртхи П.
RU2409847C2

RU 2 808 634 C1

Авторы

Жданов, Иван

Зудин, Александр

Комаров, Константин

Даты

2023-11-30Публикация

2020-11-30Подача