get_kernel_syms(2) System Calls Manual get_kernel_syms(2) NOMBRE get_kernel_syms - recupera simbolos exportados del nucleo y de modulos SINOPSIS #include [[a extinguir]] int get_kernel_syms(struct kernel_sym *tabla); DESCRIPCION Nota: esta llamada de sistema solo existe en versiones del nucleo de Linux anteriores a 2.6. Si tabla es NULL, get_kernel_syms() devuelve el numero de simbolos disponibles para consultar. En otro caso rellena una tabla de estructuras: struct kernel_sym { unsigned long value; char name[60]; }; Los simbolos estan mezclados con simbolos magicos de la forma #nombre-de-modulo donde el nucleo tiene un nombre vacio. El valor asociado a un simbolo de esta forma es la direccion en la cual el modulo se carga. Los simbolos exportados de cada modulo siguen su etiqueta magica de modulo y los modulos se devuelven en orden inverso de su carga. VALOR DEVUELTO En caso de exito se retorna la cantidad de simbolos copiados de tabla. En caso de error se devuelve -1, y errno toma el valor indicativo de dicho error. ERRORES Solo existe una posibilidad en el estado de salida de error: ENOSYS get_kernel_syms() no tiene soporte en esta version del nucleo. ESTANDARES Linux. HISTORIAL Eliminado en Linux 2.6. Esta llamada al sistema esta obsoleta y no es compatible con glibc. No se aporta ninguna declaracion en las cabeceras de glibc, pero, por una peculiaridad historica, las versiones de glibc anteriores a glibc 2.23 si exportaban una ABI para esta llamada al sistema. Por lo tanto, para emplear esta llamada al sistema, bastaba con declarar manualmente la interfaz en el codigo. Tambien se podia invocar la llamada al sistema mediante syscall(2). ERRORES No hay forma de indicar el tamano del bufer reservado para tabla. Si se han anadido simbolos al nucleo desde que el programa interrogo sobre el tamano de la tabla de simbolos, la memoria se corrompera. La longitud de los nombres de simbolos exportados esta limitada a 59 caracteres. Debido a estas limitaciones, esta llamada al sistema esta obsoleta en favor de query_module(2) (que a su vez esta obsoleta en favor de otras interfaces descritas en su pagina de manual). VEASE TAMBIEN create_module(2), delete_module(2), init_module(2), query_module(2) TRADUCCION La traduccion al espanol de esta pagina del manual fue creada por Gerardo Aburruzaga Garcia y Marcos Fouces Esta traduccion es documentacion libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. Si encuentra algun error en la traduccion de esta pagina del manual, envie un correo electronico a . Paginas de Manual de Linux 6.15 17 Mayo 2025 get_kernel_syms(2)