Live data from Hacker News

Why the Windows Registry sucks technically (2010)

rwmj.wordpress.com

21–30 of 342 posts

Re: Why the Windows Registry sucks technically (2010)

#22

I really appreciate when people use technical facts to criticize something, like with this. It is a well written take-down of the implementation of the Windows Registry as of both today and 2010. I suspect if the concept of the registry was created today it would look more like a database (e.g. Sqlite), although organizing it like a virtual FileSystem does have a certain appeal, and unfortunately I don't know of a da…

> The UNIX way is undeniably more flexible since it isn't a virtual filesystem, it is just a filesystem. Unix simply doesn't have a "way" in that regard, other than a loose convention to put text files in "/etc". Every application comes up with its own format. Parsing that file is application-specific. Updating a value in a text file means re-writing the whole file again. It is a technically-inferior approach that ha…

Modern Linux DEs have an arguably worse version by not only having traditional `/etc` for some types of configurations but _also_ having a "registry" that's really similar to the Windows one for GUI apps... (re: gconf for Gnome)

Re: Why the Windows Registry sucks technically (2010)

#23
post #14

>Hello Microsoft programmers, a memory dump is not a file format Wait until you see the Office formats without the extra x in the extension.

That was a deliberate attempt to make it impossible for competitors to read and write their format wasn’t it?

I don't know the exact year that file format was made, but you had to think about performance more than wasting so much memory and cpu cycles to have a fancy file format, no?

Ofcourse that era Microsoft tools didn't think much about interoperability outside of Microsoft ecosystem. But to me it seems that them having some XML based file format at that time would be silly and have disadvantages. XML actually was started on '96 and published on '98 https://en.wikipedia.org/wiki/XML

.doc seems to be used starting from '89

> The format used in earlier, pre-97 ("1.0" 1989 through "7.0" 1995) versions of Word are less known https://en.wikipedia.org/wiki/Doc_(computing)

Re: Why the Windows Registry sucks technically (2010)

#24

I really appreciate when people use technical facts to criticize something, like with this. It is a well written take-down of the implementation of the Windows Registry as of both today and 2010. I suspect if the concept of the registry was created today it would look more like a database (e.g. Sqlite), although organizing it like a virtual FileSystem does have a certain appeal, and unfortunately I don't know of a da…

> The UNIX way is undeniably more flexible since it isn't a virtual filesystem, it is just a filesystem. Unix simply doesn't have a "way" in that regard, other than a loose convention to put text files in "/etc". Every application comes up with its own format. Parsing that file is application-specific. Updating a value in a text file means re-writing the whole file again. It is a technically-inferior approach that ha…

Is there any "way" at all that doesn't suck though? Not having "a way" in this sense is more like a feature, a single source of truth works well if it really is treated as such by all actors.

Configurations under unix are a mixture of stdin, config files, env variables and bespoke solutions.

Under Windows, you have all of the above and on top of that the registry.

Any attempt at a solution in this regard risks being a rerun of the notorious xkcd: 14 ways to specify configurations -> this should satisfy everyone -> 15 ways to specify configurations.

Re: Why the Windows Registry sucks technically (2010)

#25
post #14

>Hello Microsoft programmers, a memory dump is not a file format Wait until you see the Office formats without the extra x in the extension.

That was a deliberate attempt to make it impossible for competitors to read and write their format wasn’t it?

I attended a seminar on the office binary file formats about 10 years ago at MS. The reason it was done was for performance reasons, including the wonky layout that made it quicker to save and read the file from slow media like floppy discs.

Re: Why the Windows Registry sucks technically (2010)

#26
post #11

Earlier quoted context omitted.

Actually the Registry is not a single file, it is a set of files virtually assembled into a single "object" that has many points in common with both a database and a filesystem. Personally I see it more like a filesystem, with some striking resemblance to NTFS.

It is a single file to the underlying filesystem. Yes it reimplements a filesystem, I already said that in the comment you are replying to.

Exactly like a NTFS drive can have mountpoints that are actually other drives, the Registry on disk is made by several files, at least:

SAM

SECURITY

SYSTEM

SOFTWARE

NTUSER.DAT

and since Vista

BCD

The whatever is called the Registry when virtually assembled together is accessed as if it was a filesystem on a single file, is not in itself a "file", it is something else, or if you prefer it seems like being a monolithic file but it is backed by a number of separated files.

Re: Why the Windows Registry sucks technically (2010)

#27
post #14

>Hello Microsoft programmers, a memory dump is not a file format Wait until you see the Office formats without the extra x in the extension.

That was a deliberate attempt to make it impossible for competitors to read and write their format wasn’t it?

No, it's just that if you have to convert you need more memory to load and save, and then you have less memory for the document itself.

Re: Why the Windows Registry sucks technically (2010)

#29

It is easy to be critical of Microsoft and many of their decisions until you reflect on the reality that they have provided the software that has been running billions of computers world-wide for almost four decades. And they have done this with an astounding level of software and hardware compatibility across time, devices and technologies. This is critical to understand before pointing at anything MS and being crit…

And it is "of its time" - it appeared in Windows 3.1 which was 1992. Which was the era of floppy disks as well.

Re: Why the Windows Registry sucks technically (2010)

#30

I really appreciate when people use technical facts to criticize something, like with this. It is a well written take-down of the implementation of the Windows Registry as of both today and 2010. I suspect if the concept of the registry was created today it would look more like a database (e.g. Sqlite), although organizing it like a virtual FileSystem does have a certain appeal, and unfortunately I don't know of a da…

The problem of removing applications together with their configurations is trivially solved in the various Linux-based systems where any software package is installed only inside a private directory.

Any files that would be expected to be in shared directories like /usr/bin, /usr/lib or /etc, are replaced by symbolic links. Except for symbolic links, the installation of a package must not change anything outside its private directory.

In my opinion this is the only sane way of managing software packages, because otherwise, also on Linux, but especially on Windows, I have wasted far too much time during the years with debugging various problems caused by the installation/uninstallation programs.

Post reply on HN