Éclairage

Système d'exploitation. Systèmes de calcul formel : brillance, pauvreté ou raisons pour lesquelles de nombreux problèmes ne peuvent pas être résolus de front

Dans cet article, nos lecteurs se voient proposer un aperçu des systèmes mathématiques les plus populaires présentés sur le marché russe des logiciels.

Récemment, le terme « mathématiques informatiques » est devenu très populaire et largement utilisé parmi de larges cercles d'utilisateurs d'ordinateurs de différentes classes. Ce concept comprend un ensemble d'outils à la fois théoriques et méthodologiques, ainsi que des outils logiciels et matériels modernes qui permettent d'effectuer tous les calculs mathématiques avec un haut degré précision et performances, ainsi que pour construire des chaînes complexes d'algorithmes de calcul avec un large éventail de visualisation des processus et des données pendant leur traitement.

La demande de progiciels universels et spécialisés pour résoudre divers problèmes appliqués a provoqué l'apparition sur le marché de produits logiciels de systèmes mathématiques informatiques, qui sont rapidement devenus populaires. Un certain nombre de grandes entreprises sont actuellement présentes sur le marché des systèmes mathématiques modernes : Macsyma, Inc., Waterloo Maple Software, Inc., Wolfram Research, Inc., MathWorks, Inc., MathSoft, Inc., SciFace GmbH, etc. développer chacun Un tel système mathématique implique des centaines de professionnels issus d'universités renommées et de grands centres de recherche, ainsi que des programmeurs hautement qualifiés et des experts dans la conception de systèmes logiciels complexes. En conséquence, nous disposons de produits très parfaits, flexibles et en même temps universels qui incluent des concepts mathématiques essentiels et disposent d'un riche ensemble de méthodes pour résoudre des problèmes mathématiques, scientifiques et techniques généraux. Cet article est consacré à l’examen et à une brève analyse de ces produits logiciels.

MATLAB

MATLAB est un produit de MathWorks, Inc. (http://www.mathwork.com/), qui est un langage haut niveau pour les calculs scientifiques et techniques. Parmi les principaux domaines d'application de MATLAB figurent les calculs mathématiques, le développement d'algorithmes, la modélisation, l'analyse et la visualisation de données, le graphisme scientifique et technique, le développement d'applications, y compris une interface utilisateur graphique. MATLAB résout de nombreux problèmes informatiques - de la collecte et de l'analyse de données au développement d'applications prêtes à l'emploi. L'environnement MATLAB combine calculs mathématiques, visualisation et un langage technique puissant. Les interfaces universelles intégrées facilitent le travail avec des sources d'informations externes, ainsi que l'intégration avec des procédures écrites dans des langages de haut niveau (C, C++, Java, etc.). La nature multiplateforme de MATLAB en a fait l'un des produits les plus répandus - il est en fait devenu la norme de calcul technique acceptée dans le monde entier. MATLAB propose un large éventail d'applications, notamment le traitement du signal numérique et de l'image, la conception de systèmes de contrôle, les sciences naturelles, la finance, l'économie, l'instrumentation, etc. Prix ​​- 2940 $

érable

Ce produit de Waterloo Maple Software, Inc. (http://www.maplesoft.com/) est souvent appelé système informatique symbolique ou système de calcul formel. Maple vous permet d'effectuer des calculs numériques et analytiques avec la possibilité de modifier le texte et les formules sur la feuille de calcul. Grâce à la présentation de formules au format polygraphique, de magnifiques graphismes et animations en deux et trois dimensions, Maple est en même temps un puissant éditeur graphique scientifique. Un langage interpréteur simple et efficace, une architecture ouverte, la possibilité de convertir les codes Maple en codes C le rendent très outil efficace création de nouveaux algorithmes. Avec une interface intuitive, règles simples travail et fonctionnalités étendues, ce produit a déjà gagné en popularité parmi les mathématiciens et les ingénieurs russes. Prix ​​​​de l'érable 7 - 1695 $

Mathématique

Mathematica - Wolfram Research, Inc. (http://www.wolfram.com/) propose une gamme extrêmement large d'outils permettant de traduire des algorithmes mathématiques complexes en programmes. En fait, tous les algorithmes contenus dans les cours de mathématiques supérieures d'une université technique sont intégrés dans la mémoire du système informatique Mathematica. Dans certains pays (par exemple aux États-Unis), le système l'enseignement supérieurétroitement lié à ce produit. Le grand avantage de Mathematica est que ses opérateurs et ses manières d'écrire des algorithmes sont simples et naturels. Mathematica dispose d'un puissant package graphique avec lequel vous pouvez tracer des fonctions très complexes à une ou deux variables. Le principal avantage de Mathmatica, qui en fait le leader incontesté parmi les autres systèmes de haut niveau, est que ce système est aujourd'hui très répandu dans le monde entier, couvrant de vastes domaines d'application dans la recherche scientifique et technique, ainsi que dans l'éducation. Prix ​​- 1 460 $

Macsyma

Macsyma par Macsyma, Inc. (http://www.macsyma.com/) est l'un des premiers programmes mathématiques à fonctionner avec les mathématiques symboliques. Forces Macsyma est un outil avancé pour l'algèbre linéaire et les équations différentielles. Le système est axé sur les calculs appliqués et n'est pas destiné à la recherche théorique dans le domaine des mathématiques. À cet égard, le programme manque ou réduit des sections liées aux méthodes théoriques (théorie des nombres, théorie des groupes, etc.). Le principal avantage de Macsyma par rapport aux autres progiciels mathématiques universels est peut-être que l'utilisateur peut résoudre analytiquement et numériquement un grand nombre de divers typeséquations aux dérivées partielles. Macsyma a une interface très conviviale. Le document de travail du programme est un cahier scientifique contenant des champs modifiables de texte, de commandes, de formules et de graphiques. Une caractéristique distinctive du package est la compatibilité avec un éditeur de texte. Microsoft Word. Presque toutes les commandes Macsyma dans les fichiers de bibliothèque sont chargées automatiquement ; très pratique et fenêtre de visualisation (navigateur) des fonctions mathématiques. Macsyma génère du code FORTRAN et C, y compris des instructions de contrôle. Le système fonctionne sur une plate-forme Intel exécutant le système d'exploitation Windows.

MuPAD

Comparé à d'autres progiciels mathématiques, MuPAD - un produit de SciFace GmbH (http://www.sciface.com/) - est un produit relativement jeune, mais cela ne l'empêche pas de rivaliser avec eux en toute confiance. MuPAD est un progiciel de calcul formel conçu pour résoudre des problèmes mathématiques de différents niveaux de complexité. Les principales différences qualitatives de MuPAD sont les faibles exigences en ressources PC, la présence de son propre noyau de mathématiques symboliques, la capacité de développement par l'utilisateur lui-même et de puissants outils de visualisation pour résoudre des problèmes mathématiques. Le package prend en charge un large éventail d’objets mathématiques et d’algorithmes pour un large éventail de tâches. Le travail de l'utilisateur s'effectue dans une fenêtre de bloc-notes qui permet d'entrecouper le texte de formules mathématiques, de texte formaté et de sortie de solution, y compris des graphiques 2D et 3D. Pour développer vos propres algorithmes et fonctions basés sur la bibliothèque de fonctions MuPAD, le système fournit un langage de programmation spécial de type Pascal et un débogueur interactif étape par étape. Les algorithmes créés par l'utilisateur peuvent être combinés dans des bibliothèques distinctes. Prix ​​​​MuPAD 2.0 - 700 $

S-PLUS

S-PLUS est un produit d'Insightful Corporation (http://www.insightful.com/), anciennement connue comme une division de MathSoft, et aujourd'hui l'un des leaders mondiaux en matière d'analyse, de visualisation et de prédiction de données statistiques. S-PLUS est un environnement informatique interactif qui fournit une analyse graphique complète des données et comprend un langage orienté objet original. Le système flexible S-PLUS peut être utilisé pour l'analyse exploratoire des données, l'analyse statistique et les calculs mathématiques, ainsi que pour une représentation graphique pratique des données analysées. Les principaux avantages de S-PLUS incluent des fonctionnalités inégalées, la possibilité d'une analyse visuelle interactive des données, une interface utilisateur intuitive et des méthodes de préparation des données analysées, la facilité d'utilisation des méthodes statistiques les plus modernes, de puissantes capacités informatiques, un ensemble extensible de statistiques méthodes, une interface utilisateur flexible. Prix ​​- 2865$

OrdinateurPress 12"2001

Les systèmes mathématiques informatiques (FAO) font des merveilles. Le développement des progiciels mathématiques a atteint un niveau où la pensée s'insinue involontairement - pourquoi avons-nous maintenant besoin de méthodes classiques d'enseignement des mathématiques (ou de la physique ou de la mécanique) à l'école ou à l'université, si la plupart du « sale » travail de conversion des expressions peut être déplacé vers les épaules de la machine. Et s'il est impossible ou difficile d'obtenir une solution analytique au problème, alors pourquoi ne pas "cliquer" dessus numériquement dans l'un des packages populaires. Limitons donc le niveau de compréhension des élèves en compilant le système d'équations initial, mais nous n'apprendrons pas à décider - tout sera fait facilement et naturellement par l'ordinateur pour eux.

Je ne cacherai pas le fait que le catalyseur de la rédaction de cet article a été les amoureux de la randonnée, tirés du livre de V. I. Arnold. À cet égard, l'idée est née de considérer un problème mathématique simple, dont la solution montre que les capacités du SCA reposent souvent sur une limite supérieure assez naturelle, et afin d'obtenir une solution compacte adaptée à une analyse plus approfondie, il est nécessaire pour resserrer un peu les circonvolutions.

1. Système d'équations trigonométriques

Lorsque, en 2003, j'ai commencé à travailler sur ma thèse de doctorat, j'ai été confronté à la nécessité de résoudre un système d'équations trigonométriques de la forme

Les paramètres a, b, A, B sont positifs. Des conditions sont imposées sur les racines de l'équation

Où rencontre-t-on de tels systèmes ? Lors du calcul de la cinématique d'un quatre maillons fermés, par exemple. Un tel quatre maillons fermés était dans mon travail, j'ai rencontré presque la même chose il y a environ un an, lorsque j'ai entrepris de créer un « coven » (j'ai aidé un professeur dans son travail).

Puis, en 2003, je viens de découvrir le système Maple et suis ravi de ses capacités, c'est naturellement que je lui confie ce système. Et une "déception" m'attendait... Voyons quelle solution Maple 18 et Mathematica 10 proposent aujourd'hui pour cette tâche.

2. Résoudre le problème du SKA "sur le front"

Dans mon Maple préféré, nous définissons le système d'équations

redémarrage; eq01 := a*cos(x) + b*cos(y) = A ; eq02:= a*sin(x) - b*sin(y) = B;

Et nous essayons de résoudre

Solv:= résoudre((eq01, eq02), (x, y));

Et nous obtenons...

Ce bug ne cadrait pas avec LaTeX en ligne, j'ai donc dû fournir une capture d'écran. Ce résultat est obtenu du fait que la formulation du problème est trop générale. Il faut indiquer au système quelle solution nous intéresse en utilisant la condition (3)

Solv:= résoudre((eq1, eq2, x > 0 et x< Pi, y >0 et y< Pi}, {x, y});

Dans ce cas, le résultat est meilleur

Encore une fois, je m'excuse auprès du lecteur pour la capture d'écran maladroite et note que nous avons reçu deux solutions au système (1) - (3) et que nous devons maintenant déterminer quelle réponse correspond à la signification mécanique du problème (c'est là, oui), et étant donné que derrière a, b, A et B peuvent être des expressions assez significatives (ne dépendant pas, bien sûr, de x et y), nous devrions être assez tristes à ce stade.

Le système Mathematica 10 fait mieux avec ces équations dans le sens où il obtient la forme finale de la solution générale, dont une partie est à l'écran.

Si le système est complété par la condition (3), alors Wolfram nous dit que Solve[...] n'a pas de méthode de solution pour un tel cas (je serais reconnaissant au lecteur pour un indice sur cette question, car je pense que je n'ai moi-même pas étudié complètement la question, mais pour l'instant continuez l'histoire).

De plus, les deux SKA émettent un arc tangentiel blasphématoire dans leur solution, ce qui n'est pas toujours pratique pour diverses raisons, dont je ne parlerai pas - dans chaque cas, il y a des raisons différentes.

Lorsque mon « patron » aujourd'hui décédé a vu ces décisions en 2003, il a pensé et dit que « ces crocodiles ont besoin d'être peignés », ce qui m'a fait plonger dans une réflexion plus approfondie. Et je me suis encore armé d'un morceau de papier et d'un crayon...

3. SKA + cerveau

Pour obtenir une solution suffisamment compacte, il est nécessaire de transformer le système (1) - (3) en un système linéaire par rapport aux inconnues. Pour ce faire, vous devez utiliser les connaissances scolaires en trigonométrie.

Alors, mettons au carré les équations (1) et (2) et ajoutons-les, en déplaçant tout ce qui ne dépend pas de x et y vers le côté droit de l'équation.

Gauche1 := gauche(eq01) : gauche2 := gauche(eq02) : droite1 := rhs(eq01) : droite2 := droite(eq02) : eq03 := simplifier (gauche1^2 + gauche2^2)= droite1^2 + à droite2^2 ; eq03 := eq03 - (a^2 + b^2) ; left3:= combiner(lhs(eq03)); eq03_1 := gauche3 = droite(eq03);

En utilisant la formule "cosinus de la somme", on obtient une nouvelle équation

Maintenant, en le résolvant par rapport à la somme des inconnues, nous arrivons à l'équation linéaire

Une équation linéaire est également linéaire en Afrique : après avoir trouvé une inconnue, nous en obtenons une autre. Traitons une autre inconnue en éliminant x de l'une de leurs équations. Puisque nous avons la condition (3), il est évident que

Et cela nous donne l'opportunité d'utiliser l'identité trigonométrique de base sans l'ambiguïté « plus ou moins »

On prend le cosinus de x de la première équation

Obtenir, donc pour le sinus x

Pour ne pas gonfler le papier, confions tout cela à Maple

Eq01_1 := subs(cos(x) = u, eq01); slv:= résoudre(eq01_1, u); eq02_1 := subs(sin(x) = sqrt(1-slv^2), eq02); eq02_1 := eq02_1 + b*sin(y);

Avoir l'équation de sortie

L'équation (7) doit être mise au carré et certaines transformations effectuées

Gauche := expand(lhs(eq02_1)^2) : droite := expand(rhs(eq02_1)^2) : eq02_2:= collect(simplify(right - left), b); eq02_3:= subs(coeff(eq02_2, b) = tmp, eq02_2); slv2:= résoudre(eq02_3, tmp); eq02_4 := -2*A*cos(y) + 2*B*sin(y) = slv2 ; eq02_5 := eq02_4/(-2);

Et maintenant, exécutons, connu de beaucoup, "feinte avec les oreilles"

Gauche2:= lhs(eq02_5); left3:= subs(A = O2A*cos(xi), B = O2A*sin(xi), left2); left4:= subs(O2A = sqrt(A^2 + B^2), combiner(left3));

Autrement dit, nous divisons les deux côtés de l'équation par et plions le côté gauche selon la formule cosinus de la somme, en supposant à juste titre que

Nous obtenons une nouvelle équation

Que nous résolvons avec succès pour y

Eq02_6 := gauche4 = droite(eq02_5); slv3:= subs(xi = arccos(A/sqrt(A^2 + B^2)), résoudre(eq02_6, y)) :

Comme vous pouvez le constater, le jeu est sorti assez compact. Nous revenons à l'équation (5) et trouvons x

L'ordinateur est un système très complexe. Cela consiste en différents composants(Comment fonctionne un ordinateur.) - le processeur central, la RAM et la mémoire externe, les écrans, les imprimantes...

Et tous ces dispositifs doivent fonctionner de concert, comme un seul mécanisme.

La cohérence est obtenue grâce au système d’exploitation. Ce n'est pas un appareil, ni un nœud. Le système d'exploitation d'un ordinateur est un programme. Mais le programme n'est pas simple. Il assure le fonctionnement de tous les appareils informatiques, surveille l'exécution des autres programmes de travail.

Ces points sont particulièrement importants lorsque plusieurs utilisateurs travaillent sur le même ordinateur. Et c'est une chose courante pour les grands, moyens et même petits ordinateurs.

Par exemple, le système de billetterie ferroviaire Sirena (Comment fonctionne Sirena.) dispose de dizaines de terminaux qui doivent fonctionner simultanément. De plus, si tous les caissiers disposent de leurs propres appareils d'impression, alors le processeur central, les lecteurs de bande et les lecteurs de disque leur sont communs.

La tâche du système d'exploitation est d'organiser le travail avec les appareils partagés afin qu'ils n'interfèrent pas les uns avec les autres.

Et puis des situations assez désagréables sont possibles. Imaginez que vous résolvez deux tâches nécessitant l’utilisation d’un lecteur de bande et d’une imprimante.

Et puis l'un d'eux a "capturé" le lecteur de bande et attend que l'imprimante soit libérée. L'autre a réussi à occuper l'imprimante et attend le lecteur de bande. Ils peuvent donc s'attendre pour toujours. Pas étonnant que les programmeurs appellent de telles situations des « câlins mortels ».

Ou il fallait une tâche pour imprimer les résultats, cela imprimait une ligne. Puis une autre tâche fit de même, puis une troisième. Il est peu probable que quiconque puisse comprendre la « bouillie » imprimée qui en résulte.

Voici les systèmes d'exploitation et sont conçus pour garantir que de telles situations ne se produisent pas.

Il existe plusieurs manières d'organiser le travail d'un ordinateur tout en étant utilisé par plusieurs utilisateurs en même temps.

Vous pouvez résoudre des tâches provenant de différents terminaux de manière séquentielle, les unes après les autres. Le système d'exploitation les met en file d'attente soit par ordre d'arrivée, soit par ordre d'importance. Dès que la solution d'une tâche est terminée, la suivante est chargée, et ainsi de suite.

En même temps, pendant que la tâche suivante est en cours de résolution, vous pouvez imprimer les résultats de la résolution de la précédente.

Ce mode de fonctionnement est appelé batch. C'est plus pratique lorsque l'on résout des tâches importantes qui ne nécessitent pas d'intervention humaine.

Vous pouvez organiser le travail en temps réel. Cela est nécessaire lorsque l'ordinateur est utilisé pour contrôler un avion ou faire fonctionner une centrale électrique.

Ici, il est important de traiter immédiatement les informations de l'objet contrôlé, de recevoir une réponse à un changement de situation et de transmettre des signaux de contrôle.

Il existe également un régime de temps partagé dans lequel chaque programmeur travaillant sur une machine a l'impression de travailler seul.

Cette méthode est choisie lorsque l'œuvre est en mode dialogue : la question d'une personne est la réponse d'un ordinateur. Dans ce cas, la réponse vient presque instantanément.

En général, il existe de nombreuses façons de créer des systèmes d’exploitation. Le même ordinateur peut exécuter différents systèmes d'exploitation. Lequel utiliser dépend des types de tâches résolues sur l’ordinateur.

Les commentaires sont fermés maintenant !

Alors, qu’est-ce qu’un système d’exploitation sur un ordinateur ? Le système d'exploitation est le plus important logiciel qui s'exécute sur l'ordinateur. Il gère la mémoire, les processus et tous les logiciels et matériels. On peut dire que le système d'exploitation est un pont entre un ordinateur et une personne. Car sans système d’exploitation, un ordinateur ne sert à rien.

AppleMacOS X

Mac OS est une gamme de systèmes d'exploitation créée par par Apple. Il est préinstallé sur tous les nouveaux ordinateurs Macintosh ou Mac. Dernières versions ce système d'exploitation est connu sous le nom OS X. À savoir L'heure de Yosé(sorti en 2014), Non-conformistes (2013), Montagne Léon (2012), Léon(2011), et Afficher Léopard(2009). Avoir aussi Mac OS X Serveur, conçu pour fonctionner sur des serveurs.

Selon les statistiques générales de StatCounter Global Stats, le pourcentage d'utilisateurs de Mac OS X représentait 9,5 % du marché des systèmes d'exploitation en septembre 2014. C'est bien inférieur au pourcentage Utilisateurs Windows(presque 90% ). L’une des raisons à cela est que les ordinateurs Apple sont très chers.

Linux

Linux est une famille de systèmes d'exploitation open source. Cela signifie qu’ils peuvent être modifiés (changés) et distribués par n’importe qui dans le monde. Ceci est très différent des autres comme Windows, qui ne peut être modifié et redistribué que par le propriétaire (Microsoft). L’avantage de Linux est qu’il est gratuit et qu’il existe de nombreuses versions différentes parmi lesquelles choisir. Chaque version a son propre apparence, et les plus populaires d'entre eux sont Ubuntu, menthe Et Feutre.

Linux doit son nom à Linus Torvalds, qui a jeté les bases de Linux en 1991.

Selon StatCounter Global Stats, le pourcentage d'utilisateurs de Linux représentait moins de 2 % du marché des systèmes d'exploitation en septembre 2014. Cependant, en raison de la flexibilité et de la facilité de configuration, la plupart des serveurs fonctionnent sous Linux.

Systèmes d'exploitation pour appareils mobiles

Tous les systèmes d'exploitation dont nous avons parlé ci-dessus sont conçus pour les ordinateurs de bureau et portables tels que les ordinateurs portables. Il existe des systèmes d'exploitation spécialement conçus pour les appareils mobiles tels que les téléphones et les lecteurs MP3, par exemple. Apple, IOS, Windows Phone Et Google Android. Dans l'image ci-dessous, vous pouvez voir Apple iOS fonctionner sur iPad.

Bien sûr, leurs fonctionnalités sont inférieures aux systèmes d'exploitation informatiques, mais ils sont toujours capables d'effectuer de nombreuses tâches de base. Par exemple, regarder des films, naviguer sur Internet, exécuter des applications, jouer à des jeux, etc.

C'est tout. Laissez dans les commentaires quel système d'exploitation vous utilisez et pourquoi vous l'aimez