Vous êtes sur la page 1sur 135

Universit de Provence

UFR MIM

Initiation
linformatique
Licence de Science et Technologie - Parcours SV

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

V. Le Brun
Laboratoire dAstrophysique de Marseille
vincent.lebrun@oamp.fr
04 91 05 69 78
Cours : 6 * 1 heure
TP : 8 * 2 heures

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Modalits dexamens :
* 1 Contrle sur machine en binme
- 2 heures
* Examen Janvier
- 2 heures

Initiation linformatique

12
___
20
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

PLAN

I.

Notions de base sur les ordinateurs

II. Systmes dexploitation


III. Notions de programmation

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

I. Notions de base sur les ordinateurs

1. Quest ce quon peut faire avec?


2. Sur quoi?
3. Comment?
4. Structure des ordinateurs actuels.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

I.1. Quest ce quon peut faire avec un


ordinateur ?
Faire raliser
des traitements effectifs
sur des donnes discrtes.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Cest
lordinateur qui
travaille ...

I.1. Quest ce quon peut faire avec un


ordinateur ?

Faire raliser
des traitements effectifs
sur des donnes discrtes.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

I.1. Quest ce quon peut faire avec un


ordinateur ?

Faire raliser

peuvent tre
dcrits par des
algorithmes

des traitements effectifs


sur des donnes discrtes.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

I.1. Quest ce quon peut faire avec un


ordinateur ?

Finies,
que lon peut
Faire raliser
numrer et
diffrencier.
des traitements effectifs
sur des donnes discrtes.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Algorithme
(vient du nom du mathmaticien arabe Al Khowarizmi)

Mthode systmatique
dcompose
en tapes lmentaires
et permettant de rsoudre
coup sr
un type donn de problme
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Ce quon ne peut pas faire avec un


algorithme

Rsoudre un problme quon ne sait pas


comment rsoudre (Thorme de
Fermat, an + bn = cn)

Raliser des oprations qui ne peuvent


scrire de faon systmatique (Ecrire
une symphonie originale)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Ce quon peut faire avec un algorithme

Dterminer si un nombre est premier :

Prendre tous les entiers i entre 2 et n

Effectuer la division de n par i

Si au moins un reste est nul, le


nombre nest pas premier

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Attention
Le fait que cet algorithme soit
correct ne veut pas dire quil
soit utilisable sur un
ordinateur...
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Un algorithme cest donc :


1. Des oprations lmentaires
a. Division
b. Calcul de reste
2. Des tests (vrifications)
3. Une structure
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Donnes discrtes
Dcoupes en morceaux, discontinues
Autres dnominations : numriques,
digitales,
par opposition
Analogiques, continues,
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Exemples
1. Texte crit (combinaisons dun nombre
fini de lettres)
2. Code gntique (combinaison de 4
acides amines)
3. Donnes informatiques (combinaison
de 0 et 1)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Contre-Exemples
1. Texte lu (un son est un phnomne
physique continu (variations de pression))
2. Photographie classique (action chimique
sur les atomes dargent)
3. (non seulement il y a une infinit de
rels, mais certains dentre eux comme
, demandent une infinit de nombres)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les donnes informatiques


1. Lunit de base est le bit (Binary
Digit)
2. Peut tre stock dans nimporte quel
dispositif physique 2 tats
3. Reprsent par 0 et 1
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Exemples de dispositifs physiques


1. Lampe allume ou teinte (les
premiers ordinateurs en utilisait)
2. Aimant orient N ou S (Disques durs,
bandes magntiques)
3. Un creux ou une bosse sur une
surface (CDs, DVDs)
4. Un fil lectrique dans lequel circule ou
non un courant (circuits imprims)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Units utilises en informatique


1. bit : 2 tats possibles
Rien faire avec
2. octet = 8 bits : 28 = 256 tats
Permet de stocker un alphabet
3. kilo-octet = 210 = 1024 ~ 1000 octets
Permet de stocker une demi page de
texte
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Units utilises en informatique


1. Mega-octet = 210 = 1024 ko ~ 106 octets
Un livre, une image couleur numrise
Un CD = 700 Mo
10
9
2. Giga Octet
=
2
=
1024
Mo
~
10
octets
9
(1,07 10 exactement)
Petit film
1 DVD = 4,7 Go, disques durs ~ 250 Go
3. Tera Octet =12210 = 1024 Go ~ 1012
octets (1,1 10 exactement)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Comment stocker des caractres en


numrique ?
1. Alphabet = 26 caractres, x 2 pour les
majuscules, + ponctuation,
parenthses, symboles spciaux (&@!
$), lettres accentues ( )
Un peu plus de 100 caractres

Un octet suffit
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Le Code ASCII
American Standard Code for
Information Interchange
Dabord sur 7 bit (ASCII standard)
Code tendu sur 1 octet : accents,...

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Tableau

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Pour lire un fichier ASCII

1. Lire les donnes octet par octet


2. lire dans la table le caractre
correspondant chaque octet
3. Afficher le caractre

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les Images

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les Images

Pixel
(Picture
Element)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les Images

Pour chaque Pixel, on calcule lintensit


lumineuse, reprsent par un nombre
entier entre 0 et 255 (un octet) pour
les images N/B, ou 3 entiers entre 0 et
255 pour la couleur (RGB).
Au passage, 2563 ~ 16 millions
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les Images

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Le son
A une
frquence
donne :

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

1. On dcoupe le signal en intervalle de


temps (1/40000 s) et de frquence
2. On calcule lintensit sonore dans
chaque intervalle
3. On code le nombre selon une norme
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Pourquoi 1/40000 s ??
1. loreille humaine est sensible jusqu
environ 20000 Hz, cest dire une
vibration durant 1/20000 s
2. Pour bien chantillonner un
phnomne, il faut au moins le
reprsenter par 2 valeurs
3. Cest minimal et a ne suffit pas
toujours...
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les Nombres
Les entiers : codage en binaire (base 2)
Les entiers relatifs : plus compliqu, mais
peuvent tre utiliss directement
Les rels : codage complexe, plus
ncessit de programmer les oprations
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs


Travaux thoriques de Turing (1936) :
Existe-t-il un dispositif capable de
prouver si une proposition logique
quelconque est vrai ou fausse ?
Machine de Turing,
ddie un problme donn
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs


Machine Universelle de Turing :
A partir de la description dune certaine
machine M, et de donnes D, est
capable de simuler laction de M sur D
Un ordinateur est une
Machine Universelle de Turing
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

Une machine de Turing est un modle


thorique, donc sans limitation (de
temps ou de capacit), au contraire dun
dispositif physique ...

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

Travaux (Pratiques) de Von Neuman :


description de larchitecture de base
dune Machine Universelle
Cette architecture est toujours utilise
en 2005...

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

Structure des ordinateurs

Horloge

Envoie un signal lectrique qui


marque le dbut dun cycle
dinstruction
De sa vitesse dpend la capacit
de traitement de lordinateur
(MAIS PAS SEULEMENT)
Cadence actuelle : ~ 4 Ghz

UFR MIM

Universit de Provence

Structure des ordinateurs

Horloge

Evolution des cadences :


1980 : 5 - 8 Mhz
1990 : 50 MHz
1995 : 200 MHz
2000 : 1 GHz
2005 : 4 GHz

UFR MIM

Universit de Provence

UFR MIM

Structure des ordinateurs

Random Acces Memory


Tableau deux colonnes de
nombres binaires :
1 - Adresses : fixes, codes
sur N bits, ce qui donne 2N
adresses possibles: N
conditionne la taille maximale
de la RAM
N=4
16 cases
Initiation linformatique

RAM
0000

00101000

0001

...

0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

Random Acces Memory


Tableau deux colonnes de
nombres binaires :
2 - Mots mmoires, cods sur
un nombre fixe de bits (8 ici,
32 ou 64 sur les ordinateurs)
Ces mots peuvent aussi bien
dcrire des donnes que des
instructions (principe de la MU)
Initiation linformatique

RAM
0000

00101000

0001

...

0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs


RAM

Random Acces Memory

0000

00101000

0001

...

0010
0011

10

512 Mo = 2 *2

10

*2

Octets

0100
0101
0110

permet donc de stocker :


227 mots de 4 octets ~ 134 106
mots
adresses codes sur 27 bits

0111
1000
1001
1010
1011
1100
1101
1110
1111

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

Structure des ordinateurs

Unit de
Commande

C.O
R.I

Registre dInstruction :
Contient linstruction en
cours dexcution (taille
dun mot mmoire).
Initiation linformatique

UFR MIM

Compteur Ordinal :
Registre (petite unit
de mmoire vive)
contenant ladresse
dans la RAM de
linstruction
en cours dexcution
(taille dune adresse
RAM)
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

UAL : Unit arithmtique


et logique : ensemble de
circuits imprims
ralisant des oprations
lmentaires (+, -, ...)
Rsultat
Unit de
Traitement

UAL
D1

Initiation linformatique

D2

Rsultat : Registre
contenant le
rsultat de
linstruction
D1, D2 :
Registres
contenant les
valeurs utilises
par linstruction
en cours
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

Bus : Ensemble de fils pouvant transporter


plusieurs bits en parallle
Bip
Ordres

Instructions

Les performances de
Donnes/
lordinateur dpendent
Rsultats
aussi de la capacit
raliser des circuits avec
les bus les plus courts
Initiation linformatique

Donnes
Instructions
Rsultats

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs

Unit Centrale

RAM
0000

00101000

0001

...

Bip Unit de
Horloge
Commande
Instructions
Ordres

0010
0011

0100
0101
0110

Unit de
Traitement

Donnes/
Rsultats

0111

Donnes
Instructions
Rsultats

1000
1001
1010
1011
1100
1101
1110
1111

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs :


Droulement dun cycle
1 -L adresse de linstruction excuter est charge
dans le C.O
2 -Le code de linstruction est charge dans le R.I
3 -Il est ensuite pass dans lUAL, qui identifie les
adresses des ventuelles donnes ncessaires, et les
charge depuis la RAM
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs :


Droulement dun cycle
4 - LUAL excute linstruction
5 - Le rsultat est charg ladresse adquate de la
RAM
6 - Retour ltape 1

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure des ordinateurs :

Les instructions passes au processeur forment


le langage machine, ou assembleur.
Chaque opration est code par un nombre
binaire (0001 pour addition, 0010 pour
comparaison, ...).
Le langage machine est propre une type de
processeur, en gnral entre 50 et 300
commandes
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Comment entrer les donnes et rcuprer


les rsultats ?
1. Programmation directement en langage
machine, cration dune interface avec
les bus externes de la RAM...
2. Utiliser une machine dote dun
systme dexploitation

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Systme dexploitation

Fait le lien entre utilisateur et


processeur
Il se caractrise par des commandes
utilisateur qui lui sont propres

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

un OS peut tre dvelopp pour


nimporte quelle machine, si il possde
les interfaces adquates avec le CPU
(Unix existe pour PCs, MACs, ...)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Lutilisateur dsigne aussi bien


lutilisateur humain quun logiciel, qui
envoie des commandes lOS : un
logiciel UNIX fonctionnera sur toute
machine ou UNIX est install.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Structure en couche
Systme

dexploitation
Logiciels
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Il manque toujours des outils


dinterface avec lutilisateur humain :
Rle des priphriques

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les priphriques

Leur rle est de permettre dentrer et


de lire les donnes et instructions vers
ou depuis le CPU, via lOS
Ils sont grs par lOS
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Types de Priphriques

Entre : cartes perfores, clavier,


souris,scanner, lecteur DVD
Sortie : Ecran, imprimante, graveur
Entre/Sortie : disque dur, modem, ...
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les grandes familles dOS

DOS/Windows : machines de type PC,


applications bureautique. Code
propritaire, interfaces imposes avec
lOS
Trs large diffusion.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les grandes familles dOS


MacOS : uniquement sur machines
Apple. Diffusion plus restreinte. Base
Unix, facilit accrue de dveloppement
Unix : adaptable sur toutes machines,
accs aux programmes sources, grande
facilit de dveloppement
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les systmes UNIX


Cre dans les annes 70 aux laboratoires
BELL pour permettre lutilisation
simultane des ordinateurs (pour viter
les excutions squentielles)
Premire utilisation Berkeley

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les systmes UNIX

Dveloppement en parallle du langage


C, qui est la fois de syntaxe facile, et
proche du matriel pour permettre une
gestion directe du CPU et des
priphriques.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX

La premire machine sous UNIX avait


24kO de RAM, dont 16 pour le systme
(24 kO = 300 lignes de programme),
disque dur de 512 kO, fichiers de 64 kO
maximum (16000 nombres)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX

Premier systme multi-utilisateur et


multi-tches :
Gestion spcifique des fichiers et des
instructions
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Unix : gestion multi-utilisateurs


Chaque utilisateur est identifi lorsquil
se connecte au systme par un
identifiant (login) et un mot de passe
(password)
LOS positionne alors lutilisateur sur la
partie de larborescence de fichiers qui
lui appartient.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les processus


Process en anglais : cest un programme
en cours dexcution.
LOS affecte un quantum de temps un
process, puis un autre, etc, etc...
Permet lexcution simultane et
efficace de plusieurs programmes
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Unix : gestion multi-utilisateurs


Chaque processus possde un numro
unique.
Les processus ont un propritaire, un
niveau de priorit
Un utilisateur ne peut pas interfrer
avec les processus des autres
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notion de fichier
Un fichier est un ensemble de donnes
binaires, qui, en plus de son contenu,
possde aussi une adresse dans
larborescence de fichiers.
Les rpertoires/dossiers/directories
sont des fichiers spciaux qui
contiennent dautres fichiers
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les fichiers
On distingue les fichiers ASCII, qui
contiennent du texte cod selon la
norme ASCII, et les fichiers binaires/
excutables, qui contiennent soit des
donnes codes selon une autre norme,
soit des fichiers pouvant tre transmis
directement au CPU pour excution
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Unix : les fichiers


Chaque fichier possde un nom :
cest une chane alphanumrique
quelconque (2048 caractres pour
ladresse totale), majuscules et
minuscules sont diffrentes.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Unix : les fichiers


Chaque fichier possde un nom :
toto.txt
TOTO.txt
toto.txt.gz
Toto_1-R@*.f.totototo.jpeg

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Unix : les fichiers


Chaque fichier possde :
un propritaire (un des utilisateurs
identifis dans le systme)
une adresse dans le systme de fichiers

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
Les rpertoires sont imbriques les uns
dans les autres partir du rpertoire
racine qui les contient tous
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
le symbole / (slash) sert sparer les
diffrents niveaux de larborescence
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
/home/user2/info/TPs adresse absolue
de ce rpertoire (commence par /,
unique)
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
le rpertoire depuis lequel on travaille
sappelle le rpertoire de travail, ou
rpertoire courant
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
Rpertoire Principal de lutilisateur
user2. Tous les fichiers inclus
(rpertoires fils ou sous-rpertoires)
dedans lui appartiennent par dfaut.
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
Par rapport un rpertoire donn ..
dsigne le rpertoire immdiatement
suprieur (rpertoire parent) dans
larborescence
user1
home
/
usr
Initiation linformatique

user2

cours
..

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
Par rapport un rpertoire donn, le
chemin relatif dsigne le trajet pour
sy rendre : ../../math
user1
home
/
usr
Initiation linformatique

../..

cours
..

TPs

../../math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Arborescence
Les rpertoires hors rpertoires
principaux appartiennent au superutilisateur du systme : root
user1
home
/
usr
Initiation linformatique

user2

cours
info

TPs

math

var
V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les droits des fichiers UNIX


Par rapport un fichier donn, il existe
trois catgories dutilisateurs :
1. u(ser) : son propritaire
2. g(roup) : le groupe de son
propritaire (collaborateurs proches)
3. o(thers) : les autres utilisateurs
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les droits sur les fichiers UNIX


Pour chaque catgorie dutilisateurs, il
existe 3 types de droits :
1. r(ead) : droit en lecture
2. w(rite) : droit en criture
3. (e)x(ecute) : droit en excution
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les droits sur les fichiers UNIX


Le droit en lecture donne la possibilit
de lire le contenu dun fichier, et donc
de le copier
Pour un rpertoire, cela correspond
pouvoir obtenir la liste des fichiers quil
contient
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les droits sur les fichiers UNIX


Le droit en criture donne le droit de
modifier le contenu du fichier (et donc
de le dtruire).
Pour un rpertoire, cela permet
dajouter un fichier (pour enlever un
fichier, il faut aussi le droit dcriture
sur le fichier)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les droits sur les fichiers UNIX


Le droit en excution autorise, pour un
programme (cod en binaire ou non), la
ralisation de ce programme.
Pour un rpertoire, cela autorise
traverser ce rpertoire pour se
positionner dans un de ses sousrpertoires.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Commandes de base

Les noms des commandes sont


construits partir des noms anglais de
laction correspondante, en ne gardant
que les consonnes significatives

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Commandes de base

Une commande est suivi doptions (qui


modifient son mode de fonctionnement)
et des arguments (en gnral des
fichiers) auxquels elle sapplique.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Commandes de base
list : ls
remove : rm
change directory : cd
print working directory : pwd
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les diffrents modes dexcution


mode synchrone : on tape le nom de la
commande, elle sexcute, on rcupre la
main
mode asynchrone : on tape le nom de la
commande suivi du symbole & : On rcupre
la main immdiatement, mais le
droulement de la commande se poursuit
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les diffrents modes dexcution

le mode asynchrone est utile pour


lancer des commandes longues sans
bloquer la fentre, ou pour lancer
dautres fentres (diteur, logiciel, ...)
tout en gardant la main...

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les diffrents modes dexcution


mode batch : at date commande : permet
de lancer une commande une date
prcise.
mode cron (daprs le nom de son
inventeur) : permet de rpter une
commande intervalles rguliers
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les alias
Un alias est un moyen de crer une
nouvelle commande ou de modifier le
fonctionnement dune commande
Par dfaut la commande rm ne demande
pas de confirmation avant de dtruire
un fichier.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Les alias
alias rm rm -i
change le mode de fonctionnement de
rm, qui demandera systmatiquement
confirmation par la suite (option -i)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les Wild Cards,


Ce sont des caractres spciaux qui peuvent
remplacer un ou plusieurs caractres, par
exemple pour pouvoir grer plusieurs
fichiers ayant des noms proches.
Mme si ce nest pas interdit, il est
dconseill de les utiliser dans les noms de
fichiers
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les Wild Cards,


* remplace nimporte quelle chane de
caractres, y compris la chane vide.
? remplace un caractre et un seul
[a-j] remplace tous les caractres
compris entre a et j inclus
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les Wild Cards,


Il est possible de combiner plusieurs de
ces symboles pour fabriquer des
recherches complexes
ls toto?.* affichera les fichiers
toto1.txt, toto2.for, ...
mais pas toto.txt ni toto22.c
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les variables denvironnement


Elles servent configurer le systme
selon les besoins de lutilisateur.
Elles ont un nom, crit en majuscule
(convention) : HOME, PRINTER, PATH,
PWD, ... et une valeur.
Une vingtaine au total.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les variables denvironnement


On peut lire cette valeur avec la
commande echo
echo chane de caractres
va rpter cette chane. Utile dans un
programme pour afficher un rsultat ou
donner une instruction.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les variables denvironnement


On peut lire cette valeur avec la
commande echo
echo $NOM_DE_VARIABLE
va afficher la valeur de la variable.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les variables denvironnement


HOME contient ladresse du rpertoire
principal.
PRINTER contient le nom de
limprimante utiliser par dfaut.
PATH contient...
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - La variable PATH


Toute commande UNIX correspond un
programme qui doit tre excut.
Question : comment le systme peut-il
savoir ou se trouve le programme en
question ?
Question subsidiaire : un utilisateur
cre une commande : Comment la faire
excuter comme une autre commande ?
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - La variable PATH


La variable PATH contient une liste de
rpertoires de larborescence, dans
lesquels le systme cherche le
programme correspondant une
commande.
/bin/ls est le programme qui est
excut lorsque lon tape ls
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - La variable PATH


Le rpertoire /bin/ est dans la liste de
PATH.
Pour faire excuter un programme qui
nest pas dans un de ces rpertoires il
faut soit donner son adresse complte,
soit modifier le contenu de PATH
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - La variable PATH

Pour savoir o se trouve le programme


qui est excut :
which ls
/bin/ls

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Pipelines
Il est possible sous UNIX de faire
passer le rsultat dune commande une
autre commande sans stocker le
rsultat intermdiaire dans un fichier.
Exemple : dans la liste de mes fichiers,
je ne veux que ceux du mois de
Septembre
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les Pipeline


La commande `ls -l`donne les fichiers
avec leur date de modification
La commande `grep`(get regular
expression) permet de slectionner une
chane de caractre dans un fichier

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - La commande grep


Si on sait pas : commande man (manual),
donne laide pour la commande choisie :
man grep
Syntaxe : grep -e expression fichier

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les Pipeline

le symbole `| `permet de connecter les


deux commandes :
ls -l | grep -e Sep

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les redirections

Un systme UNIX est configur pour


avoir une sortie standard
Par dfaut, le rsultat dune commande
est toujours dirige sur cette sortie

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les redirections


Sur tous les systmes actuels cette
sortie est lcran.
Il est cependant possible de rediriger
les rsultats vers un fichier ou un autre
priphrique (imprimante, ...)

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les redirections


Le symbole de redirection est le `> `
ls > liste.txt
enregistrera le rsultat dans le fichier
liste .txt

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

UNIX - Les redirections

Il est galement possible de lire les


paramtres dun programme dans un
fichier, avec le symbole `< `

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation

Un programme est un ensemble


dinstructions stockes dans un fichier
et crites dans un langage donn,
langage qui traduit ses instructions en
langage machine pour le processeur

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation

Il existe 3 familles de langages


programmation :
compils, semi-interprts et
interprts

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation
Les langages compils
Un programme (source) crit en langage
compil est tout dabord transform en
un fichier excutable (donc crit en
langage machine), qui est celui qui sera
excut. Cette transformation est
effectue par un programme spcial
appel compilateur
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation
Inconvnient : chaque modification du
programme, il faut le compiler nouveau
pour obtenir lexcutable correspondant
Avantage : on est sr que la structure
du programme est correcte avant
lexcution, qui est trs rapide
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation

Principaux langages compils :


C, Fortran,
(calcul scientifique)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmations

Un langage interprt utilise


directement le source, lors de
lexcution chaque commande est
transforme en langage machine avant
dtre effectue excution plus lente

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmations
De plus, une erreur de programmation
nest dtecte que lors de son
excution, donc aprs une certaine
dure dexcution.
Exemples : shell (langage de
programmation UNIX), basic, HTML
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmations
Langage semi-interprt : mme
principe quun langage interprt, mais
la syntaxe est vrifi avant excution
afin de garantir que le programme va a
son terme (ce qui ne garantit pas quil
est correct...)
Exemple : Perl, Java, ...
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Fonctions communes tous les langages


Variable : une variable est un petit
espace mmoire rserv par le
programme, dont le contenu est destin
tre utilis lors des oprations
programmes, et qui peut tre modifi.
La seule grandeur obligatoire pour une
variable est son nom
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les variables


Selon le langage de programmation, les
variables doivent tre dclares au
dbut du programme : meilleur gestion
de la mmoire (langage C). Certains
langage ont des modes qui obligent
cette dclaration (Fortran, Perl). Pour
dautre la dclaration est impossible
(shell)
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les variables


Selon le langage de programmation, les
variables ont un type spcifique : elles
ne peuvent contenir quun seul genre de
valeur : entier, rel, chane de
caractre. La taille mmoire affecte
est diffrente selon le type

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les variables


En langage C, Fortran, la dclaration de
type est obligatoire. En perl, cest le
langage qui dcide, selon le type
doprations qui est ralis, si la
variable doit tre traite comme un
nombre ou une chane de caractre.

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les variables


La dclaration de type est contraignante
mais empche les oprations impossibles
(nombre + caractre), ou qui peuvent
entraner des erreurs darrondi (rsultat
rel stock dans une variable entire)
La non-dclaration de type peut rendre
la lecture du programme moins facile
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Laffectation


Laffectation est lopration qui permet
de modifier le contenu dun variable = lui
affecter une valeur. Cette valeur peut
tre crite directement ou tre le
rsultat dune opration. Le signe
daffectation est en gnral le signe =
MAIS IL NE SAGIT PAS DUNE
EGALITE
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Laffectation


Affectations :
a=3
a=b+c
toto = titi
toto = titi
b+4=c+2
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Laffectation


Affectations :
a=3
a=b+c
toto = titi
toto = titi
b+4=c+2
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les structures


En plus de commandes classiques, tous
les langages de programmation
possdent des structures :

Boucles itratives
Boucles conditionnelles
Structures conditionnelles
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Programmation - Boucles itratives


Ces boucles permettent de rpter un
nombre fini et dfini lavance de fois
une certaine srie doprations. Le
nombre de rptitions est donn par la
variation dune variable entire entre
deux valeurs, ou bien par une liste de
valeurs dfinies lavance quune
variable prendra successivement.
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Programmation - Boucles itratives


Exemples :
pour i compris entre 1 et 100, calculer i**2
pour i compris entre 1 et 10, faire a = a + b
pour file dans la liste nom1, nom2, nom3, copier
file dans le rpertoire $HOME/programmes
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Programmation - Boucles conditionnelles


Ces boucles permettent de rpter une
certaine srie doprations sous
condition.
while : la boucle tourne tant quune
condition est ralise
until : la boucle tourne jusqu ce quune
certaine condition soit ralise
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Programmation - Boucles conditionnelles


Tant que a < b ,faire jusqu ce que a = b faire

a=a+1
c = 2*c + a
Les oprations
peuvent ne pas tre
ralises
Initiation linformatique

a = a + 10
c=b+a
Les oprations sont
toujours ralises au
moins une fois

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Programmation - Boucles conditionnelles


Mal programmes, ces
boucles peuvent ne pas
b=1
sarrter ...
Il faut galement faire
Tant que a > b ,faire
en sorte que les
instructions lintrieur
a=a+1
de la structure modifie la
c = 2*c + a
condition

a=10

Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les structures


conditionnelles
Ces structures permettent de raliser
des instructions si une condition est
ralise, et ventuellement dautres
instructions sinon.
Les structures peuvent tre imbriques
sur plusieurs niveaux
Initiation linformatique

V. Le Brun 2007-2008

Universit de Provence

UFR MIM

Notions de programmation - Les structures


conditionnelles
Si condition1 alors
bloc_instructions_1
sinon si condition2 alors
bloc_instructions_2
sinon si.....
....
sinon
dernier_bloc_instructions
fin

Initiation linformatique

V. Le Brun 2007-2008

Vous aimerez peut-être aussi