Entradas

Mostrando entradas de octubre, 2017

Pipelining de instrucciones e Información sobre los Buses

Imagen
Ciclo Fetch-Decode-Execute Para poder entender los conceptos de las instrucciones y algunos problemas que pueden tener necesitamos saber sobre el ciclo fetch-decode-execute de instrucciones. Una versión resumida del ciclo puede ser la siguiente: Fetch: se lee la siguiente instrucción que debe ejecutarse en memoria. Decode: se analiza el código para saber que es lo que la instrucción desea hacer y que necesita para completarse. Read: se accede a la memoria para traer los operandos. Execute: se ejecuta la operación. Write: se escribe el resultado de la operación. Después de escribir el resultado de la operación el ciclo vuelve al inicio y repite sus pasos con la siguiente instrucción. El ciclo termina hasta que termine el programa. Pipeline En la computación, el pipelining de instrucciones se refiere a la técnica para implementar el paralelismo de instrucciones en un mismo procesador. El paralelismo de instrucciones se refiere a la habilidad de poder hacer mas de u

Llamadas al sistema

Imagen
¿Que es una llamada al sistema? Cuando el programa necesita realizar algo que no puede solo o no tiene los permisos necesarios para hacerlo, la única opción que le queda es llamar al sistema para que lo haga por él. En la computación, una llamada al sistema es la manera en la cual un programa de computadora pide un servicio al kernel del sistema operativo que se esta ejecutando (no debemos confundir las llamadas al sistemas con un comando del sistema). Existen mas de 344 llamadas al sistema, sin embargo podemos dividir las llamadas del sistema en 5 grupos diferentes: Control de Procesos Manejo de Archivos Manejo de Dispositivos Mantenimiento de Informacion Comunicación Implementar una llamada del sistema requiere de una transferencia de control del espacio del usuario al espacio del kernel. Una manera típica de hacer esto es usar una interrupción del sistema. La interrupción transfiere el control al kernel del sistema operativo y solo es necesario ingresar informac

Respuestas de las preguntas planteadas en el examen

Imagen
Hace casi dos semanas nuestra clase tuvo el examen de Arquitectura de Computadores, al inicio del examen habían 5 preguntas las cuales se mostraran y resolverán con información aprendida en el curso. En el examen también entraron otros temas como tipos de direccionamiento y diferentes codificaciones de información, pero en esta entrada solo retomaremos las primeras preguntas. ¿Cual es la diferencia entre la arquitectura de una computadora y la organización de una computadora? Ademas brinde un ejemplo para cada una de ellas. La diferencia entre estas dos es que la arquitectura de un computador se refiere a los atributos del sistema que el programador puede ver, en otras palabras, los que tienen impacto directo en la ejecución lógica de un programa. En cambio, la organización de una computadora tiene que ver con las unidades operativas y las interconexiones, esta incluye aspectos de alto nivel del diseño de la computadora y el sistema de memoria. Ejemplos:  Sets de instr

Arduino - Información e Historia

Imagen
¿Que es un Arduino? Logo de Arduino Arduino es una plataforma electrónica de código abierto basada en un hardware y software fácil de usar. Contiene una serie de partes e interfaces juntas en una sola tabla de circuitos. Gracias a su simpleza, Arduino ha sido utilizado en miles de diferentes proyectos y aplicaciones. Arduino nació en el 2005 como un proyecto para estudiantes del Instituto IVREA. En ese tiempo los estudiantes usaban un microcontrolador que costada 100$ cada uno, lo cual era demasiado costoso para ellos. Uno de los fundadores de Arduino era profesor de estos estudiantes. Los fundadores del proyecto junto con un estudiante colombiano trabajaron duro para poder hacer una placa mas económica y pequeña para uso estudiantil. Existen diferentes modelos de Arduino y todos tienen características diferentes, debido a esto para poder mostrar algunas características que incluyen las placas usaremos como base el Arduino Uno R3 (características extraídas de la pagina