Changes between Version 27 and Version 28 of AS6-TME-B1
- Timestamp:
- Feb 15, 2022, 2:13:49 PM (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AS6-TME-B1
v27 v28 1357 1357 }}} 1358 1358 1359 - Vous allez ajouter un appel système nommé `SYSCALL_ MEMCPY` qui réalise la copie d'une zone de la mémoire. Pour cela, vous devez:1359 - Vous allez ajouter un appel système nommé `SYSCALL_DMA_MEMCPY` qui réalise la copie d'une zone de la mémoire. Pour cela, vous devez: 1360 1360 - Ajouter une fonction dans la libc que vous appellerez `dma_memcpy(int *dst, int *src, unsigned len)` qui a un comportement équivalent à `memcpy()` mais pour déplacer des tableaux d'entiers. Vous devez modifier les fichiers `ulib/libc.h` et `ulib/libc.c`. 1361 1361 - Ajouter la déclaration de `SYSCALL_DMA_MEMCPY` dans le fichier `commun/syscall.h`. … … 1365 1365 1366 1366 Idéalement, il faudrait vérifier que les adresses utilisées sont uniquement dans la partie de l'espace d'adressage autorisée pour l'utilisateur. Cette vérification serait faite dans une fonction intermédiaire dans `kernel/ksyscalls.c` qui ferait les vérifications et qui appellerait `dma_memcpy()` si les adresses sont correctes. Je vous laisse y réfléchir. 1367 1368 {{{#!protected 1369 Ajouter le FB et écrire un damier qui s'inverse. 1370 }}}