Creación de lectura única entrada proc en las versiones del núcleo por encima de 3,10.

La creación de entradas proc ha sufrido un cambio considerable en la versión del kernel 3.10 y superiores. En este post vamos a ver uno de los métodos que podemos utilizar en la versión del kernel de Linux 3.10 y superiores Vamos a ver cómo podemos crear entradas proc en la versión 3.10 o superior.

La función está definida en proc_fs.h como />

Donde:

nombre: El nombre del proc entrada
modo: El modo de acceso para proc entrada
padres: El nombre del directorio principal dentro de / proc
proc_fops: La estructura en la que se crearán las operaciones de archivo para la entrada proc.

Por ejemplo, para crear una entrada de proc por el nombre de «hola» en virtud de la función anterior / proc se definirán son

proc_create (» hola «, 0, NULL, y proc_fops);

Ahora tenemos que crear la estructura file_operations proc_fops en el que podemos asignar la función de lectura para la entrada proc.

A continuación tenemos que añadir la función read_proc que dará al espacio de usuario los datos que queremos exportar desde el espacio del núcleo.

El mensaje que queremos para mostrar se define en el create_new_proc_entry función en la que también vamos a llamar a la fuction para la creación de la entrada proc.

El init y limpiar las funciones del módulo son

El código completo del módulo para la creación de la entrada proc usando proc_create es

El makefile para la compilación del módulo es />
ifneq ($ (KERNELRELEASE),) obj-m:?? = proc_read_3_10.o else # KERNELDIR = / lib / modules / $ (shell uname-r) / construir KERNELDIR = / home / nitin/Desktop/src/linux-3.11.1 / PWD: = $ (pwd cáscara) por defecto: $ (MAKE)-C $ (KERNELDIR) M = $ módulos (PWD) endif limpia: $ (MAKE)-C $ ( KERNELDIR) M = $ (PWD) limpia

Compile y cargue el módulo usando

Podemos ver la salida usando el comando cat

Se puede ver que se está visualizando el mensaje que hemos pasado en la función de lectura del módulo cuando se lee la entrada proc.

Posts relacionados:

Para la versión del kernel antes />
3.10 Creación de una entrada proc – 1 />
Creación de una lectura proc entrada

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *