Jump to content

Связи файлов


Recommended Posts

Предположим у нас есть две сущности (задачи) А и B которые работают с разными файлами на одном разделе. Если я правильно понимаю, в этом случае имеет смысл создавать один vfs. Предположим мы используем POSIX вызовы для работы с файлами open, close, read, write. Тогда сколько и каких связей при этом будет создано? Какие сообщения будут передаваться?

Link to comment
Share on other sites

Предположим у нас есть две сущности (задачи) А и B которые работают с разными файлами на одном разделе. Если я правильно понимаю, в этом случае имеет смысл создавать один vfs. Предположим мы используем POSIX вызовы для работы с файлами open, close, read, write. Тогда как разделить доступ к файлам для разных задач? Например, чтобы задача А могла читать только файл aaa.txt, а задача B могла читать только файл bbb.txt? Надо написать политику? Как она должна выглядеть?

Для решения данной задачи необходимо написать политику для которая будет контролировать использование интерфейса Open(in VfsClientId clientId, in VfsPath path, in

SInt32 oflag, in VfsModeT mode, out SInt32 error, out VfsFdT resfd); из VfsFilesystem.idl, и проверять поле path на соответствие имени файла и поле флаг на режим открытия? И так для каждого файла?

Link to comment
Share on other sites

Предположим у нас есть две сущности (задачи) А и B которые работают с разными файлами на одном разделе. Если я правильно понимаю, в этом случае имеет смысл создавать один vfs. Предположим мы используем POSIX вызовы для работы с файлами open, close, read, write. Тогда сколько и каких связей при этом будет создано? Какие сообщения будут передаваться?

Link to comment
Share on other sites

В KasperskyOS изначально не предполагалось понятия пользователей и ассоциированных с ними контекстов безопасности.

 

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

Link to comment
Share on other sites

В KasperskyOS изначально не предполагалось понятия пользователей и ассоциированных с ними контекстов безопасности.

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

Link to comment
Share on other sites

Реальный доступ к файлу в этой схеме будет происходить только внутри VFS. То есть, будет 2 связи: A <-> VFS и B <-> VFS . Дальнейшие транзитивные связи VFS к blkdev и pcie тут опускаю — это зависит от архитектуры. Каждый из перечисленных вызовов — отдельное IPC.

Возможно сделать так, что в A будет влинкован VFS и, таким образом, A будет полноценным VFS-ом и для своего клиентского кода и для сущности B. Тогда будет только 1 связь A <-> B. В этом случае, все вызовы в А будут локальными вызовами, без IPC, а в B будут уходить через IPC к A.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...