Informacje o strukturze memtrack_module

Informacje o strukturze memtrack_module

#include < memtrack.h >

Pola danych

struct hw_module_t   wspólne
 
int(*  init )(const struct memtrack_module *module)
 
int(*  getMemory )(const struct memtrack_module *module, pid_t pid, int type, struct memtrack_record *records, size_t *num_records)
 

Szczegółowy opis

Każdy moduł sprzętowy musi mieć strukturę danych o nazwie HAL_MODULE_INFO_SYM, a pola tej struktury danych muszą zaczynać się od hw_module_t po czym następuje informacja o danym module.

Definicja w wierszu 120 pliku memtrack.h .

Dokumentacja pola

struct hw_module_t common

Definicja w wierszu 121 pliku memtrack.h .

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

Funkcja (*getMemory)() oczekuje tablicy obiektów rekordów i wypełnia struktury *num_record rozmiarami pamięci oraz powiązanymi z nią flagami. Zmiana wartości parametru *num_records powoduje również zaktualizowanie parametru *num_records o łączną liczbę rekordów, które mogłyby zostać zwrócone, gdyby parametr *num_records był wystarczająco duży. Zwracane rekordy o rozmiarze 0 są oczekiwane. Liczba rekordów nie powinna się zmieniać między wywołaniami getMemory dla tego samego typu pamięci, nawet w przypadku różnych identyfikatorów pid.

Użytkownik często wywołuje getMemory dla typu i pid z *num_records == 0, aby określić, ile rekordów ma przydzielić miejsce. W tym przypadku powinien to być szybki ścieżka w HAL, zwracająca stałą wartość i nie wysyłająca zapytań do żadnych plików jądra. Jeśli przekazana wartość *num_records wynosi 0, rekordy mogą mieć wartość NULL.

Ta funkcja musi być bezpieczna w wątku, ponieważ może być wywoływana z różnych wątków jednocześnie.

Zwraca 0 w przypadku powodzenia, -ENODEV, jeśli typ nie jest obsługiwany, -errno w przypadku innych błędów.

Definicja w wierszu 151 pliku memtrack.h .

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

(*init)() wykonuje czynności konfiguracyjne zarządzania memtrack i jest wywoływany raz przed każdym wywołaniem funkcji getMemory() . Zwraca wartość 0 w przypadku powodzenia i wartość -errno w przypadku błędu.

Definicja w wierszu 128 pliku memtrack.h .


Dokumentacja tego typu danych została wygenerowana z tego pliku: