Aller au contenu

Réunion du 21-10-2025

De OSWiki

Changements du code de la semaine

Modification à l'utilisation de la classe ReaderWriterLockSlim

Commits

NDLR  :
  • ReaderWriterLockSlim est une classe en C# qui permet à plusieurs threads de lire simultanément une ressource tout en garantissant qu'un seul thread à la fois peut y écrire.
  • La méthode Thread.Abort est utilisée pour terminer un thread en C#, mais elle est désormais considérée comme obsolète et son utilisation n'est pas recommandée dans les versions modernes de Lexique_des_réunions#dotnet '''.NET'''.


  • Ubit Umarov a apporté une petite modification à l'utilisation de ReaderWriterLockSlim.

Fonctionnement de l'ancien code

  • Lorsqu'un thread était abandonné à l'aide de Thread.Abort et qu'il avait acquis un verrou, il risquait d'être interrompu avant que le verrou ne soit libéré.
  • Dans ce cas, d'autres threads partageant les mêmes ressources et tentant d'y accéder étaient parfois (dans de rares cas) bloqués indéfiniment. Cela pouvait conduire à une situation où le programme se figeait ou ne répondait plus.
  • Pour éviter cela, le code marquait le verrou avec un flag et incluait une routine dans un bloc try, qui s'assurait que, même si un thread devait être abandonné, il exécutait un bloc de code qui libérait le verrou.

Modification apportée

  • Comme .NET n'a plus thread.abort, Ubit Umarov a supprimé ce code de protection.

Discussion

  • Vincent Sylvester pense que ne pas avoir la possibilité de tuer un thread bloqué semble régressif. Tuer des threads comme ça n'est pas génial, mais avoir du code bloqué l'est encore moins. D'après lui, supprimer des éléments pour éviter les erreurs n'est pas une bonne solution. Il va devoir voir cela, car le nouveau code maptile utilise Thread.Abort en cas de blocage.
  • Le développeur est censé écrire du code qui ne casse pas dès le départ, mais beaucoup de choses dépendent de dépendances externes qui sont hors de son contrôle. Alors, oui, c'est une solution de dernier recours, mais c'est une solution.
  • Ubit Umarov pense que l'abandon des threads est une mauvaise chose. Tout d'abord, Thread.Abort provoquait de nombreuses alertes et avertissements. Ensuite, le code de Framework.NET n'est pas conçu pour gérer correctement les abandons de thread avec des conséquences graves comme lorsque des ressources ne sont pas libérées.
  • Il dit qu'OpenSim utilise Thread.Abort seulement avec Watchdog pour tuer les threads expirés.
  • La seule façon de tuer un thread maintenant est de lui demander de se fermer, ou à la sortie du programme. Mais l'abandon de thread est mauvais dans tous les cas, c'est une solution de dernier recours.
  • L'utilisation de Thread.Abort pourrait passer avec le pool smartthread, mais ça peut être assez mauvais avec le pool du framework ou les tâches asynchrones.
  • Ubit Umarov dit que ces problèmes sont une raison de ne pas utiliser dotnet sur des projets sérieux.

Avertissement

Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉


Base de données

Problèmes des connecteurs de base de données

  • Vincent Sylvester a du mal de se plonger dans les connecteurs de base de données pour OpenSim. Il a aussi effectué quelques tests sur les écritures dans la base de données, mais il n'a pas encore tout à fait terminé.
  • PostgreSQL et SQLite posent des problèmes.
  • Ubit Umarov a réussi à corriger le problème de MySQL, mais qui sait combien de temps cela va durer ? 2024-05-07 : Connecteur MySQL 8.3.0.

Tests

Test de régression

Le test

  • Cuga Rajal a fait un test de régression avec les dernières versions de Dotnet 8 et Opensim à partir du tronc pour voir quelles versions de macOS fonctionnent encore.

Résultat

  • Tout fonctionne toujours sous macOS 10.15 (Cataliba) y compris les bibliothèques non gérées.
  • La documentation de dotnet 8 ne mentionnait pas la compatibilité avec les versions antérieures de macOS, mais c'est la cas.

Informations

Architecture 32 bits

Motif de la discussion

  • Les mise à jour de distribution Linux avec prise en charge des systèmes 32 bits pour Intel sont rares.
  • Firefox a supprimé sa version 32 bits.
  • Même Raspberry Pi est désormais en 64 bits.
  • Seuls des petits appareils embarqués à faible consommation utilisent cette architecture.
  • Ubit Umarov se demande pourquoi ils suppriment tous les versions 32 bits alors qu'on continue à utiliser des puces [ARM qui deviennent inutiles.

Discussion / Histoire

  • Ubit Umarov pense que beaucoup de choses n'ont pas besoin de 64 bits et que même OpenSim fonctionnait mieux en 32 bits en utilisant la moitié de la mémoire. Mais, 32 bits sous Win64 signifiait 2 Go par processus alors que sur Win 32 bits, c'était 2 Go pour tout. Donc, avec 32 bits la mémoire est plus contraignante et elle est partagée entre tous les processus.
  • Andrew Hellershanks travaille encore avec certains systèmes embarqués qui fonctionnent avec des cartes 32 bits.
  • Vincent Sylvester dit que beaucoup de composants 32 bits existent encore, ils ont simplement été retirés de la gamme principale, mais cela ne signifie pas qu'il n'est plus possible de se les procurer et de créer une image pour ces appareils, cela demande simplement plus de travail.
  • Ubit Umarov dit que Intel a survécu aussi longtemps parce qu'il a maintenu la compatibilité. C'est en partie pour cela qu'ils ont battu Motorola, à l'époque des Intel 8086 / Motorola 68000. Il pense que Motorola 68000 était bien meilleur.
  • Andrew Hellershanks ajoute que cela dépendait en partie de ce qui était commercialisé en premier et du prix des puces.
  • Le gouvernement américain a acheté 10% d'Intel pour 8,9 milliards de dollars américains. Ensuite Nvidia en a également acheté beaucoup.
  • Vincent Sylvester dit qu'il essaie de ne pas penser à la situaltion actuelle qui lui semble vraiment dystopique.

Windows 10 et 11 et puce TPM

Mise à jour vers Windows 11

  • L'ordinateur portable de Andrew Hellershanks lui indique qu'une mise à jour est disponible. Il ne pense pas avoir assez d'espace disque libre pour l'installer. Il faudrait 20 Go. De plus, il dit qu'il ne pense pas avoir TPM dans le BIOS pour le démarrer. Mais Vincent Sylvester indique que TPM ni de démarrage sécurisé pour installer Windows 11. Ce ne sont que des indicateurs qui peuvent être contournés. Microsoft tente de lutter contre les milliers d'utilisateurs mécontents qui disposent de suffisamment de connaissances collectives pour démanteler l'ensemble du noyau s'ils le jugent nécessaire. Microsoft ment comme un arracheur de dents. Beaucoup de systèmes anti-triche sont parfaits pour rootkitter une machine afin qu'un pirate puisse implanter une porte dérobée dans le BIOS.
  • Windows 11 attend Ubit Umarov, mais il n'est pas sûr de vouloir faire cette mise à jour. Il dit qu'il ne sait pas ce que font les mises à jour. Il ne pense pas avoir TPM.

Garder Windows 10

  • Vincent.Sylvester a payé 30 dollars à Microsoft pour garder Windows 10 avec des mises à jours pendant une année. Il va rester sur Windows 10 pendant 1 an voire plus.
  • Ubit Umarov lui dit que la dernière mise à jour était destinée à tuer Windows 10 et pas à l'installer.

Solutions de repli

  • Gavin Hird a installé Debian 13 sur la partition de Windows 10. Il dit que ça ne le remplacera pas. Cette machine est équipée à la fois d'une carte graphique Intel et d'une carte graphique NVIDIA, ce qui était pratique pour effectuer des tests. Mais il ne va certainement pas acheter une version de Windows 11.
  • Ubit Umarov pense que certaines personnes sont revenues à Windows 7.

Conséquences

  • Tout le monde ne dispose pas d'une machine qui répond aux spécifications requises.
  • La version 11 est nulle.
  • Andrew Hellershanks se demande si la fin de windows 10 aura un impact important sur les grilles OpenSim existantes.
  • Cuga Rajal n'a besoin que de deux applications, donc il les virtualise.

Démarrage sécurisé et Linux

  • Ubit Umarov dit que maintenant, seuls les système Linux autorisés peuvent être démarrés sur les nouvelles machines. Le démarrage sécurisé est obligatoire. Mais avec cette option activée, il n'est possible de démarrer que certaines distributions officielles (Fedora, Debian, Ubuntu et quelques autres).
  • Ces distributions doivent être correctement signées comme les applications Apple.

Démarrage sécurisé et Apple

  • Gavin Hird dit qu'Apple permet toujours de démarrer ce que l'utilisateur veut à l'aide d'un commutateur. En fait, Apple a modifié le chargeur d'amorçage pour permettre le démarrage de Linux sur ses machines basées sur ARM.
  • Mais Cuga Rajal dit que cela a pris fin quand ils sont passés à Silicon et qu'il faut utiliser un chargeur d'amorçage basé sur Mac pour le tromper et démarrer Linux. C'est très compliqué et cela n'est possible qu'avec le hack de démarrage Asahi Linux. Sur les derniers Mac, si vous voulez revenir à une seule partition après Linux, vous devez l'apporter à l'Apple Store pour qu'ils effacent le chargeur d'amorçage.
  • 🏗️

OSCC 2025

  • L'appel à propositions pour la conférence communautaire OpenSimulator est bientôt clôturé. Lyr Loboo fait un dernier appel à propositions.
  • Elle a établi un calendrier provisoire qu'elle corrige avant de l'envoyer pour qu'il soit accepté.

Burning Man virtuel sur Second Life

  • Cuga Rajal annonce que le Burning Man virtuel de Second Life a lieu cette semaine et ce week-end. Il dit que c'est l'une des rares choses auxquelles il participe sur Second Life.

Viewers

Dayturn

  • La dernière mise à jour de Win10 a complètement détruit une installation test de Gavin Hird. Il a finalement renoncé à la réparer et à la réinstaller, les pilotes sont introuvables.

Source

https://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2025-10-21