Na minha opinião, o motivo mais importante é que a maioria dos programas no Windows depende do registro . O registro é sem dúvida um armazenamento bem organizado, porém não é conhecido por ser muito eficiente. Quando você instala o Windows pela primeira vez, o tamanho do registro é pequeno e as operações de pesquisa são baratas; no entanto, à medida que você instala mais e mais programas, o registro fica maior e mais difícil de gerenciar.
Outro fator é a fragmentação do disco. NTFS e FAT são muito famosos por sua incapacidade de impedir a fragmentação. Por outro lado, os sistemas de arquivos Linux, especialmente o ext3 (não tenho experiência em reiserFS ou outras alternativas) são bastante resistentes à fragmentação.
Uma breve cartilha sobre fragmentação
O que é fragmentação? Este artigo faz um bom trabalho para explicá-lo, mas o essencial é o seguinte: o Windows agrupa todos os seus arquivos em um só lugar no disco, enquanto o Linux os espalha por todo o lugar. Isso significa que, quando um arquivo cresce no Windows, corre o risco de ser tão grande que sobrepõe a alocação do disco rígido do próximo arquivo e, portanto, deve ser movido ou (mais provavelmente) fragmentado, com o novo fragmento sendo armazenado em um local diferente no disco rígido. Na próxima vez que o arquivo for acessado, o Windows precisará fazer duasacessos de disco, um para o arquivo inicial e um segundo para o fragmento recém-criado. Quando um arquivo cresce no Linux, por outro lado, há mais do que espaço suficiente para ele, e o sistema operacional prossegue alegremente. O método do Linux tem uma pequena desvantagem nos discos rígidos mecânicos, ou seja, como os arquivos estão espalhados por todo o lugar, há um pequeno atraso no acesso a eles por uma série de arquivos "agrupados". O projeto e4rat funciona muito bem para eliminar ou reduzir alguns desses atrasos (apenas sistemas de arquivos ext4), e a sobrecarga incorrida nunca é pior do que o Windows experimenta com a fragmentação de arquivos.
Outro fator é um pequeno truque que o Windows utiliza: Uma instalação do Windows nunca é ativada quando é ativada. O Windows inicia muitos processos apósvocê faz o login. A distinção entre processos do sistema e processos do usuário é um pouco vaga para o Windows, especialmente para as versões anteriores ao XP. E muitos aplicativos do Windows estão muito ansiosos para iniciar processos em segundo plano e colocar ícones da bandeja. Com o tempo, uma instalação do Windows começa a iniciar cada vez mais processos na inicialização. No entanto, o Linux inicia estritamente todos os processos do sistema antes de efetuar o login. Após o login, apenas um número mínimo de processos é iniciado. O Linux também nunca incentivou o uso de serviços em segundo plano relacionados a tarefas específicas de um usuário específico, ou o uso de ícones de bandeja. A última versão do Gnome nega que todos os aplicativos coloquem ícones na bandeja, exceto uma lista branca muito estreita. Portanto, com o tempo, uma instalação do Linux ainda inicia apenas um número limitado de processos após a inicialização.
Tenho certeza de que existem outros fatores que contribuem para esse fenômeno, esses são os principais que me vêm à cabeça.