# [Off Topic] Sugerencias de proyecto

## ekz

Hola a todos

Esta vez recurro a ustedes por lo siguiente: en la asignatura "Arquitectura de computadores y Sistemas Operativos" de la universidad, debemos realizar un proyecto para finalizar el semestre, el problema es que no se me ocurre ningún tema   :Laughing:  . Por eso quería ver si alguno de ustedes podría sugerirme o aconsejarme alguno, siempre enfocado a la arquitectura o a los SOs.

Para ponerlos en contexto, en el ramo hemos armado y desarmado PCs y notebooks, instalado algunos SOs, montado RAIDs 0 y 1 (en windows), entre otras cosas. Con mi grupo teníamos la idea de montar un cluster, pero el profesor dijo que no, por que armar un cluster en linux "era muy fácil"   :Crying or Very sad:  .

También pensamos en hacer una de esas instalaciones de 200+ sistemas operativos en un solo PC, pero no me termina de convencer.

Ese es el panorama, espero que puedan sugerirme algún tema.

¡Saludos! Gracias de antemano

----------

## edgar_uriel84

Yo en arquitectura de computadoras recuerdo que simulé un CPU, mi maestro me puso usar uno de esos programas solo para Windows (Altera Max Plus, que realmente te altera  :Very Happy: ) para hacer la simulación. 

Sin embargo, El trabajo estuvo muy chido y aprendí mucho, algunas cosas por desgracia ya las olvidé también. Creo que vale la pena, eso de hacer una ALU, los registros y demás ver como maneja el procesador la información esta muy bien. Eso si, lleva su tiempo.

Tampoco te espantes, yo hice un procesador RISC, un MIPS para ser más exacto y el número de instrucciones fueron pocas, puedes hayar mucha información técnica en internet para un proyecto así.

Por su parte en sistemas operativos, no tuve proyecto final, solo trabajos chiquitos, una red NFS+NIS, un cluster y muchos ejercicios sobre como trabaja un sistema, pero eran programitas muy sencillos, 10 o 20 líneas en C, lo último que hicimos fue sobre sockets, hacer mi propio ping, eso es fácil pero esta chido también.

----------

## natxoblogg

yo estoy pendiente de proyecto de final de carrera, pero un compañero mio se está currando un buen proyecto de final de master. Trata sobre redes neuronales, aunque el nombre no es el más apropiado (creo yo), basicamente consiste en tener varios ordenadores multoprocesadores, en los que se compilan ciertas aplicaciones en cada uno, distribuyendo en x hilos cada programa. La faena consiste en intentar predecir cuando un hilo (compilado en una maquina) le hará falta a otra, que compila otro hilo del mismo programa. Me comento que es una faena de mucho cuidado, pero que habian conseguido avances gracias a una arquitectura maestro esclavo, me explico, los hilos se van colocando en el maestro que basicamnete será una cola de procesos con prioridades,(no se que clase de heap), pero el tema esta que cada host envia ciertas cabeceras al maestro con lo que este puede saber que hilos se estan complilando o acabando de compilar. Al mismo tiempo los que se empiecen a compilar darán otro aviso, del hilo que quiere compilar. Es una movida muy gorda ya que el maestro sera el que distribuya las dependencias entre hilos, si es que las hay para un mismo programa. Lo que me dejo bastante loco es que mediante un bus de campo (el Can) se permite que se elija el master en el caso que el maestro falle repetidos intentos.

Es una  MOVIDA!!!, pero bueno le intentare preguntar sobre el tema a ver si me entero de algo más. Ya que está realmente guapo.

----------

## gringo

@natxoblogg : no sé si te he entendido bien pero le habéis echado un vistazo a como lo hace icecream ? Es básicamente lo que tu comentas, un servidor central que distribuye en función de la carga de los nodos. Leí hace tiempo que alguien se había currao un sistema de notificaciones basado en avahi / libnotify pero no tengo ni idea de si esto está disponible o no.

http://en.opensuse.org/Icecream

igual el código o la estrcutura de icecream os dá alguna idea.

@ekz : no sé si se ajusta a lo que os pide tu profesor pero podríais hacer una mini-distro que cargara desde una memoria usb para una función en concreto. No sé. proxy de la red, NAS, recuperación de datos automatizada o algo similar. Sólo lo comento porque con gentoo tendrías muchas facilidades asi que podrías aplicar tus conocimientos de gentoo a un proyecto real y de paso aprender algo mas.

a ver si os sirve de algo.

saluetes

----------

## ekz

Muchas gracias a todos por sus ideas/propuestas. Las comentaremos con mi grupo de trabajo.

¡Saludos!

----------

## natxoblogg

 *gringo wrote:*   

> @natxoblogg : no sé si te he entendido bien pero le habéis echado un vistazo a como lo hace icecream ? Es básicamente lo que tu comentas, un servidor central que distribuye en función de la carga de los nodos. Leí hace tiempo que alguien se había currao un sistema de notificaciones basado en avahi / libnotify pero no tengo ni idea de si esto está disponible o no.
> 
> http://en.opensuse.org/Icecream
> 
> igual el código o la estrcutura de icecream os dá alguna idea.
> ...

 

Pues Grácias por la nota, no tenia idea de que ya existia algo asi, y en linux, La movida que me parecio de lo más interesante fué la arquitectura de protocolo maestro esclavo, que ellos solos se pongan de acuerdo para ver quién har,a la función de master cuando este a caido por lo que sea, me parece algo asombroso, aunque la idea creo que surgió de los procesadores CELL, pero bueno, como dije veré a ver si me informo más sobre el tama.

----------

## ekz

Hola a todos

Hoy día presentamos nuestro proyecto con mis amigos, nos decidimos por la mini-distribución usb, claro que basada en ubuntu.

Con estos 3 enlaces obtuvimos toda la información necesaria:

http://www.dabax.net/distrousb

http://staredsi.wordpress.com/2008/08/05/hacer-un-debootstrap-de-ubuntu-hardy/

http://man-linux.awardspace.com/?p=20

Y aquí les dejo nuestra presentación en sí, el material de apoyo que usamos:

http://ekz4.comze.com/presentacion.pdf

Como referencia, otros proyectos realizados fueron, un cluster con Windows 2003 (recordar que en linux es "muy fácil", por eso la única opción era montarlo con windows), un RAID 0+1 con 4 discos duros, y 2 temas de investigación: procesadores y arquitecturas paralelas.

¡Saludos a todos!

----------

