Changes between Version 22 and Version 23 of AS6-TME-B6


Ignore:
Timestamp:
Mar 28, 2022, 1:38:22 PM (3 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AS6-TME-B6

    v22 v23  
    147147'''
    148148}}}
     1491. Rappeler le nom des deux fonctions de l'API utilisateur de cet allocateur. Est-ce que ces fonctions font des appels systèmes ? Si oui, quand et pourquoi ?   
     150{{{#!protected ------------------------------------------------------------------
     151'''
     152 *
     153'''
     154}}}
    1491551. Pour libérer un objet alloué par l'allocateur de l'application, la fonction `free()` reçoit juste le pointeur rendu par `malloc()`. Comment la fonction `free()` connaît-elle la taille qui avait été allouée ? 
    150156{{{#!protected ------------------------------------------------------------------
     
    177183'''
    178184}}}
    179 1. Pour libérer un objet alloué par l'allocateur d'objets du noyau, on utilise la fonction `kfree()` qui prend en argument le pointeur
    180 {{{#!protected ------------------------------------------------------------------
    181 '''
    182  *
    183 '''
    184 }}}
    185 1.
    186 {{{#!protected ------------------------------------------------------------------
    187 '''
    188  *
    189 '''
    190 }}}
    191 1.
    192 {{{#!protected ------------------------------------------------------------------
    193 '''
    194  *
    195 '''
    196 }}}
    197 1.
    198 {{{#!protected ------------------------------------------------------------------
    199 '''
    200  *
    201 '''
    202 }}}
    203 1.
    204 {{{#!protected ------------------------------------------------------------------
    205 '''
    206  *
    207 '''
    208 }}}
    209 1.
    210 {{{#!protected ------------------------------------------------------------------
    211 '''
    212  *
    213 '''
    214 }}}
    215 1.
    216 {{{#!protected ------------------------------------------------------------------
    217 '''
    218  *
    219 '''
    220 }}}
    221 1.
    222 {{{#!protected ------------------------------------------------------------------
    223 '''
    224  *
    225 '''
    226 }}}
    227 1.
    228 {{{#!protected ------------------------------------------------------------------
    229 '''
    230  *
    231 '''
    232 }}}
    233 1.
    234 {{{#!protected ------------------------------------------------------------------
    235 '''
    236  *
    237 '''
    238 }}}
    239 1.
    240 {{{#!protected ------------------------------------------------------------------
    241 '''
    242  *
    243 '''
    244 }}}
    245 1.
    246 {{{#!protected ------------------------------------------------------------------
    247 '''
    248  *
    249 '''
    250 }}}
    251 1.
    252 {{{#!protected ------------------------------------------------------------------
    253 '''
    254  *
    255 '''
    256 }}}
    257 1.
     1851. Pour libérer un objet alloué par l'allocateur d'objets du noyau, on utilise la fonction `kfree()` qui prend en argument le pointeur alloué par `kmalloc()` et la taille allouée. Pourquoi demander la taille ? Est-ce une contrainte ?
     186{{{#!protected ------------------------------------------------------------------
     187'''
     188 *
     189'''
     190}}}
     1911. Le premier usage des allocateurs est fait par la gestion des threads. Sur les trois allocateurs décrits ici, quels sont ceux utilisés ?
     192{{{#!protected ------------------------------------------------------------------
     193'''
     194 *
     195'''
     196}}}
     1971. Chaque thread a désormais deux piles. Quelles tailles ont-elles ? À quoi servent-elles et pourquoi sont-elles utiles ? À quel moment bascule-t-on de l'une à l'autre ? 
    258198{{{#!protected ------------------------------------------------------------------
    259199'''