miércoles, 12 de septiembre de 2012

Benchmark

Un benchmark es un conjunto de procedimientos (programas de computación) para evaluar el rendimiento de un ordenador. Hay cuatro categorías generales de pruebas de comparación :
  • Pruebas aplicaciones-base (application-based) las ejecuta y las cronometra.
  • Pruebas playback (playback test), las cuales usan llamadas al sistema durante actividades especificas de una aplicación(Ej: Llamados a gráficos o uso del disco) y las ejecuta aisladamente.
  • Prueba sintética (synthetic test) , la cual enlaza actividades de la aplicación en subsistemas específicos.
  • Prueba de inspección (inspection tests), la cual no intenta imitar la actividad de la aplicación, sino que las ejecuta directamente en los subsistemas específicos.

Los test de aplicaciones base entregan la mejor forma de medir el rendimiento completo de el sistema en el mundo real.
El programa Winstone de Zdnet, ejecuta mas de una docena de las aplicaciones mas populares en el ambiente Windows, es un ejemplo de este tipo de comparadores.
Donde sea factible la tecnología playback le da la manera mas real de medir subsistemas individuales en aislación.
El programa WinBench de ZDnet utiliza la tecnología playback para probar gráficos, Cd-rom y subsistemas de disco duro, también corre cientos de otras pruebas en áreas especificas del computador.
Los test Synthetic continúan en el estado de medición del rendimiento es por eso que winbench usa las pruebas de procesadores.
Los test de inspección tienen su lugar verificando el comportamiento libre de fallas y midiendo rendimiento operación por operación, por esto se incluye el test de inspección en el winbench.

Dhrystone

Dhrystone es una medida de rendimiento de la CPU en entero, expresado en Millones de instrucciones por segundo(MIPS).
El Dhrystone benchmark es ampliamente usado en la industria de las computadoras como una medida de rendimiento, Wintune (programa benchmark) usa la versión modificada del Dhrystone que mantiene sus datos en el almacenador del programa. Esto permite al benchmarks trabajar apropiadamente en múltiple threads en Windows NT.
El Dhrystone estándar , fue originalmente diseñado para un único ambiente (single-threaded), manteniendo alguno de sus datos en variables estáticas globales.
El Dhrystone es un benchmark sintético, diseñado para contener ejemplos representativos de las operaciones normalmente requeridas por las aplicaciones. Estas no calculan el resultado de ningún tipo, pero hacen enlaces de complicadas secuencias de instrucciones usadas por las aplicaciones.
El resultado del Dhrystone es determinado por el tiempo que toma la medición para ejecutar esta secuencia de instrucciones .
La aritmética del entero simple, decisiones lógicas, y accesos de memoria son las actividades dominantes de la CPU en la mayoría de los programas Windows.
El Dhrystone benchmark hace un uso intensivo de estas áreas. Por lo tanto el Dhrystone no tiene suficiente código de programa o acceso suficiente a las locaciones de memoria para simular la actividad de la mayoría de los programas reales.
Su lugar de trabajo de código y datos puede generalmente ser mantenido en el cache de la CPU, con lo cual resulta con un alto rendimiento.
Desde que el Dhrystone no ofrece una buena indicación del rendimiento de memoria, Wintune tiene un set separado de prueba de memoria.

Whetstone

Whetstone es una medida de rendimiento de la CPU en punto flotante, expresado en Millones de operaciones de punto flotante por segundo (MFLOPS).
El Whetstone benchmark es ampliamente usado en la industria de la computación como una medida de rendimiento, Wintune usa una versión modificada del Whetstone que mantiene sus datos en el programa de almacenamiento. Esto permite al benchmarks trabajar apropiadamente en múltiples threads en Windows NT.
El Whetstone estándar, fue originalmente diseñado para un ambiente único, manteniendo alguno de sus datos en variables estáticas globales .
La aritmética del punto flotante es la mas significativa en programas que requieren FPU . Estos son en su mayoría ingeniería científica, de estadísticas, y programas de ayuda de diseño en computación. Es también un pequeño componente en hoja de cálculo, dibujo y pintado de programas. (Aunque la hoja de calculo trabaja con números también tiene una mejor presentación en pantalla.) Los programas procesadores de texto típicamente no hacen ningún computo en punto flotante. El Whetstone hace mucha aritmética del punto flotante un poco de acceso de memoria, y un poco la aritmética del entero.

Usando el rendimiento para elegir el sistema correcto

¿Porqué considerar el Rendimiento?

Juzgar el rendimiento de un sistema cuando se están tomando decisiones de compra es algo crítico a fin de retardar la obsolescencia y proteger su inversión.


Los procesadores Pentium(R) ofrecen la vida útil más larga.

Usted quiere obtener el máximo en la compra de su sistema. Parte de esto consiste en asegurarse que el sistema que elige le permite hacer lo que desea durante toda la vida del sistema. Esto significa que no solo va a gestionar el software de hoy sino que dispone de los recursos necesarios para ejecutar los mas complejos programas del día de mañana.
Tal como se muestra en el diagrama de más arriba, para cualquier punto determinado en el tiempo se encuentra disponible una gama de procesadores-- aquellos que ofrecen el máximo rendimiento posible y aquellos que ofrecen un mínimo nivel de rendimiento. Las flechas indican que comprando el de mayor rendimiento se obtiene una vida útil más larga.
Es importante evaluar a una serie de aspectos relativos al rendimiento cuando se han de tomar decisiones de compra.

martes, 28 de agosto de 2012

Kernel

KERNEL

Antes de hablar del kernel debemos hablar de UNIX:

Unix es un sistema operativo multitarea y multiusuario que puede gestionar a varios usuarios simultáneamente. En la actualidad se ejecuta en gran cantidad de plataformas con diferentes tipos de microprocesadores convirtiéndolo en un sistema multiplataforma.
Unix fue diseñado para ser un sistema operativo interactivo, multiusuario y multitarea: 
   -   Interactivo quiere decir que el sistema acepta ordenes, las ejecuta y se dispone a esperar otras nuevas.
   -   Multitarea significa que puede realizar varios trabajos, denominados procesos, al mismo tiempo.
   -   Multiusuario significa que mas de una persona puede usar el sistema al mismo tiempo.


Estructura:

Unix esta compuesto por tres partes fundamentales: 
   -   Kernel o núcleo: se encarga de gestionar los recursos del sistema.
   -   Sistema de ficheros: establece la organización de almacenamiento de los datos en el disco.
  -   Shell: constituye el interprete de ordenes de Unix. Aunque no es mas que un programa de utilidad, es la                                parte que el usuario utiliza para comunicarse con el sistema operativo: la interfase de usuario de UNIX.

Ahora hablaremos de KERNEL.

El kernel es la parte del sistema que gestiona todos los recursos del ordenador (el hardware). Reside permanentemente en memoria y realiza, entre otras, las siguientes funciones:
   -   Controlar la ejecución de procesos, permitiendo su creación, terminación y comunicación.
  -   Planificar los procesos para su ejecución en la CPU, la plantificación de la CPU se regula mediante un algoritmo por prioridades (aunque algunas versiones como la 4.2 BSD utilizaban un sistema de paginación bajo demanda).
   -   Asignar memoria principal a los procesos.
  -   Asignar memoria secundaria para los archivos de usuario, así como gestionar la seguridad y eficiencia de los sistemas de archivos.
   -   Permitir el acceso controlado de los procesos a los periféricos tales como: terminales, unidades de disco o cinta, equipos de red, etc.





El núcleo (kernel) del sistema interactúa directamente con el hardware y proporciona una serie de servicios comunes a los programas de las capas superiores, de forma que las peculiaridades del hardware permanecen ocultas.

Como los programas son independientes del hardware, es fácil (en teoría) mover programas entre sistemas UNIX que se ejecutan en hardware diferente. Programas como el interprete de comandos (Shell) y el editor interactúan con el kernel a través de llamadas al sistema, que permiten el intercambio de información entre el kernel y los programas.

BIBLIOGRAFIA

La informatica, presente y futuro en la sociedad, Editorial Dykinson, 2006


lunes, 27 de agosto de 2012

Comparación de Computadoras

COMPARACIÓN DE COMPUTADORAS



Para poder comparar la primera computadora que teniamos en casa con la computadora que poseo actualmente, nos basaremos en ciertas caracteristicas basicas de las computadoras:

MEMORIA RAM
Primera Computadora Computadora Actual
Esta computadora utilizaba las memorias SIMM de 30 contactos, tenia 6 modulos de dicha memoria, si tomamos en cuenta que el minimo de capacidad de estas memorias era de 256 kB y que el máximo era de 4 MB, definimos que esta computadora tenia entre 1,5 MB a 24 MB de memoria RAM.


En la nueva computadora tenemos 3 modulos de memoria RAM de 2 GB cada una con velocidad DDR3, es decir que se cuenta con 6 GB de memoria RAM.



MICROPROCESADOR
Primera Computadora Computadora Actual
Esta computadora poseía un microprocesador de marca OPTi 82c4955LC, estos procesadores son de la época de los microprocesadores 286, es decir entre 1982 y 1993, tenía una frecuencia de reloj de entre 6 a 10 MHz.


La computadora actual cuenta con un procesador Core I7 870 de 3.3 Ghz.



TARJETA MADRE
Primera Computadora Computadora Actual
La tarjeta madre que esta computadora utilizaba era la Baby AT, presentada por IBM en 1985, el principal problema de este tipo de tarjeta madre era la ventilacion la cual se veia dificultada por la multitud de cables.


La computadora actual lleva una tarjeta madre DP55WB con puertos USB 3.0, 4 pines para memoria RAM DDR3 pudiendo soportar hasta 16 GB de RAM.


 
TARJETA DE VIDEO
Primera Computadora Computadora Actual
La primera computadora llevaba una tarjeta de video UMC UM85C408AF, una tarjeta de video del año 1993, tenía 512 kb de memoria y un bus de datos ISA de 16 bits.


Este equipo lleva una tarjeta de video NVIDIA GeForce 9500 GT con un nucleo de 550 Mhz, una memoria de 1 GB y un bus de 128 bits.



DISPOSITIVOS DE ENTRADA Y SALIDA
Primera Computadora Computadora Actual
Teclado.- Usaba un teclado con conexión de tipo DIN de 5 pines.
Monitor.- El siempre usado conector VGA.
Mouse.- Conector para mouse en serie.
Impresora.- Conexión de 25 pines.


Teclado y Mouse.- Conexión USB.
Impresora.- Conexión USB.
Monitor.- Conexión VGA.



SISTEMA OPERATIVO
Primera Computadora Computadora Actual
El sistema operativo que usaba era el windows 3.11, todo estaba controlado por DOS, por ejemplo para ingresar al windows, depues de encender el equipo debia escribirse "win.exe".



El sistema operativo utilizado en la computadora actual es el windows 7.



Como se puede ver hubo un enorme avance tecnológico desde la primera computadora que tuve hasta la computadora actual, y espremos a ver los grandes avances que habran en unos años mas.
Los dejo con algunas fotos extra de mi primera computadora:

Para sorpresa mía la computadora aun servía.



Mi primera impresora.




Mis primeros jueguitos.