Devoir Surveillé en Système d'exploitation

Informatique, Système d'exploitation · exam

Voir tous les documents en systèmes d'exploitation et cloud

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