Beruflich Dokumente
Kultur Dokumente
Informatique Gnrale
Responsable du cours Jacques Farr Jacques.Farre@unice.fr
http://deptinfo.unice.fr/~jf/InfoGene
Informatique gnrale
Pourquoi l'informatique ?
Dans la vie quotidienne : tlphonie, photographie, guichets automatiques, automobiles et transports, web, jeux ... Dans la vie professionnelle : de l'artisan (logiciels de comptabilit, de facturation ...) l'ingnieur (logiciels de simulation, de conception assiste ...)
simulation de propulsion (ONERA)
Pour acqurir une rigueur de pense (les ordinateurs n'aiment pas l' peu prs) et une comptence supplmentaire, pour les utiliser plus efficacement, pour tre capable de dialoguer avec un informaticien
(qui ne fait pas toujours les efforts ncessaires !)
Pour ne pas se faire piger (phishing par ex.) ou raconter des bobards (c'est la faute l'ordinateur, j'y peux rien moi)
Informatique gnrale
INFORmation autoMATIQUE Dfinition de l'Acadmie Franaise : Science du traitement rationnel, notamment par machines automatiques, de linformation considre comme le support des connaissances et des communications, dans les domaines technique, conomique et social
Rien voir avec bidouiller son PC, matriser PhotoShop, tenir un blog ou connatre les ruses d'un jeu vido
(mme si a peut y aider parfois !) L'informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des tlescopes. Edsger Dijkstra
www.camillejourdain.fr/wp-content/ uploads/2008/03/humour-blog2.jpg
Informatique gnrale
Science : donc des thories et des modles Traitement rationnel : c'est dire l'utilisation de mthodes prcises, fondes, rplicables Machines automatiques : qui seront capables de mettre en uvre ces mthodes dans un langage qu'elles peuvent comprendre Information : texte, image ou son (et mmes odeurs, saveurs et toucher), reprsents sous une forme manipulable par la machine en fonction de sa technologie
nez lectronique de la socit Alphamos (Toulouse) Logiciel libre RoseGarden (www.rosegardenmusic.com) Informatique gnrale
Disciplines de l'informatique
Informatique thorique (algorithmique, calculabilit, complexit, graphes, langages formels ...) graphe de relations sous Facebook Programmation, gnie logiciel Rseaux, logiciels de tlcommunications, scurit des changes dinformation Logiciels de base (systmes d'exploitation,
bases de donnes, compilateurs ...)
Systmes embarqus, robotique Images, son, multimdia, interfaces robot mars explorer (NASA) homme/machine, infographie ... Systmes dinformation, ingnierie des connaissances ... Calcul scientifique, optimisation, intelligence artificielle, bio-informatique, traitement des langues ...
Informatique gnrale
Informatique de gestion
Compatibilit, facturation, paye, gestion des stocks et du systme de production, gestion des relations clients, banques et bourse, aide la dcision ... Conception et fabrication assistes, modlisation et simulation de systmes complexes, informatique embarque, tlcommunications et rseaux ... e-commerce, recherche d'informations, scurit ...
Internet
Mtiers de l'exploitation
Analyste-programmeur, concepteur de logiciel, architecte de systmes d'information, web designer, ergonome ... En informatique pure ou applique d'autres domaines Mise en uvre de systmes d'information, protocoles de scurit, impact sur l'organisation de l'entreprise ... Ingnieur technico-commercial, chef de produit
Informatique gnrale
Mtiers de la recherche
Mtiers du marketing
Ordinateurs lectroniques Machines calculer mcaniques Abaques et bouliers Invention des chiffres
Ordinateurs portables
Machine programmables
-3500
-500
1600
1800
1950
2000
Informatique gnrale
Algbre de Boole
calculs manuels
calculs automatiss
machines programmables
(chiffres gyptiens)
-2000
500
1600
1800
Informatique gnrale
quantique ?
boulier
circuit intgr
calculi sumriens
manuel
mcanique
lectronique
molculaire ?
Informatique gnrale
10
4004 : 0,06 8088 : 0,3 80286 : 1 80486 : 20 Pentium : 100 Pentium 4 : 5000 Core 2 Duo: 20000 Core 2 Quad : 50000
(source Wikipdia)
Informatique gnrale
11
Au dbut les hommes comptaient sur leurs doigts et avec des pierres ou des btonnets
besoin de reprsenter les nombres l'aide de chiffres (Sumer, -3500) besoin de mthodes et de moyens de calculs : utilisations d'abaques (plateaux sur lesquels Abaque romain on dplace des cailloux ou des jetons) et de bouliers : Moyen-orient, Russie et Chine
Dfinition de la logique par Aristote (5e sicle avant JC) Invention de la numration dcimale de position et du 0 (Inde, 4e sicle aprs JC)
Chiffes indiens
il faut attendre le 10e sicle pour qu'ils arrivent en Europe (Espagne via les arabes), et commencent tre largement adopts au 14 e sicle
Informatique gnrale
12
Inventions des logarithmes (Neper) : permet de ramener multiplication et division somme et diffrence Codage des lettres de l'alphabet par Bacon (1623, alphabet bilitre, a=AAAAA,b=AAAAB,c=AAABA,d=AAABB,e=AABAA...z=BABBB) pour coder des messages secrets :
question : pourquoi faut-il 5 lettres pour en coder une ? texte en clair et codage bilitre (A si lettre italique, B sinon) Nepartezsurtoutpassansmoi AABABBAABBBABBAAABAABABBB Texte cod : fuyez
Le code bilitre ouvre la voie l'arithmtique binaire (Leibnitz, 1703, qui la relie un symbole chinois du 3e sicle avant JC), puis l'algbre de Boole (1854), base thorique du fonctionnement des ordinateurs
Informatique gnrale
13
Invention par Pascal (ag de 19 ans !) de la Pascaline (1642) : additionne et soustrait par un systme de roues dentes ; il en existe plusieurs exemplaires dans les muses
Inspire de la machine de Wilhelm Schickard (1623) Perfectionne par Leibnitz (1694) en permettant multiplications et divisions (par additions ou soustractions successives)
La Pascaline
Invention par Jacquard (1805) de la notion de programme : cartes perfores pour commander des mtiers tisser Les machines de Babbage
machine diffrences (1822), jamais termine mais reconstruite en 1991 (25000 pices, 4,5 tonnes)
machine analytique (1843) : on y retrouve les composants d'un ordinateur : processeur, mmoire, saisie et affichage des donnes ; programme par Ada Lovelace
Informatique gnrale
La machine diffrences
14
Hollerith dpose un brevet pour une machine calculer automatique (1884), et fonde (1896) la socit qui deviendra IBM Construction au MIT d'un calculateur analogique (1925) Turing propose sa dfinition de machine (1936), outil capital pour l'informatique thorique L'ENIAC est construit en 1946 en partie sur les Architecture de von Neumann principes de von Neumann : il pse 30 tonnes, occupe 72 m, est quip de 19 000 lampes. Il calcule en dcimal, repose sur des tubes vide, et n'a pas de programmes enregistrs Cest encore un calculateur, pas un ordinateur universel Von Neumann dfinit l'architecture d'un ordinateur universel (EDVAC, 1949)
15
Informatique gnrale
Cration de la thorie de l'information (Shannon, 1948) : mesure d'une quantit d'informations en chiffres binaires (bits) Construction du Manchester Mark I, premier ordinateur (1948) programme enregistr Univac, premier ordinateur commercialis (1951) par Remington Rand (15 exemplaires vendus) ; premier ordinateur franais (pour l'arme) Premier ordinateur construit en srie par IBM (1953) : 900kg, vendu $500 000 plus de 1000 exemplaires Invention du mot ordinateur (1955), initialement par IBM Apparition des ordinateurs transistors (1956), et cration du premier disque dur (IBM : 1000Kg, 5 Mega) Invention du terme informatique (1962)
Informatique gnrale IBM 650
16
Premier mini-ordinateur (Digital Equipment Corporation, 1963), et premier super-ordinateur (Control Data Corporation, 1964) Premiers ordinateurs circuits intgrs (Burroughs, 1968) Cration du rseau Arpanet, anctre d'Internet (1969, 4 ordinateurs) Apparition des mmoires en circuits intgrs (1970) Premier courrier lectronique (1971) Premier micro-processeur (Intel, 1971), puis premier micro-ordinateur par la socit franaise R2E (1973) Naissance de Microsoft (1975) et d'Apple (1976) Cration de l'Internet Protocol (1982) Premier logiciel libre (GNU, Richard Stallman, 1983), puis fondation de la Free Software Foundation (1985)
Informatique gnrale Micral N de R2E Arpanet en 1971 PDP 8 de DEC
17
Apparition des interfaces graphiques et de la souris (1984, Macintosh d'Apple, X Window au MIT pour Unix) : l'ordinateur tel que vous le connaissez est n !
Macintosh d'Apple
Commercialisation de Windows (1985, pas vraiment graphique), il faudra attendre Windows 95, avec Internet Explorer en option) Premier virus (transmis par disquette, 1986) et premiers anti-virus (gratuits, 1988), premier ver transmis par Internet (1988) Cration de Linux (Linus Torvalds, 1991), systme d'exploitation libre Cration du Web (Tim Berners-Lee, 1991) et premier navigateur (Mosaic, 1993); cration de Yahoo (1994), naissance du W3C (1994) Un ordinateur bat un champion des checs, Kasparov (1994) Cration de Google (1998) Annes 2000 : web 2.0, premiers systmes collaboratifs, de partage et d'changes (wiki, forums, peer to peer ...), cloud computing
Informatique gnrale
18
L'expression Logiciel libre fait rfrence la libert et pas au prix. Pour comprendre le concept, vous devez penser la libert d'expression , pas l'entre libre
C'est la libert pour les utilisateurs d'excuter, de copier, de distribuer, d'tudier, de modifier et d'amliorer le logiciel. Plus prcisment, elle fait rfrence quatre types de libert pour l'utilisateur du logiciel :
La libert d'excuter le programme, pour tous les usages (libert 0) La libert d'tudier le fonctionnement du programme, et de l'adapter vos besoins (libert 1). Pour ceci l'accs au code source est une condition requise La libert de redistribuer des copies, donc d'aider votre voisin, (libert 2) La libert d'amliorer le programme et de publier vos amliorations, pour en faire profiter toute la communaut (libert 3). Pour ceci l'accs au code source est une condition requise
19
On trouve des logiciels libres (et le plus souvent gratuits) pour de nombreuses applications
Tout d'abord les systmes d'exploitation (Linux notamment) Suites bureautique (par exemple OpenOffice ou LibreOffice) Navigateurs Internet (par exemple Firefox) et email (Thunderbird entre autres) Cration de sites Web Pare-feu, antivirus Lecteurs audio, vido et multimdia, cration graphique ... Et bien d'autres encore ...
Ils sont en gnral disponible pour Linux et pour Windows, et assez faciles installer Industrie des logiciels libres : environ 40000 emplois en France, 1 milliard d'euros de chiffre d'affaire pour 2008
Informatique gnrale
20
Le processeur est constitu de circuits lectronique programmables par une suite d'instructions (le programme), en fait une suite de 0 et de 1, indiquant s'il doit passer ou non du courant lectrique Les instructions sont dans la mmoire (en fait elles sont charges dans la mmoire partir d'un support externe : disque dur ...)
processeur
Les instructions peuvent lire ou crire des donnes dans des registres (accumulateur sur le dessin) ou dans des cases de la mmoire identifies par leur adresse (un nombre entier)
Informatique gnrale
21
Le langage-machine binaire
C'est celui qui est stock sur vos disques (les .exe par exemple), et amen en mmoire pour tre excut
00101110011...
Pour un tre humain, crire des suites de 0 et de 1, ce n'est pas trs amusant, pas bien lisible, et cause de nombreuses erreurs
On a donc invent les langages de programmation, qui taient d'abord une simple forme symbolique des instructions, puis qui sont devenus de plus en plus volus et loigns de la machine
Informatique gnrale
22
Permettent un tre humain d'crire des instructions de base sous forme symbolique (action de l'instruction et adresses en mmoire) ; ils sont traduits en binaire par un programme appel assembleur
Permettent de s'affranchir des instructions de la machine et de programmer dans un langage plus proche des algorithmes
Informatique gnrale
23
Les premiers langages taient impratifs, par exemple Fortran (1958, encore utilis de nos jours), mais de nouveaux paradigmes (modles) de programmation ont vu le jour depuis
Paradigme impratif : reste assez proche du modle de von Neumann Reprsentants les plus connus : Fortran, Basic, Algol, C, Pascal, Ada vari,s,n:integer; begin {calculdelasommedesnpremiersentiersenPascal} read(n); s:=0; fori:=1tondo{formeitrativeducalcul} s:=s+i; write(s) end.
Informatique gnrale
24
Paradigme fonctionnel : bas sur le -calcul (Church, 1930), repose sur la notion d'application de fonction
Reprsentants les plus connus : Lisp, Scheme, ML, letsommen= CaML, Haskel ifn=0then0 elsen+sommen1
(*formercursiveducalcul*)
Paradigme logique : dfinit des faits et des rgles logiques permettant d'infrer d'autres faits
Informatique gnrale
Paradigme objet : sous-tend l'ide qu'un programme est un assemblage de composants logiciels
26
soit traduit le texte de votre programme en code binaire, on a affaire un compilateur : le programme excutable qui donnes en rsulte est rapide (si vous avez bien programm, videmment)
programme source
compilateur
programme binaire
rsultats
ou excute votre programme (gard en mmoire sous une forme plus approprie que la forme textuelle), on a alors un interprteur (ou interprte) : moins rapide par nature donnes
Concerne les langages logiques ou fonctionnels, qui peuvent programme tre nanmoins compils source
interprte
rsultats
Modle mixte : le compilateur traduit dans le langage d'une machine virtuelle, interprt par un simulateur de cette machine (Java par exemple)
Informatique gnrale
27
Systme d'exploitation
C'est le programme responsable d'organiser les changes entre les ressources matrielles de l'ordinateur et les programmes lancs par l'utilisateur (ou activs derrire son dos) : Linux, MacOS, Windows ...
Un noyau pour :
Gestion des priphriques (pilotes drivers) et du rseau Gestion de la mmoire et ordonnancement des diffrents processus (les programmes qui tournent) Systme de fichiers
Une interface utilisateur (lignes de commandes clavier ou interface graphique clavier souris - fentres) Des bibliothques (sous-programmes souvent utiliss) et des outils de gestion et d'observation du systme
Informatique gnrale
28
SGF : structure de donnes arborescente stockant les informations des mmoires secondaires
(disque dur, CD-ROM, cl USB, ...)
Rpertoires (dossiers) = nuds de l'arbre, fichiers =feuilles
Crer/dtruire/modifier un fichier Allocation de la place sur mmoires secondaires Localisation des fichiers (chemin d'accs) Scurit et contrle (propritaire, qui peut lire/crire ...)
Le journal est la partie du SGF qui note les oprations d'criture tant qu'elles ne sont pas termines afin de garantir l'intgrit des donnes en cas d'arrt brutal Principaux systmes FAT32, VFAT (non journalis, Windows) ext[2,3,4] (Linux), NTFS (Windows), journaliss
Informatique gnrale
29
Philippe Breton : Une histoire de l'informatique, collection Point Sciences, Le Seuil, 1990 (une histoire qui vous paratra un peu ancienne) Solange Ghernaouti-Hlie, Arnaud Dufour : De l'ordinateur la socit de l'information, collection Que sais-je ?, 1999 Jean Marguin : Histoire des instruments et machines calculer, Hermann , 1994 Christian Piguet et Heinz Hgli : Du zro l'ordinateur. Une brve histoire du calcul, Presses Polytechniques Romandes, 2004 Jean-Luc Charbert et al : Histoire d'algorithmes, Belin, 1993 Amy Dahan-Dalmeco et Jeanne Peiffer : Routes et ddales. Histoire des mathmatiques, collection Point Sciences, Le Seuil, 1986 Georges Ifrah : L'histoire universelle des chiffres, collection Bouquins, Robert Laffont, 1994 Dominique Nora, Roberto Di Cosmo : Le Hold-up Planetaire, CalmannLvy, 1998 (contre Microsoft)
Informatique gnrale
30
Histoire des maths : http://www.dma.ens.fr/culturemath http://www.ilemaths.net/encyclopedie/index.html http://www.roosoft.com/mathegyptiennes http://pagespersoorange.fr/therese.eveilleau Histoire de l'informatique http://www.histoireinformatique.org http://wwwipst.ustrasbg.fr/pat/internet/histinfo http://www.commentcamarche.net/histoire/ordinateur.php3 Gnralits sur l'informatique http://fr.wikipedia.org/wiki/Informatique http://en.wikiversity.org/wiki/Introduction_to_Computer_ Science(la version franaise est en retard) http://zabaque.uqac.ca La recherche en informatique : http://interstices.info
Informatique gnrale
31
Algbre de Boole Reprsentations des nombres Histoire d'algorithmes et de machines Architecture et composants matriels d'un ordinateur Systmes d'exploitation et rseaux
Informatique gnrale
32