jueves, 19 de noviembre de 2015

Practica de lenguaje ensamblador

Buen día.

El día de hoy vamos hacer un programa con el lenguaje ensamblador, recordemos que el lenguaje ensamblador es un lenguaje de bajo de nivel.

Imagen tomada por Yeferson Ladino

Primero montamos la unidad de  ejecutamos el programa debug, para comprobar que el programa debug funcione validamos  con el comando r  para ver los registros de memoria, con esto comprobamos que estamos ejecutando el programa debug.
Después editamos las posiciones de memoria 0200  y 0201 en la cual colocamos 0 y 1 para que nos guarde esos dos caracteres y podamos hacer la suma.

Imagen tomada por Yeferson Ladino

Validamos  con el comando d en la posición de memoria 0200 que nos halla guardado los caracteres 0 y 1.
Imagen tomada por Yeferson Ladino

Editamos con el comando a, la cual nos escoge la posición de memoria 0100 que es donde se realiza los comandos  o movimientos, para ser la serie de fibonnaci. En la línea 0100  es el contador de dirección (direccionamiento directo), en la posición 0103  se indica mover el contenido a 0200 (direccionamiento directo por registro).  En la posición de memoria 0106 se india que en el direccionamiento  adiciónele un 1, en la posición de memoria 0109 se indica adicionar al registro al, en la posición de memoria 010B se indica que incremente el direccionamiento en bp, en la posición de memoria 010C se indica mover al registro al y adicionarle 1. Por ultimo en la posición 010F se indica hacer un salto en la posición de memoria 0103, se da enter y se sale de la edición del código.

Imagen tomada por Yeferson Ladino

Digitamos el comando t, la cual hace que el programa valla adicionando  sumando en las posiciones de memoria en 0200, hay que dar varias veces la opción para que nos muestre varios números.

Imagen tomada por Yeferson Ladino

Comprobamos que la aplicación funciona con el comando d y la posición de memoria 0200 y la secuencia aparece correctamente.






martes, 17 de noviembre de 2015

Infografia del Disco Duro

Buen día.

El día de hoy les comparto otra infografía realizada por mis compañero Erik Montaña, Samir Díaz y Dario Montealegre.

Imagen tomada por Yeferson Ladino.

miércoles, 11 de noviembre de 2015

INFOGRAFÍA PLACA BASE

Buen día

El día de hoy les comparto una infografía de la placa base realizada con mis compañeros Samir Diaz, Erik Montaña y Dario Montealegre.

Imagen tomada por Yeferson Ladino

jueves, 5 de noviembre de 2015

Instalación maquina virtual DosBox y Debug.

El día de hoy les comparto un link de el canal de youtube "Programación y más", para la instalación y de la maquina virtual y el debug, dar click a la imagen para dirigirnos al canal de youtube.

Imagen tomada de https://www.youtube.com/watch?v=fsmHXU4MyM0








miércoles, 21 de octubre de 2015

Memoria CMOS-LA BIOS Y MENEJO DE INTERRUPCIONES

Imagen creada por Yeferson Ladino

La memoria CMOS es la unión entre software y el hardware llamado Firmware, cabe resaltar que los dispositivos de hora son firmware como las usb, ya que llevan sus controladores dentro del dispositivo sin necesidad de instalarlo.
Esta compuesta por dos partes El BIOS y el SETUP:

SETUP: Son los parámetros de configuración personalizada por el usuario al arrancar el sistema, tales como la hora y la fecha, el inicio del boot, contraseña para ingresar el setup, etc.  Hay que recordar que no es recomendable configurar bastantes parámetros,  porque si no el sistema se va a demorar en arrancar.

El BIOS: (Basic Input/Output System ) El sistema básico de entrada y salida, le proporciona información al sistema operativo de los componentes físicos del sistema. El proceso del BIOS es el siguiente:
* El que arranca el sistema  es la fuente por un pulso de energía, esto se llama el power good, esto le indica al procesador que los dispositivos conectados al equipo ya se encuentran energizados.
* El Boot Strap Este contiene una dirección después del primer mega de la memoria en la cual apunta a un arranque del BIOS.
* Se genera una copia del BIOS en la memoria RAM, esto va después del primer MEGA.
* Se inicia la ejecución del BIOS con la tabla de interrupción.
* Después el POST  hace un testeo de los dispositivos y detecta anomalías.  Si un dispositivo tiene una anomalía identificada por el POST, de inmediato este da señales de error, por medio de pitidos

Al finalizar este proceso se inicia el sistema operativo.

Manejo de Interrupciones

El manejo de interrupciones es el tiempo de procesador en la cual se puede realizar una tarea en el sistema operativo, para el manejo de interrupción existen dos llamados:
* Llamados al sistema: Estas interrupciones son del sistema operativo, es decir que el usuario no tiene interacción con estas acciones porque en esta interrupción el sistema operativo entra en modo kernel.

* Llamados al usuario: Estas interrupciones interactuan con el usuario y los periféricos conectados al sistema, ejemplo cuando el usuario mueve el mouse, en ese instante de tiempo hay una interrupción que es bastante rápida y que tiene varias instrucciones para que se mueva el puntero en la pantalla.


miércoles, 14 de octubre de 2015

Mapeado de la memoria RAM

Se construyeron  con circuitos de 64 KB, migrados a 640 MB, los primeros 64 KB componen el modo kernel del sistema operativo, es decir esta parte el usuario no tiene permitido interactuar con la maquina. Esto se llama memoria convencional. Después vienen 6 sectores más de 384 KB este es llamada memoria alta. La unión de estas dos partes forman el primer mega  y es la memoria del sistema operativo DOS, como lo repetimos este sistema esta restringida por el kernel.

Imagen creada por Yeferson Ladino.
Memoria convencional:

Segmento 0: Es la tabla de vectores de interrupción, es el que interrumpe la tarea, para dar paso a la siguiente tarea en la memoria.
Segmento 1: Esta ocupado por datos de el BIOS.
Segmento 2: Esta ocupado por el núcleo del DOS. Tiene tres archivos principales (command.com,  Io.sys y Ms-do.sys).
Segmento 3,4 y 5: Son segmentos que están ocupados por el usuario.
Segmento 6: Parte transitoria del sistema operativo.
Segmento 7: Reservado para el sistema MONO .
Segmento  8: Reservado para GCA .
Segmento  9: Reservado para el VGA .

Memoria Alta:

Segmento A y B (640 Kb a 768 Kb): Adaptador gráfico, son los encargados de la memoria de video del procesador y dependiendo la tarjeta de video que este instalada en la board.
Segmento C (768 Kb a 832 Kb): Es destinada para la memoria del disco y el video el BIOS.
Segmento D (632 Kb a 896 Kb): Se utiliza para las plaquetas que tienen una tarea especifica, tales como la tarjeta de red, tarjeta PCI o la unidad de CD.
Segmento E(896 Kb a 960 Kb): Es el encargado de intercambio de información entre la memoria expandida y la memoria DOS, entre 0 y 1 MB.
Segmento F (960 Kb a 1024 Kb): Contiene las instrucciones de la memoria ROM, como el inicio del  BIOS.


Después viene la memora extendida que va de 32 MB hasta los 32 GB , el resto de los procesos de la memoria son procesos del usuario de entrada y salida.

jueves, 8 de octubre de 2015

Jerarquía de la memoria

La memoria tiene la siguiente jerarquía:

Imagen creada por Yeferson Ladino.

Memoria Virtual: Es parte del HD o Hard Disk, es el doble de la memoria fisica (RAM), se extrae de la memoria direccionable al  disco duro, en la cual es acorde con la RAM es decir en el momento de apagar el equipo esa memoria se borra. Esta memoria posibilita lo que es la multiprogramación. 

Memoria principal (RAM):  Es una organización de bits  de a 8 Bytes, se habilitan por medio de un bus, que se controla por medio del bus de direcciones (rw-). Los tipos de memoria que han habidos son:
SIMM o Single In-line Memory Module: Esta memoria estaba compuesta por Flip Flops .
Tomado de http://gopichi.blogspot.com/2010/10/memoria-ram-simm-dimm-rimm-y-ddr2.html


DIMM o dual in-line memory module:  Esta memoria estaba compuesta por Flip Flops y tenía dos canales de transferencia de datos.
Tomado de http://tusalonhogar.net/ciencias/tecnologia/haciendounacomputadora/sellecion.htm


DDR o Double Data Rate: Son memorias que tienen circuitos capacitivos (condensadores), esto sirve para que tenga un refresco dinámico es decir que cada capacidad de tiempo cuando esta en el bit 1 se transfiere cierto voltaje al capacitador.
Tomado de http://www.informatica-hoy.com.ar/hardware-pc-desktop/Tipos-de-Memorias-DDR-SDRAM.php

Nota: cabe resaltar que RIMM no es una memoria, es un encapsulado externo que blinda y disipa el calor de las memorias. 


La memoria Cache: memoria especial de acople de velocidad, regula la velocidad baja de la memoria RAM a los registros del procesador, tiene bajo nivel de almacenamiento. La memoria cache tiene tres niveles de ubicación:

Nivel 1: Ubicada en la Board.
Nivel 2: Ubicada en la Board y procesador.
Nivel 3: Ubicaada en la Board, procesador y Chipset.



Comparto una presentación de comparaciones de la jerarquía la memoria:

Imagen creada por Yeferson Ladino.