Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Eternal Idol

#851
Como te decia hay instrucciones modernas especificas, estas estan optimizadas para hacer el pasaje de modo Usuario a modo Kernel.

http://www.summitsoftconsulting.com/syscallopts.htm
http://wiki.osdev.org/SYSENTER
#852
Si las usa/ba, a bajo nivel en versiones/procesadores mas antiguos usan la interrupcion 0x2E, hoy en dia (creo que en Linux tambien) se usan instrucciones especificas como systenter/syscall para pasar a modo Kernel.

http://wiki.osdev.org/SYSENTER

No deberias llamar a esta interrupcion (en produccion) ya que los numeros de los servicios varian entre diferentes versiones de Windows, en la NTDLL.dll podes ver como se hace ese trabajo de enrutado.

Ejemplo:
ntdll!NtCreateFile:
mov r10,rcx
mov eax,052h ;numero de servicio
syscall
ret
#853
¿Ya miraste el archivo creado o no?
#854
infor = (sensor *)shmemo_sensor.getPointer();
infor->temp = 30;

Se supone que la memoria es compartida en cualquier proceso que escribas el valor al leer desde los otros lo obtendran, hay en realidad una sola direccion RAM que contiene cada valor y esta es compartida por mas que haya diferentes direcciones virtuales en cada proceso. No te olvides de sincronizar el acceso.
#856
ASM / Re: detectar pulsacion tecla
9 Diciembre 2015, 09:15 AM
Depende del S.O. en cuestion, si es uno moderno podes usar su API o incluso la libc, sino siempre te quedaran los servicios del S.O. o la BIOS.
#857
De nadas  ::)
#858
Programación C/C++ / Re: Libtiff
4 Diciembre 2015, 18:53 PM
¿Tenes la imagen marbles.tif ahi (bajandola de http://netghost.narod.ru/gff/sample/images/tiff/index.htm me funciona el programa)? Igual siempre deberias comprobar el resultado de TIFFOpen y si retorna 0 no hacer nada con img.
#859
Te falta GENERIC_READ al llamar a CreateFile, por eso CreateFileMapping falla (le pedis READ y WRITE con PAGE_READWRITE y solo tenes WRITE) y GetLastError es 5 (ERROR_ACCESS_DENIED). Simpre mira los valores de retorno y el last error.
#860
A un nivel mas alto, con un depurador de modo Kernel se puede ver bastante.