Каковы основные причины против реестра Windows? - PullRequest
2 голосов
/ 08 апреля 2010

Если я хочу разработать похожую на реестр систему для Linux, каких ошибок в дизайне реестра Windows мне следует избегать?
Какие функции были бы абсолютно необходимы?
Каковы основные проблемы (безопасность, простота настройки, ...)?

Я думаю, что реестр Windows не был плохой идеей, просто реализация не выполнила обещания. Общее место для конфигураций, включая, например, конфигурацию apache, конфигурацию базы данных или конфигурацию почтового сервера, не будет плохой идеей и может улучшить удобство обслуживания, особенно если у него есть опции для (защищенного) удаленного доступа.

Однажды я работал над решением на основе ядра, но остановился, потому что другие говорили, что реестры бесполезны (потому что реестр Windows) ... что вы думаете?

Ответы [ 4 ]

7 голосов
/ 08 апреля 2010

Однажды я работал над решением на основе ядра, но остановился, потому что другие говорили, что реестры бесполезны (потому что реестр Windows) ... что вы думаете?

Реестр на основе ядра? Зачем? Зачем? Тысячу раз, почему? Можно также попросить музыкальную открытку на основе ядра или inetd за все, что она там вкладывает. Если ему не нужно , нужно находиться в ядре, его не должно быть. Есть много других способов реализовать привилегированный процесс, который не требует такой глубокой хакерской атаки ...

Если я хочу разработать похожую на реестр систему для Linux, каких сбоев в конструкции реестра Windows мне следует избегать?

  • Убедитесь, что приложения могут изменять много записей одновременно атомарным способом.
  • Убедитесь, что есть простые инструменты командной строки для управления им.
  • Убедитесь, что ни одна критическая часть системы не нуждается в этом, чтобы всегда можно было загрузиться до точки, в которой можно что-то исправить.
  • Убедитесь, что программы резервного копирования выполняют резервное копирование правильно!
  • Не позволяйте частям исполняемых данных храниться в вашем реестре.
5 голосов
/ 08 апреля 2010

Если у вас должен быть один репозиторий, хотя бы используйте подходящую базу данных, чтобы у вас были инструменты для ее восстановления, резервного копирования, восстановления и т. Д., И вы можете взаимодействовать с ней, не имея нового набора пользовательских API

3 голосов
/ 08 апреля 2010

ИМХО, основные проблемы с реестром windows:

  • Двоичный формат. Это лишает вас огромного разнообразия очень полезных инструментов. В двоичном формате такие инструменты, как diff, search, control version и т. Д., Должны быть специально реализованы, а не использовать лучшие в своем роде инструменты, способные работать с общим субстратом текста. Текст также предлагает преимущество тривиально встроенной документации / комментариев (также с поддержкой greppable), а также простое программирование и анализ с помощью внешних инструментов. Это также более гибко - иногда конфигурация лучше выражается с полным языком полного тьюринга, чем попытка вставить его в структуру ключей и подразделов.

  • Монолитные. Большим преимуществом является то, что все для приложения X содержится в одном месте. Перейдите на новый компьютер и хотите сохранить настройки для него? Просто скопируйте файл. Хотя это теоретически возможно с реестром, при условии, что все находится под одним ключом, на практике это не стартер. Настройки, как правило, распространяются в разных местах, и обычно трудно найти , где . Это обычно указывается как сильная сторона реестра, но «все в одном месте» обычно сводится к «Все положено куда-то в одно огромное место».

  • Слишком широкий. Его легко представить себе просто как место для пользовательских настроек, но на самом деле реестр становится дампом для всего . 90% того, что там есть , а не , предназначено для чтения или изменения пользователями, но на самом деле представляет собой базу данных в виде сериализованной формы различных структур, используемых программами, которые хотят сохранить информацию. Это включает в себя такие вещи, как вся система регистрации COM, установленные приложения и т. Д. Теперь это вещи, которые нужно хранить, но тот факт, что они смешаны с такими вещами, как настраиваемые пользователем настройки и вещи, которые вы можете захотеть прочитать резко снижает его значение.

3 голосов
/ 08 апреля 2010

первое, что приходит мне на ум, так или иначе, вам нужно избегать бесхозных записей в реестре. В тот момент, когда вы удаляете программу, вы также удаляете файлы конфигурации, которые находятся в некотором каталоге, но после того, как у вас есть система реестра, вы должны убедиться, что при удалении программы ее конфигурация в реестре также должна быть удалена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...