KDIR ?= $(shell uname -r) Cuál es el significado de ?= ? He entendido la diferencia entre :=, +=y =desde otro hilo disponible en desbordamiento de pila, pero no puede encontrar la explicación a ?=.
KDIR ?= $(shell uname -r) Cuál es el significado de ?= ? He entendido la diferencia entre :=, +=y =desde otro hilo disponible en desbordamiento de pila, pero no puede encontrar la explicación a ?=.
yo hice sudo cat /proc/1/maps -vv Estoy tratando de darle sentido a la salida. Puedo ver muchas bibliotecas compartidas asignadas al segmento de mapeo de memoria como se esperaba. 7f3c00137000-7f3c00179000 r-xp 00000000 08:01 21233923
Estoy fuera del ejecutable de destino de gdb y ni siquiera tengo una pila que corresponda a ese destino. De todos modos, quiero dar un solo paso, para poder verificar lo que está sucediendo en mi código de ensamblaje, porque no soy un experto en ensamblaje x86. Desafortunadamente, gdb se niega a...
Leí que supuestamente es posible cambiar el programador de E / S para un dispositivo en particular en un kernel en ejecución escribiendo en / sys / block / [disk] / queue / Scheduler. Por ejemplo, puedo ver en mi sistema: anon@anon:~$ cat /sys/block/sda/queue/scheduler noop anticipatory...
¿Alguien puede explicar qué hace exactamente el "oldconfig" de destino en el archivo makefile del kernel de Linux? Veo que se hace referencia en alguna documentación de compilación pero nunca expliqué qué hace exactamente.
Cuando estaba navegando por el kernel de Linux, encontré una container_ofmacro que se define de la siguiente manera: #define container_of(ptr, type, member) ({ \ const typeof( ((type *)0)->member ) *__mptr = (ptr); \ (type *)( (char *)__mptr - offsetof(type,member) );}) Entiendo lo que...
Estoy trabajando en este controlador que conecta el disco duro a la red. Hay un error que si habilito dos o más discos duros en la computadora, solo el primero hace que se revisen e identifiquen las particiones. El resultado es que, si tengo 1 partición en hda y 1 particiones en hdb, tan pronto...
Golpeé un código c en el kernel de Linux: static struct ctl_table ip_ct_sysctl_table[] = { { .procname = "ip_conntrack_max", .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, }, // ... { .procname = "ip_conntrack_log_invalid", .maxlen = sizeof(unsigned int), .mode =...
Estoy ejecutando Linux 5.1 en un Cyclone V SoC, que es un FPGA con dos núcleos ARMv7 en un chip. Mi objetivo es reunir muchos datos de una interfaz externa y transmitir (parte de) estos datos a través de un socket TCP. El desafío aquí es que la velocidad de datos es muy alta y podría llegar a...
Encontré el código a continuación en https://github.com/torvalds/linux/blob/master/arch/x86/include/asm/atomic.h static __always_inline bool arch_atomic_sub_and_test(int i, atomic_t *v) { return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); } #define arch_atomic_sub_and_test...