Vous êtes sur la page 1sur 32

Universit de Nice Sophia Antipolis

Licence 1 Sciences Fondamentales

Informatique Gnrale
Responsable du cours Jacques Farr Jacques.Farre@unice.fr
http://deptinfo.unice.fr/~jf/InfoGene

Jacques Farr 2012

Informatique gnrale

Pourquoi l'informatique ?

Les ordinateurs sont omniprsents :

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)

En comprendre les fondements

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

Jacques Farr 2012

Qu'est-ce que l'informatique?

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

Sciences et Technologies de l Information et de la Communication (STIC)

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

Jacques Farr 2012

Informatique gnrale

Qu'est-ce que l'informatique?

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

Jacques Farr 2012

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

Jacques Farr 2012

Quelques domaines d'application de l'informatique

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 ...

une salle de marchs

Informatique industrielle et technologique

Internet

simulation des coulements d'air

Et aussi disciplines scientifiques, mdicales, sciences humaines et sociales, arts ...


Informatique gnrale

cartographie de connexions du cerveau (INRIA)

Jacques Farr 2012

Les mtiers de l'Informatique

Mtiers de l'exploitation

Technicien de maintenance, technicien support (Hot Liner),

administrateur de systme d'information, de systme, de rseau, webmestre ...

Mtiers de la conception et du dveloppement

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 conseil et de l'expertise

Mtiers du marketing

Jacques Farr 2012

Brve histoire de l'informatique


des cailloux la puce

Ordinateurs lectroniques Machines calculer mcaniques Abaques et bouliers Invention des chiffres

Ordinateurs portables

Machine programmables

-3500

-500

1600

1800

1950

2000

Jacques Farr 2012

Informatique gnrale

Evolution des concepts


Introduction du zro, base dcimale

Algbre de Boole

systmes de numration additifs

systmes positionnels sans zro

calculs manuels

calculs automatiss

machines programmables

(chiffres gyptiens)

(9038 en babylonien 2x3600+30x60+(30+8)) (238 x 13 = 3094)

(carte perfore) (machine de Schikard)

-2000

500

1600

1800

Jacques Farr 2012

Informatique gnrale

Evolution des techniques

transistor tube vide

quantique ?

boulier

circuit intgr

calculi sumriens

manuel

mcanique

lectronique

molculaire ?

Jacques Farr 2012

Informatique gnrale

10

Intgration sur une puce : jusqu'o ?


(exemple avec les processeurs Intel)

MIPS (million d'instructions par seconde)

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)

Jacques Farr 2012

Informatique gnrale

11

Brve histoire de l'informatique


des cailloux la puce Prhistoire, antiquit et moyen age

Au dbut les hommes comptaient sur leurs doigts et avec des pierres ou des btonnets

La comptabilit d'un chasseur prhistorique

Dveloppement de l'agriculture et du commerce, changes de produits, donc des oprations de calcul


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

Jacques Farr 2012

12

Brve histoire de l'informatique


des cailloux la puce Plus tard (17e sicle essentiellement)

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

Jacques Farr 2012

13

Brve histoire de l'informatique


des cailloux la puce Les premires machines calculer

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

Jacques Farr 2012

14

Brve histoire de l'informatique


des cailloux la puce
Les calculateurs lectro-mcaniques et lectroniques

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

Jacques Farr 2012

Informatique gnrale

Brve histoire de l'informatique


des cailloux la puce Les premiers ordinateurs

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

Jacques Farr 2012

16

Brve histoire de l'informatique


des cailloux la puce Plus rcemment

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

Cration du systme d'exploitation Unix (1969), qui a inspir Linux

Jacques Farr 2012

17

Brve histoire de l'informatique


des cailloux la puce
L'informatique moderne

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

Jacques Farr 2012

Deep Blue d'IBM, super-ordinateur massivement parallle

18

Les logiciels libres


(d'aprs www.gnu.org/philosophy/free-sw.fr.html)

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

En France, AFUL (www.aful.org), APRIL (www.april.org), et d'autres


Informatique gnrale

Jacques Farr 2012

19

Les logiciels libres


(d'aprs fr.wikipedia.org/wiki/Portail:Logiciels_libres

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

Jacques Farr 2012

20

Mais comment a marche ?

Reprenons l'architecture de von Neuman

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)

Jacques Farr 2012

Informatique gnrale

21

Notion de langage de programmation

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

Jacques Farr 2012

22

Les langages de programmation

Les langages-machine symboliques (ou langage d'assemblage, langage assembleur)

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

IBSS4 ... loadAX,I addAX,1 storeAX,I ...

Les langages de haut niveau

Permettent de s'affranchir des instructions de la machine et de programmer dans un langage plus proche des algorithmes

varI:integer; ... I:=I+1 ...

Jacques Farr 2012

Informatique gnrale

23

Les langages de haut niveau

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.

Jacques Farr 2012

Informatique gnrale

24

Les langages de haut niveau

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

pere(charlie,david). pere(henri,charlie). papy(A,B): pere(A,C), pere(C,B). ?papy(henri,X). X=david


25

Reprsentant le plus connu : Prolog

Jacques Farr 2012

Informatique gnrale

Les langages de haut niveau

Paradigme objet : sous-tend l'ide qu'un programme est un assemblage de composants logiciels

chaque composant modlise un lment de l'application

les composants interagissent entre eux

reprsentants les plus connus : Smalltalk, C++, Java, C#, Python


Informatique gnrale

Jacques Farr 2012

26

Comment la machine comprend un langage de programmation ?

Il faut un programme qui

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

Concerne surtout les langages impratifs

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

Jacques Farr 2012

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

Jacques Farr 2012

28

Systme de gestion de fichiers (SGF)

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

Il assure plusieurs fonctions :


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

Jacques Farr 2012

29

Quelques rfrences bibliographiques

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

Jacques Farr 2012

30

Quelques rfrences sur le web

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

Jacques Farr 2012

31

Ce que traitera la suite du cours (planning prvisionnel)

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

Jacques Farr 2012

32