Os computadores estão ficando mais rápidos, os aplicativos funcionam com mais facilidade para nós, porém, quando se trata de interagir com Windows parece que não importa quais são as entranhas do nosso PC, ele sempre parece ir no mesmo ritmo. É algo exclusivo do sistema operacional Redmond? É uma otimização ruim em termos de hardware ou há uma razão técnica por trás disso? Nós explicamos para você.
O normal, e por lógica simples, é pensar que quanto mais poder computacional temos em um computador, os programas consomem cada vez menos recursos. No entanto, muitas vezes descobrimos que esse não é o caso e que a falta de otimização prevalece sobre outras coisas. É por preguiça ou falha dos programadores que há uma série de decisões a nível técnico ou circunstâncias inevitáveis que levam a isso?
O Windows sempre consome os mesmos recursos que um PC
Devemos partir do fato de que nos sistemas operacionais atuais é este mesmo e não os aplicativos, que se encarrega de gerenciar os diferentes processos e, portanto, eles não apenas decidem onde são executados e em que ordem, mas também em que quais as condições que o fazem e é aqui que entramos em duas formas diferentes de utilização dos recursos de hardware, tanto pelo próprio sistema como pelas aplicações.
No entanto, há um que é um pesadelo em termos de desempenho e que transforma certos processos em verdadeiros vampiros do poder do nosso computador, apesar de realmente não exigirem tanto poder para funcionar e é que uma porcentagem fixa de a capacidade é atribuída a eles. em processamento. Independentemente de termos um poderoso computador de última geração ou um modesto MiniPC. Por exemplo, o Windows 11 vem com base em virtualização Segurança, um recurso que fornece pouco para usuários domésticos, mas é capaz de consumir 5% de desempenho, independentemente de você estar executando um aplicativo em um Celeron ou Celeron. Xeon, com a diferença de potência que isso implica.
Por que essas medidas são tomadas?
Na realidade, é impossível prever o desempenho que um programa exigirá, pois temos que levar em conta que isso dependerá da latência de cada instrução e é impossível predizê-lo porque não sabemos onde ele encontrará os dados correspondentes. Terá as informações já nos registradores ou, na falta delas, em algum nível do cache de dados do processador? Deve-se levar em consideração que a latência do processador, medida em seus ciclos de clock, irá variar para cada instrução dependendo do período de busca da informação.
Portanto, sob esta premissa, juntamente com o enorme número de configurações de hardware existentes, entende-se perfeitamente que para os processos do sistema, um sistema operacional, independentemente de ser Windows, Linux ou qualquer outro, leva certas porcentagens de uso fixo na energia do processador. Além disso, isso é feito em consoles e com o passar dos anos, essas porcentagens de uso são reduzidas para dar mais poder aos jogos. Porém, não podemos esquecer que neste caso estamos falando de sistemas fechados e é uma situação totalmente diferente da dos computadores.
Núcleos adicionais para o sistema operacional?
Tudo isso nos leva a uma das novidades que vimos implementadas nas duas últimas gerações de Intel Processadores de núcleo, embora não em todos os modelos. Estamos falando dos chamados E-Cores, que no papel foram projetados para tarefas em segundo plano. No entanto, a atribuição a eles não é automática. Ou seja, o que o sistema operacional vai fazer é buscar, por exemplo, 2% da potência de um núcleo que esteja livre para executar um processo chave.
A maneira do sistema operacional executar processos em threads para o CPU é semelhante a encontrar o máximo de espaço possível em uma caixa para colocar as coisas. Não ativará outro núcleo se ainda sobrar uma porcentagem nos existentes. As consequências? Pois bem, apesar dos E-Cores serem uma boa ideia para este tipo de tarefa, o Windows pode ignorá-los, pois aos olhos do próprio sistema operativo, o que tem disponível é um certo número de threads de execução, não conheça o poder que ela proporciona. contribuir cada um.