Vistas de página en total
lunes, 30 de noviembre de 2009
bluetooth con java
Aqui les presento las clases cliente y servidor para bluetooth :D
prometo despues, explicarlo, les parece?
Cliente
Servidor
Creed - With Arms Wide Open
Me hace recordar la venida de mi nuev@ sobrin@, :D pronto te conocere.
Bienvenid@ sobrin@
viernes, 27 de noviembre de 2009
por favor ... nachOS
Nachos : http://es.wikipedia.org/wiki/NachOS
domingo, 25 de octubre de 2009
viernes, 16 de octubre de 2009
Exokernel
- Nos proporcionar la comunicación entre los programas informáticos y el hardware.
- Encargado de Gestionar de los distintos programas informáticos o tareas de una de un computador.
- Gestiona del hardware como lo son la memoria, procesador, periférico, forma de almacenamiento de la información entre otras.
- Núcleos Monolíticos
- Micro núcleos
- Núcleos Híbridos
- Los Exonucleos
Historia:
El termino exonucleo fue iniciado a finales 1994, pero aun exonucleos no son usados en ningun sistema operativo popular. Un sistema operativo que es creado por exonucleo es Nemesis, que fue creado en la universidad Cambridge,la Universidad de Glasgow, Citrix Systems y el Instituto Sueco de Informática,El MIT desarrollo el sistema operativo ExOS.
Definicion:
Tambien conocido por sistemas operativos verticalmente estructurados.
Radica en reducir la función del kernel del sistema logrando multiplexar de los recursos físicos. Un exokernel provee a las aplicaciones la misma interfaz que provee el hardware, con ello no se necesita de una virtualización ni abstracción del mismo. Son de naturaleza sistemas Centralizados.
Un exonúcleo elimina la noción de que un sistema operativo debe proveer abstracciones en las que se construyen las aplicaciones.
Como trabaja:
• Las aplicaciones solicitan direcciones de memoria especifica como por ejemplo bloque de de disco.
• El nucleo se va asegurar que el recurso esta disponible para su uso, y el permiso que dispone.
• Contiene 3 Capas Capa de Exonucleo (núcleos de varios sistemas operativos corriendo sobre exonúcleo), la capa LibOS corriendo sobre LibOS, la Capa de aplicaciones.
• El sistema es realmente resistente y flexible, debido que una caracteristica exonúcleo, es impedir que haya errores de permisos al hardware y problemas entre los LibOS.
Caracteristicas
• Su tamaño es reducido.
• (Cualquier persona puede administrar los recursos)El desarrollador podrá decidir que rendimiento se le dara al hardware, por ejemplo un disco, una aplicación podrá especificar una región o un bloque del disco.
• Se encargara de multiplexar y proteger recursos.
• No se encuentra en memoria, sino que fuera de bibliotecas.
• Su función esta restringida a proteger y multiplexar recursos.
• Exokernel segura exportación de recursos porque separa el manejo de la memoria virtual, el sistema archivos etc, esto se encuenta en la biblioteca libOS y esta facilmente puede ser accesada.
Imagen:
http://dzipiri.blogspot.com/2008/09/exokernel-exonucleo-vs-microkernel.html
domingo, 4 de octubre de 2009
miércoles, 23 de septiembre de 2009
Configuracion de VirtualBox
Virtual Box
viernes, 18 de septiembre de 2009
Tux se va de vacaciones
el quiere ayudar a noble causa el quiere ayudar a dar énfasis al demonio de tasmania es nativo de Australia que se encuentra en peligro de extinción debido a un tumor facial que se transmite.
El kernel 2.6.29 que sera liberado en forma oficial, y el commit que reemplaza a Tux por Tuz ya se hizo en el repositorio oficial del kernel.
El autor( Rusty Russell) dijo:
Tux se toma tres meses sabáticos para trabajar como barbero, asi que Tuz se queda con nosotros.
martes, 15 de septiembre de 2009
Linux Counter
jueves, 10 de septiembre de 2009
Killer Tux
Vean el impactante final
miércoles, 9 de septiembre de 2009
Plug and Play
Parte Dos:Semaforos
domingo, 6 de septiembre de 2009
Parte Uno: Semaforos
Semaforos by Lucita287 is licensed under a Creative Commons Reconocimiento 3.0 Unported License.
miércoles, 2 de septiembre de 2009
Cuando Sea Grande Quiero Ser Como Tux:
martes, 1 de septiembre de 2009
La Vida De Tux- PARTE UNO
Esta es la foto del nacimiento de tux. Aunque no lo crean, tux como cualquier otro pinguino nacio de un huevo.
Tux crecio como cualquier otro pinguino, al cuidado de su padre.
A tux se le podia encontrar en fiestas.
Tux se enamoro de una linda pinguina.
Tux vive y piensa como nosotros
tux necesito aprender windows, pero que paso ahi ...
Espera la continuacion de esta historia la proxima semana.
Para saber la historia de tux.
martes, 25 de agosto de 2009
De Donde Salio Tux?
yo antes y despues
Yo antes, sin desvelos recien entrando a la universidad.
Feliz Cumpleaños Linux
Mi tux, no se podia quedar sin felicitar
A Linux por su cumpleaños:
Hoy cumple 18 años :) 25 agosto del 2009
felicidades Linux
Como Desistalar el Open JDK en LINUX e Instalar JDK
Pero a la hora de desarrollar animacion en java3d o applets y otros.
No nos funciona muy bien.
Asi que en 2 distribuciones mostrare como desistalar el open jdk:
Antes que nada podemos bajar el JDK en esta pagina:
http://java.sun.com/javase/downloads/index.jsp y bajaremos un archivo asi:
jdk-6u16-linux-i586.bin
En Ubuntu:
sudo apt-get remove --purge openjdk-6-jdk
y desde repositorios podemos instalar escribiendo:
sudo apt-get install sun-java6-jdk
y solo actualizamos escribiendo:
sudo update-alternatives --config java
bueno regreso mas tarde y explico en fedora...
En Fedora:
viernes, 7 de agosto de 2009
Java 3D - moving camera
Pues en Arqui2 siempre dejan un proyecto de JAVA3D que por cierto no he terminado, xD siempre que he usado java3d ha sido un dolor de cabeza mover la camara aqui les va un ejemplo
Ejemplo Del Movimiento De La Camara API JAVA3D:
Movimiento Que la Camara sigue un Personaje
package muytux;
import com.sun.j3d.utils.geometry.ColorCube;
import com.sun.j3d.utils.universe.SimpleUniverse;
import java.awt.*;
import javax.media.j3d.*;
import javax.swing.JFrame;
import javax.vecmath.*;
public class TuxFrame extends JFrame{
public TuxFrame(){
setLayout(new BorderLayout());
GraphicsConfiguration config =
SimpleUniverse.getPreferredConfiguration();
setSize(400, 400);
Canvas3D canvas3D = new Canvas3D(config);
add("Center", canvas3D);
BranchGroup scene = new BranchGroup();
SimpleUniverse simpleU = new SimpleUniverse(canvas3D);
simpleU.getViewingPlatform().setNominalViewingTransform();
scene.addChild(TuxEscenario(simpleU));
simpleU.addBranchGraph(scene);
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setVisible(true);
}
/*El fondo*/
Shape3D createLand(){
LineArray landGeom = new LineArray(44, GeometryArray.COORDINATES
| GeometryArray.COLOR_3);
float l = -50.0f;
for(int c = 0 ; c < 44d ; c+=4d){
landGeom.setCoordinate( c+0, new Point3f( -50.0f, 0.0f, l ));
landGeom.setCoordinate( c+1, new Point3f( 50.0f, 0.0f, l ));
landGeom.setCoordinate( c+2, new Point3f( l , 0.0f, -50.0f ));
landGeom.setCoordinate( c+3, new Point3f( l , 0.0f, 50.0f ));
l += 10.0f;
}
Color3f c = new Color3f(0.1f, 0.8f, 0.1f);
for(int i = 0; i < 44; i++) landGeom.setColor( i, c);
return new Shape3D(landGeom);
}
/*El personaje*/
public TransformGroup TuxPersonaje(){
Transform3D tr=new Transform3D();
tr.rotY(Math.PI/4);
TransformGroup tuxtr=new TransformGroup(tr);
tuxtr.addChild(new ColorCube(.4));
return tuxtr;
}
/*El Escenario*/
public TransformGroup TuxEscenario(SimpleUniverse simpleU){
//CONTENEDOR
TransformGroup Tuxcontent = new TransformGroup();
TransformGroup Tuxobj = new TransformGroup();
Tuxcontent.addChild(Tuxobj);
Tuxcontent.addChild(this.createLand());
TransformGroup Tuxtrans=new TransformGroup();
Tuxtrans.addChild(TuxPersonaje());
Tuxcontent.addChild(Tuxtrans);
TuxBehaior TuxBe=new TuxBehaior(simpleU,Tuxtrans);
Tuxcontent.addChild(TuxBe);
//ILUMINACION
BoundingSphere bounds = new BoundingSphere();
DirectionalLight lightD = new DirectionalLight();
lightD.setDirection(new Vector3f(0.0f,-0.7f,-0.7f));
lightD.setInfluencingBounds(bounds);
Tuxcontent.addChild(lightD);
AmbientLight lightA = new AmbientLight();
lightA.setInfluencingBounds(bounds);
Tuxcontent.addChild(lightA);
//FONDO BLANCO
Background background = new Background();
background.setColor(1.0f, 1.0f, 1.0f);
background.setApplicationBounds(bounds);
Tuxcontent.addChild(background);
return Tuxcontent;
}
public static void main(String[] args) {
new TuxFrame();
}
}
Ahora un Behaior para Controla el movimiento
package muytux;
import com.sun.j3d.utils.universe.SimpleUniverse;
import java.awt.AWTEvent;
import java.awt.event.KeyEvent;
import java.util.Enumeration;
import javax.media.j3d.*;
import javax.vecmath.*;
public class TuxBehaior extends Behavior{
TransformGroup Camara;
TransformGroup Node;
private WakeupOnAWTEvent trigger;
Integer Zoom=3;
private void TuxPosicion(){
Node.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
Transform3D tr1 = new Transform3D();
tr1.set(new Vector3d(0f, 0.6f, +Zoom));
Camara.setTransform(tr1);
tr1.set(new Vector3f(0f, 0.45f, 0f));
Node.setTransform(tr1);
}
TuxBehaior(SimpleUniverse su,TransformGroup Node){
this.Node=Node;
this.Camara=su.getViewingPlatform().getViewPlatformTransform();
trigger=new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED);
TuxPosicion();
setSchedulingBounds(new BoundingSphere( new Point3d( 0.0, 0.0, 0.0 ), 100.0 ));
}
public void initialize() {
this.wakeupOn(trigger);
}
public void processStimulus(Enumeration criteria) {
while (criteria.hasMoreElements()) {
WakeupCriterion wakeup = (WakeupCriterion) criteria.nextElement();
if (wakeup instanceof WakeupOnAWTEvent) {
AWTEvent[] arr = ((WakeupOnAWTEvent) (wakeup)).getAWTEvent();
KeyEvent ke = (KeyEvent) arr[0];
switch (ke.getKeyCode()) {
case KeyEvent.VK_UP:
TuxArriba();
break;
case KeyEvent.VK_DOWN:
TuxAbajo();
break;
case KeyEvent.VK_LEFT:
TuxIzq();
break;
case KeyEvent.VK_RIGHT:
TuxDer();
break;
}
}
}
wakeupOn(trigger);
}
private void TuxArriba(){
Transform3D tr1=new Transform3D();
Transform3D tr2=new Transform3D();
this.Camara.getTransform(tr2);
Vector3f vec=new Vector3f();
vec.z=-0.1f;
tr1.set(vec);
tr2.mul(tr1);
this.Camara.setTransform(tr2);
vec.z=-0.1f;
this.Node.getTransform(tr2);
tr1.set(vec);
tr2.mul(tr1);
Node.setTransform(tr2);
}
private void TuxAbajo(){
Transform3D tr1=new Transform3D();
Transform3D tr2=new Transform3D();
this.Camara.getTransform(tr2);
Vector3f vec=new Vector3f();
vec.z=+0.1f;
tr1.set(vec);
tr2.mul(tr1);
this.Camara.setTransform(tr2);
vec.z=+0.1f;
this.Node.getTransform(tr2);
tr1.set(vec);
tr2.mul(tr1);
Node.setTransform(tr2);
}
private void TuxIzq(){
Transform3D tr1=new Transform3D();
Transform3D tr2=new Transform3D();
tr1.rotY(Math.PI/20);
this.Node.getTransform(tr2);
tr2.mul(tr1);
this.Node.setTransform(tr2);
Vector3f vec=new Vector3f(0f,0f,-this.Zoom);
tr1.set(vec);
this.Camara.getTransform(tr2);
tr2.mul(tr1);
tr1.rotY(Math.PI/20);
tr2.mul(tr1);
vec=new Vector3f(0f,0f,this.Zoom);
tr1.set(vec);
tr2.mul(tr1);
Camara.setTransform(tr2);
}
private void TuxDer(){
Transform3D tr1=new Transform3D();
Transform3D tr2=new Transform3D();
tr1.rotY(-Math.PI/20);
this.Node.getTransform(tr2);
tr2.mul(tr1);
this.Node.setTransform(tr2);
Vector3f vec=new Vector3f(0f,0f,-this.Zoom);
tr1.set(vec);
this.Camara.getTransform(tr2);
tr2.mul(tr1);
tr1.rotY(-Math.PI/20);
tr2.mul(tr1);
vec=new Vector3f(0f,0f,this.Zoom);
tr1.set(vec);
tr2.mul(tr1);
Camara.setTransform(tr2);
}
}
jueves, 6 de agosto de 2009
FirmWare
FIRMWARE -PROGRAMACION EN FIRME-
En Arquitectura de computadoras se puede localizar el firmware entre las capas de abstracion que son: Hardware, Firmware, Kernel y S.O
Que Es FIRMWARE:
El firmware se puede localizar en grabado en la memoria del tipo no volátil como lo es ROM, EEPROM, FLASH y esta representa un bloque de instrucciones logicas siendo la forma a más bajo nivel de controlar cualquier dispositivo electrónico son propios del fabricante del dispositivo y encargado ejecutar correctamente dichas órdenes.
Ejemplos de estos dispositivos serian teléfonos móviles, cámaras digitales, computadoras, iPod, control remoto de televisión, discos duros, router, impresoras, cualquier dispositivo electrónico.
Para Que Sirve:
El firmware es cargado desde el sistema de arranque del dispositivo.
Es la capa intermedia entre Dispositivo electrónico y las instrucciones externas recibidas, va facilitar la comunicación del Usuario y el dispositivo. Estas instrucciones van a variar dependiendo el dispositivo por ella la actualización del firmware se encuentra dentro de la pagina del dispositivo.
Cuando Es Bueno Implementarlo:
Este le dará funcionamiento a nuestro dispositivo, cuando instalamos por primera vez un dispositivo y trae un disco adjunto con los drives disponibles o también cuando hay una nueva versión del firmware desde la página y trae mejoras en características a la versión que tengamos instalada.
Por Ejemplo si el BIOS de nuestra computadora no es compatible con un dispositivo, podremos descargar la actualización del BIOS de nuestra computadora desde la pagina oficial de la tarjeta madre.
Ventajas/ Desventajas de Actualizar el Firmware:
Es recomendable que no sea actualizado a menos que presente un mal funcionamiento o agregue nuevas funcionalidades.
Ventajas:
Eliminación de errores.
Para agregar características nuevas de nuestro dispositivo.
Mejorar compatibilidad.
Desventajas:
De no ser la versión correcta del dispositivo al tratar de actualizar el firware podríamos arruinar completamente la funcionalidad de nuestro dispositivo dado que es grabado sobre la memoria ROM/EEPROM. De ser interrumpida la instalación del Firmware también provocara que llegue a un estado inservible.
Siguiendo el mismo ejemplo del BIOS si quisiéramos actualizarlo, he encontrado dos maneras para instalarlo:
Algunos BIOS contienen la opción de ser actualizado por medio de un archivo binario grabados en diskettes, y desde el BIOS se inicia la actualización ahí verifica que sea la versión correcta y tenga compatibilidad con el dispositivo posteriormente reinicia.
Otra forma es descargar un programa directamente de la pagina del proveedor de la tarjeta madre, se necesitara correr desde DOS el ejecutable este igualmente verificara el nuevo software a instalar, para continuar esperando una confirmación de parte del usuario, cargando la información y siendo reiniciada la computadora.
Links:
Links Para Actualizacion Del FirmWare de Iphone/Ipod:
http://www.actualidadiphone.com/tag/firmware/
Links Como Actualizar el BIOS de nuestra computadora:
http://www.trucoswindows.net/tutorial-82-TUTORIAL-Como-actualizar-nuestra-BIOS.html
Video Actualizar el FirmWare Del Nintendo DS
http://www.youtube.com/watch?v=zolxsNVAtzw&feature=related
Links Consultados:
http://es.wikipedia.org/wiki/Firmware
http://en.wikipedia.org/wiki/Firmware
http://es.wikipedia.org/wiki/BIOS
http://www.alegsa.com.ar/Dic/firmware.php
Esta obra está bajo una licencia Creative Commons.