A equipe de suporte de TI em minha organização está aplicando desligamentos forçados periódicos dos Macbooks do desenvolvedor usando JAMF ou algum outro tipo de mecanismo. Isso é muito chato. Na minha experiência, nunca enfrentei nenhum problema com o Macbook, mesmo que esteja rodando por semanas e meses, quando sei o que estou abrindo e se estou fechando os aplicativos normalmente ou não. E se estou reiniciando meu sistema periodicamente conforme minha conveniência, funciona muito melhor para mim. Absolutamente nenhum problema de desempenho que já enfrentei devido à falta de reinicialização. E observei que as versões mais recentes do Macbook Pros usando chips Apple M1/M2 baseados na arquitetura arm64 são ainda muito mais eficientes. A justificativa dada é que o suporte de TI encontrou alguns engenheiros (talvez novatos ou o que eu não sei) relatando problemas de desempenho com seus sistemas.
Agora, a equipe de TI deseja desligar à força o sistema de todos uma vez por semana, quando desejar. Isso é ridículo e altamente irritante para mim, a menos que eu esteja perdendo alguma coisa. Portanto, administradores de TI veteranos, esse tipo de desligamento semanal forçado dos Macs dos desenvolvedores faz algum sentido? Poderia haver alguma lógica sólida por trás de um passo tão perturbador? O MacOS realmente precisa desse tipo de reinicialização semanal para operar com eficiência?
Para esclarecer ainda mais a questão, não há disputa ou oposição às reinicializações do sistema quando necessário para atualizações do sistema operacional ou atualizações de aplicativos críticos ou atualizações de segurança de qualquer tipo. A importância de reiniciar 'por uma causa' não está em discussão aqui.
Mas a questão é realmente necessário continuar reiniciando o Mac toda semana para que ele funcione com eficiência? Em caso afirmativo, o que há na arquitetura ou funcionamento do sistema operacional que exige isso? Procurando detalhes técnicos sobre a operação do sistema operacional, posso estar ausente.
Acho que você já sabe a resposta para sua pergunta, que é: não, não há mágica em reiniciar semanalmente para eficiência. Se fosse realmente necessário, o próprio fornecedor do sistema operacional (acho que a Apple, neste caso) o recomendaria.
Obviamente, não sei muito sobre sua empresa, então não sei se isso funcionará para você. Mas minha sugestão seria quantificar sua produtividade perdida e levantar essa questão por meio de sua estrutura de gerenciamento. Por exemplo, se você levar uma hora após cada reinicialização forçada para configurar seu ambiente do jeito que você gosta, pergunte ao seu gerente se ele está disposto a sacrificar essa hora do seu tempo semanalmente ou se eles gostariam de levar esse problema ao departamento de TI.
Esta realmente não deveria ser sua batalha; esta deve ser uma decisão de negócios.
Só não fique chocado se a resposta for sim, a empresa prefere que você gaste essa hora reestabelecendo suas sessões, etc., em vez de fazer com que o departamento de TI mude sua política ou abra uma exceção para você.
Como outros (muito validamente) apontaram em sua resposta, não reiniciar por meses não é realmente uma opção, então talvez você possa chegar a um acordo de que reiniciará a cada duas semanas, mas no momento de sua escolha, e se o tempo de atividade exceder um determinado valor (talvez três semanas), o sistema automatizado poderá ser reinicializado.
Acrescentarei que tenho uma antipatia intensa por “IT Voodoo”, também conhecido como operar um computador baseado em superstição ou crença sem testes. Se achar apropriado na cultura/ambiente de sua empresa, você pode desafiar seu departamento de TI a quantificar sua crença de que a reinicialização em um intervalo definido é necessária. Mas espero que isso não vá a lugar nenhum.
Infelizmente, a maioria das empresas não trata seus desenvolvedores como os VIPs e divas que são, não se curva a eles por sua óbvia experiência técnica abrangente e não os exclui de políticas que, embora possivelmente adequadas para pessoas comuns, podem incomodar seus desenvolvedores.
É por isso que você é um desenvolvedor.
Quando funciona no seu laptop, deve ser a melhor solução em todos os lugares e para todos.
Isso não é sobre sua resistência.
Você está perdendo alguma coisa.
Resumidamente:
Os desenvolvedores escrevem códigos ruins .
Bugs e vulnerabilidades de segurança são encontrados.
São lançadas atualizações que abordam essas vulnerabilidades.
Com muita frequência: enxágue e repita.
A menos que a atualização automática esteja habilitada, geralmente os usuários finais não são cuidadosos com relação à instalação dessas atualizações. É aí que uma equipe de segurança de TI corporativa adequada não deixará o cronograma de atualização a critério do usuário final (mesmo quando esse usuário final for um desenvolvedor ou administrador) e eles irão/deverão forçar a instalação de atualizações de segurança em um maneira oportuna para reduzir e eliminar a exposição a vulnerabilidades de segurança conhecidas.
Muitas atualizações (SO) exigem a reinicialização do aplicativo e algumas exigem uma reinicialização completa.
Uma solução de gerenciamento de atualização adequada rastreia após qual atualização é necessária uma reinicialização e forçará essa reinicialização somente quando necessário. Idealmente, ele oferece um período de carência em que o usuário final pode executar a reinicialização necessária a seu critério e só forçará a reinicialização após o término do período de carência. Vale a pena repetir, os desenvolvedores escrevem código ruim, então a solução de gerenciamento de atualização atual pode não suportar isso ainda, pode obter esse recurso apenas "em uma versão futura" e o melhor que sua equipe de segurança pode fazer para forçar as atualizações a serem ativadas é um semanal reinicialização obrigatória.
Isso não exclui que sua equipe de segurança empresarial competente seja (forçada a) simplesmente implementar uma política em vez de uma solução técnica genuína.