Podcast
Questions and Answers
Qu'est-ce qu'un SoC (System on Chip)?
Qu'est-ce qu'un SoC (System on Chip)?
- Un processeur spécialisé pour les opérations graphiques.
- Un circuit contenant un système entier, le processeur, la mémoire et les contrôleurs de périphériques. (correct)
- Un type de mémoire utilisée dans les ordinateurs modernes.
- Un logiciel utilisé pour le développement de systèmes embarqués.
Quelle est la différence principale entre la mémoire RAM et ROM?
Quelle est la différence principale entre la mémoire RAM et ROM?
- La RAM est utilisée pour le stockage à long terme et la ROM pour le stockage temporaire.
- La ROM est plus rapide que la RAM.
- La RAM est volatile et la ROM est non-volatile. (correct)
- Il n'y a pas de différence significative.
Quel composant permet de faire des entrées-sorties dans almo1 (le SoC vu en cours)?
Quel composant permet de faire des entrées-sorties dans almo1 (le SoC vu en cours)?
- Le composant TTY. (correct)
- Le composant ICU.
- Le composant TIMER.
- Le composant BUS.
Quel composant peut initier une requête de lecture et d'écriture sur le bus dans almo1?
Quel composant peut initier une requête de lecture et d'écriture sur le bus dans almo1?
Quel est le rôle de l'ICU (Interrupt Controller Unit) dans almo1?
Quel est le rôle de l'ICU (Interrupt Controller Unit) dans almo1?
Qu'est-ce que le registre TTY_STATUS indique dans le contrôleur TTY?
Qu'est-ce que le registre TTY_STATUS indique dans le contrôleur TTY?
Dans quel fichier se trouve la description de l'espace d'adressage du SoC?
Dans quel fichier se trouve la description de l'espace d'adressage du SoC?
Comment imposer le placement d'adresse d'une fonction ou d'une variable en mémoire lors de la production d'un programme exécutable?
Comment imposer le placement d'adresse d'une fonction ou d'une variable en mémoire lors de la production d'un programme exécutable?
Comment le vecteur de syscall est-il structuré dans le système d'exploitation ?
Comment le vecteur de syscall est-il structuré dans le système d'exploitation ?
Quelle est la principale fonction de la fonction _start lors du démarrage d'un programme utilisateur ?
Quelle est la principale fonction de la fonction _start lors du démarrage d'un programme utilisateur ?
Que se passe-t-il avec l'exécution d'un programme utilisateur lorsqu'une interruption se produit ?
Que se passe-t-il avec l'exécution d'un programme utilisateur lorsqu'une interruption se produit ?
Comment une IRQ est-elle généralement déclenchée ?
Comment une IRQ est-elle généralement déclenchée ?
Que se passe-t-il après qu'une interruption est traitée par le système d'exploitation ?
Que se passe-t-il après qu'une interruption est traitée par le système d'exploitation ?
Comment le noyau détermine-t-il quelle routine d'interruption appeler lors d'une IRQ ?
Comment le noyau détermine-t-il quelle routine d'interruption appeler lors d'une IRQ ?
Quelle est la signification de masquer une IRQ dans le système d'exploitation ?
Quelle est la signification de masquer une IRQ dans le système d'exploitation ?
Qui a le pouvoir de demander le masquage d'une IRQ ?
Qui a le pouvoir de demander le masquage d'une IRQ ?
Pourquoi utilise-t-on le mot clé volatile en C pour les registres de périphériques ?
Pourquoi utilise-t-on le mot clé volatile en C pour les registres de périphériques ?
Quel est le rôle de l'éditeur de liens (linker) dans la chaîne de compilation ?
Quel est le rôle de l'éditeur de liens (linker) dans la chaîne de compilation ?
Qu'est-ce qu'un fichier objet dans la chaîne de compilation ?
Qu'est-ce qu'un fichier objet dans la chaîne de compilation ?
Qu'est-ce que la 'compilation croisée' ?
Qu'est-ce que la 'compilation croisée' ?
Quel est le rôle principal du système d'exploitation dans un ordinateur ?
Quel est le rôle principal du système d'exploitation dans un ordinateur ?
Comment une application utilisateur utilise-t-elle les services du kernel ?
Comment une application utilisateur utilise-t-elle les services du kernel ?
Comment le kernel se protège-t-il des applications utilisateur dans un système MIPS ?
Comment le kernel se protège-t-il des applications utilisateur dans un système MIPS ?
Quel est le rôle principal de kentry dans un système d'exploitation ?
Quel est le rôle principal de kentry dans un système d'exploitation ?
Quelle instruction spécifique permet de sortir de kentry et de revenir à l'exécution normale après le traitement d'une interruption?
Quelle instruction spécifique permet de sortir de kentry et de revenir à l'exécution normale après le traitement d'une interruption?
Quelle est la syntaxe correcte des instructions mtc0 et mfc0 dans MIPS?
Quelle est la syntaxe correcte des instructions mtc0 et mfc0 dans MIPS?
Que contient le champ XCODE du registre c0_cause?
Que contient le champ XCODE du registre c0_cause?
Quelle est la principale différence entre les modes kernel et user sur un processeur MIPS?
Quelle est la principale différence entre les modes kernel et user sur un processeur MIPS?
Une adresse mappée en mémoire est-elle toujours accessible quel que soit le mode d'exécution du MIPS?
Une adresse mappée en mémoire est-elle toujours accessible quel que soit le mode d'exécution du MIPS?
Quel est le rôle des registres c0_sr, c0_cause et c0_epc dans le coprocesseur 0 du MIPS?
Quel est le rôle des registres c0_sr, c0_cause et c0_epc dans le coprocesseur 0 du MIPS?
Quel rôle joue l'instruction 'syscall' dans le traitement des interruptions MIPS?
Quel rôle joue l'instruction 'syscall' dans le traitement des interruptions MIPS?
Comment les instructions mtc0 et mfc0 peuvent-elles être décrites par rapport aux autres instructions?
Comment les instructions mtc0 et mfc0 peuvent-elles être décrites par rapport aux autres instructions?
Flashcards
Mot clé volatile en C
Mot clé volatile en C
Indique que la valeur du registre peut changer à tout moment, utile pour les registres de périphériques.
Rôle du linker
Rôle du linker
Le linker fusionne des fichiers objet et des bibliothèques pour créer un fichier exécutable.
Fichier objet
Fichier objet
Un fichier contenant du code binaire pour le processeur, généré par le compilateur.
Compilation croisée
Compilation croisée
Signup and view all the flashcards
Fonctionnement du système d'exploitation
Fonctionnement du système d'exploitation
Signup and view all the flashcards
Communication application-kernel
Communication application-kernel
Signup and view all the flashcards
Protection du kernel (MIPS)
Protection du kernel (MIPS)
Signup and view all the flashcards
Rôle de kentry
Rôle de kentry
Signup and view all the flashcards
Qu'est-ce qu'un SoC (System on Chip) ?
Qu'est-ce qu'un SoC (System on Chip) ?
Signup and view all the flashcards
Quelle est la différence entre la mémoire RAM et ROM ?
Quelle est la différence entre la mémoire RAM et ROM ?
Signup and view all the flashcards
Quel composant permet de faire des entrées-sorties dans almo1 (le SoC vu en cours)?
Quel composant permet de faire des entrées-sorties dans almo1 (le SoC vu en cours)?
Signup and view all the flashcards
Quel composant peut initier une requête de lecture et d'écriture sur le bus dans almo1 ?
Quel composant peut initier une requête de lecture et d'écriture sur le bus dans almo1 ?
Signup and view all the flashcards
Quel est le rôle de l'ICU (Interrupt Controller Unit) dans almo1 ?
Quel est le rôle de l'ICU (Interrupt Controller Unit) dans almo1 ?
Signup and view all the flashcards
Qu'est-ce que le registre TTY_STATUS indique dans le contrôleur TTY ?
Qu'est-ce que le registre TTY_STATUS indique dans le contrôleur TTY ?
Signup and view all the flashcards
Dans quel fichier se trouve la description de l'espace d'adressage du SoC ?
Dans quel fichier se trouve la description de l'espace d'adressage du SoC ?
Signup and view all the flashcards
Comment imposer le placement d'adresse d'une fonction ou d'une variable en mémoire lors de la production d'un programme exécutable ?
Comment imposer le placement d'adresse d'une fonction ou d'une variable en mémoire lors de la production d'un programme exécutable ?
Signup and view all the flashcards
Vecteur de syscall
Vecteur de syscall
Signup and view all the flashcards
Fonction _start
Fonction _start
Signup and view all the flashcards
Interruption
Interruption
Signup and view all the flashcards
IRQ (Interrupt ReQuest)
IRQ (Interrupt ReQuest)
Signup and view all the flashcards
Routine d'interruption (ISR)
Routine d'interruption (ISR)
Signup and view all the flashcards
Table d'interruption
Table d'interruption
Signup and view all the flashcards
Masquer une IRQ
Masquer une IRQ
Signup and view all the flashcards
Qui peut masquer une IRQ?
Qui peut masquer une IRQ?
Signup and view all the flashcards
eret
eret
Signup and view all the flashcards
mtc0 & mfc0
mtc0 & mfc0
Signup and view all the flashcards
Champ XCODE de c0_cause
Champ XCODE de c0_cause
Signup and view all the flashcards
Différence entre Kernel et User
Différence entre Kernel et User
Signup and view all the flashcards
Accès mémoire en Kernel et User
Accès mémoire en Kernel et User
Signup and view all the flashcards
Rôles des registres c0_sr, c0_cause et c0_epc
Rôles des registres c0_sr, c0_cause et c0_epc
Signup and view all the flashcards
Study Notes
Architecture et Système
- QCM: Single answer per question, clearly mark your choice.
- 0 points for unanswered questions.
- +0.5 points per correct answer.
- -0.25 points per incorrect answer.
- Avoid random guessing, as it can lead to a loss of points.
- Negative scores are capped at 0.
Architecture Matérielle
-
SoC (System on Chip): A single circuit containing the processor, memory, and peripheral controllers.
-
RAM vs ROM:
- RAM (Random Access Memory) is volatile memory, meaning data is lost when power is off.
- ROM (Read-Only Memory) is non-volatile; data is retained without power.
- RAM is used for short-term, temporary storage.
- ROM is primarily for permanent storage, especially crucial instructions/data.
-
Input/Output (I/O) Component: The TTY component handles input/output operations within the SoC.
-
Bus Initiator: The MIPS component, among others, is capable of initiating read/write requests on the bus.
-
Interrupt Controller Unit (ICU): Combines interrupts from various peripherals to manage them efficiently.
-
TTY Status Register: Contains information about the terminal status (e.g., remaining character count.)
Chaîne de Compilation
-
SoC Description File: The
kernel.ld
file describes the SoC's memory map. -
Memory Placement: Special compiler options or Idscript files can manipulate the memory location allocation, of functions or variables within a program.
-
Volatile Keywords: Used in C to indicate that a register/variable's value can change unexpectedly (during hardware interrupts).
-
Linker's Role: Combines object files and libraries into a single executable.
-
Object File: Contains compiled code ready for final linking.
-
Cross-Compilation: Compiling a program on one system to target a different architecture or platform.
Système d'Exploitation
-
Kernel's Role: Manages hardware and software resources, providing APIs for applications.
-
User Application Interaction: Applications communicate with the kernel through system calls.
-
Kernel Function start: Primarily controls the entry point for the user application program.
Gestionnaire d'Interruptions
-
Interrupt Handling: When an interrupt occurs, the program currently running is paused, and the kernel takes over to process the interrupt.
-
IRQ Initiation: Peripheral devices or hardware events trigger interrupts to alert the processor of a condition requiring attention/action.
-
Interrupt Service Routine (ISR): The kernel executes programmed code to respond to each interrupt event and handles the corresponding events appropriately.
-
Interrupt Masks: The kernel has the capability to disable or enable individual interrupts.
Mode d'exécution et registres spéciaux
-
Kernel Mode vs User Mode: Kernel mode allows full access, while user mode is restricted.
-
MIPS Registers (c0_sr, c0_cause, c0_epc): Involved in managing execution modes and exceptions in MIPS processors.
-
Exit Instructions From kentry:
eret
instruction is used for returning from exception handling back to normal execution. -
Registers' content: The xcode field specifies the reason or cause of the current exception.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.