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ú

Temas - ukol

#1
Hola, quería saber que opinan ustedes de esta idea.
He buscado artículos pero no encontré demasiado. Los datos están ahí pero no me apetece analizarlos de momento, quizá ustedes lo sepan.
La idea es que los procesadores x86 son muy ineficientes en general intrínsecamente por su diseño y arquitectura.
Mi argumento principal que respalda esto es su complicado juego de instrucciones.
Quizá muchos de ustedes han intentado alguna vez crear un desensamblador de x86, en C por ejemplo, y no es algo trivial ni fácil, el código que necesita es bastante y necesariamente complicado, no hay soluciones demasiado elegantes (a mi juicio).
Eso que nosotros hacemos en C o cualquier otro lenguaje, los microprocesadores tienen que hacerlo pero por medio de hardware, transistores, unidades lógicas. Ello hace que necesiten muchos más transistores que otras arquitecturas, y por tanto más consumo de potencia, o sea, eficiencia (da igual, energética o de potencia de cálculo, no diferencio).
Quizá sea por ello que en los sistemas empotrados x86 desaparece por completo, en general. Se tiende a microprocesadores ARM por ejemplo que consumen muchísimo menos y tienen gran potencia (aunque menos que los x86 que usan mucha más energía y frecuencias).
Es otra de las causas quizá por la que las GPU's, sus núcleos de procesamiento, tampoco usan x86, bueno, esto sería obvio ya que tienen otros usos más específicos, pero bueno, podrían compartir el juego básico, todo microprocesador tiene instrucciones de control, de movimiento de datos, etc.
Me consta también que Intel muchas veces "inteltó" (chiste malo) deshacerse del juego de instrucciones sustituyéndolo por otros, pero no pudo por el mercado.
Y mi atrevida sugerencia: si usáramos el mismo número de transistores y la misma frecuencia (y la misma técnica de última generación litográfica, etc), en un procesador tipo ARM, RISC o lo que sea, que un x86 actual, se superaría enormemente la potencia de cálculo.
El problema es arrastrar esa vieja compatibilidad "hacia atrás" (por la voz inglesa), que sólo obliga al diseño a estar estancado, cargando con viejas funcionalidades obsoletas que lo limitan, es una especie de evolución darwiniana de los procesadores, en que quedan miembros inútiles que antiguamente eran usados (tenía un nombre que ahora no recuerdo, si me lo pudieran recordar... :)

Otra idea que arroja esto, es que Intel debería estar realmente interesado en la pervivencia del modelo de código cerrado, ya que si pudiéramos usar sólo código abierto, no habría tanta dificultad en compilar los sistemas para cualquier máquina.

Se me olvidó mencionar también la idea, de que mucha de la lógica de los x86, se empeña en optimizar este código, de alguna manera estas unidades sobran en otra arquitectura, y habría espacio para otro tipo de lógica, o son complejas, en otra arquitectura serían más simples.

En resumen, más transistores = más potencia, es obvio, pero transitores mejor utilizados, también = a más potencia.
#2
Bueno, el título no es muy informativo, esto es más una curiosidad que otra cosa.
El otro día me acordé de aquellos viejas leyendas, quizá mitos, de antaño, que circulaban por el underground (de aquella se llamaba a esto underground, recuerdan? xD) como el libro del anarkista creo que era uno, que concretamente ponía una receta para crear disquettes explosivos.
Luego estaba aquello de los virus que te 'jodían' el disco duro con un temible 'aterrizaje de pistas'. Luego ves un disco por dentro y te cuentan esas cosas, pero bueno, hay gente que aún se asusta por estas cosas, no estoy seguro pero creo que lo del aterrizaje de pistas ya está superado. Es decir, muchas veces se me fue la corriente con alto uso del disco duro y nunca se me estropeó ni nada. Además aquello de aquellos viejos sistemas en los que existían los comandos de aparcamiento de cabezales, pues no sé, pero los programadores hoy en día ya no nos preocupamos por eso, creo.
Mi pregunta es, un software malicioso, ¿qué tanto puede causar daño físico hoy en día a los modernos aparatos de hardware?
A priori se me ocurren varias cosas:
- Flashear un firmware incorrecto a la bios que impida el arranque del pc (esto me pasó por cacharrear demasiado lejos, perdí aquel ordenador)
- Overclocking por software (creo que ahora se hace por software totalmente, ¿estoy en lo cierto?), quizá controlar la refrigeración, hacer uso extremo de los ciclos y quemar el procesador.
- Mismo para la gpu.
- No sé si la memoria RAM... pudiera sobrecalentarse. Tampoco sé qué control tiene el procesador sobre ella.
- Creo que algunas CPU's tienen un firmware (por llamarlo de alguna manera, una memoria con datos permanentes que se puede sobreescribir) con las microoperaciones de cada instrucción.
- Lo de aterrizaje de pistas, supongo que podría seguir vigente si pudiéramos acceder al firmware del HDD.
- Usar el láser del modo de grabación para destrozar la superficie de discos con información.
¿Qué opinan? ¿Es posible?
#3
Hola, estaba buscando comprar un sensor CMOS como el que llevan las cámaras digitales para percibir imágenes. El caso es que no tengo ni idea de cómo conseguirlo, he buscado y buscado y no he encontrado nada que me convenciera. En las típicas tiendas de DIY y cosas de esas directamente no hay o poca variedad.
Hay webcams realmente baratísimas, aunque he mirado en alguno de sus documentos de descripción del producto y no dicen que chip llevan(que debería ser más barato aún que la propia cámara).
En las webs de fabricantes, Samsung, Aptina, Cmosis, tienen unos distribuidores certificados o algo así, pero estos a su vez no veo la manera de poder comprar como individuo. No entiendo mucho de estos entramados empresariales. Quiero decir por ejemplo, en algunos casos no ponen precio, y tienes que rellenar un formulario donde tienes que poner que empresa eres, en otros casos ves que tienen una cantidad mínima o un gasto mínimo de 500 euros y cosas así.
No tengo ni idea de cómo conseguir una de estas piezas sin tener que comprar la webcam baratita y desarmarla (con el riesgo de que no descrubra que chip es o no tenga documentación en la red, o que no esté apropiada para conectarla a mis deseos).
¿Alguien sabe como hacerse con un cacharro de estos online? ¿Cómo lo hacen las universidades?
Gracias.
#4
Electrónica / VHDL
21 Abril 2012, 19:05 PM
Hola!
A ver si pueden resolver mi duda
Qué puedo llegar a hacer con VHDL? Siempre tuve la duda de si con VHDL puedo llegar a construir un microprocesador, porque es algo que me gustaría. Sólo sobre plano, digamos. Es decir, no conozco muchos proyectos de microprocesadores libres, por que? por que no hay algo estilo linux que haga procesadores económicos y con técnicas modernas?
Mi pregunta es si VHDL resuelve todos los problemas que se plantean al construir un micro, es decir, si todo lo que pueda hacer con VHDL o algun lenguaje de estos se puede trasladar directamente a una oblea de silicio sin más problemas.
Bueno, quizá debería empezar preguntando para que sirve exactamente VHDL...
Saludos.
#5
Hola, estaba intentando reversear este programa y lo he atacado por diversas partes y no se me ocurre que hacer
He probado:
- Debuguearlo en .NET, el caso es que Reflector no lo carga, dice que no es un assembly válido, en realidad es un ejecutable pero en el fondo es un .NET. No estoy muy ducho con estas cosas, es de la versión 2.0 del framework y pude cargar el programa en el Mdbg a pelo, ayudado por olly. Sin embargo no pude meterlo en calimero, ni ningún otro. No se a que se debe esto, es como si fuera un ejectuable que guarda un ensamblado .net dentro. Está claro que si pudiera extraerlo todo  sería mucho más fácil.

- Usa una mochila FAST hardlock de Aladdin, intento atacar por la dll de hlvdd.dll pero me parece muy osado por mi parte. He conseguido menos aún, ni siquiera logro que llame a HlLogin, sólo a Hlinit

- No encontré muchos tutoriales de crackeo bajo .net, algunos sí, pero ninguno cubre mi caso, es decir algo que está como encerrado dentro de un ejecutable.

- No puede ser muy moderna la protección pues el programa es del 2008.

¿Alguna orientación? Sobre todo me interesaría aprender a crackearlo por la parte de .NET, lo de las mochilas me interesa pero no tengo nivel ni la mochila propiamente para experimentar.

Gracias.
#6
Hola
Mi aplicación utiliza un fichero xml cuya última versión está en un server http, cada vez que es actualizado quiero descargármelo pero no siempre pues es voluminoso.
¿Saben de alguna forma para comprobar si un fichero en una web ha cambiado? ¿Se les ocurre alguna forma de hacerlo sin tener que descargarme el fichero ni implementar otro servicio/fichero en el server?
#7
¿Es cosa mía o ha dado muy poco que hablar? Apenas hay referencias en google. ¿Tienen alguna opinión al respecto?
#8
Hacking / Hackeando un juego online
3 Diciembre 2011, 23:16 PM
Tengo unas dudas de como suele ser el proceso de hack de un juego.
Si ya tengo saltada la protección...
¿Cuál debería ser el siguiente paso?
1 - ¿Indetectar el CheatEngine?
2 - ¿Cómo hago una gui dentro del juego para mi hack? ¿Hay alguna librería para este propósito? bien sea D3D o OGL
3 - ¿Y para snifear los paquetes, interceptarlos y modificarlos? ¿Hay algun sniffer o packet editor Open Source o que pueda ser metido en una dll para inyectarlo?
4 - ¿Cómo se puede o suele saber si alguno de los cálculos del juego es client side?
5 - ¿Se me escapa alguna cosa importante?
Creo que eso es todo, por el momento.
Gracias.
#9
Hay alguna manera rápida de atachear un olly a un proceso recién creado con CreateProcess?
Los pasos me los sé, ponemos las flags a CREATE_SUSPENDED en CreateProcess
Luego escribimos en el EP un jmp eip, Con VirtualAllocEx tal vez y con WriteProcessMemory, y si usamos VirtualAlloc pues otra vez
ThreadResume
Atacheamos
Recuperamos la instrucción y listo

Pero es algo tedioso de hacer a mano, ni siquiera lo he hecho porque no merece la pena, e intentado buscar un editor de procesos pero nada que sirva
Hay algun plugin o algo asi? los resultados en Google son negativos al respecto.
#10
Hola, han llegado las vacaciones y me apetece hacer algo.
Había pensado en un sistema operativo, actualmente estoy empezando con otras 2 personas, pero tienen trabajo y no disponen del mismo tiempo que yo. Me canso de mirar la bandeja de entrada vacía sin respuesta a mis ideas jaja.
Busco alguien para poder avanzar, que pueda ser activo como yo y que hagamos así algo este verano, un proyecto que quizá pueda continuarse después.
Alguien que sepa programar, no que esté aprendiendo. Yo me manejo más o menos en muchos lenguajes pero las bases las sé bien. El SO que queríamos hacer sería un microkernel en asm puro, por el simple placer de aprender, por eso en asm, no busco nada práctico. En principio yo deseaba hacerlo en mi propio lenguaje, uno creado especialmente para el SO al igual que el C se hizo para el sistema Unix. Tengo en Java un lexer, parser e intérprete(muy básicos) de un lenguaje basado en pila al estilo Forth, también le he hecho aunque no está nada acabado un sistema de tipos y un typechecker e inferidor de tipos. Hacer un lenguaje también puede ser divertido y enriquecedor, como dicen en Osdev.wiki "lo siguiente más difícil a hacer un lenguaje es hacer un sistema operativo".
Para el sistema operativo, me gustaría hacerlo segmentado y paginado, y con pocos servicios corriendo en espacio privilegiado.
La idea es mantener una comunicación fluída y organizar encuentros, como sesiones de pair programming y debates.
Me vale cualquier lenguaje, no tengo problema en aprender ninguno, de hecho debatíamos si hacer el SO en Go, pero al final no pudo ser, yo tampoco deseaba mucho usarlo aunque lo hubiera propuesto.
Si alguien está interesado en esto mismo y tiene el tiempo y las ganas que se ponga en contacto conmigo. Y ya veremos lo que se hace.

#11
Hacking Wireless / Acceso a un PC en mi WLAN
13 Febrero 2011, 03:17 AM
Hola, ando un poco justo en tema redes y a veces no se buscar lo que quiero, entiendo lo básico pero me falta la nomenclatura para ser preciso hablando y buscando.

Resulta que quiero acceder a otro pc que tengo en mi misma red wifi, ambos los tengo conectados al router, es uno bastante basico, no tiene ni acceso telnet :(

Sin embargo ellos no se ven entre sí, aunque ambos ven el ruter, el caso es que por ejemplo cuando hago ping de uno a otro y corro el sniffer, mi pc hace peticiones ARP de la direccion IP del otro, pero si no se ven no puede funcionar, de hecho repite una y otra vez la petición ARP sin respuesta, asi que lo que querría es que los paquetes salieran directamente IP, no Ethernet(que es para lo que es el ARP) sólo que los enviase al router y éste los enrutase a mi otro pc. Sin embargo no sé si esto se puede hacer ni, si existe, cómo se llama, y menos cómo puedo hacerlo. Quizá todo sea porque mi adaptador wireless es muy barato también, sin embargo el router debería encargarse de estas cosas.

Resumiendo quiero que el router enrute también las direcciones de la WLAN, esto no se si ya lo hace, lo que necesito es saber como decirle al sistema operativo(Windows) que se hace así(o sea que mande todos los paquetes al router)

A ver si me pueden ayudar, gracias de antemano
#12
Quiero simular que se escriben cosas y se clickean otras pero en background en una aplicación flash, probé enviando a la ventana de firefox(la más interior en la jerarquía) con SendMessage-WM_KEYDOWN, WM_CHAR, WM_KEYUP, también le envié primero SETFOCUS y MOUSEMOVE y CLICK(para seleccionar el campo de texto flash) sin resultado. Los mensajes que recibe de mi aplicación engaño son casi los mismos que cuando lo espío haciéndolo a mano.
¿Se puede hacer esto de alguna manera por ejemplo con Notepad? encontré uno en la web que lo hace pero haciéndola ventana activa, que es justo lo que no quiero.
Es para un bot para un juego.
Gracias
#13
Hola, busco un compañer@(o tal vez 2) para aprender a programar juegos. Mi idea es colaborar para aprender más rápido y hacer cositas, pero sin grandes pretensiones, sólo para compartir ideas y por el placer de aprender(no quiero montar una asociacion ni empresa al menos de momento). Cualquier plataforma me vale, me manejo bien en cualquier lenguaje(vengo de jugar mucho con programación funcional y logica), pero no tengo mucha idea del tema juegos. Pido esto mismo que yo aporto: alguien que sepa programar bien, que sepa hacer algoritmos y conozca las estructuras de datos, etc. que sepa programar en estructurada, y en OO, que se maneje con recursividad, etc(o sea que sepa programar, sólo lo estaba dejando bien claro). Y que desee lo mismo, tambien pido buen rollo imprescidible y que sea buena gente con las 4 virtudes cardinales... es coña :). Alguien que le guste esto tambien por el hecho de saber y enriquecerse(de conocimientos :P) y de paso hagamos amistad. Yo tenia idea de empezar con java, estoy jugando con Slick 2D y Nifty pero sin sacar nada(solo he hecho que dibuje un tablero de hexagonos y moverme por ellos con el raton o las teclas), no me importaria C#+XNA(tengo una xbox) o java con cualquier otra cosa, tal vez Unity3d o alguno para hacer webgames con javascript y php, preferiría no usar Flash/AS ni C/C++ ni Silverlight ni JavaFx(pero no dije nada de Objective C aunque no tengo Mac ni Iphone). Quisiera dedicarle como máximo 2 horas al dia. Y puedo todos los dias. Sería cosa de discutir cada día, programar en conjunto, decidir y lo que se nos ocurra. Espero que lo lea mucha gente. Contáctame!, te espero.
Feliz Año a todos