De--SS--ion du système d'exploitation Pour qu'un ordinateur soit capable de faire fonctionner un programme informatique (appelé parfois application ou logiciel), la machine doit être en mesure d'effectuer un certain nombre d'opérations préparatoires afin d'assurer les échanges entre le processeur, la mémoire, et les ressources physiques (périphériques). Le système d'exploitation (noté SE ou OS, abréviation du terme anglais Operating System), est chargé d'assurer la liaison entre les ressources matérielles, l'utilisateur et les applications (traitement de texte, jeu vidéo, ...). Ainsi lorsqu'un programme désire accéder à une ressource matérielle, il ne lui est pas nécessaire d'envoyer des informations spécifiques au périphérique, il lui suffit d'envoyer les informations au système d'exploitation, qui se charge de les transmettre au périphérique concerné via son pilote. En l'absence de pilotes il faudrait que chaque programme reconnaisse et prenne en compte la communication avec chaque type de périphérique !
Le système d'exploitation permet ainsi de "dissocier" les programmes et le matériel, afin notamment de simplifier la gestion des ressources et offrir à l'utilisateur une interface homme-machine (notée «IHM») simplifiée afin de lui permettre de s'affranchir de la complexité de la machine physique. Rôles du système d'exploitation Les rôles du système d'exploitation sont divers : •
Gestion du processeur : le système d'exploitation est chargé de gérer l'allocation du processeur entre les différents programmes grâce à un algorithme d'ordonnancement. Le type d'ordonnanceur est totalement dépendant du système d'exploitation, en fonction de l'objectif visé.
Gestion de la mémoire vive : le système d'exploitation est chargé de gérer l'espace mémoire alloué à chaque application et, le cas échéant, à chaque usager. En cas d'insuffisance de mémoire physique, le système d'exploitation peut créer une zone mémoire sur le disque dur, appelée «mémoire virtuelle». La mémoire virtuelle permet de faire fonctionner des applications nécessitant plus de mémoire qu'il n'y a de mémoire vive disponible sur le système. En contrepartie cette mémoire est beaucoup plus lente.
•
Gestion des entrées/sorties : le système d'exploitation permet d'unifier et de contrôler l'accès des programmes aux ressources matérielles par l'intermédiaire des pilotes (appelés également gestionnaires de périphériques ou gestionnaires d'entrée/sortie).
•
• Gestion de l'exécution des applications : le système d'exploitation est chargé de la bonne exécution des applications en leur affectant les ressources nécessaires à leur bon fonctionnement. Il permet à ce titre de «tuer» une application ne répondant plus correctement. •
•
•
Gestion des droits : le système d'exploitation est chargé de la sécurité liée à l'exécution des programmes en garantissant que les ressources ne sont utilisées que par les programmes et utilisateurs possédant les droits adéquats. Gestion des fichiers : le système d'exploitation gère la lecture et l'écriture dans le système de fichiers et les droits d'accès aux fichiers par les utilisateurs et les applications. Gestion des informations : le système d'exploitation fournit un certain nombre d'indicateurs permettant de diagnostiquer le bon fonctionnement de la machine. Composantes du système d'exploitation
Le système d'exploitation est composé d'un ensemble de logiciels permettant de gérer les interactions avec le matériel. Parmi cet ensemble de logiciels on distingue généralement les éléments suivants : Le noyau (en anglais kernel) représentant les fonctions fondamentales du système d'exploitation telles que la gestion de la mémoire, des processus, des fichiers, des entrées-sorties principales, et des fonctionnalités de communication. •
• L'interpréteur de commande (en anglais shell, traduisez «coquille» par opposition au noyau) permettant la communication avec le système d'exploitation par l'intermédiaire d'un langage de commandes, afin de permettre à l'utilisateur de piloter les périphériques en ignorant tout des caractéristiques du matériel qu'il utilise, de la gestion des adresses physiques, etc. •
Le système de fichiers (en anglais «file system», noté FS), permettant d'enregistrer les fichiers dans une arborescence.
Systèmes multitâches Un système d'exploitation est dit «multi-tâche» (en anglais multithreaded) lorsque plusieurs «tâches» (également appelées processus) peuvent être exécutées simultanément. Les applications sont composées en séquence d'instructions que l'on appelle «processus légers» (en anglais «threads»). Ces threads seront tour à tour actifs, en attente, suspendus ou détruits, suivant la priorité qui leur est associée ou bien exécutés séquentiellement. Un système est dit préemptif lorsqu'il possède un ordonnanceur (aussi appelé planificateur), qui répartit, selon des critères de priorité, le temps machine entre les différents processus qui en font la demande. Le système est dit à temps partagé lorsqu'un quota de temps est alloué à chaque processus par l'ordonnanceur. C'est notamment le cas des systèmes multi-utilisateurs qui permettent à plusieurs utilisateurs d'utiliser simultanément sur une même machine des applications différentes ou bien similaires : le système est alors dit «système transactionnel». Pour ce faire, le système alloue à chaque utilisateur une tranche de temps. Systèmes multi-processeurs Le multiprocessing est une technique consistant à faire fonctionner plusieurs processeurs en parallèle afin d'obtenir une puissance de calcul plus importante que celle obtenue avec un processeur haut de gamme ou bien afin d'augmenter la disponibilité du système (en cas de panne d'un processeur). On appelle SMP (Symmetric Multiprocessing ou Symmetric Multiprocessor) une architecture dans laquelle tous les processeurs accèdent à un espace mémoire partagé. Un système multiprocesseur doit donc être capable de gérer le partage de la mémoire entre plusieurs processeurs mais également de distribuer la charge de travail. Systèmes embarqués Les systèmes embarqués sont des systèmes d'exploitation prévus pour fonctionner sur des machines de petite taille, telles que des PDA (personal digital assistants ou en français assistants numériques personnels) ou des appareils électroniques autonomes (sondes spatiales, robot, ordinateur de bord de véhicule, etc.), possédant une autonomie réduite. Ainsi, une caractéristique essentielle des systèmes embarqués est leur gestion
avancée de l'énergie et leur capacité à fonctionner avec des ressources limitées. Les principaux systèmes embarqués «grand public» pour assistants numériques personnels sont : • •
PalmOS
Windows CE / Windows Mobile / Window Smartphone Systèmes temps réel
Les systèmes temps réel (real time systems), essentiellement utilisés dans l'industrie, sont des systèmes dont l'objectif est de fonctionner dans un environnement contraint temporellement. Un système temps réel doit ainsi fonctionner de manière fiable selon des contraintes temporelles spécifiques, c'est-à-dire qu'il doit être capable de délivrer un traitement correct des informations reçues à des intervalles de temps bien définis (réguliers ou non). Voici quelques exemples de systèmes d'exploitation temps réel : • •
OS-9 ;
RTLinux (RealTime Linux) ; • •
QNX ; VxWorks.
Les types de systèmes d'exploitation On distingue plusieurs types de systèmes d'exploitation, selon qu'ils sont capables de gérer simultanément des informations d'une longueur de 16 bits, 32 bits, 64 bits ou plus.
Système
Codage Mono-utilisateur Multi-utilisateur Mono-tâche Multitâche DOS 16 bits X X Windows3.1 16/32 bits X non préemptif Windows95/98/Me 32 bits X coopératif WindowsNT/2000 32 bits X préemptif WindowsXP 32/64 bits X préemptif Windows7 32/64 bits X préemptif Unix / Linux 32/64 bits X préemptif MAC/OS X 32 bits X préemptif VMS 32 bits X préemptif
Qu'est-ce qu'un fichier? Un fichier est une suite d'informations binaires, c'est-à-dire une suite de 0 et de 1. Ce fichier peut être stocké pour garder une trace de ces informations. Un fichier texte est un fichier composé de caractères stockés sous la forme d'octets. Ce fichier est enregistré sur le disque dur sous la forme "nom_du_fichier.ext". ".ext" représente l'extension c'est un moyen de reconnaître le type de programme avec lequel ce fichier peut être ouvert (attention cela ne garantit pas le type de fichier: lorsque l'on change l'extension on ne change pas le type de fichier!). La longueur du nom et de l'extension peut varier suivant le système d'exploitation : 8 caractères pour le nom et 3 pour l'extension sous DOS et Windows 3.1
•
•
256 caractères pour le nom et l'extension sous Windows 95, 98 et NT •
256 sous les systèmes Unix
Ainsi, sous DOS ou Windows 3.1, un fichier provenant de Windows 9x aura un nom tronqué comportant les 6 premiers caractères du nom suivi de ~x où x représente un chiffre qui est incrémenté à chaque fois qu'un fichier porte le même nom. C'est-à-dire que si un fichier nommé "fichie~1" existe déjà il nommera le suivant "fichie~2". De plus, un fichier contient un en-tête qui permet de stocker des informations supplémentaires, comme le type de fichier et surtout la taille du fichier. Il contient aussi un caractère de fin de fichier signalant que les informations situées au-delà de ce caractère ne font plus partie du même fichier. Quoi de plus idiot que de mettre dans l'en-tête du fichier la taille du fichier puisqu'on la connait me direz-vous? Voici deux exemples qui vous démontreront son utilité Les fichiers corrompus Il vous est forcément déjà arrivé de télécharger un fichier sur Internet et que le navigateur plante ou bien que le serveur qui héberge ce fichier coupe la communication. Si ce fichier est un fichier texte, il ne vous manquera que la fin du texte, par contre si celui-ci est un fichier binaire (un programme exécutable par exemple) son exécution pourrait très bien être dangereuse car il manque des informations. Le système d'exploitation compare donc sa taille réelle à la taille indiquée dans l'en-tête pour vérifier la validité du fichier. On parle généralement d'intégrité. En réalité ce contrôle est réalisé à l'aide d'un algorithme plus performant appelé CRC (contrôle de redondance cyclique).
Infection par un virus Lorsqu'un fichier est infecté par un virus, ce dernier y ajoute des lignes de code. Ainsi, l'information concernant la taille du fichier située dans l'entête ne correspondra plus (à moins que le virus ne soit programmé de manière à modifier l'en-tête), il pourra donc être repéré.
Qu'est-ce qu'un répertoire? Un répertoire (appelé également dossier ou folder en anglais) est un objet informatique pouvant contenir des fichiers. Imaginez une grande commode qui contient des tiroirs dans lesquels pourraient se trouver des fichiers ainsi que d'autres tiroirs. Un répertoire peut en effet contenir : • •
des fichiers ;
d'autres répertoires.
Relations relatives Si l'on reprend notre exemple de la commode, la plus grande entité contenant d'autres entités est la commode : elle ne peut pas se trouver dans un tiroir! Dans le cas de l'informatique, on appelle cette entité le répertoire racine (appelé parfois tout simplement « racine » en anglais root directory) : il s'agit de l'entité de plus bas niveau, car elle peut contenir des fichiers ou des répertoire mais ne peut pas se trouver elle-même dans un répertoire ! On la note "\" (dans le monde Windows) ou "/" (dans le monde UNIX / Linux). La racine est unique sous les système UNIX et il en existe une par partition sous les systèmes Microsoft Windows. Un répertoire qui en contient un autre est dit "répertoire parent". Lorsque d'un répertoire on veut aller au répertoire parent, celui-ci est désigné par ".." sur la plupart des systèmes (on tapera donc "cd .." sous DOS ou sous UNIX pour accéder à un répertoire parent). Voyons la représentation d'un système de répertoires sous Windows 95:
Dans cet exemple répertoire2 est parent de répertoire20 et de répertoire21. "répertoire2" vis-à-vis de "répertoire20" sera ainsi notée "..". La racine (d:\) vis-à-vis de "répertoire20" sera quant à elle notée "..\.." car deux relations de parenté les séparent. Notion de chemin On appelle «chemin» (en anglais path) la succession des répertoires en partant de la racine pour atteindre un fichier. Sous les sytèmes Windows un chemin sera de la forme x:\repertoire1\repertoire2\ tandis que sous un système Unix il sera noté /repertoire1/repertoire2/.
Remarque : La liste ci-dessous n'est pas exhaustive et certains noms d'extension peuvent avoir plusieures fonctionnalités. Quant aux programmes proposés pour utiliser ces fichiers, ils ne sont pas forcément les seuls, ni les plus adaptés.
Extension
De--SS--ion
Programme associé 3d Studio Max à partir de la version 3
3ds
Fichiers Autodesk 3d Studio 4.
ace
Les fichiers portant l'extension .ace sont des fichiers compressés. Pour les décompresser, il faut utiliser un Décompresseurs décompresseur.
aif
Les fichiers portant l'extension .aif, .aiff, .aifc sont des clips sonores, ils peuvent être lus grâce à un lecteur multimédia.
Lecteur multimédia
aiff
Les fichiers portant l'extension .aif, .aiff, .aifc sont des clips sonores, ils peuvent être lus grâce à un lecteur multimédia.
Lecteur multimédia
aifc
Les fichiers portant l'extension .aif, .aiff, .aifc sont des clips sonores, ils peuvent être lus grâce à un lecteur multimédia.
Lecteur multimédia
ani
Les fichiers portant l'extension .ani sont des curseurs animés, ils peuvent être utilisés comme pointeur de souris.
arc
Les fichiers portant l'extension .arc sont des fichiers compressés. Pour les créer ou les décompresser un Décompresseur décompresseur est nécessaire. Les fichiers portant l'extension .arj sont des fichiers compressés, ils nécessitent un décompresseur tel que arj.exe.
arj
La syntaxe pour décompresser un fichier de ce type en ligne de commande est: arj x nom_du_fichier_a_decompresser.arj cible -va -r L'attribut -va spécifie que les archives en plusieurs quickzip, WinArj volumes seront traitées automatiquement L'attribut -r spécifie que l'arborescence sera reconstituée La syntaxe pour compresser un fichier avec ARJ est: arj a nom_de_l_archive.arj nom_du_fichier_a_compresser -va -r
asp
Navigateur Web pour le Microsoft Active Server Pages. Il s'agit de pages web client, Serveur Web dynamiques générées au niveau du serveur web. (Microsoft IIS) pour les interpréter.
avi
Clip vidéo, ils peuvent être lus grâce à un lecteur multimédia.
bak
Fichier de sauvegarde, il s'agit d'une copie d'un fichier qu'un programme a créé par mesure de
Lecteur multimédia
précaution. Ce genre de fichiers n'est pas essentiel, vous pouvez l'effacer, mais il est conseillé de le garder en tant que sauvegarde. bmp
bat
Image au format Bitmap. Elles peuvent être lues avec presque n'importe quel programme graphique. Fichier batch. Ce sont des fichiers textes qui contiennent une suite de commandes MS-DOS qui sont exécutées les unes après les autres. Le fichier batch suivant va dans le répertoire "c:\" et Editeur de texte édite le fichier "config.sys": c: cd \ edit config.sys
bin
Fichier contenant des informations en langage binaire Le programme CDR-WIN et une partie des logiciels de gravure utilisent cette extension pour les images de CD.
c
Fichier source de langage C, ils contiennent le programme en caractères lisibles, ces fichiers sont ensuite compilés pour pouvoir être exécutés.
cab
Les fichiers portant l'extension .cab sont des fichiers compressés. C'est un format utilisé par Microsoft pour compresser les applications. Ils peuvent être CabView décompressés par des application de décompression récentes ou bien avec l'utilitaire CabView fourni avec l'ensemble Tweak UI
cda
Fichiers pour CD-Audio
cdf cdr
Dessin Corel Draw
cfm
Fichier ColdFusion. Il s'agit de pages web dynamiques
cgi
--SS-- Common Gateway Interface
cgm
Image vectorisée
chk
Cluster récupéré grâce à scandisk (ou chkdsk sous DOS)
class
Applet Java
com
Fichier Exécutable. Attention cette extension peut
Editeur de texte
Lecteur multimédia supportant la lecture de CD
cacher un virus ! cpe
Il s'agit de la page de garde d'une télécopie
cpl
Module du panneau de configuration (il faut le mettre dans "c:\windows\system" pour le voir apparaître dans le panneau de configuration
cpp
Fichier source C++
css
Feuille de style
cue
Fichier CDR-WIN d'image
cur
Curseur de souris
dat
user.dat et system.dat sont les fichiers de la base de registre, ils sont vitaux
dvit
DeVice Independent, format de fichier texte compilé Visionneur dvi
dbf
DBF - Base de données (Data Base File / Query Database)
dib
Image bitmap
divx
Fichier vidé compréssé en divx
diz
Fichier contenant des informations en mode texte
dll
Fichier système
doc
Fichier document (Microsoft Word ou Wordpad)
dos
Fichier pour sytème MS-DOS
dot
Modèle de document Word
drv
Driver (Pilote de périphérique)
drw
Dessin Micrografx Draw ou Designer
dwg
Fichier Autodesk AutoCAD
dxf
Fichier Autodesk AutoCAD au format "Autodesk Drawing Interchange"
ecd
Fichier Easy CD
eps
Image Post--SS-- (Encapsulated Post--SS--)
Notepad, edit.exe
CDR-Win
dBase III+, MonTableur, Clarisworks, Paradox5, FoxPro Database, Psion, Aston-Tate, dBASE, dBFast, DataBoss
lecteur de vidéo + codec approprié
Microsoft Word, OpenOffice
Microsoft Word
AutoCAD
Easy CD
eqn
Equation WordPerfect
exe
Fichier exécutable. Attention cette extension peut cacher un virus !
fif
Image fractale
flc
Animation Autodesk Animator
fli
Animation Autodesk Animator
fon
Police de caractères
for
Fichier source FORTRAN
fot
Police True Type
gif
Image au format Graphic Interchange Format
grp
Groupes d'applications Windows
gz
Fichier Compressé avec Gzip
h
Fichier d'en-tête de fichier .C
hlp
Fichier d'aide
htm
Fichier hypertexte Internet
html
Fichier Hypertexte Internet
icc
profil colorimétrique exploité par les systèmes de gestion de couleur.
ico
Icône
icm
profil colorimétrique exploité par les systèmes de gestion de couleur.
idf
Fichier musical au format MIDI
iff
Image Deluxe Paint
iges
Image au format (Initial Graphics Exchange Specification)
ilbm
Image
inf
Fichier d'information (notamment pour la de--SS-ion du matériel)
ini
Fichier de configuration
jar
Fichier conteneur Java. Fichier de déploiement sur serveur web applicatif.
winzip, quick zip
jav
Fichier source Java
java
Fichier source Java
jpeg
Image au format JPEG
jpg
Image au format JPEG
lha
Fichier compressé
lbm
Image Deluxe Paint
lib
Bibliothèque de données pour langages de programmation
lnk
Raccourci vers un document
log
Journal des événements
lzh
Fichier compressé
Winzip
m
Source Matlab
Matlab
m3u
Musique
Winamp
max
Fichier 3D
mid
Fichier sonore au format MIDI
Winamp
mkv
Fichier Matroska Video. Il peut être lu avec un lecteur vidéo après avoir installé les codecs appropriés
Matroska.org
mod
Fichier son (module)
Winamp
mov
Fichier QuickTime Movie
Apple QuickTime
mp2
Fichier audio Mpeg
Winamp
mp3
Fichier Audio MP3 (MPEG-1 Layer 3)
Winamp
mpg
Film vidéo MPEG (Motion Pictures Expert Group)
msi
Microsoft Installer Package
n64
ROM de Nintendo 64
nfo
Fichier d'information
nrg
Fichier image de CD (image ISO)
ocx
Contrôle OLE personnalisé
Microsoft Installer (Windows 9x), Microsoft Installer (Windows NT)
Nero Burning ROM
old
Sauvegarde (peut généralement être supprimé)
p
fichier source Pascal
pcd
Image Kodak PhotoCD
pct
Image Macintosh PICT
pcx
Image Bitmap
pdf
Fichier Adobe Acrobat
php
PHP Hypertext Processor version 4 (PHP4). Il s'agit Navigateur web quelconque, de pages web dynamiques générées au niveau du serveur web supportant le serveur PHP
php3
PHP Hypertext Processor. Il s'agit de pages web dynamiques générées au niveau du serveur
pic
Image Macintosh PICT
pif
Fichier de configuration des applications DOS sous Windows3.1 95 98. Attention cette extension peut cacher un virus !
pl
Fichier source Perl
pls
Playlist
png
Image PNG (Portable Network Graphics)
ppj
Fichier de projet
Adobe Premiere
pps
Fichier PowerPoint
Microsoft PowerPoint, Microsoft PowerPoint Viewer
ppt
Fichier PowerPoint
Microsoft PowerPoint, Microsoft PowerPoint Viewer
prj
Projet Autodesk 3D Studio ou Turbo C
3D Studio
ps
Fichier au format Post--SS--
Ghost--SS-- Viewer
psd
Image Adobe Photoshop
Adobe Photoshop
psp
Image Paint Shop Pro
pub
Fichier Microsoft Publisher
pwl
Liste de mots de passe
qt
Fichier QuickTime
Adobe Acrobat Reader
Navigateur web quelconque, serveur web supportant le PHP
Winamp
Microsoft Publisher
QuickTime
ra
Fichier au format Real Audio
RealAudio
ram
Fichier au format Real Audio
RealAudio
rar
Fichier compressé
rar.exe, unrar.exe, WinRAR
reg
Fichier de données de la base de registre (s'installe sous Windows 95 en cliquant avec le bouton droit de la souris puis en cliquant installer.
rtf
Document Texte enrichi (Rich Text Format)
scr
Economiseur d'écran. Attention cette extension est en fait un exécutable et peut donc cacher un virus !
snd
Fichier Son
sql
Langage SQL
sys
Fichier système
swf
Fichier multimédia Macromedia Shockwave Flash
swp
Fichier SWAP (permet de simuler de la mémoire sur le disque lorsque la RAM se fait rare)
tar
Fichier compressé
tga
Image Targa
tgz
Fichier Tar compressé avec Gzip
theme
Fichier Thème pour Microsoft Plus! ou pour Microsoft XP
tif
Image
tiff
Image
tmp
Fichier Temporaire
torrent
Fichier BitTorrent
ttf
Police de caractère TrueType (TrueType Font)
txt
Document texte
url
Raccourci Internet
uu
Fichier ASCII encodé avec UUENCODE
Winamp
Navigateur comportant un plugin Flash
untar.exe, commande tar UNIX
Client BitTorrent
uue
Fichier ASCII encodé avec UUENCODE
vbs
Fichier VB--SS--. Attention cette extension peut cacher un virus !
vivo
Vidéo compressée
voc
Fichier son
SoudForge
vtc
Fichier contenant les préférences pour un fichier audio.
Virtual Turn Tables
vue
Animation
3D Studio
vxd
Pilote 32 bits en mode protégé
wav
Fichier son
wiz
Assistant (Wizard)
wmf
Image vectorisée (Windows Metafile)
wmv
Media Player Classic, Windows Media Video, fichier video haute définition Windows Media Player, VLC,...
wpg
Image
wri
Fichier texte
xi
Fichier Instrument
xls
Fichier Microsoft Excel
xm
Fichier Musique
xmi
Format d'import de fichiers de modélisation UML
Winamp
Write
zip
Fichier compressé
zoo
Fichier compressé
Microsoft Excel
gzip.exe, pkunzip.exe,pkzip.exe, Winzip, PowerArchiver, 7Zip, etc.
Qu'est ce qu'un processus ? Un processus (process en anglais) est une séquence d'instructions (en langage machine, c'est-à-dire le binaire) chargée en mémoire (RAM) qui
s'exécutent par le processeur. Un processus a une notion séquentielle dans le temps, ce qui veut dire qu'il a un début et une fin. L'exécution d'un processus peut être manuel ou automatique. Pour des informations supplémentaires : •
Wikipédia : Processus en informatique •
Processus
C'est quoi le PID ? Les systèmes d'exploitation multitâches (pouvant exécuter plusieurs processus simultanément) attribuent, d'une manière unique, à chaque processus chargé dans la mémoire vive une valeur numérique. Cette valeur numérique est appelée Identifiant de processus (PID, Process IDentifier en anglais). Il sert à identifier les processus si éventuellement deux processus ont le même nom. Sous Windows, pour savoir le PID d'un programme, il suffit de lancer le Gestionnaire des tâches (CTRL+ALT+Supp simultanément). Puis, en cherchant le nom du processus, on peut noter son PID dans la colonne PID :
Qu'est-ce qu'un type MIME ? Le type MIME (Multipurpose Internet Mail Extensions) est un standard qui a été proposé par les laboratoires Bell Communications en 1991 afin d'étendre les possibilités du courrier électronique (mail), c'est-à-dire de permettre d'insérer des documents (images, sons, texte, ...) dans un courrier. Depuis, le type MIME est utilisé d'une part pour typer les documents attachés à un courrier mais aussi pour typer les documents transférés par le protocole HTTP. Ainsi lors d'une transaction entre un serveur web et un navigateur internet, le serveur web envoie en premier lieu le type MIME du fichier envoyé au navigateur, afin que ce dernier puisse savoir de quelle manière afficher le document. Un type MIME est constitué de la manière suivante : Content-type: type_mime_principal/sous_type_mime Une image GIF a par exemple le type MIME suivant : Content-type: image/gif Liste des types MIME
Liste des types MIME Type MIME application/acad application/clariscad application/drafting application/dxf application/i-deas application/iges application/octet-stream application/oda application/pdf application/post--SS-application/pro_eng application/rtf application/set application/sla application/solids application/step application/vda
Type de fichier Fichiers AutoCAD Fichiers ClarisCAD Fichiers MATRA Prelude drafting Fichiers AutoCAD Fichiers SDRC I-deas Format d'échange CAO IGES Fichiers binaires non interprétés Fichiers ODA Fichiers Adobe Acrobat Fichiers Post--SS-Fichiers ProEngineer Format de texte enrichi Fichiers CAO SET Fichiers stéréolithographie Fichiers MATRA Solids Fichiers de données STEP Fichiers de surface
Extension associée dwg ccad drw dxf unv igs,iges bin oda pdf ai,eps,ps prt rtf set stl dwg step vda
application/x-mif application/x-csh application/x-dvi application/hdf application/x-latex application/x-netcdf application/x-sh application/x-tcl application/x-tex application/x-texinfo application/x-troff application/x-troff-man application/x-troff-me application/x-troff-ms application/x-wais-source application/x-bcpio application/x-cpio application/x-gtar application/x-shar application/x-sv4cpio application/x-sv4crc application/x-tar application/x-ustar application/zip audio/basic audio/x-aiff audio/x-wav image/gif image/ief image/jpeg image/tiff image/x-cmu-raster image/x-portable-anymap image/x-portable-bitmap image/x-portable-graymap image/x-portable-pixmap image/x-rgb image/x-xbitmap image/x-xpixmap image/x-xwindowdump multipart/x-zip multipart/x-gzip text/html text/plain text/richtext text/tab-separated-value text/x-setext
Fichiers Framemaker mif --SS-- C-Shell (UNIX) dwg Fichiers texte dvi dvi Fichiers de données hdf Fichiers LaTEX latex Fichiers netCDF nc,cdf --SS-- Bourne Shell dwg --SS-- Tcl tcl fichiers Tex tex Fichiers eMacs texinfo,texi Fichiers Troff t,tr,troff Fichiers Troff/macro man man Fichiers Troff/macro ME me Fichiers Troff/macro MS ms Source Wais src CPIO binaire bcpio CPIO Posix cpio Tar GNU gtar Archives Shell shar CPIO SVR4n sv4cpio CPIO SVR4 avec CRC sc4crc Fichiers compressés tar tar Fichiers compressés tar Posix man Fichiers compressés ZIP man Fichiers audio basiques au,snd Fichiers audio AIFF aif,aiff,aifc Fichiers audio Wave wav Images gif man Images exchange format ief Images Jpeg jpg,jpeg,jpe Images Tiff tiff,tif Raster cmu cmu Fichiers Anymap PBM pnm Fichiers Bitmap PBM pbm Fichiers Graymap PBM pgm Fichiers Pixmap PBM ppm Image RGB rgb Images Bitmap X xbm Images Pixmap X xpm Images dump X Window man Fichiers archive zip zip Fichiers archive GNU zip gz,gzip Fichiers HTML htm,html Fichiers texte sans mise en forme txt,g,h,c,cc,hh,m,f90 Fichiers texte enrichis rtx Fichiers texte avec séparation des valeurs tsv Fichiers texte Struct etx
video/mpeg video/quicktime video/msvideo video/x-sgi-movie
Vidéos MPEG Vidéos QuickTime Vidéos Microsoft Windows Vidéos MoviePlayer
mpeg,mpg,mpe qt,mov avi movie
De--SS--ion de la mémoire La mémoire physique sur un système se divise en deux catégories : la mémoire vive : composée de circuit intégrés, donc très rapide
•
la mémoire de masse : composée de supports magnétiques (disque dur, bandes magnétiques...), beaucoup plus lente
•
La mémoire physique sert de zone de stockage temporaire pour les programmes et données que vous utilisez. De façon générale, plus la quantité de mémoire est importante, plus vous pouvez lancer d'applications simultanément. D'autre part, plus celle-ci est rapide plus votre système réagit vite, il s'agit donc (pour le système d'exploitation) de l'organiser au mieux pour en tirer le maximum de performances. La gestion de la mémoire La gestion de la mémoire est un difficile compromis entre les performances (temps d'accès) et la quantité (espace disponible). On désire en effet tout le temps avoir le maximum de mémoire disponible, mais l'on souhaite rarement que cela se fasse au détriment des performances. La gestion de la mémoire doit de plus remplir les fonctions suivantes : •
permettre le partage de la mémoire (pour un système multitâches) ;
•
permettre d'allouer des blocs de mémoire aux différentes tâches ;
•
protéger les espaces mémoire utilisés (empêcher par exemple à un utilisateur de modifier une tâche exécutée par un autre utilisateur) ; optimiser la quantité de mémoire disponible, notamment par des mécanismes d'extension de la mémoire.
•
L'extension de la mémoire Il est possible d'étendre la mémoire de deux manières : •
En découpant un programme en une partie résidente en mémoire vive et une partie chargée uniquement en mémoire lorsque l'accès à ces données est nécessaire. En utilisant un mécanisme de mémoire virtuelle, consistant à utiliser le disque dur comme mémoire principale et à stocker uniquement dans la RAM les instructions et les données utilisées par
•
le processeur. Le système d'exploitation réalise cette opération en créant un fichier temporaire (appelé fichier SWAP, traduisez "fichier d'échange") dans lequel sont stockées les informations lorsque la quantité de mémoire vive n'est plus suffisante. Cette opération se traduit par une baisse considérable des performances, étant donné que le temps d'accès du disque dur est extrêmement plus faible que celui de la RAM. Lors de l'utilisation de la mémoire virtuelle, il est courant de constater que la LED du disque dur reste quasiment constamment allumée et dans le cas du système Microsoft Windows qu'un fichier appelé "win386.swp" d'une taille conséquente, proportionnelle aux besoins en mémoire vive, fait son apparition. Les mécanismes de découpage de la mémoire La mémoire centrale peut-être découpée de trois façons : • •
la segmentation : les programmes sont découpés en parcelles ayant des longueurs variables appelées «segments». la pagination: elle consiste à diviser la mémoire en blocs, et les programmes en pages de longueur fixe. • une combinaison de segmentation et de pagination: certaines parties de la mémoires sont segmentées, les autres sont paginées.
Variables d'environnement Une variable d'environnement est une valeur dynamique, chargée en mémoire, pouvant être utilisée par plusieurs processus fonctionnant simultanément. Sur la plupart des systèmes d'exploitation, les emplacement de certaines librairies, voire des principaux exécutables du système peuvent avoir un emplacement différent selon l'installation. Ainsi, grâce aux variables d'environnement, il est possible, à partir d'un programme, de faire référence à un emplacement en s'appuyant sur les variables d'environnement définissant ces données. Sous Windows Sous Windows, les variables d'environnement sont entourées du caractère « % ». Ainsi, pour afficher la valeur d'une variable d'environnement, il suffit de taper une commande du type : echo %NOM_DE_LA_VARIABLE%
Voici une liste non exhaustive des principales variables d'environnement sur les systèmes Windows :
Variable d'environnement
De--SS--ion Retourne un chemin d'accès au répertoire par défaut %APPDATA% contenant les programmes utilisateur (par défaut: C:Program Files. Retourne la commande exacte utilisée pour accéder %CMDCMDLINE% à l'interprêteur de commandes (cmd.exe). %COMPUTERNAME% Retourne le nom attribué à l'ordinateur. %DATE% Retourne la date actuelle. Contient le code d'erreur de la dernière commande %ERRORLEVEL% utilisée. Contient la lettre de lecteur sur laquelle le répertoire %HOMEDRIVE% de l'utilisateur courant est situé. Contient la lettre de lecteur sur laquelle le répertoire %HOMEDRIVE% de l'utilisateur courant est situé. Contient le chemin d'accès complet au répertoire de %HOMEPATH% l'utilisateur courant. Contient le nombre de processeurs présents sur le %NUMBER_OF_PROCESSOR% système. Contient une chaîne de caractères décrivant le %OS% système d'exploitation installé. Noter que Windows 2000 se déclare comme étant WINDOWS_NT. Spécifie le chemin d'accès vers les principaux %PATH% exécutables du système. Décrit les extensions que le système considère %PATHEXT% comme exécutables. Décrit l'architecture du processeur (x86 pour les %PROCESSOR_ARCHITECTURE% machines Intel, IA64 pour les architectures RISC). Retourne un entier compris entre 0 et 32167 choisi %RANDOM% aléatoirement par le système. Contient la lettre de lecteur sur laquelle le système %SYSTEMDRIVE% est situé (généralement C:). Contient le chemin d'accès au répertoire racine du %SYSTEMROOT% système. Contient le chemin d'accès du répertoire temporaire %TEMP% pour les applications. Contient le chemin d'accès du répertoire temporaire %TMP% pour les applications. %TIME% Retourne l'heure actuelle. Contient le domain auquel appartient le compte %USERDOMAIN% courant. Contient le nom d'utilisateur correspondant au %USERNAME% compte courant. Contient l'emplacement du profil utilisateur du %USERPROFILE% compte courant. Contient le chemin d'accès au répertoire du %WINDIR% syst&ergrave;me (généralement C:WINDOWS ou C:WINNT).
Sous Windows, la commande set permet de créer, de modifier et d'afficher les variables d'environnement. Néanmoins, les modifications interviennent uniquement dans la session en cours. Pour afficher une variable, la commande est la suivante : set NomVariable
Pour créer une variable, la commande est la suivante : set NomVariable=valeur
Pour supprimer une variable, la commande est la suivante : set NomVariable= Il est possible d'utiliser n'importe quel caractère comme valeur, y compris des espaces. Néanmoins, pour pouvoir utiliser des caractères spéciaux (<, >, |, & ou ^), il suffit de les faire précéder du caractère d'échappement (^) ou bien les entourer de guillemets, qui feront alors partie de la valeur car tous les caractères après le signe = sont pris en compte. Par exemple, pour définir « noir&blanc » comme valeur : set couleur=noir^&blanc ou set varname="new&name" Sous UNIX Sous les systèmes UNIX, les variables d'environnement sont précédées du caractère « $ » et encadrées par des accolades, même si les accolades ne sont pas obligatoires. Compte tenu de la variété des systèmes de type UNIX (en particulier les différentes distributions de Linux), les variables d'environnement Ainsi, pour afficher la valeur d'une variable d'environnement, il suffit de taper une des commandes suivantes : echo $VARIABLE echo ${VARIABLE}
Voici une liste non exhaustive des principales variables d'environnement sur les systèmes UNIX : Variable d'environnement $ARCH $DISPLAY $HOME $HOST
De--SS--ion Contient la de--SS--ion de l'architecture de la machine. Contient l'identifiant du terminal d'affichage à utiliser dans le gestionnaire de fenêtres (X11). Retourne le chemin d'accès vers le répertoire de l'utilisateur courant. Retourne le nom de l'ordinateur.
$LANG $PATH $PRINTER $SHELL $USER
Retourne le code de langue par défaut. Retourne une liste de chemins d'accès vers des répertoires contenant les exécutables, séparés par des points-virgules. Contient le nom de l'imprimante par défaut. Indique le chemin de l'interprêteur de commande utilisé. Retourne l'identifiant de l'utilisateur courant.