Référence de structure memtrack_module

Référence de structure memtrack_module

#include < memtrack.h >

Champs de données

structure hw_module_t commun
entier(* init )(const struct memtrack_module *module)
entier(* getMemory (const struct memtrack_module *module, pid_t pid, type int, struct memtrack_record *records, size_t *num_records)

Description détaillée

Chaque module matériel doit avoir une structure de données nommée HAL_MODULE_INFO_SYM et les champs de cette structure de données doivent commencer par hw_module_t suivi d'informations spécifiques au module.

Définition à la ligne 120 du fichier memtrack.h .

Documentation de terrain

struct hw_module_t commun

Définition à la ligne 121 du fichier memtrack.h .

int(* getMemory)(const struct memtrack_module *module, pid_t pid, type int, struct memtrack_record *records, size_t *num_records)

(*getMemory)() attend un tableau d'objets d'enregistrement et remplit jusqu'à *num_record structures avec les tailles de mémoire ainsi que les indicateurs associés pour cette mémoire. Il met également à jour *num_records avec le nombre total d'enregistrements qu'il pourrait renvoyer si *num_records était suffisamment grand lors de sa transmission. Le retour d'enregistrements de taille 0 est attendu, le nombre d'enregistrements ne doit pas varier entre les appels à getMemory pour le même type de mémoire, même pour différents pids.

L'appelant appellera souvent getMemory pour un type et un pid avec *num_records == 0 pour déterminer le nombre d'enregistrements à allouer de la place. Ce cas devrait être un chemin rapide dans le HAL, renvoyant une constante et n'interrogeant aucun fichier du noyau. Si *num_records transmis est 0, alors les enregistrements peuvent être NULL.

Cette fonction doit être thread-safe, elle peut être appelée depuis plusieurs threads en même temps.

Renvoie 0 en cas de succès, -ENODEV si le type n'est pas pris en charge, -errno en cas d'autres erreurs.

Définition à la ligne 151 du fichier memtrack.h .

int(* init)(const struct memtrack_module *module)

(*init)() effectue des actions de configuration de gestion memtrack et est appelé une fois avant tout appel à getMemory() . Renvoie 0 en cas de succès, -errno en cas d'erreur.

Définition à la ligne 128 du fichier memtrack.h .


La documentation de cette structure a été générée à partir du fichier suivant :
  • matériel/libhardware/include/hardware/ memtrack.h