Поскольку наше приложение должно работать через несколько RDBMSs, мы храним наше определение схемы в управлении версиями с помощью нейтрального в отношении базы данных Крутящий момент формат (XML). Мы также управление версиями, которое справочные данные для нашей базы данных в XML форматируют следующим образом (где "Отношения" являются одной из таблиц ссылок):
etc.
Мы тогда используем инструменты собственной разработки для генерации обновления схемы и сценариев обновления справочных данных, которые требуются, чтобы идти от версии X базы данных к версии X + 1.
Прежде всего, Интернет полон ресурсов, посвященных этой теме, я могу указать вам на один из самых простых, с которого я начал при разработке своих эмуляторов: http://fms.komkon.org/EMUL8/HOWTO.html
Если вы хотите чего-то большего Компрессивный для многих аппаратных средств (и вы обязательно) проверьте это: http://www.zophar.net/
Написание эмулятора - довольно сложная история, вам нужно идеально воссоздать оборудование, на котором работают программы иначе не получится! Я бы посоветовал начать с простого hw, такого как GameBoy (с модифицированным процессором Z80 , одним из самых простых и забавных в реализации. Я предлагаю www.z80.info по этой теме) .. вам не должен '
Что касается второго вопроса, вы можете взглянуть на MAME Wiki .