> This > question comes from a difference perspective however, software stored > on a non-rewritable ROM which nobody can modify once wrote to, and why > are they acceptable but non-free blobs are not?
The blobs that can be changed are software. The parts of chips that aren't implemented as ROM are clearly hardware and the software freedoms don't apply to them: making modified chips is beyond a single user's budget, being allowed to doesn't change much. This argument applies to ROM too since it cannot be modified without making a new chip (although it could be cheaper for PROM, not sure if it's an important difference here: making a motherboard is expensive too and the blank chips might be difficult to obtain, imagine ARM SoC bootrom, not a separate PROM chip). So there is no difference in freedom between ROM and circuits for software users. (ROM can also be implemented in the same way as other parts of the chip, making it equally hard to replace.) > So I agree that when a program is on a ROM there is no point to having > the source code anyway since it can't be changed without changing the > physical piece of hardware, but this begs the question, where do we > draw the line for when source code must be free and when it doesn't in > the terms of a ROM. Having the source is useful in some cases. There is a related problem: we cannot know that it is the corresponding source, maybe backdoors were added by the manufacturer and not published in the source. > For example, a CD is a ROM. You can't change it, to try to do so would > simply destroy the CD. So if I distributed a program that ran from a > CD-ROM it would be okay to not provide the source code because it > can't be changed anyway? It's easy and cheap to buy and write a copy on a CD-R. > What draws the line for the difference > between a CD with a program and a ROM with a BIOS, or firmware for a > GPU, or whatever it is. A CD is a medium used to distribute software, a ROM with BIOS is usually integrated into a computer. Users buy a software copy in one case, a hardware device in another. > Does this also mean that it would be okay for > Microsoft to provide a copy of Windows on a PC loaded from a ROM > rather than a hard disk? Of course they wouldn't be able to update it > without changing the ROM physically, but is this okay? Under the terms > that seem acceptable to the FSF I would assume yes? It could be literally true if it's a real ROM (now signed flash is used for this purpose). This might be a malicious program: it's the same as if it was hardware, it shouldn't be used for this reason. (It's what RMS writes about phone baseband firmware, while replacing it won't free us of carrier surveillance.) I'm not sure what business model could Microsoft have for Windows without software installation. > I don't think it > is though, so what draws the line of running something like Microsoft > Windows in a ROM vs running a BIOS, firmware or anything else. All are > programs, the only difference is they are different types of programs. I think there is no clear line: having completely free software that can be replaced (on disk or flash) doesn't solve all freedom problems. Problems with network services controlled by others won't be solved in this way. > Looking for an answer to this the best I could find this this blog > post which of course, does not answer the question, at least not in > the terms that I understand. It seems that the blog writer was > wondering too, just like me why blobs in a ROM is okay but not in the > kernel. Do you have an URL of the post?
pgp8W_S9BYgLk.pgp
Description: PGP signature
