viernes, 28 de enero de 2011

¿Para cuando los ordenadores orientados a objetos?

Actualmente un ordenador tipo PC básicamente se apoya en su CPU y su GPU, cada vez más potentes, con, como mucho, ayuda del chipset. Al estar completamente a la vista todo el sistema, cada vez que se cambia un componente (por ejemplo, la GPU) hay que crear nuevos controladores para que el sistema operativo A pueda acceder al nuevo componente, pero para el S.O. B hay que hacer otro controlador distinto.

Esa es una manera muy poco práctica de enfrentarse a algo que cambia muy rápido, tanto entre distintas marcas como dentro de una misma marca.

Sería mucho más práctico que cada subsistema entendiera un lenguaje común. Dicho de otra manera, que el sistema gráfico pudiera recibir directamente y sin mediación de ningún controlador instrucciones en OpenGL, por ejemplo. Si se hiciera de esta manera, el cambiar los componentes de un ordenador sería trivial de cara al S.O., ya que le daría igual qué hay por dentro del sistema concreto y sólo le interesaría de qué manera se puede comunicar.

La idea sería la siguiente:

- Gráficos: OpenGL
- Sonido: OpenAL
- Red: OpenPlay (p.e.)
- Almacenamiento: CODA (p.e.)
- ...

La parte de almacenamiento convertiría las unidades en servidores de ficheros. Habrá quien diga ¿y cómo se harían las particiones? Personalmente encuentro que se podrían sustituir por cuotas de disco, mucho más flexibles. Después de todo, cuando se rompe un disco no se rompe sólo una parte normalmente.

En definitiva, el ordenador pasaría a ser un sistema de objetos que se comunican. Esto podría quitar un poco de rendimiento, pero simplificaría mucho la creación de programas y SS.OO. Después de todo, sería quitar la necesidad de crear controladores para cada S.O., con lo que se aligerarían y llevarían a una situación en la que no importaría qué S.O. está instalado, ya que todos podrían acceder desde el primer momento a toda la potencia del sistema.

No hay comentarios:

Publicar un comentario