SlideShare une entreprise Scribd logo
-
~JAtI ~~I ~
W ~a~~I o.;J}
~1J.1 ~
OperatingSystems .;~ ~ tJ:ui :u! ~~
Exercice 1.
Consider a main memory system that consists of a
number of memory modules attached to the system
~, which is one word wide. When a write request is
L Je, the bus is occupied for 100 nanoseconds (ns) by
the data, address and control signals. During the same
100 ns, and for 500 ns thereafter, the addressed
memory module executes one cycle accepting and
storing the date.
The internal operation of different memory modules
may overlap in time, but only one request can be on the
bus at any time.
Sketch a graph of the maximum write rate (words per
second) as a function of the module cycle time,
assuming eight memory modules and a fixed bus busy
time of 100 ns.
Exercice 2.
r
a. Consider the following C/Unix program::
void main {}
{ int pid;
pid =fork {};
printf ("%d n", pid);
w
}
What are the possible outputs, assuming the fork()
succeeds?
b. What happens when executing the following
program?
void main {}
{
for ( ; ; )
fork {};
}
Exercise 1.
Considerons un systeme de memoire principale qui se
compose d'un certain nombre de modules de memoire
attaches au bus systeme qui est de largeur un mot.
Quand une demande d'ecriture est faite, Ie bus est
occupe pendant 100 nanosecondes (ns) par les
signaux de donnees, d'adresse et de commande. Au
cours de ces 100 ns, et pour 500 ns supplementaires,
Ie module de memoire adresse execute un cycle
recevant et stockant les donnees.
Le fonctionnement interne des differents modules de
memoire peut subir des chevauchements dans Ie
temps, mais une seule demande peut etre sur Ie bus a
un moment donne
Dessiner un graph~ de la vitesse maximale d'ecriture
(mots par seconde) comme une fonction du temps de
cycle du module, en supposant qu'il y a huit modules
de memoire et un temps fixe d'occupation du bus de
100 ns.
Exercise 2.
a. Considerons Ie programme C/Unix suivant:
void main {}
{ int pid;
pid =fork {};
printf ("%d n", pid);
}
Quels sont les resultats possibles, en supposant que
I'appel fork() reussit?
b. Qu'arriverait-illorsqu'on execute Ie programme
suivant?
void main {}
{
for (; ; )
fork {};
}
Exercice 3.
Consider the followingstate (snapshot) of a system.
There are no outstanding (unsatisfied) requests for
resources.
a'aildJ.-.le
r1 r2 r3 r4
CIIITTI:::TI
process
rO
r1
r2
r3
p-!
current allocation maximum demand
r1 r2 r3 r4 r1 r2 r3 r4
Is the system safe? Explain.
J.:xercice 4.U$.
Supposethe followingtwo processes,"foo"and
"bar' are executed concurrently and that they
share the semaphore variables Sand R ( each
initialized to 1) and the integer variable x (initialized
to 0).
void foo( ) {
do {
semWait(S) ;
semWait(R) ;
x++;
void bare ) {
do {
semWait(R);
semWait(S);
X--i
semSignal(Si
SemSignal(R) ;
} while (1);
}
semSignal(S);
SemSignal(R) ;
} while (1);
,.-.
-
a. Give an execution sequence of programs
statements in which one or both processes
are blocked forever.
b. Could the concurrent execution of these two
processes result in the indefinite
postponement of one of them? if yes, give
an execution sequence in which one is
indefinitely postponed.
..
Exercise 3.
Considerons I'etat suivant (snapshot) d'un systeme. II
n'ya pas de demandes en suspens (insatisfaits) en
matiere de ressources
available
r1 r2 r3 r4
ITI::ITIITI
process
pO
pI
p2
p3
p-!
current allocation n1c1ximumdemand
r1 r2 1'3 r4 r1 1'2 r3 1'4
Le systeme est-il sur? Expliquer.
Exercise 4.
Supposons que les deux processus suivants,
"foo" et "bar' soient executes en concurrence et
qu'ils partagent les semaphores S et R (chacun
initialise a 1) et la variable entiere x (initialisee a
0).
void foo( ) {
do {
semWaj,.t (S) i
semWait(R) i
x++;
void bar( ) {
do {
semWait(R) i
semWait(S) i
X--'I
semSignal(S;
SemS ignal (R) i
} while (1) i
}
semSignal(S)i
}
SemSignal (R) ;
} while (1) i
a. Donner une sequence d'execution des
instructions des programmes dans laquelle
un ou les deux processus sont bloques
pour toujours.
b. Est-ce que I'execution concurrente de ces
deux processus peut avoir comme resultat
une suspension indefinie de I'un des d'eux
? Si oui, donnez une sequence d'execution
dans laquelle un des deux est suspendu
indefiniment.
0 0 1 2 0 0 1 2
1 0 0 1 1 5 1 1
1 .., 0 4 2 3 5 6
0 6 3 2 0 6 7 2
0 0 1 4 0 6 5 6
0 0 1 2 0 0 1 2
1 0 0 1 1 5 1 1
1 3 0 4 2 .., 5 6,)
0 6 3 2 0 6 7 2
0 0 1 4 0 6 5 6
Exercice 5.
Consider the following pseudo assembly code for
computing c = a + b. Assume that a, b, and care
assigned to consecutive memory "words" (memory is
generally addressed byte by byte and assume that a
word is 4 bytes wide) and address for "a" is
OxOOOOECOO.Also, we initially have a = 22, b = 158,
and c = O.Assume that the first instruction of the code
is stored in OxOOOOB128.Also, each instruction has the
OpCode in the first byte (most significant byte) and the
remaining 3 bytes specify the corresponding address.
The OpCode for storing a value is 1, load is 2, and add
is 3.
OxOOOOb128 load a
OxOOOOb12c add b
OxOOOOb130 store c
-l
Show the memory addresses and contents for all the
instructions and involved data. Use the format as
follows to express your answer (but the following is not
the answer). For all data, use hexadecimal
representation.
addresses
Ox00002104
Ox00002108
contents
Ox00000001
Ox00000002
Exercise 5.
Considerons Ie pseudo code assembleur suivant pour
Ie calcul de c = a + b. Supposons que a, b et c sont
affectees a des "mots" consecutifs d'une memoire
sequentielle (Ia memoire est generalement adressee
octet par octet et Ie mot est d longueur 4 octets) et
I'adresse de "a" est OxOOOOECOO.De plus, initialement,
a = 22, b =158, et c = O. Supposons que la premiere
instruction du code est stockee dans OxOOOOB128.En
outre, chaque instruction a I' OpCode dans Ie premier
octet (octet Ie plus significatif) et les 3 octets restants
specifient I'adresse correspondante. L'OpCode pour
stocker une valeur est 1 (store), pour Ie chargement
est 2 (load), et pour I'addition est 3 (add).
OxOOOOb128 load a
OxOOOOb12c add b
OxOOOOb130 store c
Presenter les adresses memoire et les contenus pour
toutes les instructions et les donnees impliques.
Utilisez Ie format suivant pour exprimer votre reponse
(mais ce qui suit n'est pas la reponse). Pour toutes
les donnees, utiliser la representation hexadecimale.
adresses contenus
Ox00002104 Ox00000001
Ox00002108 Ox00000002
2013/1/19 ~ wJ~

Contenu connexe

Tendances

Buffer Overflow exploitation
Buffer Overflow exploitationBuffer Overflow exploitation
Buffer Overflow exploitation
Zakaria SMAHI
 
20080610 04 - Explorations visuelles de programmes
20080610 04 - Explorations visuelles de programmes20080610 04 - Explorations visuelles de programmes
20080610 04 - Explorations visuelles de programmes
LeClubQualiteLogicielle
 
Need it help in Operating System quiz(computer language) and in some course
Need it help in Operating System quiz(computer language) and in some courseNeed it help in Operating System quiz(computer language) and in some course
Need it help in Operating System quiz(computer language) and in some course
Douria Zohbi
 
Python profiling
Python profilingPython profiling
Python profiling
Julien Jouganous
 
Python et la persistance de données — initiation python 1.5
Python et la persistance de données — initiation python 1.5Python et la persistance de données — initiation python 1.5
Python et la persistance de données — initiation python 1.5Abib Faye
 
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
Publicis Sapient Engineering
 
BH Team - Mettez un python dans votre robot !
BH Team - Mettez un python dans votre robot !BH Team - Mettez un python dans votre robot !
BH Team - Mettez un python dans votre robot !
Yannick Jost
 
Attachments 2011 12_19
Attachments 2011 12_19Attachments 2011 12_19
Attachments 2011 12_19Amel Morchdi
 
Implementing a key/value store
Implementing a key/value storeImplementing a key/value store
Implementing a key/value store
Benjamin Joyen-Conseil
 
SdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoireSdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoire
Alexandru Radovici
 

Tendances (10)

Buffer Overflow exploitation
Buffer Overflow exploitationBuffer Overflow exploitation
Buffer Overflow exploitation
 
20080610 04 - Explorations visuelles de programmes
20080610 04 - Explorations visuelles de programmes20080610 04 - Explorations visuelles de programmes
20080610 04 - Explorations visuelles de programmes
 
Need it help in Operating System quiz(computer language) and in some course
Need it help in Operating System quiz(computer language) and in some courseNeed it help in Operating System quiz(computer language) and in some course
Need it help in Operating System quiz(computer language) and in some course
 
Python profiling
Python profilingPython profiling
Python profiling
 
Python et la persistance de données — initiation python 1.5
Python et la persistance de données — initiation python 1.5Python et la persistance de données — initiation python 1.5
Python et la persistance de données — initiation python 1.5
 
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
 
BH Team - Mettez un python dans votre robot !
BH Team - Mettez un python dans votre robot !BH Team - Mettez un python dans votre robot !
BH Team - Mettez un python dans votre robot !
 
Attachments 2011 12_19
Attachments 2011 12_19Attachments 2011 12_19
Attachments 2011 12_19
 
Implementing a key/value store
Implementing a key/value storeImplementing a key/value store
Implementing a key/value store
 
SdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoireSdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoire
 

Similaire à Need it help in Operating System quiz(computer language) and in some course

firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
firstjob4
 
Cours 1 Microprocesseurs.ppt
Cours 1 Microprocesseurs.pptCours 1 Microprocesseurs.ppt
Cours 1 Microprocesseurs.ppt
wafawafa52
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices
sarah Benmerzouk
 
Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------
NasriMohsen2
 
Sujet1 si-1-mines-mp-2007
Sujet1 si-1-mines-mp-2007Sujet1 si-1-mines-mp-2007
Sujet1 si-1-mines-mp-2007
Achraf Ourti
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
Sana Aroussi
 
Cours de PIC Généralités.pdf
Cours de PIC Généralités.pdfCours de PIC Généralités.pdf
Cours de PIC Généralités.pdf
AliRami3
 
bhaj_inspiration.pdf
bhaj_inspiration.pdfbhaj_inspiration.pdf
bhaj_inspiration.pdf
Kaoutar Dahmane
 
TD systèmes logiques.pdf----------------
TD systèmes logiques.pdf----------------TD systèmes logiques.pdf----------------
TD systèmes logiques.pdf----------------
NasriMohsen2
 
TP5_2020.pdf
TP5_2020.pdfTP5_2020.pdf
TP5_2020.pdf
mouradlamraoui1
 
Chapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerChapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerSana Aroussi
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
HouBou3
 
Mathématiques et Python
Mathématiques et PythonMathématiques et Python
Mathématiques et Python
Dany-Jack Mercier
 
Chapitre ii architecture interne des processeurs
Chapitre ii architecture interne des processeursChapitre ii architecture interne des processeurs
Chapitre ii architecture interne des processeursSana Aroussi
 
Travaux dirigés Réseau Ethernet
Travaux dirigés Réseau EthernetTravaux dirigés Réseau Ethernet
Travaux dirigés Réseau Ethernet
Ines Kechiche
 
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
Mayssa Rjaibia
 

Similaire à Need it help in Operating System quiz(computer language) and in some course (20)

firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 
Cours 1 Microprocesseurs.ppt
Cours 1 Microprocesseurs.pptCours 1 Microprocesseurs.ppt
Cours 1 Microprocesseurs.ppt
 
Video
VideoVideo
Video
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices
 
Cours php
Cours phpCours php
Cours php
 
Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------Chapitre1.ppt-------------------------------
Chapitre1.ppt-------------------------------
 
Sujet1 si-1-mines-mp-2007
Sujet1 si-1-mines-mp-2007Sujet1 si-1-mines-mp-2007
Sujet1 si-1-mines-mp-2007
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
 
Cours de PIC Généralités.pdf
Cours de PIC Généralités.pdfCours de PIC Généralités.pdf
Cours de PIC Généralités.pdf
 
bhaj_inspiration.pdf
bhaj_inspiration.pdfbhaj_inspiration.pdf
bhaj_inspiration.pdf
 
TD systèmes logiques.pdf----------------
TD systèmes logiques.pdf----------------TD systèmes logiques.pdf----------------
TD systèmes logiques.pdf----------------
 
TP5_2020.pdf
TP5_2020.pdfTP5_2020.pdf
TP5_2020.pdf
 
Chapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerChapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régner
 
Assembleur
AssembleurAssembleur
Assembleur
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
 
Ladder
LadderLadder
Ladder
 
Mathématiques et Python
Mathématiques et PythonMathématiques et Python
Mathématiques et Python
 
Chapitre ii architecture interne des processeurs
Chapitre ii architecture interne des processeursChapitre ii architecture interne des processeurs
Chapitre ii architecture interne des processeurs
 
Travaux dirigés Réseau Ethernet
Travaux dirigés Réseau EthernetTravaux dirigés Réseau Ethernet
Travaux dirigés Réseau Ethernet
 
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
17281795 commande-d-une-machine-a-courant-continu-a-vitesse-variable
 

Dernier

Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
mrelmejri
 
Iris et les hommes.pptx
Iris      et         les      hommes.pptxIris      et         les      hommes.pptx
Iris et les hommes.pptx
Txaruka
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
cristionobedi
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Oscar Smith
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
M2i Formation
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
BenotGeorges3
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
WarlockeTamagafk
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
caggoune66
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
Billy DEYLORD
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
Txaruka
 
Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
Friends of African Village Libraries
 

Dernier (13)

Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
 
Iris et les hommes.pptx
Iris      et         les      hommes.pptxIris      et         les      hommes.pptx
Iris et les hommes.pptx
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
 
Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
 

Need it help in Operating System quiz(computer language) and in some course

  • 1. - ~JAtI ~~I ~ W ~a~~I o.;J} ~1J.1 ~ OperatingSystems .;~ ~ tJ:ui :u! ~~ Exercice 1. Consider a main memory system that consists of a number of memory modules attached to the system ~, which is one word wide. When a write request is L Je, the bus is occupied for 100 nanoseconds (ns) by the data, address and control signals. During the same 100 ns, and for 500 ns thereafter, the addressed memory module executes one cycle accepting and storing the date. The internal operation of different memory modules may overlap in time, but only one request can be on the bus at any time. Sketch a graph of the maximum write rate (words per second) as a function of the module cycle time, assuming eight memory modules and a fixed bus busy time of 100 ns. Exercice 2. r a. Consider the following C/Unix program:: void main {} { int pid; pid =fork {}; printf ("%d n", pid); w } What are the possible outputs, assuming the fork() succeeds? b. What happens when executing the following program? void main {} { for ( ; ; ) fork {}; } Exercise 1. Considerons un systeme de memoire principale qui se compose d'un certain nombre de modules de memoire attaches au bus systeme qui est de largeur un mot. Quand une demande d'ecriture est faite, Ie bus est occupe pendant 100 nanosecondes (ns) par les signaux de donnees, d'adresse et de commande. Au cours de ces 100 ns, et pour 500 ns supplementaires, Ie module de memoire adresse execute un cycle recevant et stockant les donnees. Le fonctionnement interne des differents modules de memoire peut subir des chevauchements dans Ie temps, mais une seule demande peut etre sur Ie bus a un moment donne Dessiner un graph~ de la vitesse maximale d'ecriture (mots par seconde) comme une fonction du temps de cycle du module, en supposant qu'il y a huit modules de memoire et un temps fixe d'occupation du bus de 100 ns. Exercise 2. a. Considerons Ie programme C/Unix suivant: void main {} { int pid; pid =fork {}; printf ("%d n", pid); } Quels sont les resultats possibles, en supposant que I'appel fork() reussit? b. Qu'arriverait-illorsqu'on execute Ie programme suivant? void main {} { for (; ; ) fork {}; }
  • 2. Exercice 3. Consider the followingstate (snapshot) of a system. There are no outstanding (unsatisfied) requests for resources. a'aildJ.-.le r1 r2 r3 r4 CIIITTI:::TI process rO r1 r2 r3 p-! current allocation maximum demand r1 r2 r3 r4 r1 r2 r3 r4 Is the system safe? Explain. J.:xercice 4.U$. Supposethe followingtwo processes,"foo"and "bar' are executed concurrently and that they share the semaphore variables Sand R ( each initialized to 1) and the integer variable x (initialized to 0). void foo( ) { do { semWait(S) ; semWait(R) ; x++; void bare ) { do { semWait(R); semWait(S); X--i semSignal(Si SemSignal(R) ; } while (1); } semSignal(S); SemSignal(R) ; } while (1); ,.-. - a. Give an execution sequence of programs statements in which one or both processes are blocked forever. b. Could the concurrent execution of these two processes result in the indefinite postponement of one of them? if yes, give an execution sequence in which one is indefinitely postponed. .. Exercise 3. Considerons I'etat suivant (snapshot) d'un systeme. II n'ya pas de demandes en suspens (insatisfaits) en matiere de ressources available r1 r2 r3 r4 ITI::ITIITI process pO pI p2 p3 p-! current allocation n1c1ximumdemand r1 r2 1'3 r4 r1 1'2 r3 1'4 Le systeme est-il sur? Expliquer. Exercise 4. Supposons que les deux processus suivants, "foo" et "bar' soient executes en concurrence et qu'ils partagent les semaphores S et R (chacun initialise a 1) et la variable entiere x (initialisee a 0). void foo( ) { do { semWaj,.t (S) i semWait(R) i x++; void bar( ) { do { semWait(R) i semWait(S) i X--'I semSignal(S; SemS ignal (R) i } while (1) i } semSignal(S)i } SemSignal (R) ; } while (1) i a. Donner une sequence d'execution des instructions des programmes dans laquelle un ou les deux processus sont bloques pour toujours. b. Est-ce que I'execution concurrente de ces deux processus peut avoir comme resultat une suspension indefinie de I'un des d'eux ? Si oui, donnez une sequence d'execution dans laquelle un des deux est suspendu indefiniment. 0 0 1 2 0 0 1 2 1 0 0 1 1 5 1 1 1 .., 0 4 2 3 5 6 0 6 3 2 0 6 7 2 0 0 1 4 0 6 5 6 0 0 1 2 0 0 1 2 1 0 0 1 1 5 1 1 1 3 0 4 2 .., 5 6,) 0 6 3 2 0 6 7 2 0 0 1 4 0 6 5 6
  • 3. Exercice 5. Consider the following pseudo assembly code for computing c = a + b. Assume that a, b, and care assigned to consecutive memory "words" (memory is generally addressed byte by byte and assume that a word is 4 bytes wide) and address for "a" is OxOOOOECOO.Also, we initially have a = 22, b = 158, and c = O.Assume that the first instruction of the code is stored in OxOOOOB128.Also, each instruction has the OpCode in the first byte (most significant byte) and the remaining 3 bytes specify the corresponding address. The OpCode for storing a value is 1, load is 2, and add is 3. OxOOOOb128 load a OxOOOOb12c add b OxOOOOb130 store c -l Show the memory addresses and contents for all the instructions and involved data. Use the format as follows to express your answer (but the following is not the answer). For all data, use hexadecimal representation. addresses Ox00002104 Ox00002108 contents Ox00000001 Ox00000002 Exercise 5. Considerons Ie pseudo code assembleur suivant pour Ie calcul de c = a + b. Supposons que a, b et c sont affectees a des "mots" consecutifs d'une memoire sequentielle (Ia memoire est generalement adressee octet par octet et Ie mot est d longueur 4 octets) et I'adresse de "a" est OxOOOOECOO.De plus, initialement, a = 22, b =158, et c = O. Supposons que la premiere instruction du code est stockee dans OxOOOOB128.En outre, chaque instruction a I' OpCode dans Ie premier octet (octet Ie plus significatif) et les 3 octets restants specifient I'adresse correspondante. L'OpCode pour stocker une valeur est 1 (store), pour Ie chargement est 2 (load), et pour I'addition est 3 (add). OxOOOOb128 load a OxOOOOb12c add b OxOOOOb130 store c Presenter les adresses memoire et les contenus pour toutes les instructions et les donnees impliques. Utilisez Ie format suivant pour exprimer votre reponse (mais ce qui suit n'est pas la reponse). Pour toutes les donnees, utiliser la representation hexadecimale. adresses contenus Ox00002104 Ox00000001 Ox00002108 Ox00000002 2013/1/19 ~ wJ~