.\" -*- coding: UTF-8 -*- .\" Copyright 1996, Free Software Foundation, Inc. .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-1.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH query_module 2 "7 septembrie 2025" "Pagini de manual de Linux 6.18" .SH NUME query_module \- interoghează nucleul pentru diverse lucruri referitoare la module .SH SINOPSIS .nf \fB#include \fP .P \fB[[depreciat]] int query_module(\fPsize_t bufsize; \fB const char *\fP\fIname\fP\fB, int \fP\fIwhich\fP\fB,\fP \fB void \fP\fIbuf\fP\fB[\fP\fIbufsize\fP\fB], size_t \fP\fIbufsize\fP\fB,\fP \fB size_t *\fP\fIret\fP\fB);\fP .fi .SH DESCRIERE \fINotă\fP: Acest apel de sistem este prezent numai înainte de Linux 2.6. .P \fBquery_module\fP() solicită informații de la nucleu despre modulele încărcabile. Informațiile returnate sunt plasate în memoria tampon indicată de \fIbuf\fP. Apelantul trebuie să precizeze dimensiunea lui \fIbuf\fP în \fIbufsize\fP. Natura și formatul exact al informațiilor returnate depind de operația specificată de \fIwhich\fP. Unele operații necesită ca \fIname\fP să identifice un modul încărcat în mod curent, altele permit ca \fIname\fP să fie NULL, indicând nucleul propriu\-zis. .P Următoarele valori pot fi specificate în \fIwhich\fP: .TP \fB0\fP Returnează succes, dacă nucleul acceptă \fBquery_module\fP(). Utilizată pentru a verifica disponibilitatea apelului de sistem. .TP \fBQM_MODULES\fP .\" ret is set on ENOSPC Returnează numele tuturor modulelor încărcate. Memoria tampon returnată constă dintr\-o secvență de șiruri cu terminație nulă; \fIret\fP este stabilit la numărul de module. .TP \fBQM_DEPS\fP .\" ret is set on ENOSPC Returnează numele tuturor modulelor utilizate de modulul indicat. Memoria tampon returnată constă dintr\-o secvență cu terminație nulă; \fIret\fP este stabilit la numărul de module. .TP \fBQM_REFS\fP .\" ret is set on ENOSPC Returnează numele tuturor modulelor care utilizează modulul indicat. Acesta este inversul lui \fBQM_DEPS\fP. Memoria tampon returnată constă dintr\-o secvență cu terminație nulă; \fIret\fP este stabilit la numărul de module. .TP \fBQM_SYMBOLS\fP .\" ret is set on ENOSPC Returnează simbolurile și valorile exportate de nucleu sau de modulul indicat. Memoria tampon returnată este o matrice de structuri de forma următoare .IP .in +4n .EX struct module_symbol { unsigned long value; unsigned long name; }; .EE .in .IP urmată de șiruri de caractere cu terminație nulă. Valoarea lui \fIname\fP este decalajul de caractere al șirului de caractere în raport cu începutul lui \fIbuf\fP; \fIret\fP este stabilit la numărul de simboluri. .TP \fBQM_INFO\fP Returnează diverse informații despre modulul indicat. Formatul memoriei tampon de ieșire este: .IP .in +4n .EX struct module_info { unsigned long address; unsigned long size; unsigned long flags; }; .EE .in .IP unde \fIaddress\fP este adresa nucleului la care se află modulul, \fIsize\fP este dimensiunea modulului în octeți, iar \fIflags\fP este o mască de \fBMOD_RUNNING\fP, \fBMOD_AUTOCLEAN\fP și așa mai departe, care indică starea curentă a modulului (a se vedea fișierul sursă al nucleului Linux \fIinclude/linux/module.h\fP). \fIret\fP este stabilit la dimensiunea structurii \fImodule_info\fP. .SH "VALOAREA RETURNATĂ" În caz de succes, se returnează zero. În caz de eroare, se returnează \-1, iar \fIerrno\fP este configurată pentru a indica eroarea. .SH ERORI\-IEȘIRE .TP \fBEFAULT\fP Cel puțin unul dintre \fIname\fP, \fIbuf\fP sau \fIret\fP se afla în afara spațiului de adrese accesibil programului. .TP \fBEINVAL\fP .\" Not permitted with QM_DEPS, QM_REFS, or QM_INFO. \fIwhich\fP nevalid; sau \fIname\fP este NULL (indicând „nucleul”), dar acest lucru nu este permis cu valoarea specificată pentru \fIwhich\fP. .TP \fBENOENT\fP Nu există niciun modul cu acest nume \fIname\fP. .TP \fBENOSPC\fP Dimensiunea memoriei tampon furnizate a fost prea mică. \fIret\fP este stabilit la dimensiunea minimă necesară. .TP \fBENOSYS\fP \fBquery_module\fP() nu este compatibil cu această versiune a nucleului (de exemplu, Linux 2.6 sau o versiune ulterioară). .SH STANDARDE Linux. .SH VERSIUNI .\" Removed in Linux 2.5.48 Eliminat în Linux 2.6. .P Unele dintre informațiile care erau disponibile anterior prin \fBquery_module\fP() pot fi obținute din \fI/proc/modules\fP, \fI/proc/kallsyms\fP și din fișierele din directorul \fI/sys/module\fP. .P Apelul de sistem \fBquery_module\fP() nu este acceptat de glibc. În anteturile glibc nu este furnizată nicio declarație, dar, printr\-o ciudățenie a istoriei, glibc exportă un ABI pentru acest apel de sistem. Prin urmare, pentru a utiliza acest apel de sistem, este suficient să declarați manual interfața în codul dumneavoastră; alternativ, puteți invoca apelul de sistem utilizând \fBsyscall\fP(2). .SH "CONSULTAȚI ȘI" \fBcreate_module\fP(2), \fBdelete_module\fP(2), \fBget_kernel_syms\fP(2), \fBinit_module\fP(2), \fBlsmod\fP(8), \fBmodinfo\fP(8) .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .