You are on page 1of 154

Introduction aux Systèmes

d'exploitations

Prof: Imade BENELALLAM


E-Mail: i.benelallam@insea.ac.ma
Plan

Systèmes informatiques

Définitions

Structure d’un SE

Classifications des SE

Quelques définitions

Modèle en couches
– Gestion de mémoire
– Gestion des processus
– Gestion des périphériques (Entrée/Sortie)
– Gestion des fichiers

Généralités sur Unix

Comparaison entre Linux & Windows
Pourquoi étudier les SE?


Logiciel très important…
– tout programme roule sur un SE
– interface usager-ordinateur

Les SE utilisent beaucoup d ’algorithmes et
structures de données intéressants
– Les techniques utilisées dans les SE sont aussi utilisées
dans nombreuses autres applications informatiques

il faut les connaître
Les systèmes informatiques


Micro-informatique
– Familiale, toutes les entreprises
– Bureautique, Client applicatif
– Mono-utilisateur, mono ou multitâches
– DOS, WINDOWS95, OS2 (Machines PC) ou MAC OS (Macintosh)
– Intel Pentium, Motorola 68030, Cyrix, AMD...
– Nombre d'utilisateurs : 1
– Coût : autour de 15 000 DH
Les systèmes informatiques

Mini-informatique
– De la P.M.E. à la multinationale
– Scientifique, Gestion commerciale, Gestion financière,
Serveur Intranet/Internet...
– Multi-utilisateurs, Multitâche
– UNIX, Windows NT, VMS
– Digital Alpha, Intel Pentium, RS 6000...
– Nombre d'utilisateurs : de 5 à 100
– Coût : 150 000 DH
– Constructeurs : IBM, Digital, Sun, Bull, Siemens Nixdorf,...
Les systèmes informatiques


Grosse informatique ou "Mainframes"
– Grandes sociétés : Banques, Administrations...
– Gestion financière, paie, calculs scientifiques
– Multi-utilisateurs, Multitâche
– Système d'exploitation : GCOS, MVS (IBM) ou Systèmes
propriétaires
– Nombre d'utilisateurs : de 10 à +1000
– Coût : 1 000 000 DH
Introduction :
Un ordinateur doit être capable de faire fonctionner un programme,pour
cela il faut que la machine puisse effectuer un certain nombre d'opérations
préparatoires afin d'assurer les échanges entre l'unité centrale de traitement,
la mémoire, et les périphériques.

UCT Mémoire E/S

Opération des échanges


Ces opérations sont assurées par un ensemble de programmes appelé le
système d’exploitation OS (Operating System).

Université Med V- Agdal 2004


Définition :
Un système d'exploitation est un ensemble de programmes permettant à
son utilisateur de disposer d'un ensemble de services élaborés à partir des
ressources de la machine sur laquelle il s'exécute.il doit assurer :
chargement et lancement des programmes.
gestion du (des) processeur(s)
gestion des périphériques et entrées/sorties.
gestion de la mémoire principale et secondaire.
... Applications
OS

Bios
Matériel

Université Med V- Agdal 2004


A savoir :
les périphériques varient d'un ordinateur à un autre, en particulier sur un PC.
On a introduit donc la notion des pilotes de périphériques (instructions
servant à piloter un périphérique, en anglais drivers) différents selon les types
d'ordinateurs et les types de périphériques.

OS

Pilotes

Matériel

Université Med V- Agdal 2004


Définitions

angl. « Operating System (OS) »

Qu'est-ce que c'est?
« Programme assurant la gestion de l'ordinateur et de ses périphériques »

A quoi ca sert?
– Fournit l’interface usager/machine:

Masque les détails du matériel aux applications

Le SE doit donc traiter ces détails
– Contrôle l’exécution des applications

Le fait en reprenant périodiquement le contrôle de l’UCT

Dit à l’UCT quand exécuter tel programme
– Il doit optimiser l`utilisation des ressources pour maximiser la performance
du système
Définitions


Le système d’exploitation d’un système informatique est
un ensemble de programmes qui remplissent deux
grandes fonctions :
– gérer les ressources de l’installation matérielle en assurant
leurs partages entre un ensemble plus ou moins grand
d’utilisateurs
– assurer un ensemble de services en présentant aux
utilisateurs une interface mieux adaptée à leurs besoins que
celle de la machine physique
Abstraction


Cacher la complexité des machines pour
l'utilisateur afin d'utiliser la machine sans savoir ce
qui est derrière

Abstraction du terme « Machine » selon Coy:
– machine réelle = Unité centrale + périphériques
– machine abstraite = machine réelle + système
d'exploitation
– machine utilisable = machine abstraite + application
Vue abstraite d’un SE
Ressources et leur gestion


Ressources:
– physiques: mémoire, unités E/S, UCT...
– Logiques = virtuelles: fichiers et bases de données
partagés, canaux de communication logiques, virtuels...
– les ressources logiques sont bâties par le logiciel sur les
ressources physiques

Allocation de ressources: gestion de ressources,
leur affectation aux usagers qui les demandent,
suivant certains critères
Exigences à un Système d'exploitation

 Généralités
 Satisfaire les utilisateurs et les programmeurs
 Gérer 2D, 3D, vidéo, audio, réseau, CD, DVD, clé USB, ...
 Plusieurs utilisateurs (itinérants) --> multi-utilisateurs
 être extensible

 De plus en plus gros et complexe :


 Efficace, évolutif, maintenable
Exigences de l'utilisateur

 « Faut que ça marche ! »


(comme j'en ai envie ...)

 « Ça imprime pas ... »

 = Machine utilisable (machine étendu)


Exigences du programmeur

 Simplifier l'accès aux ressources de la machine :


 Mémoire, processeur, périphériques, fichiers, programmes,
réseaux, communication interne
 Modèle de programmation simple et unifié

 Efficacité dans tous les cas

 = Machine étendue
Historique des Systèmes
d'exploitations

CP/M (depuis 1974), Digital Research

UNIX (depuis 1969-1979), premier par AT&T

MS-DOS (depuis 1981), Microsoft

MacOS (depuis 1984), Apple

Windows (depuis 1991), Microsoft

Linux (depuis 1992), OpenSource
Systèmes d'exploitations


CP/M (depuis 1974), Digital Research
– Gestion de disque dur, mais pas d'arborescence
– Pas de graphisme
– Exemple:

CPU 8088, 2 MHz

64 KO de RAM

5 MO de disque dur
Systèmes d'exploitations


UNIX (depuis 1969-1979), AT&T
– A servi de modèle pour MS-DOS, Windows, ..
– Multi-tâche et Multi-utilisateurs

accès simultané aux fichiers, péripheriques, mémoire,
processeurs, ..
– Protection mémoire : aucun programme ne peut faire
planter le système
– Systèmes de fichiers hiérarchique
– GUI X-Windows
Systèmes d'exploitations


MS-DOS (depuis 1981), Microsoft
Systèmes d'exploitations


MacOS (depuis 1984), Apple
– premier GUI
Systèmes d'exploitation Windows

Windows 3.11
– pas de multitâche, pas de multi-utilisateurs

Windows 95
– multi-tâche
– premier système 32 bit

Windows 98
– Internet integré dans le GUI
– Plug & Play

parallèlement Windows NT
– système d'exploitation réseaux multi-utilisateur

Windows 2000, et après Windows XP
– jumellage entre système d'exploitations réseaux et « stand-alone »

Windows 7, Windows 8
Systèmes d'exploitations


Linux (depuis 1992), OpenSource
– finlandais Linus Thorwald
– Licence GPL (General Public Licence) – OpenSource
– Multi-tâche et Multi-utilisateurs
– Distributions

Red Hat

Fedora

Debian

Mandrake..
Petite présentation de….
Windows 8 !
Windows 8 est le nom de code de la future version de Microsoft
Windows. Elle apporte de très nombreuses nouveautés, comme :
•Prise en charge de l'architecture ARM (type de processeur
essentiellement utilisé dans les smartphones et les tablettes);
•Nouvelle interface (dite Métro), tactile et utilisable à la souris,
basée sur HTML 5, Javascript, XAML, C#, C++, etc. Elle s'ajoute à
l'interface Aéro actuelle de Windows 7;
•Suppression du menu démarrer;
•Interface de l'explorateur revue (style office 2010);
•Internet explorer 10 sous deux versions (une pour Métro qui
n'inclut pas Flash, Java ou Silverlight et une autre classique pour
l'interface Aéro);
•Gestionnaire des tâches amélioré;
•Nouveau système de fichier;
•Gestionnaire de démarrage modifié;
•Prise en charge par défaut des fichiers images;
•Etc ....
Interface métro

Image : Microsoft. Tous droits réservés.


Interface métro (suite)

Image : Microsoft. Tous droits réservés.


Interface métro (fin)

Image : Microsoft. Tous droits réservés.


Gestionnaire des taches de Windows 8

Images : Microsoft. Tous droits réservés.


Gestionnaire des taches (suite)

Image : Microsoft. Tous droits réservés.


Internet Explorer 10

Image : Microsoft. Tous droits réservés.


Internet Explorer (fin)

Image : Microsoft. Tous droits réservés.


Filtre SmartScreen et protection au démarrage

Images : Microsoft. Tous droits réservés.


Introduction au système MS-DOS
(MicroSoft Disk Operating System)
Le DOS, comme tout système d'exploitation, contrôle les activités de l'ordinateur. Il
gère des opérations telles que la circulation, l'affichage, et l'entrée de données entre
les divers éléments constitutifs du système.

Le rôle du DOS est d'interpréter les commandes saisies au clavier par l'utilisateur.
Ces commandes permettent d'effectuer les tâches suivantes:
•la gestion des fichiers et des répertoires.
•la configuration du matériel.
•l'optimisation de la mémoire.
•l'exécution des programmes.
•…

Université Med V- Agdal 2004


Les fichiers sous MS-DOS

Sous MS-DOS chaque fichier peut être aussi volumineux que possible, cependant le
nom que vous lui donnez est soumis à des restrictions, on ne peut en effet lui donner un
nom d'une longueur maximale de 8 caractères plus 3 pour l'extension.
De plus, les fichiers ne doivent contenir que les caractères suivants:
•lettres de A à Z
•chiffres de 0 à 9
•caractères spéciaux suivants: _ ^ $ ~ ! # % & - { } ( ) @ '
Enfin, les noms de fichiers ne doivent pas contenir:
•de blanc (espace).
•de virgule.
•de barre oblique inverse.
•de point (hormis le point qui sépare le nom de l'extension).

Université Med V- Agdal 2004


Les fichiers sous MS-DOS

et ils ne doivent pas non plus appartenir à la liste de noms réservés:


CLOCK$ CON AUX COM1 COM2 COM3 COM4 LPT1 LPT2
LPT3 NUL PRN

Un disque dur peut contenir, suivant sa taille, plusieurs milliers de fichiers. Cependant,
plus leur nombre est élevé plus il est difficile de les gérer, il devient alors nécessaire de
les stocker dans des répertoires. Sous MS-DOS, les noms de ces répertoires sont soumis
aux mêmes restrictions de longueur que les fichiers (8 caractères pour le nom).

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Rôle : Afficher le contenu d'un répertoire

La commande " DIR " fait la liste des fichiers


correspondant aux spécifications précisées par
l ’argument de la commande et donne quelques
renseignements sur les fichiers.
Remarque : Si on veut afficher la liste des fichiers dont
l ’extension est « .txt », on envoie la commande :
C:\DIR *.txt

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Rôle : Créer un répertoire


La commande MKDIR (MaKe DIRectory)
peut être abrégée en MD.
Il suffit de taper :
C:\MD Nom du répertoire

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Rôle : Effacer un répertoire


La commande RMDIR (ReMove DIRectory)
peut être abrégée en RD.
C:\RD Nom du Répertoire
Rôle : Changer de répertoire
La commande "CD" ou encore "CHDIR"
permet de passer d'un répertoire à l'autre (CD
pour Change Directory)
C:\cd Nom du Répertoire
Université Med V- Agdal 2004
Quelques commandes MS-DOS

Rôle : copier un ou une liste de fichiers


Syntaxe : COPY [fichier départ] [fichier destinataire]
Il faut passer en premier argument le nom du fichier
à copier, et en deuxième argument le nom que nous
voulons donner à la copie.

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Exemple : Pour copier « fichier1.txt » dans le


sous répertoire « R2 » en lui donnant un
nouveau nom copie1.txt.
" \ " racine de' l'arborescence correspondant
Répertoire à un disque (C: ou A:)
courant

Repertoire1 R2 R3 R4

fichier1 fichier2 R5 R6 R7 R8

fichier3

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Rôle : Renommer un fichier

• La commande RENAME peut être abrégée en


REN

• Exemple :
C:\ren fichier1.txt surnom.txt

Université Med V- Agdal 2004


Quelques commandes MS-DOS

Rôle : Supprimer un fichier


Elle sert à détruire un fichier ou une liste de fichier. On
lui donne comme argument le nom d ’un fichier (et
éventuellement son extension) ou bien les
spécifications d ’une liste de fichiers à l ’aide des
caractères « ? » ou « * ».
Il est possible de supprimer tous les fichiers d ’un
répertoire en une seule fois : ERASE *.*
Exemple:
C:\erase Nom de fichier

Université Med V- Agdal 2004


Quelques commandes MS-DOS

dir liste le contenu d'un répertoire


cd change de répertoire
cd .. répertoire parent
md ou mkdir crée un nouveau répertoire
deltree supprime un répertoire, ainsi que l'ensemble de ses sous-répertoires.
copy, xcopy copie de fichier
move déplacement de fichier
del supprime le fichier
help aide sur la commande demandée
format formate le lecteur demandé
ver donne le numéro de version

2004
Structure d’un système informatique

Applications

r s Ed
u ite
l ate Système d’exploitation urs
pi
o m
C Langage machine
Dispositifs
physiques

Interpréteur de commandes
Classifications des S. E.

Par la méthode d’accès au système par l’usager :
– par session : ce sont les systèmes transactionnels ou
conversationnels (ex : réservation d’un billet ONCF)
– par requête : temps réel (ex: la voix sur IP)
– par travaux (batch) : traitement par lots (ex: mise à jour des
comptes bancaires la nuit)

Par le genre d’applications des usagers :
– développement de programmes
– manipulation des données
Classifications des S. E.

Par la configuration matérielle :
– un seul processeur : système monoprocesseur
– plusieurs processeurs : système multiprocesseur
– basée sur un réseau : système réseau (système distribué)

Par le nombre d’usagers simultanés
– système monoposte
– système multiposte
Classifications des S. E.

Par la politique de partage des ressources physiques et
logiques :
– partage de la mémoire entre plusieurs programmes : système
multiprogrammé
– partage du temps processeur entre les programmes en
exécution : temps partagé (partage par quantum de temps) ou
temps
– réel (partage par priorité des tâches)
Quelques définitions

Noyau

Processus

Traitement par lots

Systèmes Multi-tache

Systèmes Multi-utilisateurs

Systèmes Multi-processeurs

Systèmes temps réel

Systèmes distribués
Définitions : Le noyau


Les fonctions principales du noyau sont :
– L’allocateur (dispatcher) du CPU : répartition du temps
disponible de l’unité de traitement entre les différents
processus
– La gestion des interruptions : détermination de la source de
l’interruption et activation de la procédure de service
correspondante
– Le support de l’environnement des processus :
synchronisation des processus
Définitions : Les processus

Un processus est un programme qui s’exécute = un
programme exécutable + données + pile + compteur
ordinal + pointeur de pile + registres +…

P1
P6 P2

P5 P3
P4
Définitions:
Traitement par lots (Batch processing)

Un utilisateurs donne plusieurs commandes
(« Jobs ») dans une queue d'éxécution de
programmes

Entièrement séquentielle

p.ex. pour faire plusieurs calculs pendant la nuit


p.ex. autoexec.bat
Définitions:
Systèmes Multi-tache (Multitasking)

Assurer l'éxécution de plusieurs programmes en
meme temps (c-à-d. plusieurs processus)


Chaque processus a besoin du processeur
– situation concurrente
– solution: « scheduling » ou ordonnancement
Définitions:
Systèmes Multi-processeurs

système avec plusieurs processeurs
– parallèle
– vrai multi-tâches
– doit assurer qu'il y a l'exécution d'autant de processus
que processeurs en même temps

contrairement: système avec un seul processeur
– quasi-parallèle
– arrêter et reprendre les différent processus

Gestion avec le « scheduler » (ordonnancement des processus)
Définitions:
Systèmes Multi-utilisateurs (« time-sharing »)

permettre a différentes personnes de travailler avec un
ordinateur en même temps

connexion par
– via le terminal de l'ordinateur lui-même
– à distance (telnet, ssh, ftp, ...)

donner l'impression à chaque utilisateur qu'il est seul

exige une gestion des droits
– de fichiers (pour éviter la destruction des fichiers etc.)
– de processus
Définitions:
Multi-utilisateurs

Login


Type:
– Administrateur (« root »)
– Groupes
– Utilisateurs


pour gérer les droits
Définitions:
Systèmes Temps réels

Sert pour le pilotage et le contrôle des déroulements
externes (p.ex. centrale électrique)

doit garantir des temps de réactions données pour des
signaux extérieur urgents

plusieurs systèmes d'exploitations n'y arrivent pas car
l'interruption de certaines activités met le système
dans un état instable
Définitions:
Systèmes distribués

doit permettre l'éxecution d'un seul programme
sur plusieurs machines


distribuer les processus et les remettre ensemble


p.ex. Corba , RMI ou oracle
SE: Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des périphériques (entrées/sorties)

Gestion des processus

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
Ingrédients

Gestion de la mémoire

Gestion des fichiers

Gestion des processus

Gestion des périphériques (entrées/sorties)
– Contrôle des péripheriques via « Pilotes » (Driver)

Quelques logiciels
– Logiciels utilitaires (ls, pwd, format, ...)
– Logiciels d'application (Bloc-notes, ...)
– Logiciels de communication (Internet Explorer, ...)
Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des périphériques (entrées/sorties)

Gestion des processus

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des périphériques (entrées/sorties)

Gestion des processus

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
gestion mémoire

Les mémoires

Conservation de l’information

Caractéristiques
– Situation, capacité, méthodes d’accès, performances
– Nature : magnétique, optique, semi-conducteurs
– Propriétés : volatile/non, effaçable/non, etc

Organisation, hiérarchie
– CPU : registres, cache
– Mémoire centrale
– Mémoire secondaire : disque, CD, bande magnétique…
gestion mémoire
gestion mémoire

Mémoire/Adresses physiques et logiques:



Mémoire physique:
– la mémoire principale RAM de la machine

Adresses physiques: les adresses de cette mémoire

Mémoire logique: l’espace d`adressage d’un
programme

Adresses logiques: les adresses dans cet espace

Il faut séparer ces concepts car normalement, les
programmes sont chargés de fois en fois dans
positions différentes de mémoire
– Donc adresse physique ≠ adresse logique
gestion mémoire

Pour illustrer le travail du système d'exploitation, on choisit


de décrire quelques tactiques appliquées par les SE
pour gérer la mémoire :
1. les partitions,
2. la segmentation,
3. la pagination,
4. la mémoire virtuelle.
Pour chacune on présente l'idée, la mise en œuvre, les
avantages et les inconvénients.
gestion mémoire
les partitions

Technique « historique ».

Idée : Diviser arbitrairement la mémoire en partitions de
dimensions fixes : partitions statiques. Toutes les
partitions ne sont pas de même taille.

Mise en œuvre : Les programmes sont implantés dans
chaque partition.

Avantages : Simplicité du SWAP

Inconvénients : Un gros programme ne peut être exploité
que dans une partition suffisamment grande et un petit
programme rentabilise mal une grande partition.
gestion mémoire
La segmentation

La segmentation : division d’un programme en segment
correspondant à une entité logique telle une procédure
ou un bloc de données
– Le système gère un ensemble de tables de segments,
contenant les adresses de chargement des segments de
chaque programme (une par job), afin de savoir où ils sont
stockés
– L’adresse contient deux champs (le numéro du segment et le
déplacement à l’intérieur du segment)

La segmentation est coûteuse en temps de traitement
gestion mémoire
La pagination

Idée : Découper la mémoire en PAGES de dimension
fixes et implanter les programmes dans les pages libres.

Mise en œuvre :
– L’espace d’adressage virtuel est divisé en petites unités
appelées pages.
– L’espace d’adressage physique est aussi divisé en petites
unités appelées cases ou cadres (page frames)
– Les pages et les cases sont de même taille
gestion mémoire

La pagination


Avantages : Ce type de gestion est très efficace car
utilise au maximum la mémoire et évite le tassage de
mémoire.

Inconvénients : on reste toujours limité à la taille effective
de la mémoire.
gestion mémoire
La mémoire virtuelle

Idée : Supprimer la contrainte de dimension de la
mémoire ou fournir un espace d’adressage indépendant
de celui de la mémoire physique

Mise en œuvre : On dote l’ordinateur de deux niveaux de
mémoire : la mémoire centrale (performante et chère) et
la mémoire de masse (le disque) moins performante mais
de dimension pratiquement illimitée.
– Performances liées aux : seek time ; latency time ;
transmission time. Là encore l’optimisation est gérée
par le système d’exploitation qui met en place des
stratégies.
gestion mémoire
La mémoire virtuelle (suite)

La mémoire virtuelle consiste à traiter séparément les adresses
référencées par un programme (adresse virtuelles) et les adresses
de la mémoire physique (adresses réelles). C’est un espace
mémoire qui n’existe pas mais qui peut être utilisé par le
programmeur comme modèle de mémoire centrale à sa
disposition

La pagination, nécessaire pour réaliser une mémoire virtuelle,
consiste à découper les deux espaces adresses (réel et virtuel) en
pages de la même taille et à mettre en œuvre un mécanisme de
transfert de page entre la mémoire virtuelle et réelle

Avantages : Beaucoup de place !

Inconvénients : SWAP ou accès disque à optimiser
Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des périphériques (entrées/sorties)

Gestion des processus

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
processus


Concept de processus: un programme en exécution
– Possède des ressources de mémoire, périphériques, etc
– Un processus est un programme qui s'exécute, ainsi que
ses données, sa pile, son compteur ordinal, son pointeur
de pile et les autres contenus de registres nécessaires à
son exécution.
– Un processus fournit l'image de l'état d'avancement de
l'exécution d'un programme.
Arbre de processus en UNIX
État de processus


Au fur et a mesure qu’un processus exécute, il
change d’état
– nouveau: le processus vient d ’être créé
– exécutant-running: le processus est en train d ’être
exécuté par l ’UCT
– attente-waiting: le processus est en train d ’attendre un
événement (p.ex. la fin d ’une opération d ’E/S)
– prêt-ready: le processus est en attente d’être exécuté par
l ’UCT
– terminated: fin d ’exécution
Diagramme de transition d`états d`un
processus

Ordonnanceur = angl. scheduler


États Nouveau, Terminé:

Nouveau
– Le SE a créé le processus

a construit un identificateur pour le processus

a construit les tableaux pour gérer le processus
– mais ne s’est pas encore engagé à exécuter le processus (pas encore
admis)

pas encore alloué des ressources
– La file des nouveaux travaux est souvent appelée spoule travaux (job
spooler)

Terminé:
– Le processus n ’est plus exécutable, mais ses données sont encore
requises par le SE (comptabilité, etc.)
Transitions entre processus


Prêt  Exécution
– Lorsque l ’ordonnanceur UCT choisit un processus pour
exécution

Exécution  Prêt
– Résultat d’une interruption causée par un événement
indépendant du processus

Il faut traiter cette interruption, donc le processus courant perd
l’UCT
– Cas important: le processus à épuisé son intervalle de temps
(minuterie)
Transitions entre processus


Exécution  Attente
– Lorsqu’un processus fait un appel de système (interruption
causée par le processus lui-même)

initie une E/S: doit attendre le résultat

a besoin de la réponse d’un autre processus

Attente  Prêt
– lorsque l'événement attendu se produit
processus

La priorité d’un processus est attribuée par le
planificateur (scheduler) selon l’urgence et les
ressources requises

L’allocateur doit aussi sauvegarder l’état de la
machine lorsque le processus s’interrompt et
indiquer au CPU le processus suivant ; le processus
interrompu est sauvegardé dans un bloc
d’information appelé vecteur d’état ou descripteur
processus

Notion de préemption
Définition : la préemption est la mise en attente forcée d’un
processus.
Un processus spécial s’occupe de faire « tourner »
les processus qui sont en running : c’est l'Ordonnanceur ou
scheduler en anglais. La gestion de la préemption est appelé
l’ordonnancement ou le scheduling.
Les critères de choix appliqué par le S.E. déterminent
les performances du système.
processus
Notion de préemption (suite)
Il y a différent niveau d’attente d’un processus, c’est à dire
différents états possibles au sein de l’état waiting et de l’état
ready. En effet, lorsque la mémoire est saturée, le processeur
transfère une zone mémoire sur le disque pour libérer de la
mémoire. Il choisit la zone mémoire d’un processus qui ne fait
rien. Lorsque le processeur devra exécuter un bout du code
de ce processus il devra recharger la zone mémoire stockée
sur disque en mémoire centrale. Cette opération (dans un
sens et dans l’autre) s’appelle le SWAP !
D’où deux états supplémentaires : « waiting swappé » et
« ready swappé ».
Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des périphériques (entrées/sorties)

Gestion des processus

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
Entrées-sorties
Les entrées/sorties correspondent aux mécanismes
qu’utilisent les processus pour communiquer avec
l’extérieur. Ces entrées-sorties font largement appel
aux couches les plus proches du matériel, et dont le
système tente de masquer les particularités aux
utilisateurs.
Il y a 3 types d’E/S :

Électroniques : mémoires

Magnétiques : disques ou disquettes

Mécaniques : clavier, imprimantes
Gestion des entrées-sorties


Objectifs :
– envoyer des commandes aux périphériques
– intercepter les interruptions
– traiter les erreurs

Fournir une interface simple, facile d’emploi et
indépendante du périphérique utilisé

Définition de pilotes (drivers)
Modèle en couches

Application (Logiciel, p.ex. Microsoft Word)

Gestion des fichiers

Gestion des processus

Gestion des périphériques (entrées/sorties)

Gestion de la mémoire

Noyau du Système d’exploitation


Pilote Pilote Pilote
Matériel
Fichiers et répertoires


Les fichiers sont :
– soit des fichiers de données sur disque dur
– soit des répertoires
– soit des fichiers spéciaux permettant la gestion de
certaines ressources du système

Les fichiers sont organisés en répertoires et sous­
répertoires, formant une arborescence
Que c’est qu’un fichier?


Collection nommée d’informations apparentées,
enregistrée sur un stockage secondaire
– Nature permanente

Les données qui se trouvent sur un stockage
secondaires doivent être dans un fichier

Différents types:
– Données (binaire, numérique, caractères….)
– Programmes
Structures de fichiers


Aucune – séquences d’octets…

Texte: Lignes, pages, docs formatés

Source: classes, méthodes, procédures…

Etc.
Attributs d’un fichier

Constituent les propriétés du fichiers et sont stockés dans
un fichier spécial appelé répertoire (directory). Exemples
d’attributs:
– Nom: pour permet aux personnes d’accéder au fichier
– Identificateur: un nombre permettant au SE d’identifier le
fichier
– Type: Ex: binaire, ou texte; lorsque le SE supporte cela
– Position: Indique le disque et l’adresse du fichier sur
disque
– Taille: En bytes ou en blocs
– Protection: détermine qui peut écrire, lire, exécuter…
– Date: pour la dernière modification, ou dernière utilisation
Opérations sur les fichiers: de base


Création

Écriture
– Pointeur d’écriture qui donne la position d’écriture

Lecture
– Pointeur de lecture

Positionnement dans un fichier (temps de recherche)

Suppression d’un fichier
– Libération d’espace

Troncature: remise de la taille à zéro tout en conservant les
attributs
Autres opérations


Ajout d’infos

Rénommage

Copie
– peut être faite par rénommage: deux noms pour un
seul fichier

Ouverture d’un fichier: le fichier devient associé à un
processus qui en garde les attributs, position, etc.

Fermeture
Types de fichiers


Certains SE utilisent l’extension du nom du fichier pour
identifier le type.
– Microsoft: Un fichier exécutable doit avoir l’extension .EXE, .COM,
ou .BAT (sinon, le SE refusera de l’exécuter)

Le type n’est pas défini pour certains SE
– Unix: l’extension est utilisée (et reconnue) seulement par les
applications

Pour certains SE le type est un attribut
– MAC-OS: le fichier a un attribut qui contient le nom du programme
qui l’a généré (ex: document Word Perfect)
Types de fichiers
Structure logique des fichiers


Le type d’un fichier spécifie sa structure
– Le SE peut alors supporter les différentes structures correspondant aux
types de fichiers
– Cela complexifie le SE mais simplifie les applications

Généralement, un fichier est un ensemble d’enregistrements
(records)
– Chaque enregistrement est constitué d’un ensemble de champs (fields)
– Un champ peut être numérique ou chaîne de chars.
– Les enregistrements sont de longueur fixe ou variable (tout dépendant du
type du fichier)

Mais pour Unix, MS-DOS et autres, un fichier est simplement
une suite d’octets « byte stream »
Arborescence
Gestion de fichiers

Le SGF doit gérer la plupart des informations des usagers et du
système lui-même

Il a des liens étroits avec le système d’E/S (Unix - aucune
différence entre un fichier et un périphérique)

La conservation des fichiers et la réalisation des fonctions
d’accès impliquent la prise en charge par le SGF de :
– la gestion du support physique en masquant à l’utilisateur les détails
de l’organisation physique de ses fichiers
– la sécurité et la protection des fichiers, c’est à dire la garantie de leur
intégrité en cas d’incident ou de malveillance et le respect des règles
d’utilisation fixées (droits d’accès, conditions de partage...)
Droits d’accès

A chaque fichier est associé un propriétaire et un ensemble de
droits d’accès (lecture, écriture et exécution)

Trois types d’utilisateurs :
– le propriétaire
– les utilisateurs du même groupe que le propriétaire
– les autres utilisateurs du système
Droits d’accès

Un utilisateur vis à vis d’un fichier appartient à l’une des trois
catégories d’utilisateurs

Chaque fichier possède des droits spécifiques pour chacune de
ces catégories

Seul le propriétaire peut modifier ces droits
Exemple : Unix
-rwxr-----

la chaîne rwx indique que le propriétaire a le droit de tout faire alors que les
utilisateurs du même groupe ne peuvent que lire le fichier
Système de fichiers

Arborescence

Nom des fichiers:
– /home/jack/microarrays/estrogen
-rw-r----- 1 patrick lipsi 2340 Jun 11 17:45 guethary.jpg
-rwxr-x--- 1 patrick lipsi 2340 Jun 11 17:45 PacMan.exe


Droits:
– Utilisateur Groupe Tous
– 'r' lire, 'w' ecrire, 'x' éxécuter

Types:
– '-' Fichier regulier, 'd' repertoire, 'x' lien symbolique..
Système de fichiers
Système d'exploitation Types de système de fichiers supportés
Dos FAT16
Windows 95 FAT16
Windows 95 OSR2 FAT16, FAT32
Windows 98 FAT16, FAT32
Windows NT4 FAT, NTFS (version 4)
Windows 2000/XP FAT, FAT16, FAT32, NTFS (versions 4 et 5)
Ext2, Ext3, ReiserFS, Linux Swap(, FAT16,
Linux
FAT32, NTFS)
HFS (Hierarchical File System), MFS
MacOS
(Macintosh File System)
OS/2 HPFS (High Performance File System)
SGI IRIX XFS
FreeBSD, OpenBSD UFS (Unix File System)
Sun Solaris UFS (Unix File System)
IBM AIX JFS (Journaled File System)
Structures de répertoires (directories)

Une collection de structures de données contenant infos sur les fichiers.

Répertoires

Fichiers F 1 F2 F4
F3
Fn


Tant les répertoires, que les fichiers, sont sur disques

À l’exception d’un rép. racine en mém. centrale
Information dans un répertoire

Nom du fichier

Type

Adresse sur disque, sur ruban...

Longueur courante

Longueur maximale

Date de dernier accès

Date de dernière mise à jour

Propriétaire

Protection
Opérations sur répertoires


Recherche de fichier

Création de fichier

Suppression de fichier

Lister un répertoire

Rénommer un fichier

Traverser un système de fichier
Organisation de répertoires


Efficacité: arriver rapidement à un enregistrement

Structure de noms: convenable pour usager
– deux usagers peuvent avoir le même noms pour fichiers
différents
– Le même fichier peut avoir différents noms

Groupement de fichiers par type:
– tous les programmes Java
– tous les programmes objet
Partage de fichiers


Désirable sur les réseaux


Nécessite de protection
Protection


Types d ’accès permis
– lecture
– écriture
– exécution
– append (annexation)
– effacement
– listage: lister les noms et les attributs d’un fichier


Par qui
Listes et groupes d’accès - UNIX


Modes d ’accès: R W E

Trois classes d ’usager:
– propriétaire
– groupe
– public

demander à l ’administrateur de créer un nouveau
groupe avec un certain usager et un certain
propriétaire

droit du propriétaire de régler les droits d ’accès et
d ’ajouter des nouveaux usagers
Sécurité - Que faut-il protéger ?


Vos données : les informations (fichiers , traitement) qui sont
sur les ordinateurs, pour qu'elles : ne soient pas détruites ou
altérées rendues indisponibles accédées si elles sont
confidentielles

Vos ressources : le temps CPU, l'espace disque, le réseau (la
bande passante, le volume)

Votre réputation (institutionnelle, professionnelle ou
personnelle)
Sécurité - Les attaques


Il y a plusieurs types d'attaques différentes :
– L'intrusion, d'où qu'elle vienne (par le réseau, via un terminal local,
via un programme)
– Le refus de service : atteinte à la disponibilité. (conséquences des
virus)
– Le vol d'informations
Sécurité - Identification

L'identification est réalisée sur la plupart des systèmes grâce au
contrôle d'un couple (username / password)

Problèmes :
– Les passwords circulent la plupart du temps « en clair », il est donc
facile de les intercepter
– Malgré les efforts de sensibilisation, les mots de passe des utilisateurs
sont en général « faciles » à découvrir (déduction logique,
« crackage »)
Sécurité - Identification

Il ne faut pas avoir le même mot de passe pour plusieurs personnes !

Ne JAMAIS le révéler à QUI QUE CE SOIT !

Il ne faut pas avoir le même mot de passe sur des machines différentes

Il ne faut pas choisir un mot de passe tel que votre nom, prénom, noms
des proches, numéros de téléphones, SS, rue, le mois courant, l'année ...

Il faut en changer dès qu'on vous le donne

Il ne faut pas le noter

IL FAUT OBLIGATOIREMENT LE CHANGER
RÉGULIÈREMENT (et ne pas remettre le même ... !)
Sécurité - Les bons mots de passe


Ce n'est pas un « mot » ! C'est à dire qu'il ne doit figurer
dans aucun dictionnaire (nom communs, propres, thématiques,
etc.) des langues les plus courantes

Il ne doit pas non plus s'en approcher d'une variation « faible »
(capitale initiale, une lettre en plus ou en moins, une
substitution...)

Il doit être suffisamment long (au moins huit à dix caractères)
Sécurité - Les bons mots de passe

Méthodes pour en inventer :
– Prendre les premières lettres d'une phrase (cesli)
– Prendre deux mots (courts), concaténés par un chiffre ou une
ponctuation (love2info)
– Écrire en phonétique ou avec des fautes d'orthographes
(7touMuch,fonaitick)
– Alterner capitales et minuscules, remplacer certains O par des 0, des I
par des 1, mettre des caractères non-imprimables si le système le
permet
– Penser et faire attention aux variations simples ou algorithmiques
programmées dans les crackers
Unix - Généralités

Créé par Ritchies et Thomson, dans les laboratoires BELL en 1974

Ecrit à 90 % en langage C

Marque déposée, d’où l’existence de versions voisines (HP/UX, AIX)

2 familles : Système V et BSD (Berkeley Software Distribute)

Multi-tâches (file d’attente) / Multi-utilisateurs

Interfaces aisées

Gestion hiérarchique des fichiers (arbre inversé)

Sécurité sur chaque fichier

Indépendance des périphériques / redirection d’entrée/sortie

Exécution directe (interactif) ou masquée (tâche de fond)

Environnement modulable
Multi-utilisateur


Plusieurs utilisateurs peuvent utiliser le même système
(client-serveur)

Chaque utilisateur possède un compte protégé par un mot de
passe et appartient à un groupe

Il existe un super utilisateur (root)
Structure de l’arborescence

bin dev etc lib tmp usr

adm bin include lib man spool tmp


Types de fichiers

On distingue 5 types de fichiers :
– les fichiers ordinaires qui contiennent des données
– les répertoires qui contiennent une liste de références à
d’autres fichiers
– les fichiers spéciaux, associés par exemple à un driver de
périphérique
– les tubes et les sockets utilisés pour la communication
– les liens symboliques
Unix - Commandes

Un « shell » est un interpréteur de commandes du système
UNIX

Il existe plusieurs versions de cet interpréteur : le « Bourne
shell », le « Korn shell », le « C shell », le « T shell »...

Le format d'une commande sous UNIX suit le modèle suivant :
nom_de_la_commande -options arguments
Unix - Commandes


La commande man :
description d'une commande à l'écran
– Syntaxe :
man [-] [-adFlrt] [-Marborescence] [-Tmacro-package]
[-ssection] nom_commande [...]
– Exemple : man ls
Unix - Commandes

La commande ls :
affichage du contenu d'un ou de plusieurs répertoires, ou des
renseignements concernant un ou plusieurs fichiers

Syntaxe :
ls [-RadLCxmlnogrtucpFbqisf1AM] [nom_répertoire ...]
ou
ls [-RadLCxmlnogrtucpFbqisf1AM] [nom_fichier ...]
Unix - Commandes

Cas particuliers :
– s'il n'y a aucun paramètre : la commande affiche le contenu du répertoire courant
– si un répertoire est passé en paramètre : la commande affiche le contenu de ce
répertoire
– si un fichier est passé en paramètre : la commande indique si ce fichier est accessible
ou non

Options :
– -a : affiche également les fichiers commençant par le caractère .
– -l : indique, pour chaque répertoire ou fichier accessible, ses principales
caractéristiques : nature (répertoire ou fichier), droits d'accès, nombre de liens, nom
du propriétaire, nom du groupe, taille en octets, date de dernière modification, nom
(qui est compris entre le 55ème caractère et le 80ème caractère de la ligne)
Unix - Commandes

La commande cd :
changement de répertoire, de manière relative ou absolue

Syntaxe :
cd [nom_répertoire]
Unix - Commandes

La commande mkdir :
création d’un ou plusieurs répertoires

Syntaxe :
mkdir [-mmode] [-p] nom_répertoire [...]

Options :
– -mmode : indique le mode d'accès au répertoire à créer
– -p : crée tous les répertoires intermédiaires, si nécessaire
Unix - Commandes

rmdir : suppression d’un répertoire

mv : déplacement ou renommage de fichiers

cp : copie de fichiers

rm : suppression de fichiers

pwd : affichage du répertoire courant

ln : création de liens sur des fichiers
Unix - Contrôle de processus


La commande kill permet d’envoyer un signal à un
processus
Exemple : kill -9 1232
Stoppe le processus de PID 1232
Unix- Contrôle des processus


La commande ps : affichage de la liste des processus en
cours

Options :
– -e : tous les processus de tous les utilisateurs
– -l : plus d’informations
Comparaison entre Linux et windows


Linux, c'est uniquement le coeur (on dit le "noyau") du
système d'exploitation GNU/Linux.

Les systèmes d'exploitation Microsoft Windows NT,
2000 et XP ont également un noyau, mais différent: le
noyau NT.

Le noyau s'occupe des basses besognes: la gestion de
la mémoire, l'accès aux périphériques (disque dur,
lecteur de CD-ROM, clavier, souris, carte graphique...),
la gestion du réseau, le partage du temps
microprocesseur entre les programmes (multi-tâches),
etc.
Comparaison entre Linux et Windows
GNU/Linux :

GNU est un projet qui a apporté des tas d'utilitaires au
noyau Linux, tel que le fameux compilateur gcc, et les
milliers d'utilitaires (tar, tail, man, bash...).

Ces utilitaires GNU, associés au noyau Linux,
constituent le système d'exploitation GNU/Linux.

Linux est donc un noyau.
GNU est un ensemble de programmes utilitaires.
GNU/Linux est le système d'exploitation.
Comparaison entre Linux et Windows
Les distributions :

GNU/Linux étant gratuit, différentes sociétés l'on reprit et
complété afin de distribuer un système d'exploitation à leur
goût. C'est ce qu'on appelle les distributions.

Parmi les plus connues, citons RedHat, Fedora, Mandriva,
Debian, Suse, Slackware, Gentoo, Xandros, Lycoris...
Comparaison entre Linux et windows

Quelle différence entre ces distributions ?



L'orientation: Par exemple, les RedHat sont très orientées serveurs
d'entreprise (bases de données, serveurs web...) , les Mandriva sont
plus orientées vers les utilisateurs de bureautique et les internautes.

La façon dont elles sont "fabriquées": par exemple, la RedHat est
conçue par une grosse entreprise, alors que la Debian est conçue de
façon plus démocratique (participation des internautes).

Le prix: Certaines sont payantes (RedHat, Mandriva...), d'autres
gratuites (Fedora, Debian...). Notez qu'il arrive de devoir payer pour les
distributions gratuites, mais le prix ne sert qu'à couvrir le support (CD),
les frais d'envoi et d'éventuels manuels papier. Rien ne vous empêche
de les télécharger et les graver vous-même.
Linux et les autres Unix

Linux a été créé par Linus Torvalds en réaction aux gros Unix commerciaux,
qui étaient pour la plupart hors de prix. Le projet GNU a également démarré
sur une motivation similaire (GNU signifie: "GNU is Not Unix").

On dit que Linux est un système d'exploitation libre, c'est à dire que vous êtes
libre de l'utiliser, le modifier et le re-distribuer (ce qui n'est pas le cas d'Unix, ni
de Windows ou MacOS X).

Ces Unix existent encore de nos jours et sont toujours vendus: HP-UX (l'Unix
de Hewlett-Packard), AIX (l'Unix d'IBM), Solaris (l'Unix de Sun), IRIX (l'Unix de
Silicon Graphics)...

Unix est une marque déposée, et toute entreprise qui souhaite créer un
système d'exploitation estampillé "Unix" doit respecter un certain nombre de
règles strictes.

De par sa gratuité, son ouverture et ses performances, Linux gagne en
popularité par rapport aux autres Unix. Même les grosses sociétés qui
faisaient leur propre Unix s'y mettent ! (comme IBM, Sun, HP, SGI...)
Linux et Windows

Prise en main:

Il faut l'avouer: globalement, Linux exigera de vous plus de
temps que Windows. Si vous n'êtes pas prêts à
consacrer plus de temps, ne passez pas à Linux.

maîtriser Linux est très gratifiant, parce que non seulement
cela vous permet de comprendre ce qui se passe "à
l'intérieur", mais surtout d'en faire exactement ce que vous
en voulez.

Notez qu'avec les distributions récentes comme Ubuntu,
Mandriva ou Xandros vous n'avez pas du tout à mettre les
mains dans le cambouis si vous ne le souhaitez pas. Elles
sont aussi simples à utiliser que Windows (voir plus !).
Linux et Windows
Compatibilité:

Les programmes Windows ne fonctionne pas sous Linux.

Les programmes Linux ne fonctionnent pas sous Windows.

Wine est un programme qui permet de faire fonctionner certains logiciels
Windows sous Linux, mais il n'est pas simple et ne fonctionne pas dans 100%
des cas.

Il existe des projets comme Qemu ou CoLinux qui permettent de faire
fonctionner Linux dans Windows ou Windows dans Linux, mais c'est assez
hasardeux et les performances sont souvent assez mauvaises.

VMWare et VirtualBox sont des logiciels gratuits qui permettent de faire
fonctionner intégralement Windows dans une fenêtre sous Linux. C'est
pratique si vous avez à tout prix besoin d'utiliser un logiciel qui n'existe que
sous Windows.

Beaucoup de programmes Linux ont été portés (adaptés) sous Windows.
Linux et Windows

Logiciels:

La quasi-totalité des logiciels Windows ont leur
équivalent gratuit sous Linux: OpenOffice peut
remplacer Microsoft Office, K3B peut remplacer Easy CD
Creator, etc. On trouve tout ce qu'il faut (voir les dizaines
de milliers de programmes sur http://sourceforge.net et
http://freshmeat.net).

La plupart des distributions sont fournies avec des listes
de logiciels: Il suffit d'en sélectionner un et il sera
automatiquement téléchargé, installé et configuré.

Mais il y a toujours certains rares logiciels sous Windows
qui n'ont pas leur équivalent sous Linux !
Linux et Windows

Prix:

Beaucoup de distributions Linux sont gratuites, mais tout le
monde ne peut pas débourser 270 euros pour Windows XP. C'est
très cher.

Même les distributions payantes de Linux sont abordables.
Prenons Mandriva Discovery, un système Linux complet fourni
avec OpenOffice et tout ce qu'il faut: 40 euros (Et je ne parle pas
d'Ubuntu: Le système d'exploitation complet + suite bureautique
OpenOffice = 0 €).
Comparez avec Microsoft: Windows XP + Office XP:
270+500=770 euros (!) pour pouvoir faire le même boulot. C'est
hors de prix.
Linux et Windows

Continuité:

Microsoft a abandonné Windows 95, 98 et NT. Cela veut dire qu'il n'y aura plus
de correctif de sécurité de la part de Microsoft si une faille est découverte. Pour
continuer à travailler en toute sécurité, vous serez obligé(e) de d'acheter
Windows XP ou Windows Vista. C'est une marche forcée.

Avec Linux les mises à jour sont continuelles et incrémentales: vous faites
évoluer votre système. Vous n'avez pas à jeter votre système entier à la
poubelle, et surtout personne ne vous force à en acheter un nouveau.

Si vous dépendez de la distribution d'un vendeur précis (RedHat, Suse...) et
que ce vendeur cesse les mises à jour, vous devrez mettre à jour vous même
(récupération des sources, compilation...) ce qui peut être lourd. D'un autre
côté, des distributions comme Debian ne sont pas gérées par des entreprises
et assurent la continuité de leur système et de tous les systèmes qui en sont
dérivés.
Linux et Windows

Customisation:

Linux est modifiable à volonté. Vous pouvez absolument
tout modifier, de la façon dont démarre le système
jusqu'à l'apparence des fenêtres, la façon dont se
comporte la souris ou bien le fonctionnement du
programme qui gère la connexion Internet. Vous pouvez
aussi remplacer des parties du système.

Windows n'est pas très modifiable. En dehors de
l'apparence des fenêtres, vous ne pouvez pas changer
grand chose.
Linux et Windows

Automatisation:

Sous Windows, il est difficile d'automatiser certaines tâches par
des scripts (car il faut cliquer sur des boutons). Le scripting sous
Windows est limité. Il faut avoir recours à des programmes
supplémentaires (fichiers batch, WSH, VBScript, KixStart,
AutoIt...).

Sous Linux, absolument tout est scriptable. Cela vous permet
d'automatiser toutes les tâches que vous voulez (par exemple,
renommer un ensemble de fichiers, ou éteindre automatiquement
l'ordinateur à une heure donnée ou après qu'une tâche soit
terminée.).
Linux et Windows

Disponibilité des sources:



Les sources de Linux et de ses outils sont disponibles.
Cela vous permet de voir le fonctionnement interne du
système et même de le modifier. Tout le monde peut
contrôler ce qui est fait, et ainsi trouver rapidement les
bugs. Linux et ses logiciels évoluent ainsi grâce à des
contributions venant de toute la planète.

Windows est une boîte noire. On ne sait pas comment il
fonctionne en interne, et personne d'autre que Microsoft
ne peut le modifier et le corriger. Vous êtes obligé(e) de
faire confiance à Microsoft.
Linux et Windows

Indépendance:

Windows XP ne peut s'installer qu'après une validation par
Internet avec les serveurs de Microsoft. Vous êtes dépendant de
Microsoft pour pouvoir installer Windows XP. Si Microsoft décide
d'arrêter Windows XP, vous ne pourrez plus l'installer ou le
réinstaller.
De plus en plus d'éditeurs de logiciels utilisent de genre de
mécanisme. Votre ordinateur, vos logiciels et vos propres fichiers
personnels deviennent de plus en plus dépendants de sociétés
privées extérieures, qui ont de plus en plus de contrôle dessus.
Avec les technologies en cours d'élaboration, vous ne pourrez
même pas démarrer votre ordinateur sans une autorisation
extérieure.

Avec Linux, vous êtes maître de votre ordinateur et le système
est totalement autonome et indépendant.
Linux et Windows

Périphériques:

Les fabricants de périphériques fournissent presque
toujours les pilotes pour Windows.

Bien que Linux se débrouille assez bien avec les
périphériques, il peut arriver que vous ayez un
périphérique qui ne soit pas reconnu par Linux, et dont
les pilotes ne sont pas fournis par le fabricant. Vous
risquez de vous retrouver avec un périphérique que
vous ne pouvez pas utiliser.
Linux et Windows

Configuration nécessaire:

Linux nécessite des machines moins puissantes que Windows.
Même avec un vieux 386 avec 64 Mo de RAM, vous pouvez
surfer sur internet, dessiner et taper votre courrier. Et avec une
machine puissante, c'est un vrai plaisir.
De plus Linux a tendance à beaucoup moins swapper que
Windows (meilleure gestion de la mémoire virtuelle).

Windows XP nécessite un ordinateur très puissant même pour les
tâches les plus simples (travailler avec des fichiers ou taper son
courrier).
Linux permet donc un accès à l'informatique au plus grand
nombre au moindre coût, en particulier avec de vieux ordinateurs.
Linux et Windows

Ouverture et respect des standards:



Linux est plus ouvert aux standards que Windows. Cela fait que
Linux est plus facile à interconnecter aux autres systèmes que
Windows. Par exemple, Linux est fourni en standard avec des
clients et serveurs HTTP, FTP, telnet, SMTP, POP3, ssh, SMB,
NFS...
Cela fait de Linux un système de choix pour tout ce qui concerne
le réseaux et les communications.

Sous Windows, le plus souvent il est nécessaire d'acheter ou
installer des logiciels supplémentaires, parfois assez cher. Les
standards sont souvent mal respectés, ce qui rend
l'interconnexion des systèmes compliquée. De plus Microsoft
essaie souvent d'imposer ses propres standards qui sont
redondants avec les standards existants.
Linux et Windows
Découplage de l'interface graphique:

Sous Linux, l'interface graphique est un logiciel comme un autre.
Avantage: cela vous permet de choisir votre interface graphique
parmi toutes celles disponibles: KDE, Gnome, XFCE, IceWM,
FluxBox, WindowsMaker...
Vous pouvez très bien ne pas la lancer quand vous n'en avez pas
besoin. Bien pratique pour ne pas gaspiller des ressources
inutilement sur les serveurs.

Sous Windows, vous n'avez pas le choix de l'interface graphique.
Vous êtes également obligé de la subir même quand vous n'en
avez pas besoin (exception faite de versions spéciales (terminal)
de Windows).
Conséquence: Sous Windows, si l'interface graphique plante, vous
ne pouvez plus accéder à votre système pour le réparer. Sous
Linux, ils suffit de démarrer en mode texte: vous pouvez encore
accéder à votre système.
Linux et Windows

Découplage du système d'exploitation et des logiciels:



Combien de fois avez-vous pesté contre un plantage de Windows
après l'installation d'un logiciel ? Cela vient du fait que Windows
mélange système d'exploitation et logiciels (base de registre, DLL,
EXE...). Cela rend Windows plus fragile. Microsoft essaie de
corriger avec des verrues (restauration système), mais ça ne suffit
pas.

Sous Linux, le système et les programmes sont dans des
environnements bien séparés. Il est plus rare que l'installation ou la
désinstallation d'un logiciel plante le système. Et en cas de
problème, il est généralement plus facile de revenir en arrière
(retour à la version précédente d'un logiciel).
Linux et Windows

Découplage du système d'exploitation et des logiciels:



Point négatif pour Linux: les logiciels fournis sous forme de source
(.tar.gz) sont plus délicats à installer (on ne sait pas toujours ce
qu'ils font). Mais la majorité des logiciels sont heureusement
disponibles sous forme packagées propre (.rpm, .deb...).

Point négatif pour Windows: la base registre contient la
configuration du système d'exploitation et de tous les logiciels. Si
elle est endommagée, c'est tout le système qui est bon à mettre à
la poubelle.
Au contraire sous Linux, la configuration de chaque logiciel est
enregistrée dans des fichiers séparés.
Linux et Windows

Sécurité:

Il est admis que Linux est généralement plus sûr que Windows. Cela vient de la
façon dont la sécurité est gérée en interne dans Linux (par exemple, il est facile
d'interdire à un utilisateur d'accéder au lecteur de CD-ROM ou à Internet.)

Windows étant destiné au grand public, il est par défaut configuré de façon
moins stricte. Cela facilite la vie de l'utilisateur novice, mais cela facilite aussi la
vie des hackers et virus.
Mais n'oubliez pas qu'un Linux mal configuré n'est pas plus sûr qu'un Windows
mal configuré !

Tout comme Windows, on découvre régulièrement des failles de sécurité dans
Linux. Toutefois, elles ne sont généralement pas de l'ampleur de celles de
Windows (faille RPC (virus Blaster), faille NetBIOS (accès aux partages même
sans le mot de passe), failles ActiveX, Internet Explorer, Outlook Express...).
Microsoft met parfois plusieurs mois pour corriger certaines failles. Dans le
monde opensource (Linux et logiciels opensource), les failles sont corrigées
beaucoup plus rapidement (généralement dans les 24 heures).
Linux et Windows

Virus, vers, chevaux de Troie, spywares:



La gestion de la sécurité et la configuration par défaut de Linux
étant différentes de Windows, cela le rend moins sensible aux
virus et autres saletés. Il existe une vingtaine de virus sous Linux,
à comparer au plus de 60000 virus existants sous Windows.

Cependant, sous Windows ça s'améliore doucement depuis le
service pack 2 de Windows XP dont le réglage par défaut rend la
machine (en principe) plus sûre. Mais il reste absolument
nécessaire d'installer antivirus, firewall et détecteur de chevaux de
Troie.

Toutefois, si Linux devient plus populaire, il deviendra une cible
plus intéressante et il faudra s'attendre immanquablement à
l'apparition d'un plus grand nombre de virus spécifiques à Linux.
Mais de par sa structure, il sera plus facile de protéger une
machine Linux.
Linux et Windows

Vie privée:

Windows et les logiciels pour Windows sont infestés de
programmes espions. Par exemple, Microsoft Money 2005 envoie
à Microsoft vos numéros de comptes bancaires, la liste des
transactions (montants, bénéficiaires), les plafonds de budgets,
etc.

Cela n'arrive pratiquement jamais sous Linux, pour la simple
raison que le code source de tous les programmes est disponible,
à la vue de tous (c'est la définition même d'opensource: source
ouvert). On ne peut pas y planquer un espion sans que ça se voit.
Sous Linux vous avez également un meilleur contrôle sur les
programmes qui sont lancés.
On peut dire que globalement protéger sa vie privée est plus
facile sous Linux.
Linux et Windows

Mise à jour:

Là, ils sont à peu près à égalité: Microsoft possède
Windows Update (très simple et très pratique), et de
nombreuses distributions ont également des système
de mise à jour automatique (apt-get, rpmi...).
L'avantage de la majorité des distributions (comme
Debian ou Fedora) est qu'elles peuvent également
mettre à jour tous vos logiciels. Il n'existe pas
d'équivalent sous Windows.
Linux et Windows

Popularité:

Il y a beaucoup plus de monde qui travaille sous Windows que
sous Linux. Les utilisateurs Windows auront du mal à se mettre à
Linux. Il faut changer ses habitudes et ce n'est pas facile.

Ayez l'esprit ouvert, et évitez la bigotrie ou l'intégrisme en matière
de systèmes d'exploitation. Tirez le meilleur parti des deux
mondes. Et ne restez pas sur une mauvaise impression.

On entend parfois dire certains défenseur de Windows dire que
Windows est forcément meilleur, la preuve: tout le monde l'utilise.
Mauvais argument: selon leurs critères, Star Academy serait donc
la meilleure musique au monde puisque c'est celle qui se vend le
mieux ?
Références

1. Systèmes d’exploitations, 2ème édition 2003, Andrew


Tanenbaum, PEARSON EDUCATION
2. Unix & Linux : Utilisation et administration, 2004,
Jean-Michel Léry, PEARSON EDUCATION

You might also like