L'informatique
L'informatique est la science de la représentation systématique, du stockage, du traitement et de la transmission de l'information , une attention particulière étant accordée au traitement automatique avec des ordinateurs numériques . [1] C'est à la fois une science fondamentale et formelle ainsi qu'une discipline d'ingénierie . [2]
histoire de l'informatique
origine
Gottfried Wilhelm Leibniz avait déjà traité des représentations des nombres binaires . Avec l'algèbre booléenne , qui a été élaborée pour la première fois par George Boole en 1847 , ils forment les fondements mathématiques les plus importants des systèmes de calcul ultérieurs. En 1937 , Alan Turing publie son ouvrage On Computable Numbers with an application to the decision problem , dans lequel est présentée la machine de Turing qui porte son nom , un modèle de machine mathématique qui est encore aujourd'hui de la plus grande importance pour l'informatique théorique . Le concept de prévisibilitéreposent encore sur des modèles universels tels que la machine de Turing et la théorie de la complexité , qui ont commencé à se développer dans les années 1960. La calculabilité repose sur des variantes de ces modèles jusqu'à présent.
étymologie
Le mot informatique est né de l'ajout du suffixe -ik à la racine de l' information . Karl Steinbuch a inventé le terme informatique avec Helmut Gröttrup [3] et l'a utilisé dans sa première publication "Computer Science: Automatic Information Processing" [4] en avril 1957, qu'il a publiée chez Standard Elektrik AG (SEG). [5] [6] Afin de souligner l'importance de l'automatisation ou des mathématiques pour l'informatique, l'informatique est parfois aussi utilisée comme portemanteau d' informationet automatique ou information et mathématiques . [sept]
Après un colloque international à Dresde le 26 février 1968, l'informatique en tant que désignation scientifique basée sur le modèle français (informatique) et russe (Информатика) s'est également imposée dans le monde germanophone. [8] [9] En juillet de la même année, le terme informatique a été utilisé pour la première fois comme nom allemand pour un nouveau sujet à mettre en place dans un discours de Berlin par le ministre Gerhard Stoltenberg . [10] Alors que le terme Computer Science est courant dans le monde anglophone , l'équivalent allemand Computerwissenschaften ne pouvait prévaloir. Cependant, l'expression seraL'informatique est utilisée en anglais pour certaines parties de l'informatique appliquée , par exemple dans le cas de la bioinformatique ou de la géoinformatique . Pour les traductions vers l'anglais, le terme informatique est parfois préféré à celui d' informatique dans le monde germanophone . [11]
Développement de l'informatique à la science
En Allemagne, les débuts de l'informatique en tant que science remontent à 1952, lorsque la première conférence informatique allemande sur le thème des dispositifs informatiques contrôlés par programme et des systèmes d'intégration avec Konrad Zuse et Heinz Nixdorf a eu lieu à l' Université RWTH d'Aix- la-Chapelle en juillet. . [12] En 1953, il y eut un colloque sur les systèmes informatiques à Göttingen, après que le premier ordinateur électronique allemand, le G1 , fut mis en service là-bas. L ' Université technique de Munich a également développé un ordinateur à tube , le PERM , sous la direction de Hans Piloty et Robert Sauer, mis en service en 1956, et invité à une table ronde en 1954. [13] À l'Institut de mathématiques pratiques (IPM) de l' Université technique de Darmstadt (TH Darmstadt) , que le mathématicien Alwin Walther avait construit depuis 1928 [14] , les premiers étudiants ont pu traiter les problèmes de calcul machines à la calculatrice électronique de Darmstadt en 1956. Dans le même temps, les premières conférences et stages de programmation ont été proposés au TH Darmstadt. En raison de la réputation que le TH Darmstadt avait à l'époque dans la recherche sur les machines informatiques, un congrès sur le thème de l'informatique ( machines informatiques électroniques et traitement de l'information) avec une participation internationale en octobre 1955 au TH Darmstadt, qui est considéré comme le berceau du langage de programmation ALGOL . [15]
L'Allemagne manquait de compétitivité dans le domaine de l'informatique (DP) dans les années 1960. Pour contrer cela, le 26 avril 1967, le Comité fédéral de la recherche scientifique a adopté le Programme de promotion de la recherche et du développement dans le domaine de l'informatique pour les tâches publiques . Le soi-disant "Conseil consultatif pour le traitement des données" était responsable de la mise en œuvre, qui était principalement composé de représentants des universités et des instituts de recherche non universitaires. Lors de la septième réunion du conseil consultatif, le 15 novembre 1967, Karl Ganzhorn , alors responsable de la recherche et du développement chez IBM Allemagneétait responsable des problèmes de l'industrie pour trouver du personnel qualifié. Le directeur de l'institut de traitement des messages du TH Darmstadt, Robert Piloty , a rappelé que les universités allemandes sont responsables de la formation du personnel qualifié. En conséquence, le comité " Chaires DV et formation " a été formé. Piloty prit le fauteuil. Le comité a formulé des recommandations pour la formation des informaticiens, qui prévoyaient la création d'un cours d'informatique dans plusieurs universités et collèges techniques. [14]
En 1967, à l'initiative de Friedrich Ludwig Bauer , l' Université technique de Munich propose le premier cours d'informatique en Allemagne avec une majeure en traitement de l'information dans le cadre du cours de mathématiques . [14] [16] [17] En 1968, le TH Darmstadt a présenté un programme "d'Informatique" à la Faculté d'Ingénierie Électrique . Cela a été suivi en 1969 par le cours "Technologie des données (informatique technique)" au département de la réglementation et de la technologie des données et en 1970 par un cours de mathématiques, qui s'est terminé par le diplôme d'"ingénieur diplômé en mathématiques avec une spécialisation en informatique" . [14]Le 1er septembre 1969, l'Université technique de Dresde a été la première université de la RDA à commencer la formation Dipl.-Ing. pour le traitement de l'information. Toujours en 1969, l' école d'ingénieurs de Furtwangen (plus tard l' université des sciences appliquées de Furtwangen ) a commencé la formation, ici appelée informatique. [18] Au semestre d'hiver 1969/70, l'Université de Karlsruhe (aujourd'hui l' Institut de technologie de Karlsruhe ) a été la première université allemande à proposer des études en informatique, qui se sont terminées par le diplôme "Diplom-Informatiker". [19]
L' Université Johannes Kepler (JKU) Linz a débuté au semestre d'hiver 1969/70 en tant que première université autrichienne à étudier l'informatique et à former un ingénieur qualifié. [20] L' université technique de Vienne a suivi au semestre d'hiver de 1970/71 . [21] Quelques années plus tard, les premières facultés d'informatique ont été fondées, après qu'un département d'informatique ait existé à l'Université Purdue depuis 1962 .
Dans les pays anglophones, la science individuelle est appelée science informatique . Le premier diplôme universitaire était le Diplôme en analyse numérique et calcul automatique de l' Université de Cambridge . Le cours de troisième cycle d'un an a commencé en octobre 1953. [22] [23]
organisations
La Gesellschaft für Informatik (GI) a été fondée en 1969 et est la plus grande association professionnelle de la région germanophone. Les deux principales associations américaines, l' Association for Computing Machinery (ACM) depuis 1947 et l' Institute of Electrical and Electronics Engineers (IEEE) depuis 1963 , sont d'importance internationale.La plus importante organisation germanophone traitant des effets éthiques et sociaux de l'informatique est le Forum des informaticiens pour la paix et la responsabilité sociale . L'Association for Computing Machinery décerne chaque année le prix Turing , dont le rang est à peu près comparable au prix Nobel d'informatique.
Calculatrices - précurseurs de l'ordinateur
Les efforts pour développer deux types de machines peuvent être vus comme les premiers précurseurs de l'informatique au-delà des mathématiques : celles avec lesquelles des calculs mathématiques peuvent être effectués ou simplifiés (« machines à calculer »), et celles avec lesquelles des conclusions logiques peuvent être tirées et des arguments cochée (« Machines logiques »). Le boulier et plus tard la règle à calcul ont fourni des services inestimables en tant que simples dispositifs informatiques . En 1641, Blaise Pascal a construit une calculatrice mécanique qui pouvait effectuer des additions et des soustractions, y compris des retenues . Ce n'est qu'un peu plus tard que Gottfried Wilhelm Leibniz a présentéa présenté une machine à calculer capable d'effectuer les quatre opérations arithmétiques de base . Ces machines sont basées sur des engrenages imbriqués. À partir de 1838, Charles Babbage fait un pas vers une plus grande souplesse, s'efforçant de maîtriser les opérations arithmétiques à l'aide de cartes perforées . Grâce aux progrès techniques à partir de 1886, Herman Hollerith fut le premier à pouvoir mettre en œuvre cette idée de manière rentable. Ses machines à compter basées sur des cartes perforées ont été utilisées, entre autres, dans l'évaluation d'un recensement aux États-Unis.
L'histoire des machines logiques remonte souvent au XIIIe siècle et est attribuée à Ramon Llull . Même si ses constructions en forme de slide -disc , dans lesquelles plusieurs disques tournant dans des sens opposés pouvaient représenter différentes combinaisons de termes, n'étaient mécaniquement pas très complexes, c'est probablement lui qui a popularisé l'idée d'une machine logique. En dehors de ce précurseur très précoce, l'histoire des machines logiques se situe en fait à une époque différente de celle des machines à calculer : un dispositif semblable à une règle à calcul du troisième comte Stanhope , qui est attribué à la validité des syllogismes , date de 1777(au sens aristotélicien) à examiner. Une véritable « machine » a d'abord été transmise sous la forme du « Piano logique » de Jevons pour la fin du 19e siècle. Ce n'est qu'un peu plus tard que la mécanique a été remplacée par des circuits électromécaniques et électriques. Les machines logiques ont connu leur apogée dans les années 1940 et 1950, par exemple avec les machines du constructeur anglais Ferranti . Avec le développement des ordinateurs numériques universels - contrairement aux machines à calculer - l'histoire des machines logiques indépendantes a pris fin brutalement, car les tâches qu'elles traitaient et résolvaient de plus en plus dans le logicielont été implémentés précisément sur les ordinateurs dont ils doivent être comptés parmi les prédécesseurs matériels.
Développement de calculatrices modernes
L'une des premières machines à calculer plus grosses est la Z1 de 1937, créée par Konrad Zuse et fonctionnant toujours de manière purement mécanique . Quatre ans plus tard, Zuse met en œuvre son idée en utilisant des relais électriques : le Z3 de 1941 est le premier ordinateur numérique entièrement fonctionnel et librement programmable au monde [24] qui sépare déjà les commandes et le stockage des données et les panneaux d'entrée/sortie.
Un peu plus tard en Angleterre, les efforts pour construire des machines à calculer pour déchiffrer les messages secrets allemands ont été poussés avec un grand succès sous la direction autoritaire d' Alan Turing ( Turingbombe ) et de Thomas Flowers (Colossus). Dans le même temps, Howard Aiken a développé le Mark I (1944), le premier ordinateur à relais contrôlé par programme aux États-Unis, où le développement a été considérablement encouragé. D'autres ordinateurs relais ont été créés dans les laboratoires Bell (George Stibitz). L'ordinateur Atanasoff-Berry est considéré comme le premier ordinateur à tube. L'un des principaux protagonistes ici est John von Neumann , après qui l'architecture de von Neumann , qui est encore importante aujourd'huiest appelé. L'ordinateur à tubes ENIAC a été développé en 1946 et l' EDSAC a été construit en 1949 - avec la première implémentation de l'architecture Von Neumann.
IBM a commencé à développer des ordinateurs en 1948 et est devenu le leader du marché en dix ans. Une étape importante dans l'histoire de l'entreprise a été l'introduction du System/360 en 1964. Le mainframe est l'ancêtre des mainframes Z-Systems d'aujourd'hui et a suivi la série IBM 700/7000 . Dès 1959, l' IBM 1401 , un ordinateur pour les entreprises de taille moyenne, a été introduit, souvent appelé le Ford Model T de l'industrie informatique en raison de ses chiffres de vente. Avec le développement de la technologie des transistors et de la technologie des microprocesseursLes ordinateurs sont devenus de plus en plus puissants et moins chers. En 1982, la société Commodore ouvre enfin le marché de masse spécifiquement pour les particuliers, mais aussi bien au-delà, avec le C64 .
langages de programmation
L'invention de la "programmation automatique" par Heinz Rutishauser (1951) a été importante pour le développement des langages de programmation. En 1956, Noam Chomsky décrit une hiérarchie de grammaires formelles auxquelles correspondent des langages formels et des modèles de machines spécifiques. Ces formalisations sont devenues très importantes pour le développement des langages de programmation . Les étapes importantes ont été le développement de FORTRAN (de l'anglais : "FORMula TRANslation", traduction de formules ; premier langage de programmation de haut niveau , 1957), ALGOL (de l'anglais : "ALGOrithmic Language", langage algorithmique ; structuré / impératif; 1958/1960/1968), Lisp (de l'anglais : "LISt Processing", traitement de listes ; fonctionnel , 1959), COBOL (de l'anglais : "COmmon Business Orientated Language", langage de programmation pour applications commerciales, 1959), Smalltalk ( objet -orienté , 1971), Prolog ( logique , 1972) et SQL ( bases de données relationnelles , 1976). Certains de ces langages représentent des paradigmes de programmation typiques de leur époque. D'autres langages de programmation qui ont été utilisés dans la pratique depuis longtemps sont BASIC (depuis 1960), C (depuis 1970), Pascal(depuis 1971), Objective-C ( orienté objet , 1984), C++ (orienté objet, générique , multi-paradigme, depuis 1985), Java (orienté objet, depuis 1995) et C# (orienté objet, vers 2000 ). Les langues et les changements de paradigme ont été intensivement accompagnés ou promus par la recherche en informatique.
Comme pour les autres sciences, on observe également une tendance croissante à la spécialisation.
disciplines de l'informatique
L'informatique est divisée en sous-domaines de l'informatique théorique , de l'informatique pratique et de l'informatique technique .
Les applications de l'informatique dans les différents domaines de la vie courante ainsi que dans d'autres domaines spécialisés tels que l' informatique de gestion , la géoinformatique et l'informatique médicale sont regroupées sous le terme d'informatique appliquée . Les effets sur la société sont également examinés de manière interdisciplinaire.
L'informatique théorique constitue la base théorique des autres sous-domaines. Il fournit des connaissances fondamentales pour la décidabilité des problèmes, pour la classification de leur complexité et pour la modélisation des automates et des langages formels .
Les disciplines de l'informatique pratique et technique sont basées sur ces découvertes. Vous traitez des problèmes centraux de traitement de l'information et recherchez des solutions applicables.
Les résultats sont finalement utilisés en informatique appliquée. Les réalisations matérielles et logicielles peuvent être attribuées à ce domaine et donc une grande partie du marché de l'informatique commerciale. Dans les matières interdisciplinaires, il est également examiné comment les technologies de l'information peuvent résoudre des problèmes dans d'autres domaines scientifiques, tels que le développement de géodatabases pour la géographie , mais aussi les affaires ou la bioinformatique .
Informatique théorique
En tant que colonne vertébrale de l'informatique, le domaine de l'informatique théorique traite des aspects abstraits et mathématiques de la science. Le domaine est vaste et traite, entre autres, de sujets issus de la linguistique théorique ( théorie des langages formels ou théorie des automates ), de la calculabilité et de la théorie de la complexité . L'objectif de ces sous-domaines est de répondre de manière exhaustive à des questions fondamentales telles que "Que peut-on calculer ?" et "Dans quelle mesure peut-on calculer quelque chose de manière efficace/efficace ?".
Théorie des automates et langages formels
En informatique, les machines sont des « machines imaginaires » qui se comportent selon certaines règles. Une machine à états finis a un ensemble fini d'états internes. Il lit un "mot d'entrée" caractère par caractère et effectue une transition d'état pour chaque caractère. De plus, il peut sortir un "symbole de sortie" à chaque transition d'état. Après la fin de l'entrée, la machine peut accepter ou rejeter le mot d'entrée.
L' approche du langage formel a ses origines dans la linguistique et est donc bien adaptée à la description des langages de programmation. Cependant, les langages formels peuvent également être décrits par des modèles d'automates, puisque l'ensemble de tous les mots acceptés par un automate peut être considéré comme un langage formel.
Des modèles plus compliqués ont une mémoire, par exemple les automates à pile ou la machine de Turing, qui selon la thèse de Church-Turing peuvent reproduire toutes les fonctions calculables par l'homme.
théorie de la prévisibilité
Dans le cadre de la théorie de la calculabilité , l'informatique théorique examine quels problèmes peuvent être résolus avec quelles machines. Un modèle informatique ou un langage de programmation est appelé Turing-complet s'il peut être utilisé pour simuler une machine de Turing universelle . Tous les ordinateurs utilisés aujourd'hui et la plupart des langages de programmation sont Turing-complete, ce qui signifie que vous pouvez les utiliser pour résoudre les mêmes tâches. Également des modèles de calcul alternatifs tels que le calcul lambda , les programmes WHILE , les fonctions μ-récursives ou les machines de registres'est avéré être Turing-complet. La thèse de Church-Turing s'est développée à partir de ces découvertes , qui, bien que non formellement prouvables, sont généralement acceptées.
Le concept de décidabilité peut être illustré comme la question de savoir si un certain problème peut être résolu de manière algorithmique. Par exemple, un problème décidable est la propriété d'un texte d'être un programme syntaxiquement correct. Par exemple, un problème indécidable est la question de savoir si un programme donné avec des paramètres d'entrée donnés arrive jamais à un résultat, qui est appelé le problème de l'arrêt .
théorie de la complexité
La théorie de la complexité traite des besoins en ressources des problèmes traitables de manière algorithmique sur divers modèles informatiques formels définis mathématiquement, ainsi que de la qualité des algorithmes les résolvant. En particulier, les ressources " runtime " et " disk space " sont examinées et leurs besoins sont généralement exprimés en notation Landaumontré. Tout d'abord, les exigences d'exécution et de mémoire sont notées en fonction de la longueur de l'entrée. Les algorithmes qui diffèrent au plus par un facteur constant dans leur temps d'exécution ou leurs besoins en mémoire sont classés par la notation Landau de la même classe, c'est-à-dire H affecté à un ensemble de problèmes avec un temps d'exécution équivalent requis par l'algorithme pour la solution.
Un algorithme dont le temps d'exécution est indépendant de la longueur d'entrée fonctionne « en temps constant », écrit-on . Par exemple, le programme "renvoyer le premier élément d'une liste" fonctionnera en temps constant. Le programme "vérifier si un certain élément est contenu dans une liste non triée de longueur n" a besoin d'un "temps linéaire", c'est-à-dire parce que la liste d'entrée doit être lue exactement une fois dans le pire des cas.
Jusqu'à présent, la théorie de la complexité n'a presque fourni que des bornes supérieures pour les besoins en ressources des problèmes, car les méthodes pour les bornes inférieures exactes n'ont guère été développées et ne sont connues que pour quelques problèmes (par exemple pour la tâche de trier une liste de valeurs à l'aide une relation d'ordre donnée par comparaisons, la borne inférieure ). Néanmoins, il existe des méthodes pour classer les problèmes particulièrement difficiles en tant que tels, la théorie de la NP-complétude jouant un rôle central. Selon cela, un problème est particulièrement difficile si, en le résolvant, on peut résoudre automatiquement la plupart des autres problèmes naturels sans utiliser beaucoup plus de ressources.
La plus grande question ouverte en théorie de la complexité est la question « P = NP ? » . Le problème est l'un des problèmes du millénaire annoncés par le Clay Mathematics Institute à 1 million de dollars. Si P n'est pas égal à NP, les problèmes NP-complets ne peuvent pas être résolus efficacement.
Théorie des langages de programmation
Ce domaine traite de la théorie, de l'analyse, de la caractérisation et de la mise en œuvre des langages de programmation et fait l'objet de recherches actives en informatique pratique et théorique. Le sous-domaine influence fortement les disciplines connexes telles que certaines parties des mathématiques et de la linguistique .
Théorie des méthodes formelles
La théorie des méthodes formelles traite d'une variété de techniques pour la spécification formelle et la vérification des systèmes logiciels et matériels . La motivation pour ce domaine découle de la pensée de l'ingénierie - une analyse mathématique rigoureuse aide à améliorer la fiabilité et la robustesse d'un système. Ces propriétés sont particulièrement importantes pour les systèmes qui fonctionnent dans des zones critiques pour la sécurité. La recherche de telles méthodes nécessite, entre autres, des connaissances en logique mathématique et en sémantique formelle .
Informatique pratique
L' informatique pratique développe des concepts et des méthodes de base pour résoudre des problèmes spécifiques dans le monde réel, par exemple l'administration de données dans des structures de données ou le développement de logiciels . Le développement d' algorithmes joue ici un rôle important . Des exemples en sont les algorithmes de tri et de recherche .
L'un des sujets centraux de l'informatique pratique est la technologie logicielle (également appelée génie logiciel ). Il traite de la création systématique de logiciels. Des concepts et des solutions proposées pour de grands projets logiciels sont également développés, ce qui devrait permettre un processus reproductible de l'idée au logiciel fini.
code source C | code machine (schéma) | |
---|---|---|
/**
* Calcul du pgcd de deux nombres
* selon l'algorithme d'Euclide
*/
int ggt ( int nombre1 , int nombre2 ) {
temp int ;
tandis que ( nombre2 != 0 ) {
temp = nombre1 % nombre2 ;
nombre1 = nombre2 ;
nombre2 = temp ;
}
renvoie numéro1 ;
}
|
→ compilateurs → |
... 0010 0100 1011 0111 1000 1110 1100 1011 0101 1001 0010 0001 0111 0010 0011 1101 0001 0000 1001 0100 1000 1001 1011 1110 0001 0011 0101 1001 0111 0010 0011 1101 0001 0011 1001 1100 ... |
Un sujet important de l'informatique pratique est la construction du compilateur , qui est également examinée en informatique théorique. Un compilateur est un programme qui traduit d'autres programmes d'un langage source (par exemple Java ou C++ ) dans un langage cible. Un compilateur permet à un humain de développer un logiciel dans un langage plus abstrait que le langage machine utilisé par le CPU .
Un exemple d'utilisation de structures de données est le B-tree , qui permet des recherches rapides dans de grands stocks de données dans des bases de données et des systèmes de fichiers .
Informatique technique
L'informatique technique traite des bases matérielles de l'informatique, telles que la technologie des microprocesseurs , l'architecture informatique , les systèmes embarqués et temps réel , les réseaux informatiques, y compris les logiciels associés liés au système, ainsi que les méthodes de modélisation et d'évaluation développées pour cela. .
Technologie des microprocesseurs, processus de conception informatique
La technologie des microprocesseurs est dominée par le développement rapide de la technologie des semi -conducteurs . Des largeurs de structure de l'ordre du nanomètre permettent la miniaturisation de circuits très complexes avec plusieurs milliards de composants individuels. Cette complexité ne peut être maîtrisée qu'avec des outils de conception sophistiqués et de puissants langages de description de matériel . Le chemin de l'idée au produit fini passe par de nombreuses étapes, qui sont en grande partie assistées par ordinateur et garantissent un degré élevé de précision et d'absence d'erreurs. Si le matériel et le logiciel sont conçus ensemble en raison d'exigences de haute performance, on parle également de co-conception matériel-logiciel.
architectures
L' architecture informatique ou l'architecture système est le domaine qui recherche des concepts pour la construction d'ordinateurs ou de systèmes. Dans l'architecture informatique z. B. l'interaction des processeurs , de la mémoire et des unités de contrôle ( contrôleurs ) et des périphériques est définie et améliorée. Le domaine de recherche est orienté à la fois vers les exigences du logiciel et les possibilités qui découlent du développement ultérieur des circuits intégrés . Une approche est un matériel reconfigurable tel que par ex. B. FPGA (Field Programmable Gate Arrays), dont la structure de circuit peut être adaptée aux exigences respectives.
Basés sur l'architecture de la machine de Von Neumann à fonctionnement séquentiel , les ordinateurs actuels sont généralement constitués d'un processeur, qui peut lui-même contenir plusieurs cœurs de processeur, des contrôleurs de mémoire et toute une hiérarchie de mémoires cache , une mémoire vive ( Random-Access Memory , RAM ) mémoire principale conçue (mémoire primaire) et interfaces d'entrée/sortie vers la mémoire secondaire (par exemple , disque dur ou mémoire SSD ). En raison des nombreux domaines d'application, une large gamme de processeurs est utilisée aujourd'hui, des simples microcontrôleurs, par exemple. B. dans les appareils électroménagers jusqu'aux processeurs particulièrement économes en énergie dans les appareils mobiles tels que les smartphones ou les tablettes jusqu'aux processeurs hautes performances fonctionnant en parallèle en interne dans les ordinateurs personnels et les serveurs . Les ordinateurs parallèles gagnent en importance, dans lesquels des opérations arithmétiques peuvent être effectuées sur plusieurs processeurs en même temps. Les progrès de la technologie des puces permettent déjà d'implémenter un grand nombre (actuellement autour de 100...1000) de cœurs de processeur sur une seule puce ( processeurs multi-cœurs , systèmes multi/many-core, " system-on-a- puce » (SoC)).
Si l'ordinateur est intégré dans un système technique et y exécute des tâches telles que le contrôle, la régulation ou la surveillance, en grande partie de manière invisible pour l'utilisateur, on parle de système embarqué. Les systèmes embarqués se trouvent dans une variété d'appareils du quotidien tels que les appareils électroménagers, les véhicules, les appareils électroniques grand public, les téléphones mobiles, mais aussi dans les systèmes industriels, par ex. B. dans l'automatisation des processus ou la technologie médicale en cours d'utilisation. Puisque les ordinateurs embarqués sont toujours et partout disponibles, on parle aussi d'informatique omniprésente ou ubiquitaire ( ubiquitous computing ). Ces systèmes sont de plus en plus mis en réseau, par ex. B. avec Internet (" Internet des objets"). Les réseaux d'éléments en interaction avec une entrée physique et une sortie vers leur environnement sont également appelés systèmes cyber-physiques . Un exemple est les réseaux de capteurs sans fil pour la surveillance de l'environnement.
Les systèmes en temps réel sont conçus pour pouvoir réagir en temps utile à certains processus urgents dans le monde extérieur avec une vitesse de réaction appropriée. Cela suppose que le temps d'exécution des processus de réponse est garanti de ne pas dépasser des délais prédéterminés correspondants. De nombreux systèmes embarqués sont également des systèmes temps réel.
La communication informatique joue un rôle central dans tous les systèmes multi-ordinateurs. Celui-ci permet l'échange électronique de données entre ordinateurs et représente ainsi la base technique d'Internet. Outre le développement de routeurs , de commutateurs ou de pare -feu , cela inclut également le développement des composants logiciels nécessaires au fonctionnement de ces appareils. Cela inclut notamment la définition et la normalisation des protocoles réseau tels que TCP , HTTP ou SOAP . Les protocoles sont les langages dans lesquels les ordinateurs échangent des informations entre eux.
Dans les systèmes distribués , un grand nombre de processeurs fonctionnent ensemble sans mémoire partagée. Les processus qui communiquent entre eux via des messages régulent généralement la coopération d'ordinateurs individuels largement indépendants dans un réseau ( cluster ). Les mots à la mode dans ce contexte sont, par exemple, middleware , grid computing et cloud computing .
modélisation et évaluation
En raison de la complexité générale de telles solutions système, des méthodes de modélisation spéciales ont été développées comme base pour évaluer les approches d'architecture mentionnées, afin de pouvoir effectuer des évaluations avant la mise en œuvre réelle du système. D'une part, il est particulièrement important de modéliser et d'évaluer les performances système résultantes, par ex. B. en utilisant des programmes de référence . Les méthodes de modélisation des performances sont par ex. B. des modèles de file d'attente , des réseaux de Petri et des modèles spéciaux de théorie du trafic ont été développés. La simulation informatique est souvent utilisée, en particulier dans le développement de processeurs .
Outre les performances, d'autres propriétés du système peuvent également être étudiées sur la base de la modélisation ; par exemple. Par exemple, la consommation énergétique des composants informatiques joue actuellement un rôle de plus en plus important. De plus, à mesure que la complexité du matériel et des logiciels augmente, les problèmes de fiabilité, de diagnostic des pannes et de tolérance aux pannes sont une préoccupation majeure, en particulier dans les applications critiques pour la sécurité. Il existe des méthodes de solution correspondantes, principalement basées sur l'utilisation d'éléments matériels ou logiciels redondants.
Relations avec d'autres domaines de l'informatique et d'autres disciplines spécialisées
L'ingénierie informatique est étroitement liée à d'autres domaines de l'informatique et de l'ingénierie. Il est basé sur l'électronique et la technologie des circuits, avec des circuits numériques au premier plan ( technologie numérique ). Pour les couches logicielles supérieures, il fournit les interfaces sur lesquelles ces couches sont à leur tour construites. Il existe des relations étroites avec des domaines connexes de l'électrotechnique et de l'ingénierie mécanique , tels que la technologie de commande , de régulation et d'automatisation et la robotique , notamment via les systèmes embarqués et les systèmes temps réel .
L'informatique dans les sciences interdisciplinaires
Le terme collectif d' informatique appliquée "combine l'application des méthodes informatiques de base dans d'autres sciences..." . [1] Certains sous-domaines interdisciplinaires et approches de recherche se sont développés autour de l'informatique, certains d'entre eux devenant des sciences distinctes . Exemples:
sciences informatiques
Ce domaine interdisciplinaire traite de l'analyse, de la modélisation et de la simulation assistées par ordinateur de problèmes et de processus scientifiques. Selon les sciences naturelles , une distinction est faite ici :
- La bioinformatique ( bioinformatique en anglais , également biologie computationnelle ) traite des principes fondamentaux de l'informatique et des applications du stockage , de l'organisation et de l'analyse des données biologiques . Les premières applications bioinformatiques pures ont été développées pour l'analyse de séquences d' ADN . L'objectif principal est de trouver rapidement des modèles dans de longues séquences d'ADN et de résoudre le problème de la superposition et de l'alignement de deux ou plusieurs séquences similaires de manière à obtenir la meilleure correspondance possible ( alignement de séquences ). Avec l'éclaircissement et l'analyse fonctionnelle approfondie de divers plus completsgénomes (par exemple du nématode Caenorhabditis elegans ), les travaux bioinformatiques se concentrent sur les problèmes protéomiques , par ex. B. le problème du repliement des protéines et de la prédiction de la structure , c'est-à-dire la question de la structure secondaire ou tertiaire pour une séquence d'acides aminés donnée.
- L' informatique de la biodiversité comprend le stockage et le traitement des informations sur la diversité biologique . Alors que la bioinformatique traite des acides nucléiques et des protéines, les objets de l'informatique de la biodiversité sont les taxons , les preuves de collecte biologique et les données d'observation.
- La vie artificielle a été crééeen 1986 en tant que discipline de recherche interdisciplinaire. [25] [26] La simulation de formes de vie naturelles avec des méthodes logicielles ( vie artificielle douce ) et matérielles ( vie artificielle dure ) est un objectif principal de cette discipline. [27] Les applications de la vie artificielle comprennent aujourd'hui la biologie synthétique, la santé et la médecine, l'écologie, les robots autonomes, le transport et la circulation, l'infographie, les sociétés virtuelles et les jeux informatiques. [28]
- Chemoinformatics (en anglais chemoinformatics , cheminformatics ou chemiinformatics ) décrit une branche de la science qui combine le domaine de la chimie avec les méthodes de l'informatique et vice versa. Elle traite de la recherche dans l'espace chimique , constitué de molécules virtuelles ( in silico ) ou réelles . La taille de l'espace chimique est estimée à environ 10 62 molécules et est bien plus grande que la quantité réellement synthétisée jusqu'à présent.molécules. Ainsi, dans certaines circonstances, des millions de molécules peuvent être testées in silico à l'aide de telles méthodes informatiques sans avoir à les produire explicitement en laboratoire en utilisant des méthodes de chimie combinatoire ou de synthèse .
Informatique du génie, informatique du génie mécanique
L' ingénierie informatique , également appelée science de l'ingénieur computationnel , est une formation interdisciplinaire à l'interface entre l' ingénierie , les mathématiques et l'informatique dans les domaines du génie électrique, du génie mécanique , du génie des procédés et du génie des systèmes .
Le cœur de l'informatique du génie mécanique comprend le développement de produits virtuels (informatique de production) à l'aide de la visualisation par ordinateur et de la technologie d'automatisation .
Informatique de gestion, gestion de l'information
L' informatique d'entreprise (en anglais (business) information systems , également management information systems ) est une "discipline d'interface" entre l'informatique et l'économie , en particulier l'administration des affaires . En raison de ses interfaces, il s'est développé en une science indépendante et peut être étudié à la fois dans les facultés d'économie et d'informatique . L'informatique d'entreprise se concentre notamment sur la cartographie des processus métier et la comptabilité dans les systèmes de bases de données relationnelles et les systèmes de planification des ressources d'entreprise . CeL'ingénierie de l'information des systèmes d'information et la gestion de l'information jouent un rôle important dans l'informatique d'entreprise. Cela a été développé à l' Université des sciences appliquées de Furtwangen dès 1971. [18] Dès 1974, l'ancienne Université technique de Darmstadt, l'Université Johannes Kepler de Linz et l'Université de technologie de Vienne ont créé un cours d'informatique de gestion.
socio-informatique
La socio -informatique traite des effets des systèmes informatiques sur la société, par ex. B. accompagner les organisations et la société dans leur organisation, mais aussi comment la société affecte le développement des systèmes d'information socialement intégrés, que ce soit en tant que prosommateurs sur des plateformes collaboratives telles que Wikipédia, ou via des restrictions légales, par exemple pour garantir la sécurité des données.
informatique sociale
L' informatique sociale traite d'une part des opérations informatiques dans les organisations sociales et d'autre part de la technologie et de l'informatique en tant qu'instrument de travail social, comme dans Ambient Assisted Living .
informatique des médias
L' informatique des médias se concentre sur l'interface entre l'homme et la machine et traite de la connexion de l'informatique, de la psychologie , de la science du travail , de la technologie des médias , de la conception des médias et de la didactique .
Linguistique computationnelle
La linguistique computationnelle examine comment le langage naturel peut être traité par les ordinateurs. Elle fait partie de l'intelligence artificielle , mais en même temps elle est l'interface entre la linguistique appliquée et l'informatique appliquée . Lié à cela est le concept de science cognitive , qui représente sa propre branche interdisciplinaire de la science. linguistique , informatique, philosophie , psychologie et neurologie . Les domaines d'application de la linguistique computationnelle sont la reconnaissance vocale et-synthèse , traduction automatique dans d'autres langues et extraction d'informations à partir de textes.
informatique environnementale, géoinformatique
L' informatique environnementale traite de l'analyse et de l'évaluation interdisciplinaires des problèmes environnementaux à l'aide de l'informatique. L'accent est mis sur l'utilisation de programmes de simulation , de systèmes d'information géographique (SIG) et de systèmes de bases de données. La géoinformatique est
l' étude de la nature et de la fonction de la géoinformation et de sa fourniture sous forme de géodonnées et des applications basées sur celle-ci. Il constitue la base scientifique des systèmes d'information géographique (SIG). La référence spatiale est commune à toutes les applications de la géoinformatiqueet parfois sa mise en correspondance avec des représentations spatiales ou planaires cartésiennes dans le système de référence .
Autres disciplines informatiques
Il existe d'autres interfaces entre l'informatique et d'autres disciplines dans la gestion de l'information , l'informatique médicale, l'informatique logistique , l' informatique infirmière et l'informatique juridique , la gestion de l'information ( informatique administrative , informatique de gestion ), l' informatique architecturale ( informatique de la construction ) ainsi que l'informatique agricole, l'archéoinformatique , l' informatique sportive et les nouvelles directions interdisciplinaires telles que l'ingénierie neuromorphique. La coopération avec les mathématiques ou l'électrotechnique n'est pas qualifiée d' interdisciplinaire en raison de la relation . La didactique de l'informatique traite des enseignements d'informatique , notamment dans les écoles . L' informatique élémentaire s'occupe de l'enseignement des concepts informatiques de base dans le préscolaire et le primaire .
Intelligence artificielle
L' intelligence artificielle (IA) est un vaste sous-domaine de l'informatique avec de fortes influences de la logique , de la linguistique , de la neurophysiologie et de la psychologie cognitive . En termes de méthodologie, l'IA diffère considérablement de l'informatique classique. Au lieu de spécifier une description complète de la solution, la recherche de la solution est laissée à l'ordinateur lui-même dans l'intelligence artificielle. Leurs méthodes sont utilisées dans les systèmes experts , la technologie des capteurs et la robotique .
La compréhension du terme "intelligence artificielle" reflète souvent l' idée des Lumières de l' homme en tant que machine, l'imitation de laquelle la soi-disant "IA forte" se donne pour objectif de créer une intelligence capable de penser et de résoudre des problèmes comme les humains et qui se caractérise par une forme de conscience ou de conscience de soi et d' émotions .
Cette approche a été mise en œuvre au travers de systèmes experts, qui collectent, gèrent et appliquent essentiellement un grand nombre de règles sur un sujet spécifique (d'où les « experts »).
Contrairement à l'IA forte, l'"IA faible" consiste à maîtriser des problèmes d'application spécifiques. D'un intérêt particulier sont les applications qui, selon la compréhension générale, nécessitent une forme « d' intelligence » pour être résolues. En fin de compte, l'IA faible consiste à simuler un comportement intelligent à l'aide des mathématiques et de l'informatique ; il ne s'agit pas de créer une conscience ou une compréhension plus profonde de l'intelligence. Un exemple d'IA faible est la logique floue .
Les réseaux de neurones appartiennent également à cette catégorie - depuis le début des années 1980 , ce terme est utilisé pour analyser l'architecture de l'information du cerveau (humain ou animal). La modélisation sous forme de réseaux de neurones artificiels illustre comment la reconnaissance de formes complexes peut être réalisée à partir d'une structure de base très simple . En même temps, il devient clair que ce type d'apprentissage n'est pas basé sur la dérivation de règles qui peuvent être formulées logiquement ou verbalement - et donc les capacités particulières du cerveau humain au sein du règne animal ne peuvent être réduites à une règle - ou concept d'"intelligence" basé sur le langage. L'impact de ces connaissances sur la recherche en IA, mais aussi surLa théorie de l'apprentissage , la didactique et d'autres domaines sont encore en discussion.
Alors que l'IA forte n'a pas réussi à résoudre sa question philosophique à ce jour, des progrès ont été réalisés du côté de l'IA faible.
Informatique et société
"Informatique et société" (IuG) est un sous-domaine de la science informatique et étudie le rôle de l'informatique sur le chemin de la société de l'information. Les interactions de l'informatique examinées dans ce contexte englobent une grande variété d'aspects. Basé sur des questions historiques, sociales et culturelles, cela concerne les aspects économiques, politiques, écologiques, éthiques, didactiques et, bien sûr, techniques. L'émergence d'une société de l'information en réseau mondial est considérée comme un défi central pour l'informatique, dans laquelle elle joue un rôle déterminant en tant que science technique de base et doit y réfléchir. L'IuG se caractérise par le fait qu'une approche interdisciplinaire, en particulier avec les sciences humaines, mais aussi par ex. B. avec la loi est nécessaire.
Voir également
- Liste des personnes importantes pour l'informatique
- Société d'informatique , Société autrichienne d'informatique , Société suisse d'informatique
- diplôme en informatique
Littérature
- Herbert Bruderer : Jalons de la technologie informatique . Tome 1 : Machines à calculer mécaniques, règles à calcul, machines historiques et instruments scientifiques, 2ème, fortement ext. Édition, Walter de Gruyter, Berlin/Boston 2018, ISBN 978-3-11-051827-6 .
- Heinz-Peter Gumm, Manfred Sommer : Introduction à l'informatique . 10e édition. Oldenbourg, Munich 2012, ISBN 978-3-486-70641-3 .
- AK Dewdney : The Turing Omnibus : Un voyage à travers l'informatique avec 66 stations. Traduit par P. Dobrowolski. Springer, Berlin 1995, ISBN 3-540-57780-7 .
- Hans Dieter Hellige (Hrsg.): Histoire de l'informatique. Visions, paradigmes, leitmotivs. Berlin, Springer 2004, ISBN 3-540-00217-0 .
- Jan Leeuwen : Informatique théorique. Springer, Berlin 2000, ISBN 3-540-67823-9 .
- Peter Rechenberg, Gustav Pomberger (eds.): Manuel d'informatique. 3e édition. Hanser 2002, ISBN 3-446-21842-4 .
- Vladimiro Sassone : Fondements de la science du logiciel et des structures de calcul. Springer, Berlin 2005, ISBN 3-540-25388-2 .
- Uwe Schneider, Dieter Werner (Hrsg.): Broché d'informatique. 6ème édition. Fachbuchverlag, Leipzig 2007, ISBN 978-3-446-40754-1 .
- Gesellschaft für Informatik : Qu'est-ce que l'informatique ? Prise de position de la société d'informatique. (PDF, env. 600 Ko) Bonn 2005., ou Qu'est-ce que l'informatique ? Version courte. (PDF; environ 85 ko).
- Les Goldschlager, Andrew Lister : Informatique - Une introduction moderne. Carl Hanser, Vienne 1986, ISBN 3-446-14549-4 .
liens web
- Catalogue de liens sur le sujet des départements d'informatique des universités sur curlie.org (anciennement DMOZ )
- Société d'informatique (GI)
- Société Suisse d'Informatique (SI)
- Informatique pour les enseignants dans le ZUM Wiki
- "Entrée en informatique" www.einstieg-informatik.de
les détails
- ↑ a b Duden computer science A - Z : Dictionnaire spécialisé pour les études, la formation et le travail, 4e édition, Mannheim 2006. ISBN 978-3-411-05234-9 .
- ↑ Gesellschaft für Informatik : Qu'est-ce que l'informatique ? Notre prise de position, pages 8 et suivantes Consulté le 9 février 2021 .
- ↑ Klaus Biener : Karl Steinbuch - informaticien de la première heure. Hommage à son 80e anniversaire. Décembre 1997, récupéré le 24 septembre 2021 : « La première publication de Steinbuch sur l'informatique (1957) est également tombée pendant son séjour à Stuttgart. Avec Helmut Gröttrup, un employé de Peenemünde, il a inventé ce terme pour la première fois et l'a introduit dans la littérature scientifique.
- ↑ Karl Steinbuch : Informatique : Traitement automatique de l'information . Dans : Actualités SEG . Non. 4 , avril 1957.
- ↑ Friedrich L. Bauer : Notes historiques sur l'informatique . Springer Science & Business Media, 2009, ISBN 978-3-540-85789-1 , p. 36 ( aperçu limité sur Google Book Search [consulté le 25 février 2017]).
- ↑ Arno Pasternak : Bases techniques et pédagogiques pour les cours d'informatique au niveau secondaire I (mémoire). (PDF ; 14,0 Mo) 17 mai 2013, p. 47 , récupéré le 31 juillet 2020 (avec un fac-similé de la section d'introduction de SEG News 4/1957).
- ↑ Tobias Häberlein : Une introduction pratique à l'informatique avec Bash et Python . Éditions Oldenbourg, 2011, ISBN 978-3-486-71445-6 , p. 5 ( aperçu limité sur Google Book Search [consulté le 25 février 2017]).
- ↑ Présentation sur les 40 ans d'histoire des IG et de l'informatique ( Memento du 23 décembre 2012 aux Archives Internet ) (PDF; 3,1 Mo)
- ↑ Friedrich L. Bauer : Notes historiques sur l'informatique . Springer Science & Business Media, 2009, ISBN 978-3-540-85789-1 , p. 36 ( aperçu limité sur Google Book Search [consulté le 25 février 2017]).
- ↑ Wolfgang Coy : Histoire de l'informatique. Visions, paradigmes, leitmotivs . Editeur : Hans Dieter Hellige. Springer, 2004, ISBN 3-540-00217-0 , pp 475 .
- ↑ Début des études à partir du semestre d'hiver 2012/2013 – Faculté d'informatique de l'Université technique de Munich. Dans : www.in.tum.de. Récupéré le 7 septembre 2015 .
- ↑ Heinz Nixdorf MuseumsForum : Scène informatique 1952
- ↑ Heinz Nixdorf MuseumsForum : Scène informatique 1955
- ↑ a b c d Christine Pieper : L'enseignement supérieur de l'informatique en République fédérale et en RDA jusqu'en 1989/1990 . Dans : Science, politique et société . 1ère édition. Franz Steiner Verlag, Stuttgart 2009, ISBN 978-3-515-09363-7 .
- ↑ Heinz Nixdorf MuseumsForum : 60 ans ALGOL 60
- ↑ Faculté d'Informatique : Histoire. Consulté le 13 septembre 2019 .
- ↑ 40 ans d'informatique à Munich : 1967–2007 / publication commémorative ( mémento du 17 mai 2011 dans Internet Archive ) (PDF) p. 26 sur in.tum.de , récupéré le 5 janvier 2014.
- ↑ a b Histoire du HS Furtwangen
- ↑ Histoire de la zone universitaire au KIT
- ↑ Histoire. Consulté le 11 février 2022 .
- ↑ Bref historique de l'Université de Technologie de Vienne ( Memento du 5 juin 2012 dans Internet Archive )
- ↑ Université de Cambridge : Une brève histoire informelle du laboratoire informatique
- ↑ Université de Cambridge : Cambridge Computing : Les 75 premières années , page 96.
- ↑ Konrad Zuse - l'homonyme du ZIB (récupéré le 27 juillet 2012)
- ↑ Christopher Langton, Étudier la vie artificielle avec des automates cellulaires. Dans: Physique 22ID:120-149
- ↑ Christopher Langton, Qu'est-ce que la vie artificielle ? (1987) pdf ( Memento du 11 mars 2007 sur Internet Archive )
- ↑ Marc A. Bedau : La vie artificielle : organisation, adaptation et complexité de bas en haut
- ↑ Wolfgang Banzhaf, Barry McMullin : La vie artificielle. Dans : Grzegorz Rozenberg, Thomas Bäck, Joost N. Kok (eds.) : Handbook of Natural Computing. Springer 2012. ISBN 978-3-540-92909-3 (imprimé), ISBN 978-3-540-92910-9 (en ligne)