GIF-1001, 28 avril 2010 Nom/Matricule : ______________________
Examen 2
Cet examen vaut 40% de la note totale du cours. Les questions seront corrigées sur un total de 40 points.
La valeur de chaque question est indiquée avec la question. Une calculatrice scientifique peut être utilisée.
Cependant, aucune documentation, autre que les annexes, n’est permise. Vous pouvez répondre aux questions sur le présent document ou dans le cahier bleu mis à votre disposition.
Q1 (4 points) : Les composantes logicielles ou matérielles suivantes interviennent lors du démarrage de votre ordinateur. Décrivez brièvement quel est leur rôle et dites dans quel ordre elles interviennent.
a) Boot strap sector (premier secteur du disque dur) b) Système de fichier du système d’exploitation c) BIOS
d) Routines et fonctions pour les entrées/sorties du système d’exploitation e) RAM CMOS
Q2 (2 points) : Lorsque le système d’exploitation arrête un processus en cours pour lancer un nouveau processus, quelles informations doit-il sauvegarder sur le processus en cours afin d’en reprendre l’exécution ultérieurement?
Q3 (2 points) : Parmi les énoncés suivants reliés aux systèmes d’exploitation, indiquez ceux qui sont vrais :
A) Un système d’exploitation est un programme qui gère l’exécution d’autres programmes.
B) Un système d’exploitation doit être chargé en mémoire avant d’être exécuté par le microprocesseur.
C) L’interface usager intégrée dans le chipset envoie des commandes qui sont interprétées et exécutées par le système d’exploitation.
D) Un système d’exploitation contient des routines afin d’accéder aux périphériques.
Ces fonctions sont souvent disponibles pour les applications de l’usager sous forme d’interruptions.
E) Lorsqu’un programme de l’usager ce termine, ce programme devrait redonner le contrôle au système d’exploitation ou indiquer au système d’exploitation qu’il est terminé.
F) Pour permettre aux programmes de l’usager de s’exécuter, le système d’exploitation leur laisse la place à l’intérieur de la mémoire.
Q4 (4 points) : Lorsqu’une application veut sauvegarder des données dans un fichier texte, elle doit accéder à certaines ressources du système d’exploitation.
A) De manière générale, comment l’application de l’usager accèdera-t-elle au fichier?
B) Énumérez et décrivez brièvement les éléments classiques d’un système de fichier.
Une image vaut mille mots.
Q5 (8 points) : L’ingénieur Gemme ô Essa doit faire un programme en assembleur 8086 qui acquiert des données d’un capteur de température. Le capteur de température produit une valeur à toutes les secondes et le programme doit saisir des données pendant dix minutes. Il faut prendre les 600 données obtenues et les mettre dans la mémoire, en ordre, entre les adresses 1000 et 1599. Chaque valeur de température est exprimée sur un octet.
Tel que connecté au microprocesseur, la température est disponible sur le port 36 du microprocesseur. Lorsqu’une nouvelle valeur de température est mise à jour, la valeur lue au port 37 devient 1 et l’interruption 10H se produit. Le port 37 et le signal d’interruption sont automatiquement remis à 0 lorsque le port 36 est lu.
Comme l’ingénieur Gemme ô Essa est très occupé, il a refilé le travail à un stagiaire qui lui a proposé les deux solutions suivantes :
Solution 1 Solution 2
MOV BX, 1000
AttendT:
IN AL,37 JZ AttendT
IN AL,36 MOV [BX],AL INC BX CMP BX,1600 JNZ AttendT
; MonAdresseDMA DW 0 se retrouve avant MOV MonAdresseDMA,1000
PUSH DS MOV AX,0 MOV DS,AX
MOV [40h],MON_ISR_10H MOV [44h],CS
POP DS ; Autre code
BouclePrincipale:
; Autre code
JMP BouclePrincipale
MON_ISR_10H:
CMP MonAdresseDMA,1600 JZ ExitISR10H
IN AL,36
MOV BX, MonAdresseDMA MOV [BX],AL
INC MonAdresseDMA ExitISR10H:
IRET
A) Quelle approche de solution est la meilleure et pourquoi?
B) Y aurait-il une autre approche de solution possible? Quels seraient ses avantages et désavantages?
C) Décrivez sommairement le module d’entrées/sorties qui s’insère entre le microprocesseur et la sonde de température qui exprime la température sous forme de tension analogique. Une image vaut mille mots.
D) Le stagiaire a possiblement fait une erreur dans la Solution 2. Laquelle?
Q6 (3 points) : Associez la définition avec le mot s’y rattachant dans un contexte de bus de communication.
# Définition # Mot
1 Synchrone 2 Asynchrone A Se dit d’une ligne de bus ayant plusieurs usages
3 Isochrone 4 Dédiée 5 Multiplexée B Se dit d’une communication bidirectionnelle avec
communication simultanée dans les deux sens
6 Complexée 7 Série 8 Parallèle C Se dit lorsque la différence de tension entre deux fils
est utilisée afin de décoder des bits
9 Multi parallèle 10 Cyclic Redondancy
Check (CRC) 11 Encodage NZRI D Se dit d’une communication qui se fait à intervalles
réguliers dans le temps avec des pauses entre chaque communication.
12 Bit de parité 13 Point-à-point 14 Multipoint E Se dit d’un système de communication comme le
USB lorsque plusieurs appareils sont connectés dans le système, mais avec des liens indépendants entre
chaque paire d’appareils. 15 Multidrop
16 Half-Duplex 17 Full-Duplex F Se dit d’un bus où les bits d’un mot sont transmis un
par un.
18 Full-Complex 19 Transmission
différentielle 20 Transmission
référentielle
Q7 (5 points) : Sachant que chaque programme a ses propres adresses (relatives au début du programme) et que la mémoire a sa propre adresse, relative au début de la mémoire : A) Décrivez brièvement comment se fait la translation d’adresse lorsque chaque
processus est mis à un endroit variable, en un seul bloc contigu, dans la mémoire.
B) Décrivez comment se fait la translation d’adresse lorsque chaque processus est découpé en pages, tout comme la mémoire, et que certaines pages seulement de chaque processus se retrouvent en mémoire.
C) Quels sont les avantages d’avoir des adresses distinctes pour les programmes et pour la mémoire?
Q8 (3 points) : Décrivez ce qu’est un pipeline d’instruction. Une image vaut mille mots!
Q9 (9 points) : Tous les énoncés suivant sont totalement ou partiellement faux. Dites brièvement pourquoi ou dites comment rendre l’énoncé vrai. Un énoncé peut être faux pour plusieurs raisons.
# Énoncé Faux
A Pour permettre l’exécution de plusieurs processus simultanément, le microprocesseur exécute certains programmes tandis que le système d’exploitation exécute les autres.
B Un processus sera dans l’état bloqué lorsqu’il attendra après le microprocesseur. Il quittera cet état quand le microprocesseur traitera son signal d’interruption.
C L’adresse de la prochaine instruction à exécuter par le microprocesseur est une adresse virtuelle. Il s’agit d’une adresse de mémoire indiquant où se trouve l’instruction.
D Le microprocesseur traite les entrées/sorties comme il traite la mémoire au niveau des bus. Il contient cependant des séquences d’instructions spéciales afin d’interfacer avec les périphériques de base de votre ordinateur.
E Le chipset est un programme permettant de gérer les accès à la mémoire et à la carte graphique. Ce programme contient aussi des fonctions pour gérer les bus auxquels sont connectés les périphériques.
F Le port série permet de communiquer sur de plus grandes distances que le port parallèle, mais il va moins vite. Par ailleurs, il a été conçu pour les imprimantes alors que le port parallèle a été conçu pour les modems.
G Selon les spécifications du USB, la vitesse en haute vitesse est 480Mbps (Mega bits par secondes). Ainsi, transmettre 480Mo (Mega octets) devrait prendre 8 secondes.
H En exécutant deux processus simultanément à l’intérieur du même microprocesseur le simultaneous multi threading permet de doubler la vitesse d’exécution des processus. En contrepartie, il faut doubler les unités de lecture et de décodage d’instructions du microprocesseur.
I La FAT d’un disque dur utilisant le FAT32 occupe un espace de 4*2^32 octets et elle peut gérer 8*2^32 clusters. Les fichiers sauvegardés avec un système de fichier FAT peuvent se corrompre en créant des fichiers croisés : la fin d’un fichier devient la fin d’un autre fichier.
QB (2 points Bonus) : Dites dans quel ordre chronologique sont apparus les bus suivants : AGP, port série, USB, PCI, PCI-Express, port parallèle et ISA.