Я в классе операционных систем. Подходя, мы должны немного поработать над модификацией кода ядра. Нам посоветовали не использовать персональные машины для тестирования (я полагаю, это означает установить его), поскольку мы могли писать плохой код и переписывать то, что нам не следует. Нам дают доступ к машине в лаборатории, чтобы быть в безопасности.
Если бы я должен был протестировать использование виртуальной машины, это защитило бы хост-систему от потенциально небезопасного кода? Я действительно хочу, чтобы мне не пришлось застрять в школе, и снимки будут полезны.
Если это все еще высокий риск, какие-либо предложения о том, что мне нужно рассмотреть, чтобы безопасно проверить?
Мы будем использовать что-то вроде linuxmint для начала. Если кто-то хочет посмотреть, что будет в текущем проекте: http://www.cs.fsu.edu/~cop4610t/assignments/project2/writeup/specification.pdf
источник
Ответы:
Основные риски, возникающие при разработке модулей ядра, заключаются в том, что вы можете вывести систему из строя гораздо легче, чем с помощью обычного кода, и вы, вероятно, обнаружите, что иногда вы создаете модули, которые не могут быть выгружены, что означает, что вам придется перезагружаться для перезагрузки их после того, как вы исправите то, что не так.
Да, ВМ отлично подходит для такого рода разработки, и это то, что я использую, когда работаю над модулями ядра. ВМ прекрасно изолирует вашу тестовую среду от работающей системы.
Если вы собираетесь делать и восстанавливать моментальные снимки, вы должны сохранять свой исходный код в хранилище контроля версий вне виртуальной машины, чтобы не потерять случайно последний код при отказе от текущего состояния виртуальной машины.
источник
Предполагая, что вы не пытаетесь написать драйвер для реального оборудования, это отличный способ работы с модулями. Вы можете сделать снимок работающей системы, и если вы что-то взорвете, просто вернитесь к снимку.
Если вы можете, сделайте полную копию виртуальной машины, на случай, если система снимков будет более странной, чем я думаю. :)
источник