ReactOS 0.4.11 - Cent autres applications

Bonjour, Habr!

Je suis sûr que vous avez déjà réussi à manquer les nouveautés de notre projet! Et nous n'avons pas perdu de temps en vain. La dernière version de ReactOS est sortie il y a à peine trois mois et demi , et aujourd'hui vous pouvez déjà télécharger et tester la prochaine version de notre système d'exploitation. Il a corrigé 135 bugs, fait 984 changements dans le code source et une belle animation de l'écran de chargement .

Télécharger des images du système | Communiqué de presse | Changelog | TL; DR | Liste de tests et de régression

image

Lorsque nous avons travaillé sur la version 0.4.11, nous nous sommes concentrés sur la correction des erreurs de compatibilité des applications et, par conséquent, nous avons pu augmenter le nombre de programmes compatibles d'une bonne centaine, sinon plus. Dans le même temps, nous avons encore une fois considérablement réduit le nombre de situations entraînant des BSOD et des blocages de système. Il y a beaucoup d'autres changements, mais d'abord.


- Commençons! J'ai dit - commence!


La première chose à noter est que nous avons blagué le chargeur. Loader (LDR) est un composant qui aide l'application à démarrer. En particulier, il lit les fichiers manifestes des fichiers exécutables et des bibliothèques, calcule les modules et les dépendances nécessaires pour l'application lancée, les trouve sur le disque aux emplacements de l'emplacement prévu et les charge en mémoire dans le bon ordre.

image

Dans les versions précédentes de ReactOS, les bibliothèques MSVC ++ 2005/2008 se cachaient trop bien dans le système et le chargeur ne les trouvait pas toujours, en particulier dans les situations où plusieurs fichiers manifestes consécutifs étaient interceptés dans la séquence de démarrage. Lors du Hackfest de Berlin à l'été 2018, Mark Jensen, à ma demande, a décidé de s'en occuper. Et maintenant, avec la sortie de la version 0.4.11, la laideur a finalement pris fin, et maintenant aucune bibliothèque nécessaire ne peut «s'échapper» du chargeur. La prise en charge améliorée des manifestes a permis à ReactOS de fonctionner avec une centaine de nouvelles applications, telles que Blender 2.57b, Bumptop, Evernote 5.8.3, Deluge torrent et Quicktime Player 7.7.9.

Un grand exemple de cette réalisation est l'image ci-dessus et cette capture d'écran:

image

Sur celui-ci, vous pouvez regarder le travail du programme d' installation du pilote Snappy Driver (SDI) dans ReactOS. Auparavant, il s'est écrasé avec une erreur, parfois même provoqué BSOD, ou simplement refusé de fonctionner pour la raison décrite ci-dessus, mais maintenant les temps ont changé ...

Un effet indirect positif a été que les casse-cou n'ont plus à parcourir le net à la recherche de pilotes pour ReactOS, mais vous pouvez simplement les télécharger tous en même temps sur un DVD.

Je réserverai tout de suite que tous les pilotes SDI ne seront pas installés correctement, principalement uniquement les cartes réseau et certaines cartes vidéo. Cependant, nous continuerons à travailler pour améliorer cette situation.

- Alors arrête ! Non seulement les lâches ont besoin de freins ...


Plus tôt dans plusieurs versions antérieures de ReactOS, les testeurs ont rencontré des difficultés importantes pour essayer d'utiliser des applications .NET. Les applications écrites sur la base du framework .NET version 2.0 / 4.0 n'ont fonctionné qu'une seule fois , et à la fermeture, elles ont provoqué le chaos et forcé le système à se berserk lui-même pour causer des dommages.

Dans ReactOS 0.4.11, nous avons finalement compris et surmonté le problème à l'origine de cela. L'essentiel est que du point de vue de la stabilité du système, l'arrêt correct de l'application est aussi important que la séquence d'initialisation correcte au démarrage, car lorsque le programme est arrêté, les ressources qui lui étaient précédemment allouées sont libérées.

Il s'est avéré que le mécanisme responsable de la fermeture des applications dans ReactOS ne s'attendait souvent pas à suffisamment de temps pour que les applications terminent correctement leur travail par elles-mêmes. Cela était particulièrement vrai pour les applications basées sur une architecture de service client. Un correctif de bogue trivial de Janis Adamopoulos a résolu ce problème particulier en ajoutant instantanément la prise en charge de dizaines, sinon des centaines, d'applications dotNET populaires à l'arsenal ReactOS.

image

À titre d'exemple, une capture d'écran de nLite 1.4.9.3 - un utilitaire pour la partition "garage" des distributions Windows XP.

Babel Babel


Enfin, il convient de rappeler que le monde entier n'utilise pas la norme pour afficher le texte de gauche à droite comme l'anglais et d'autres langues latines. Beaucoup, comme l'hébreu et l'arabe, utilisent une orientation de droite à gauche. La prise en charge de ReactOS pour ce type d'affichage de texte a été officiellement démontrée pour la première fois dans la version 0.4.10, mais est toujours en cours de perfectionnement. Des progrès significatifs ont été réalisés grâce aux efforts de Baruch Rutman pour adapter la bibliothèque USP10 et le code de support pour l'entrée bidirectionnelle de Wine à ReactOS. Bien sûr, beaucoup de travail reste à faire, mais la nature du développement d'un projet open source réside dans l'application d'une approche itérative, avec des changements progressifs pas à pas.

image

Buffet d'amélioration


Si nous parlons de la lutte contre les BSOD, il convient de rappeler que Mark Jensen a identifié un problème avec l'initialisation de la barre de défilement , dont la correction a ajouté toute une gamme d'applications à la bibliothèque de programmes ReactOS compatibles. Par exemple, nous parlons du jeu Civilization II Multiplayer Gold Edition (32bit) version 1.3, montré dans la capture d'écran ci-dessous, et d'autres programmes comme IceChat 7.63.

image

La pile réseau a été à nouveau modernisée; dans le processus, la fonctionnalité de surveillance et d'énumération des connexions réseau a été ajoutée. Les modifications apportées aux composants TCP / IP permettent d'utiliser netstat, PortExpert et d'autres applications réseau nécessaires.

image

Le pilote de disque RAM a reçu des corrections importantes, ce qui a permis d'installer complètement le système d'exploitation sur le réseau en utilisant le protocole PXE (auparavant, seule l'option de lancer LiveCD était possible).

image

"Département qualité" du travail sisyphéen


Alors que la stabilité de ReactOS continue de croître, l'étendue et la profondeur des tests requis augmentent également, ne serait-ce que parce que le nombre d'applications de test disponibles augmente. À cette fin, Joachim Henze, avec sa méthodologie et sa persévérance habituelles, a travaillé pour assurer le bon équilibre pour cette version en termes de stabilité et d'apparition de fonctionnalités nouvelles / améliorées. Malgré le fait qu'il soit toujours tentant d'apporter toutes les modifications et corrections les plus importantes et les plus importantes à la version, il convient de rappeler que chaque changement de ce type comporte un certain degré de risque de régression. La capacité de peser ce risque avec une évaluation des avantages probables est ce qui rend les professionnels de l'assurance qualité comme Joachim inestimables pour tout projet dont la complexité augmente rapidement.

À la lumière des améliorations significatives de ReactOS et afin d'aider les utilisateurs potentiels à mieux comprendre l'état actuel du système d'exploitation et le degré de prise en charge de certaines applications, Joachim a également restructuré la page des résultats des tests pour mieux présenter les informations pertinentes. Vous pouvez maintenant voir non seulement la conclusion générale du test pour chaque application, mais aussi les détails indiquant ce qui a conduit à la conclusion spécifique, ainsi que les «solutions de contournement» possibles pour résoudre le problème ici et maintenant.

Accord final


Vous avez soudainement voulu installer ReactOS pour la première fois de votre vie? Assurez-vous de lire ce manuel d' installation du système.

Vous avez aimé cette version? Nous attendons vos commentaires et opinions avec impatience! N'oubliez pas que vous pouvez aider le projet non seulement avec des dons , mais simplement en y mettant un astérisque sur le github !

Si vous aimez lire mes résumés sur la progression du développement du système d'exploitation ReactOS et que vous souhaitez voir ces publications plus souvent - vous pouvez me traiter avec une tasse de café en cliquant sur le bouton dans la section " Soutenir l'auteur " en ce moment sous cet article.

Source: https://habr.com/ru/post/fr442486/


All Articles