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