macOS 14.4 modifie la façon dont le système d’exploitation gère les processus sur les machines Apple Silicon
Paume faciale : Quelques jours après avoir reçu une nouvelle version mise à jour de macOS Sonoma, les utilisateurs de machines basées sur Apple Silicon rencontrent des problèmes généralisés avec les logiciels et les services cloud, notamment les applets Java et les applications qui ne fonctionnent plus correctement.
La mise à jour macOS 14.4 récemment publiée semble causer de nombreux problèmes de compatibilité pour les propriétaires de systèmes Apple Silicon. Le logiciel ne fonctionne pas et Oracle souligne comment Cupertino a modifié la façon dont son système d’exploitation fonctionne dans certaines conditions tout en fonctionnant sur des processeurs ARM M1, M2 et M3.
Aurelio Garcia-Ribeyro, directeur principal de la gestion des produits d’Oracle, a expliqué qu’après l’installation de macOS 14.4, le processus Java a commencé à se terminer « de manière inattendue ». Toutes les versions de Java, de Java 8 aux versions à accès anticipé du JDK 22, sont concernées et aucune solution de contournement n’est disponible, sauf pour différer l’installation de la mise à jour du système d’exploitation.
Le problème n’était pas présent dans les versions à accès anticipé de macOS 14.4 et n’a été découvert qu’après qu’Apple a commencé à déployer la mise à jour auprès des utilisateurs. Le problème vient d’une fonctionnalité incluse dans les puces Apple Silicon, qui a été conçue pour contrôler le comportement du code généré dynamiquement lors de l’accès aux régions de mémoire protégées, a déclaré Oracle.
Avant macOS 14.4, dans « certaines circonstances », le noyau macOS envoyait un signal « SIGBUS » ou « SIGSEGV » aux processus tentant d’accéder à la mémoire protégée. Le processus pourrait choisir comment gérer ce signal, puis procéder à une exécution normale. Désormais, macOS envoie simplement un signal « SIGKILL » qui provoque l’arrêt inconditionnel des processus fonctionnant en mode écriture.
La génération dynamique de code et l’accès protégé à la mémoire de la machine virtuelle Java sont nécessaires pour améliorer l’exactitude et les performances, a déclaré Oracle. Pendant ce temps, les applications précompilées créées avec GraalVM Native Image devraient continuer à fonctionner comme prévu. Comme macOS ne fournit pas de moyen simple de revenir à une version précédente du système d’exploitation après l’installation d’une mise à jour majeure du système, les utilisateurs doivent reporter la mise à jour s’ils travaillent avec ou développent un logiciel Java sur des appareils Apple basés sur ARM.
Et ce n’est pas seulement Java, puisque macOS Sonoma 14.4 semble également avoir des effets gênants ailleurs. Comme le souligne MacRumors, la mise à jour corrompt les pilotes d’imprimante, efface les fichiers enregistrés sur la plate-forme iCloud, provoque des problèmes de connectivité avec les hubs et moniteurs USB et provoque des problèmes de compatibilité avec iLok License Manager et d’autres produits PACE. Apple n’a pas encore fourni de commentaire officiel sur les problèmes affectant sa dernière mise à jour du système d’exploitation.
Un commentaire
La récente mise à jour macOS 14.4 semble avoir suscité une série de défis de compatibilité, notamment pour les propriétaires de systèmes Apple Silicon. Oracle a récemment mis en lumière les problèmes rencontrés par les utilisateurs après l’installation de cette mise à jour, en particulier en ce qui concerne les machine virtuelle https://www.univirtual.ch/fr/business-core/virtualisation-telecommunication/machine-virtuelle. Aurelio Garcia-Ribeyro, directeur principal de la gestion des produits d’Oracle, a rapporté que le processus Java se terminait de manière imprévue après l’installation de macOS 14.4. Ce dysfonctionnement affecte toutes les versions de Java, de Java 8 aux versions à accès anticipé du JDK 22, et il semble n’y avoir aucune solution de contournement disponible, sauf différer l’installation de la mise à jour du système d’exploitation. Ce problème n’était pas détecté dans les versions de test de macOS 14.4, ce qui laisse penser qu’il est survenu après le déploiement de la mise à jour auprès des utilisateurs. La source du problème réside dans une fonctionnalité des puces Apple Silicon, conçue pour contrôler le comportement du code généré dynamiquement lors de l’accès aux régions de mémoire protégées des machine virtuelle univirtual. Avant la mise à jour macOS 14.4, le noyau macOS envoyait un signal « SIGBUS » ou « SIGSEGV » aux processus tentant d’accéder à la mémoire protégée des machine virtuelle, ce qui leur permettait de choisir comment gérer ce signal et de procéder à une exécution normale. Cependant, avec la nouvelle mise à jour, macOS envoie simplement un signal « SIGKILL », provoquant l’arrêt inconditionnel des processus fonctionnant en mode écriture des vm. Oracle souligne que la génération dynamique de code et l’accès protégé à la mémoire de vm univirtual Java sont essentiels pour améliorer l’exactitude et les performances. Les applications précompilées créées avec GraalVM Native Image devraient, quant à elles, continuer à fonctionner comme prévu. Cependant, pour les utilisateurs travaillant avec ou développant un logiciel Java sur des appareils Apple basés sur ARM, il est recommandé de différer la mise à jour, car il n’existe pas de moyen simple de revenir à une version antérieure du système d’exploitation après l’installation d’une mise à jour majeure. En outre, les problèmes ne se limitent pas à Java, car la mise à jour macOS Sonoma 14.4 semble également avoir des répercussions gênantes ailleurs dans le contexte de machine virtuelle univirtual. Les pilotes d’imprimante sont corrompus, des fichiers enregistrés sur iCloud sont effacés, des problèmes de connectivité avec les hubs et moniteurs USB sont constatés, et des problèmes de compatibilité avec iLok License Manager et d’autres produits PACE sont également rapportés. Jusqu’à présent, Apple n’a pas encore fourni de commentaire officiel sur ces problèmes affectant sa dernière mise à jour du système d’exploitation en lien avec les machine virtuelle.