> 1. реестр - это API, фактически реестр может хранится где и как
> угодно, и для приложений любые изменения будут незаметны. Даже regedit пользуется
> тем же API, что и все остальные. Сравним гибкость решения с
> решением хранить всё в текстовиках.В текстовиках гораздо гибче! Почему?
1) Текстовики и примеры конфигурации гораздо лучше гуглятся.
2) Я могу редактировать текстовик любой удобной мне программой, а не убогим регэдитом.
3) Я могу например делать продвинутый поиск. В регэдите нельзя даже просто найти ключ который содержит одно но не содержит другое. Поэтому когда оказывается что нечто входит в реестр в чуть более чем 9000 экземплярах - я не могу уточнить поисковый запрос дабы получить более вменяемое число результатов. С другой стороны, grep прекрасно пайпается в любую иную утилиту. Дешево и сердито. Регэдиту до такой гибкости как пехом до пекина.
> 2. что происходит чаще (и насколько чаще): чтение параметра программой или просмотр/изменение
> параметра пользователем?
Чаще конечно программой, но кого это волнует? Меня как пользователя волнует мое удобство. Пользоваться абсолютно уродским регедитом, при отсутствии примеров и документации на то что и как под рукой - ни разу не удобно.
Например, я могу найти простейший конфиг для нжинкса за 2 минуты гуглем. Он будет делать на 90% что мне надо. За еще 2 минуты я его исправлю чтобы он делал именно то что надо мне с уже 100% точностью. И все, можно запускать сервер. Будет работать. А теперь пробуем повторить то же самое для IIS и офигеем когда ничего подобного и близко не получится.
> Следовательно какую из двух операций разработчики ОС должны стремиться
> ускорить и упростить до предела? Разумеется, мы рассматриваем ситуацию что любое
> ПО настраивается один раз и работает 3-5 лет.
Железу то похрен, а вот человеку приходится мучаться. Мучения человека - приоритетнее мучений железа, имхо. Админ тоже человек, и о его удобстве тоже хорошо бы немного подумать. Заставлять админа делать всю продвинутую конфигурацию системы через одну горбатую утилиту? Без шансов получить около параметра комментарий с примером его применения и описанием? (в дефолтных конфигах софта это просто хороший тон) Без нормального поиска? Да вы братцы явно не гуманисты, или просто поклонники Мазоха.
> 3. мы сравниваем не типы файлов, а различные решения по хранению параметров ОС и ПО.
Нормальная программа читает конфигурацию 1 раз, при старте. Какая мне разница, за 10 микросекунд или 20 она это сделает? И кстати да, в случае конфига программа может заметить что его изменили и перечитать. Есть даже более-менее устоявшийся псевдостандарт отсигналить демону что его просят перечитать конфиг, послав sighup (который по устоявшейся практике провоцирует "мягкий рестарт" - программа не стартует снова, но перечитывает конфиг заново и переоткрывает логи, что позволяет применять изменения конфигурации в момент и забирать логи в сторонку для архивного хранения и ротации не мешая программе). А если какой-то имбецил постоянно дергает чтение реестра, может быть, стоит задаться вопросом - а нафига б он это делает?