Я пытался создать простую файловую систему, используя libfuse на моем linux, используя учебник -> https://engineering.facile.it/blog/eng/write-filesystem-fuse/
Но я не мог понять некоторые конкретные вещи.
static int read_callback(const char *path, char *buf, size_t size, off_t offset,
struct fuse_file_info *fi)
1. В этой функции read_callback buf
является буфером, который содержит фактические данные файла, fi
является специальной структурой, которая содержит информацию о файле
что здесь смещено?
if (offset + size > len) {
memcpy(buf, filecontent + offset, len - offset);
return len - offset;
}
из кода выше, ясно, что мы пытаемся прочитать файл, используя memcpy
, но каково будет значение offsey в каждом вызове.
что здесь за путь?
https://www.cs.nmsu.edu/~pfeiffer/fuse-tutorial/html/callbacks.html
здесь упоминается, что путь относительно точки монтирования.
Может кто-нибудь уточнить это?
Заранее спасибо