Добрый день!
Стоит задача написать на C++ программу, создающую виртуальный диск. Название каталогов и файлов она должна брать из базы данных (т.е. в базе храниться дерево файлов с названиями файлов/папок и путями к реальным файлам на диске). Честно говоря, пока совсем не понимаю как создавать этот виртуальный диск и записывать на него "мнимые" файлы. Может кто-нибудь объяснит данный механизм или посоветует литературу или статьи в Интернете. Заранее благодарен.
22.06.07 18:22: Перенесено модератором из 'C/C++. Прикладные вопросы' — Кодт
Здравствуйте, Аноним, Вы писали:
А>Добрый день! А>Стоит задача написать на C++ программу, создающую виртуальный диск. Название каталогов и файлов она должна брать из базы данных (т.е. в базе храниться дерево файлов с названиями файлов/папок и путями к реальным файлам на диске). Честно говоря, пока совсем не понимаю как создавать этот виртуальный диск и записывать на него "мнимые" файлы. Может кто-нибудь объяснит данный механизм или посоветует литературу или статьи в Интернете. Заранее благодарен.
Погугли NTFS reparse points (если речь о винде, естественно)
Здравствуйте, <Аноним>, Вы писали:
А>Стоит задача написать на C++ программу, создающую виртуальный диск.
Ключевое слово здесь — не "на С++", а "для ОС _____" (увы, это ключевое слово оказалось пропущенным).
... << RSDN@Home 1.2.0 alpha rev. 655>>
Перекуём баги на фичи!
Re[2]: Программа "Виртуальный диск" на C++
От:
Аноним
Дата:
22.06.07 12:54
Оценка:
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, <Аноним>, Вы писали:
А>>Стоит задача написать на C++ программу, создающую виртуальный диск.
К>Ключевое слово здесь — не "на С++", а "для ОС _____" (увы, это ключевое слово оказалось пропущенным).
Как сказано в задании, должно работать на WinXP, и было бы неплохо, чтобы работало еще на Win98, ME и 2000...
Здравствуйте, Аноним, Вы писали:
А>Добрый день! А>Стоит задача написать на C++ программу, создающую виртуальный диск. Название каталогов и файлов она должна брать из базы данных (т.е. в базе храниться дерево файлов с названиями файлов/папок и путями к реальным файлам на диске). Честно говоря, пока совсем не понимаю как создавать этот виртуальный диск и записывать на него "мнимые" файлы. Может кто-нибудь объяснит данный механизм или посоветует литературу или статьи в Интернете. Заранее благодарен.
Думаю нужно начать так Start->Run->cmd->subst /?
Re[2]: Программа "Виртуальный диск" на C++
От:
Аноним
Дата:
22.06.07 14:06
Оценка:
SL> Думаю нужно начать так Start->Run->cmd->subst /?
И где там база данных?
Re: Программа "Виртуальный диск" на C++
От:
Аноним
Дата:
22.06.07 14:19
Оценка:
Не помню где скачал (судя по копирайтам на сайте Microsoft), должно помочь: здесь
Здравствуйте, Аноним, Вы писали:
А>Стоит задача написать на C++ программу, создающую виртуальный диск. Название каталогов и файлов она должна брать из базы данных (т.е. в базе храниться дерево файлов с названиями файлов/папок и путями к реальным файлам на диске). Честно говоря, пока совсем не понимаю как создавать этот виртуальный диск и записывать на него "мнимые" файлы. Может кто-нибудь объяснит данный механизм или посоветует литературу или статьи в Интернете. Заранее благодарен.
Задача достаточно сложная — нужно реализовать драйвер файловой системы.
В Linux/BSD/MacOS есть FUSE (http://fuse.sourceforge.net/) который позволяет реализовывать драйверы в виде userspace-приложений на С/C++/Python.
Здравствуйте, Danchik, Вы писали:
D>[Skip] D>Я б еще глянул на RAM Disk, ramdrive
Это просто блоковое устройство, хранящее данные в памяти. Оно форматируется в обычный FAT/NTFS и ничем здесь не поможет.
Здравствуйте, Аноним, Вы писали:
А>Добрый день! А>Стоит задача написать на C++ программу, создающую виртуальный диск. Название каталогов и файлов она должна брать из базы данных (т.е. в базе храниться дерево файлов с названиями файлов/папок и путями к реальным файлам на диске). Честно говоря, пока совсем не понимаю как создавать этот виртуальный диск и записывать на него "мнимые" файлы. Может кто-нибудь объяснит данный механизм или посоветует литературу или статьи в Интернете. Заранее благодарен.
Чем то мне это напоминает проект WinFS над которым целый микрософт бился-бился много лет, но так пока ничего и не родил.
Здравствуйте, Risk Server, Вы писали:
RS>Чем то мне это напоминает проект WinFS над которым целый микрософт бился-бился много лет, но так пока ничего и не родил.
Проект Анонима вполне реален. Например, в Линуксе я постоянно пользуюсь sshfs (http://en.wikipedia.org/wiki/SSHFS), работающий с удаленными FS через обычный SSH.
Возможно, как вариант Windows Namespace Shell Extention, правда
отображается в проводнике ну или можно засунуть в сетевое окружения,
тогда виден в тотал командере. Вроде где-то тут должны были быть статьи
на эту тему