Windows во многом полагается на реестр для хранения небольших фрагментов информации, таких как IP-адрес компьютера. Unix и Linux и OS-X хранят все в обычных файлах.
Когда дело доходит до реестра, я вижу несколько проблем с ним:
Доступ к информации не так прост. Например, если машина не загружается, и я пытаюсь решить проблему, смонтировав диск на другом компьютере, чтобы получить к нему доступ из другой ОС (это будет другая Windows или Linux), я могу легко получить доступ ко всем файлам ( за исключением разрешений и шифрования), но с реестром, хотя теоретически его можно прочитать (и, возможно, изменить), для этого требуются дополнительные приложения.
Доступ из командной строки (в условиях, когда компьютер больше не загружается) невозможен (если только для этого тоже нет приложений, но я уверен, что установить и использовать эти приложения гораздо сложнее, чем просто получить доступ к файлам на диске). ).
Информация может располагаться либо в файлах, либо в реестре, поэтому приходится манипулировать двумя местами.
Обычные инструменты, которые используются при работе с файлами (например,
findstr
, младший брат Windows поgrep
), отсутствуют при работе с ключами реестра.
Я уверен, что если Microsoft изначально внедрила реестр, это было бы не зря и дало (даже незначительное) конкурентное преимущество Windows перед другими операционными системами того времени.
Я думал об ограничениях производительности и пространства, особенно важных во времена зарождения Windows, но я не вижу, как хранение чего-либо в реестре повышает производительность или уменьшает используемое пространство (хранение DWORD как фактического DWORD в реестре по сравнению с хранением его строкового представления в файлы сэкономят место, но будет ли это так важно даже в 1985 году?
С точки зрения безопасности, похоже, что разницы тоже нет. Я не уверен, было ли это в 1985 году, но сегодняшние разрешения на основе файлов выглядят - если не более - мощными, чем те, которые реализованы для ключей реестра.
Организация аналогична: древовидная структура, без возможности индексации / поиска (в то время как более поздние версии Windows реализуют индексацию по файлам).
Так каковы или были преимущества реестра по сравнению с хранением всего в файлах?