• Aucun résultat trouvé

S´erie d’exercices #8 IFT-2245 6 mars 2017

N/A
N/A
Protected

Academic year: 2022

Partager "S´erie d’exercices #8 IFT-2245 6 mars 2017"

Copied!
2
0
0

Texte intégral

(1)

S´erie d’exercices #8

IFT-2245 6 mars 2017

8.1 Famine

Comment un syst`eme peut-il d´etecter que certains de ses threads sont en ´etat de famine, ou sinon comment peut-il ´eviter ou tenter de g´erer ce probl`eme ?

9 Fragmentation par segments

Soit un syst`eme qui utilise un syst`eme de gestion m´emoire bas´e sur les seg- ments.

Jouez le rˆole du syst`eme d’exploitation qui doit faire fonctionner les processus suivants sur une machine avec 16MB de m´emoire et donc d´ecider o`u placer ces segments dans la m´emoire physique,sans savoir `a l’avance quelles requˆetes vont ˆetre faites. Estimer le coˆut de chaque genre d’op´eration, et essayer de minimizer le coˆut total d’ex´ecution.

La s´equence d’´ev´enements est la suivante :

— Cr´eation de P1 avec 1MB de code et 12MB de pile.

— Cr´eation de P2 avec 1MB de code et 12MB de pile.

— P1 alloue un segment de 6MB.

— P1 alloue un segment de 128KB.

— P1 lib`ere le segment de 6MB.

— P1 alloue un segment de 12MB.

— P2 alloue un segment de 128KB.

— P1 lib`ere son segment de 12MB.

— P2 alloue un segment de 256KB.

— P1 alloue un nouveau segment de 12MB.

— P2 alloue un segment de 64KB.

— P1 lib`ere son segment de 12MB.

— P1 alloue un segment de 7MB.

— P2 alloue un autre segment de 64KB.

— P1 termine.

— P2 alloue un segment de 128KB.

— P2 lib`ere son segment de pile.

— P1 est relanc´e et r´e-ex´ecute la mˆeme s´equence d’allocations/d´esallocations.

9.1 Fragmentation

Expliquer la diff´erence entre fragmentation interne et fragmentation externe.

1

(2)

9.2 Adresses logiques

Nommer deux diff´erences entre les adresses logiques et les adresses physiques.

9.3 Deux segments

Soit un syst`eme o`u chaque processus est divis´e en 2 segments : un pour le code et un pour les donn´ees. I.e. il y a une paire base+limit utilis´ee pour lire les instructions et une autre pour acc´eder aux donn´ees. Discuter les avantages et inconv´enient de ce syst`eme.

9.4 Taille des pages

Pourquoi les pages sont-elles toujours de taille 2n?

9.5 Taille des adresses

Soit un espace d’adressage logique de 64 pages de 1024 mots chacune, qui peuvent se placer dans n’importe laquelle de 32frames.

1. Combien de bits y a-t-il dans une adresse logique ? 2. Combien de bits y a-t-il dans une adresse physique ?

9.6 Partage de frame

Quels sont les effets de permettre `a deux entr´ees d’unepage table de pointer vers la mˆemeframe? Expliquer comment utiliser cette fonctionnalit´e pour di- minuer le temps n´ecessaire `a copier une large zone de m´emoire. Quel est l’effet de modifier un byte dans l’autre page ?

9.7 Caches et pages

Un choix fondamental que doivent faire les concepteurs d’un processeur est si le cache est index´e avec des adresses logiques ou des adresses physiques.

Discuter de l’impact de ce choix sur le design du reste du processeur (e.g. le TLB). Discuter de l’impact de ce choix sur le syst`eme d’exploitation.

2

Références

Documents relatifs

Est-il possible d’am´ eliorer la performance d’une application multi-threaded utilisant des user thread en ex´ ecutant le programme sur une machine ayant plu- sieurs processeurs

Expliquer pourquoi les spinlock sont inappropri´ es dans un syst` eme mono- processeur, mais sont souvent utilis´ es dans les syst` emes multiprocesseurs. 4.7 Section critique `

Illustrer comment un s´ emaphore binaire peut ˆ etre utilis´ e pour impl´ ementer l’exclusion mutuelle entre N threads.. 5.3 Spinlocks

Corriger ces mˆ emes conditions de course sans utiliser de verrous, en uti- lisant ` a la place une approche de synchronisation optimiste, en utilisant l’op´ eration

Soit un algorithme de queues ` a niveaux multiples, o` u un processus passe ` a la queue de priorit´ e sup´ erieure s’il relˆ ache le CPU avant la fin de son quantum et passe ` a

Dans beaucoup de syst` emes, les programmes sont structur´ es de la mani` ere suivante : le code commence ` a l’adresse 0, ensuite vient le bloc de donn´ ees utilis´ e pour

Soit un processeur avec des adresses logiques et physiques de 64bit, des pages de 16KBytes, et une pagination bas´ ee sur un table de pages hi´ erarchique.. Deviner combien de

Pour savoir quelles frames devraient ˆ etre ´ evinc´ ees pour faire place ` a de nou- velles pages, le syst` eme d’exploitation aimerait bien savoir quelles pages sont beaucoup