Changes between Version 100 and Version 101 of WikiStart
- Timestamp:
- Mar 10, 2011, 12:41:17 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WikiStart
v100 v101 10 10 Le cours est organisé autour de la réalisation pratique d'un OS embarqué multi-tâches compatible POSIX. 11 11 12 Les TME consistent à écrire, à partir de rien ou presque, les différents composants du système d'exploitation. Celui-ci est mis au point en simulation sur un SOC modélisé en SystemC en utilisant la plate-forme de modélisation SoCLib, et composé de 4 processeurs mips32, d'une mémoire, d'un timer, d'un multi-tty (terminal), d'un contrôleur video, d'un contrôleur de disque et d'un dma.La progression que vous allez suivre :12 Les TME consistent à écrire, à partir de rien ou presque, les différents composants du système d'exploitation. La progression que vous allez suivre : 13 13 14 14 * Un noyau d'OS qui virtualise le processeur, sans communication entre les taches, sans partage de devices mais avec une HAL. 15 15 * Ajout des communication intertaches, partage de devices: mécanisme de file d'attente et événements. 16 16 * user land : ABI kernel (liste des syscall) + phthread + dietlibc + compilation séparée. 17 18 == Plateforme matérielle 19 20 Le code est mis au point en simulation sur un SOC modélisé en SystemC en utilisant la plate-forme de modélisation SoCLib, et composé de 4 processeurs mips32, d'une mémoire, d'un timer, d'un multi-tty (terminal), d'un contrôleur video, d'un contrôleur de disque et d'un dma. 21 22 Seule la ligne d'interruption 0 des MIPS est utilisée. Pour les MIPS 1 à 3, la ligne d'interruption est branchée aux timers 1 à 3. Pour le MIPS 0, la ligne d'interruption est branchée sur l'ICU. 23 L'ICU reçoit les interruptions provenant, dans cet ordre, du timer0, des 4 TTY, du DMA et de l'IO controler. 24 Ce sont donc les lignes d'entrée de l'ICU de 0 (timer0) à 6 pour l'IO controler. 25 17 26 18 27 [[Image(plateforme.png,400px,nolink,align=left)]] … … 88 97 * [htdocs:2011_MI074_2_Hello.pdf Hello World] 89 98 * [htdocs:2011_MI074_3_Bootloader.pdf Bootloader] 90 * [htdocs:2011_MI074_4_hal_1.pdf HAL 1ere partie] 99 * [htdocs:2011_MI074_4_hal_register.pdf HAL 1ere partie] 100 * [htdocs:2011_MI074_4_hal_context.pdf HAL 2ème partie] 91 101 92 93 102 == TME 94 103 … … 96 105 * [wiki:TME2 Bootloader] 97 106 * [wiki:TME3-2011 HAL 1ere partie] 107 * [wiki:TME3-2011 HAL 2ème partie] 108 98 109 {{{#!comment 99 110 * [wiki:TME4- heap_manager]