• Aucun résultat trouvé

Licence 2 — Info42 Examen du Mardi 13 Juin 2017

N/A
N/A
Protected

Academic year: 2022

Partager "Licence 2 — Info42 Examen du Mardi 13 Juin 2017"

Copied!
2
0
0

Texte intégral

(1)

Licence 2 — Info42

Examen du Mardi 13 Juin 2017 Dur´ee 2h • Documents autoris´es Le bar`eme est donn´e `a titre indicatif

Si un exercice vous conduit `a faire des hypoth`eses, indiquez-les clairement sur votre copie.

edigez et justifiez pr´ecis´ement les r´eponses aux questions.

Exercice 1 - 8 pts

Vous devez ´ecrire le code Java du programme correspondant aux comportements suivants. Les lignes de code r´ealisant chaque ´el´ement (de a `a g) doivent ˆetre mises en ´evidence par un commentaire.

De la mˆeme mani`ere, mettre en ´evidence les ´el´ements permettant de g´erer la concurrence.

(a) Cr´eer et lancer deux threads d’une mˆeme classe (TSearch) `a partir du programme principal (main), celui-ci aura ´egalement instanci´e un objet de la classe DB qui encapsule l’acc`es `a des donn´ees textuelles volumineuses.

(b) Les threads disposent d’une r´ef´erence `a un objet de la classe DB et recherchent respectivement le nombre d’occurrences des motsPythonetScalaau moyen de la m´ethoderechercherde la classe DB. La m´ethode recherchers’arrˆete `a chaque occurrence trouv´ee et retourne une r´ef´erence `a un objet (on ne l’utilise pas par la suite). Si on relance la m´ethode, elle continue sa recherche `a partir de la position `a laquelle elle s’´etait arrˆet´ee. La m´ethode retourne null si la recherche ne donne plus rien c’est-`a-dire si elle a atteint la fin des donn´ees.

(c) Les threads s’arrˆetent si ils ont trouv´e plus de 1 000 occurrences d’un mot ou bien si un autre objet appelle la m´ethodearr^eter d´efinie sur la classe TSearchou encore si la recherche est termin´ee.

(d) `A chaque occurrence de mot trouv´ee chaque thread incr´emente un compteur commun (classe CptOccurrencecontenant un entier).

(e) Le programme principal attend la terminaison des threads pour afficher la valeur du compteur, c’est-`a-dire le nombre d’occurrences des motsPythonou Scala.

(f) Le programme principal ´ecrit la valeur du compteur dans un fichier.

(g) Un troisi`eme thread est lanc´e, il arrˆete les threads TSearchsi ils n’ont pas termin´e leur ex´ecution au bout de 4 minutes.

Exercice 2 - 6 pts

On consid`ere une m´emoire de 7 000 ´el´ements (blocs) dont 5 000 de m´emoire physique (RAM) et 2 000 de m´emoire virtuelle. La m´emoire est g´er´ee par page de 1 000 ´el´ements.

1. Faire un sch´ema de l’organisation de la m´emoire globale, num´eroter les pages.

2. Suivre l’ex´ecution de l’´etat de la m´emoire sachant que la strat´egie de d´echargement des pages est en FIFO. Donnez le nombre de d´efaut de page et pr´ecisez les correspondances d’adresses (page, offset) pour les demandes d´ecrites dans le tableau 1. Au d´epart la m´emoire est vide.

3. Que pouvez-vous en d´eduire ?

Exercice 3 - 6 pts

1. D´ecrire 3 strat´egies d’ordonnancement en pr´ecisant les politiques de gestion des files d’attente et d’acc`es au processeur.

1

(2)

Demande Conversions adresse =(page,offset) M´emoire centrale

Adresse Page Offset Page Adresse

1 1657 1 657 0 657

2 523

3 2170

4 3725

5 1133

6 6145

7 5190

8 3658

9 4573

10 156

11 1598

12 2888

13 1134

14 2170

15 472

Table 1 – Demandes d’acc`es m´emoire

2. Soit un tourniquet poss´edant deux files associ´ees respectivement `a un quantum de 2 et 4 unit´es de temps. On suppose que la gestion des files est en FIFO, qu’il n’y a pas de r´equisition et que les processus de la file 2 n’ont acc`es au processeur que si la file 1 est vide. Simuler le comportement du syst`eme pour les processus donn´es au tableau 2, calculer le taux de retard de chaque processus et le taux de retard moyen.

Nom p0 p1 p2 p3 p4

Top d’arriv´ee 1 2 4 6 8

Dur´ee 3 6 5 7 6

Table 2 – Param`etres d’ex´ecution des processus

3. On consid`ere maintenant les op´erations d’entr´ee-sortie. `A sa quatri`eme unit´e de temps d’ex´ecution le processus p1 doit effectuer une entr´ee-sortie de 2 unit´es de temps. Son profil d’ex´ecution est donc 4 unit´es de temps CPU puis 2 unit´es de temps E/S. Le processeur d’E/S est g´er´e en FIFO sans pr´eemption, modifier la simulation en cons´equence.

2

Références

Documents relatifs

[r]

Présentez l’auteur du document, à quel mouvement d’opinion contemporain se rattache ce document, à quel public peut-il être destiné et quel sera le résultat

Par analogie avec les composants d’un ordinateur et les structure utilis´ ees dans un SE, identifier quelques points communs entre ces syst` emes.. Au travers des cinq propri´ et´

Les boˆıtiers sont connect´ es sur un r´ eseau IP et envoient ` a un serveur, lorsque la cam´ era d´ etecte un changement, un objet Java contenant la date (date + heure,

Sachant que le serveur central doit garder pour chaque serveur de collecte (une centaine environ) l’historique des mesures et que les recherches se font en fonction du num´

3. Pour stocker un fichier de 9 000 octets sur un disque utilisant des clusters de 512 octets combien de clusteurs sont n´ ecessaires ? Quelle est e type et la taille du

Cr´ eer une classe SensorHT en utilisant une hash-table qui va recevoir pour chaque capteur (selon son adresse IP) la liste des mesures avec leur date (incluant l’heure ` a la

Un programme qui a obtenu un jeton peut utiliser le r´ eseau pendant la dur´ ee d´ etermin´ ee par le jeton (il peut cr´ eer des sockets serveur ou client pendant cette dur´ ee)..