Changes between Version 7 and Version 8 of WikiStart
- Timestamp:
- Jun 26, 2019, 1:41:22 PM (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WikiStart
v7 v8 19 19 - The studied hardware architecture is simulated by using a cycle-and-bit-accurate model, able to execute the software from the true beginning (full system emulation). 20 20 21 * Il y a un TP par semaine:22 * Le premier code exécuté est un simple programme en assembleur affichant "Hello World !" sur un terminal sans aucun système d'exploitation.23 * Le dernier code exécuté est constitué de deux programmes indépendants s'exécutant chacun dans leur espace de mémoire virtuelle au-dessus d'un système d'exploitation POSIX like.21 - There is one practical work per week: 22 - The really first code is a simple assembler program which print "hello Word!" on the terminal without an operating system or even any functions library. 23 - The last one is composed of two programs running independently on the same processeur by using virtual memory. 24 24 25 * Le module doit permettre de répondre aux questions suivantes (liste non exhaustive) : 26 * Comment démarre une machine ? 27 * Quel est le rôle d'un système d'exploitation et quels services propose-t-il ? 28 * Qu'est-ce qu'un cache de mémoire ? 29 * Qu'est-ce qu'un contrôleur de périphérique, et comment l'utiliser ? 30 * Qu'est-ce qu'un pilote de périphérique ? 31 * Comment exécuter plusieurs programmes sur un seul processeur ? 32 * Comment plusieurs processeurs peuvent-ils se partager le même espace d'adressage ? 33 * Pourquoi chaque programme doit avoir un espace d'adressage propre et comment ? 34 * Lorsqu'on frappe une touche du clavier, comment le caractère s'affiche-t-il à l'écran ? 25 - The module must answer the following questions (this is non-exhaustive list): 26 - How does a machine start? 27 - What is the role of an operating system and what services does it offer? 28 - What is a memory cache? 29 - What is a device controller, and how to use it? 30 - What is a device driver? 31 - How to run multiple programs on a single processor? 32 - How can multiple processors share the same address space? 33 - Why should each program have its own address space and how? 34 - and finally: 35 * When you hit a key on the keyboard, how does the character appear on the screen? 35 36 36 = Pr érequis37 = Prerequisites 37 38 38 * Une bonne connaissance du langage C est nécessaire puisque le module propose d'écrire un système d'exploitation depuis le début.39 * Une connaissance de l'assembleur MIPS32 est aussi importante, mais les principes de ce langage et les conventions d'usage pour l'écriture des fonctions sont rappelés la première semaine.39 * A good knowledge of the C language is necessary since the module proposes to write an operating system from the beginning. 40 * The knowledge of the MIPS32 assembler is also important, but the principles of this language and the conventions of use for writing functions are recalled the first week. 40 41 41 = Plan du cours42 = Course plan 42 43 43 1. '''[wiki:S01 Programmation en assembleur sur une machine minimale]'''[[BR]] 44 Le but de cette première séance est de présenter une architecture minimale et comment 45 écrire un premier programme en langage assembleur. 46 44 1. '''[wiki: S01 Assembler programming on a minimal machine]''' [[BR]] 45 The purpose of this first session is to present a minimal architecture and how 46 write a first program in assembly language. 47 47 48 48 = Documents