roadman wrote:Регистр выполняет ряд функций, которые трудно реализовать на базе ini файлов. Например, вся технология COM/DCOM интегрироованна с регистри, посколько не отдельная программа, а сама операционная система должна знать, где находится тот или иной COM сервер (DLL, EXE). Я так понимаю, что изначально регистр задумывалась для "внутреннего" использования. Но потом регистри API открыли и для "простых" смертных. Однако никто не мешает использовать INI файлы каждой отдельной программой для своих нужд.
Следующий пример - это безопасность (пароли там разные) и опять же это для ОС, хотя и пользовательская программа может положить в регистр зашифрованные данные.
Список драйверов, которые должны быть загружены в момент старта ОС. Хорошо если есть одно место, а не сотни, где эта информация целиком доступна.
Список можно продолжать...
С точки зрения осведомленности ОС о зарегистроированых комонентах абсолютно все равно то ли регистрационны файл будет registry.ini or registry.dat
Никто не мешает конечно использовать ini-style, но насколько я помню это нерекомендованый способ и МС его в своих продуктах не использует
Безопасность это как раз плохой пример. Права доступа на ветки регистри были приделаны намного позже чем появилось само понятие пользователей в Вин. Более того это пример того как нерационально сдублированы усилия. Были бы настройки в файлах, можно было бы просто права доступа на файлы дать, а так у файловой системы своя песня с правами доступа а у регистри своя. Имеем 2 системы каждая из который реализует разграничение доступа. С архитектурной точки зрения это явный ляп
Список драйверов: какие такие сотни мест где это инфа доступна: делается ОДИН файл с информацией необходимой ядру для загрузки и он текстовый. Мне на Юниксе достаточно любого тектового редактора что бы вырубить драйвер который шалит, и поверьте что формат там self-explained, а в винде? Зачем эту информацию о драйверах засовывать в тот же файл где лежит тысяч 200 других настроек других програм? А потом надо это дело защищать от этих самых других прграм и делать навороченую систему разграничения доступа специально для регистри. Типа создаем проблемы что бы мужественно преодолевать их
На самом деле регистри это иерархическая база данных, которая склонна к загрязнению мусором в процессе эксплуатации ОС
А базу данный понадобилось делать потому что возникли проблемы с производительностью когда все настройки в одну кучу свалили.
Никакой разрухи нет. (с) Проф. Преображенский.