Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

357
Vistas
Escribir en NVRAM a través de unsigned char* y unsigned int*

Estoy desarrollando bajo una placa integrada de Linux. Tengo una NVRAM donde almacena todos mis datos sensibles. Logré acceder a él a través de mmap /dev/mem, ahora el problema es escribir, a través de un puntero char * sin firmar no hay problema, pero necesito escribir una estructura completa, por ejemplo:

 struct t_game_data { int energy; int bet; int coin; };

después de mapear mi memoria con:

 unsigned char* mem_ptr = (unsigned char*)mmap((void *)0x0, 512*1024, PROT_READ | PROT_WRITE,MAP_SHARED, fd, 0x90600000);

Puedo escribir en NVRAM sin problemas a través de mem_ptr:

 *mem_ptr++ = 1; *mem_ptr++ = 2; *mem_ptr++ = 3; mem_ptr++; *mem_ptr++ = 4; // What i get reading NVRAM is(NVRAM is filled with 255 by default) 1 2 3 255 4

Pero si trato de hacer algo como esto:

 t_game_data* data = (t_game_data*)mmap((void *)0x0,512*1024, PROT_READ |PROT_WRITE, MAP_SHARED, fd, 0x90600000);

Cuando trato de usar datos para escribir, no puedo escribir en NVRAM correctamente, así que traté de usar un int * sin firmar solo para entender el problema y obtuve algo realmente extraño:

 unsigned int* mem_ptr_int = (unsigned int*)mmap((void *)0x0, 512*1024, PROT_READ | PROT_WRITE,MAP_SHARED, fd, 0x90600000); *mem_ptr_int++ = 1; *mem_ptr_int++ = 2; *mem_ptr_int++ = 3; mem_ptr_int++; *mem_ptr_int++ = 4; // What i get reading NVRAM is(NVRAM is filled with 255 by default) 0 255 255 255 0 255 255 255 0 255 255 255 255 255 255 255 0

Tal vez haya algún problema con el direccionamiento. Espero que no sea un límite físico de hw;

Gracias de antemano.

over 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda