ECOLE NATIONALE DES SCIENCES
DE L'INFORMATIQUE
ANNEE UNIVERSITAIRE
2009/10
: Int.Sys et Util de base
: Devoir Surveill
: 2 heures
: non autoris s
: 10 Avril 2010
:
: 6
:
NOM & PRENOM :
CLASSE :
Questions 1 (10 points 1,54+41)
1. - Quelles sont les principales activit s dun syst me dexploitation relatives la gestion des processus?
allouer de la m moire aux processus qui en ont besoin
Allouer le microprocesseur aux diff rents processus qui en ont besoin
r cup rer la m moire utilis par un processus
2. Quelles sont les principales activit s dun syst me dexploitation relatives la gestion de la m moire ?
r partition de la m moire disponible entre les diff rents processus actifs et lensemble des
utilisateurs pr sents (notion de s curit r ciproque des t ches),
localisation maintien des donn es pour chaque processus,
maintien de lint grit de certains espaces r serv s (zones m moires utilis es pour les entr es/sorties
par exemple),
gestion de la pagination de la m moire, utilisation de m moire virtuelle.
3. Dans les langages symboliques (langages dassemblage), il existe des d claratives, qui ne sont pas
proprement parler des instructions - elles n'engendrent pas de code binaire ex cutable- mais servent
plut t titre pour les diff rents utilitaires qui vont traiter le programme source afin de produire un
programme objet ex cutable".
Pour illustrer cette phrase pr senter trois directives de votre choix et monter pour chacune d'elles son
r le, sa port e dans la cha ne de production de l'objet (assemblage, dition de liens, chargement,
ex cution), la forme sous laquelle elle est transmise d'un utilitaire au suivant.
Orig
segment
&
IMPORT/EXPORT
syst me : chargement
Assemenleur
Publicité
Editeur de liens
4. Expliquer les diff rentes fa ons d crire une liste de commandes avec le Bourne shell.
; ex cution s quentielle
& ex cution asynchrone
&& ex cution de la partie droite conditionn e par un code de retour nul de ce qui pr c de; de priorit
| tube
plus forte que & et ;
|| ex cution de la suite conditionn e par un code de retour non nul de ce qui pr c de; priorit plus forte
que &&
5. Expliquez, en donnant des exemples ad quats en shell, ce quest une redirection dentr e/sortie standard.
Par d faut un processus lit partir du standard input et crit dans le standard output et crit ses erreurs sur la
sortie derreur. Pour devier lentr e/sortie on utilise la redirection :
ls > out.txt
2>erreur
Lister le contenu du r pertoire courant dans le fichier out.txt
cat <input.txt >output.txt
Lit partir de input.txt et crit dans output.txt
6. Expliquez le r le dun tube entre deux commandes. Donnez un exemple dutilisation de ce tube, puis
son quivalent en nutilisant que des redirections.
Les tubes sont utilis s pour relier 2 commandes entre elles. La sortie standard de la commande `a gauche du
symbole sera utilis e comme entr e standard de la commande de droite.
who|wc l
who>temp ;wc l <temp ;rm temp
7. Quelle est la diff rence entre "Multiprogrammation" et "Multit ches". Quelle est la motivation pour le
d veloppement de ces 2 aspects?
La multiprogrammation est le fait quon peut lacer une application alors quune autre est en attente. Lun apr s
lautre
Un syst me multitaches permet dex cuter plusieurs applications dune mani re pseudo-parall le (Partage du
microporcesseur sur les diff rents processus). simultan ment
La motivation est lutilisation optimale des ressources et en particulier du microprocesseur.
8. Expliquez comment sous Bourne shell, il est possible denrichir son environnement et comment on peut
transmettre des variables denvironnement entre des appels de shell.
En agissant sur les variables pr d finies (HOME, PATH, PS1, &) et en d finissant dautres variables dont les
valeurs peuvent tre exporter aux autres processus en utilisant la commande export.
Exercice 1 (5 points ):
Lensemble des questions qui suivent supposent la s quence suivante dune session de travail.
bin
public
oms
wc
Publicité
grep
who
$ ls - l /usr
drwxr-xr-x root
drwxr-xr-x public
drwxr-xr-x oms
$ pwd
/usr/bin
$ ls -l
-rwxr-xr-x root
-rwxr-xr-x root
-rwxr-xr-x root
$ cd ../public ; ls
drwxr-xr-x public
drwxr-xr-x pubic
$ ls prog
getprnt
add.c
makset.c temps
cmd
prio.p
common
temp
dodash.c
ex.c
temp1
fileset.p temp2
$ cat prog/cmd
ls *.c
rm temp?
ls tem*
cat x* |wc -l
$ cat prog/getprnt
prog
doc
temp3aa
trans.c
xindex.c
xlate.c
ls /usr/bin > temp0
pr temp0 > /dev/lp
rm temp0
$ exit
Publicité
1) Construire larborescence du syst me telle quelle apparait dans cette session.
|--usr
|--bin
|--wc
|--grep
|--who
|--public
|--prog
|--add.c
|--cmd
|--common
|--dodash.c
|--ex.c
|--fileext.p
|--getprnt
|--makset.c
|--prio.p
|--temp
|--temp1
|--temp2
|--temp3aa
|--temps
|--trans.c
|--xindex.c
|--xlate.c
|--doc
|--oms
2) Lutilisateur public peut-il cr er un fichier sous le r pertoire /usr/bin ? Peut-il modifier le fichier
/usr/bin/grep ?
Lutilisateur public ne peut pas modifier le r pertoire /usr/bin . Le propri taire du r pertoire est lutilisateur root
et le groupe de root ainsi que les autres utilisateurs nont pas le droit d criture sur le r pertoire.
Lutilisateur public ne peut pas modifier le fichier /usr/bin/grep . Le propri taire du fichier est lutilisateur root
et le groupe de root ainsi que les autres utilisateurs nont pas le droit d criture sur le fichier.
3) Quel est leffet des commandes suivantes ex cut es s quentiellement si on est lutilisateur public et lon
se trouve dans le r pertoire prog ?
chmod +x cmd
bash cmd &
./cmd
Lutilisateur public re oit le droit dex cution de la commande cmd. La commande cmd sex cute 2 fois en
parall le. Chaque ex cution aura pour effet de :
Lister les fichiers add.c, dodash.c, ex.c, makset.c, trans.c, xindex.c, xlate.c
Suppression des fichiers temp1, temp2, temps sils existent toujours
Lister les fichiers temp, temp3aa
Publicité
Afficher le total des nombres de ligne des fichiers xindex.c et xliate.c
3) Peut-on r crire autrement le script /usr/public/prog/getprnt dont les commandes ne forment quun tout
de point de vue s mantique ? Si oui, comment ?
ls /usr/bin | pr > /dev/lp
5) Lutilisateur oms veut cr er un fichier .profile dans lequel il y a :
- une d finition de l mulation de son terminal en mode xterm,
- une description du chemin de recherche aux fichiers ex cutables,
- une demande daffichage la date du jour,
- une demande de la liste des utilisateurs connect s la machine.
Quelles sont les commandes contenues dans ce fichier ?
TERM=xterm
export TERM
PATH=/usr/bin:/usr/public/prog
export PATH
date
who
Exercice 2 (5 points):
Ecrire un script en shell qui permet de traiter ses arguments dappel qui sont suppos s n tre que des fichiers
ordinaires. Le script doit consid rer tous les cas d'exceptions (au moins un argument d'appel, les arguments sont
des fichiers ordinaires) pour retourner les bons messages derreur. Il doit par ailleurs afficher le nombre de
lignes que contient chacun des fichiers trait s ainsi que le nombre total de lignes trouv pour l'ensemble de ces
fichiers.
#! /bin/sh
if [ $# -eq 0 ]
then
echo "il faut donner au moins un fichier comme param tre"
else
totalligne=0
for file in $*
do
if [ -f $file ]
then
nrligne=wc -l $file | cut -d' ' -f1
totalligne=expr $totalligne + $nrligne
echo "le fichier $file contient $nrligne ligne(s) "
echo "le param tre $file n'est pas un fichier ordinaire"
else
fi
done
echo "Le total de nombre de ligne est $totalligne"
fi