Escolar Documentos
Profissional Documentos
Cultura Documentos
computadora
Introducción al software de base
Elementos básicos de una computadora
Programa
Datos de Datos de
entrada Computadora
salida
Elementos básicos de la computadora
Una computadora consta de componentes de
hardware y software.
Hardware es el equipo físico como es el caso,
unidades de almacenamiento, teclados,
monitores, cables, altavoces, e impresoras.
El software es el sistema operativo
y programas.
Elementos básicos de la computadora
• Software: interfaz que permite comunicar a la
computadora los problemas (acciones) y hace
posible que nos comunique las soluciones
(respuestas). Los programas son el software
de la computadora. Es una estructura de
instrucciones (o programas) que la máquina es
capaz de leer. Son programas que dirigen las
actividades del sistema de cómputo.
Elementos básicos de la computadora
• Hardware: componentes físicos y tangibles
que forman parte de un sistema de cómputo.
• El modelo von Neuman establece el estándar
de los componentes esenciales de una
computadora. Una computadora física debe
incluir:
– La Unidad Central de Procesamiento (CPU).
– La memoria.
– Las interfaces de entrada y salida (I/O).
Modelo von Neuman
CPU
Estructura y funcionamiento de la
computadora
• CPU: considerado como el cerebro y corazón de la
computadora. Internamente consiste de una Unidad
Aritmético-Lógica (ALU), un conjunto de registros y una
Unidad de Control (CU). La ALU es donde se realizan
todas las operaciones que involucran un
procesamiento matemático (particularmente
aritmético) o lógico (operaciones booleanas). Los
registros permiten el almacenamiento de datos para
estas operaciones y sus resultados. En la CU es donde
se ejecutan todo el resto de las operaciones (decisión,
control, movimiento de datos). Una CPU con todos
estos elementos implementada en un solo chip recibe
el nombre de microprocesador.
Estructura y funcionamiento de la
computadora
• Basado en al modelo von Neuman:
• La CPU Obtiene la siguiente instrucción desde la memoria en la dirección
indicada por el contador de programa y la guarda en el registro de
instrucción.
• Aumenta el contador de programa en la longitud de la instrucción para
apuntar a la siguiente.
• Decodifica la instrucción mediante la unidad de control. Ésta se encarga de
coordinar el resto de componentes para realizar una función determinada.
• Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del
programa, permitiendo así operaciones repetitivas. El contador puede
cambiar también cuando se cumpla una cierta condición aritmética,
haciendo que la computadora pueda 'tomar decisiones', que pueden
alcanzar cualquier grado de complejidad, mediante la aritmética y lógica
anteriores.
• Vuelve al paso 1.
Interrupciones
• Casi todas las computadoras tienen un
mecanismo mediante el cual otros módulos
(E/S, memoria) pueden interrumpir la
ejecución normal del procesador. Las
interrupciones aparecen, principalmente,
como una vía para mejorar la eficiencia del
procesamiento debido a que la mayoría de los
dispositivos externos son mucho más lentos
que el procesador.
Interrupciones
• Para atender las interrupciones, se añade un ciclo de interrupción al
ciclo de instrucción. En el ciclo de interrupción el procesador
comprueba si ha ocurrido alguna interrupción, lo que se indicaría
con la presencia de alguna señal de interrupción. Si no hay
interrupciones pendientes, el procesador sigue con el ciclo de
lectura y trae la próxima instrucción del programa en curso. Si hay
una interrupción pendiente, el planificador suspende la ejecución
del programa en curso y ejecuta una rutina de tratamiento de
interrupción. Esta rutina, generalmente, forma parte del sistema
operativo, determina la naturaleza de la interrupción y realiza
cuantas acciones sean necesarias.
• Una interrupción desencadena una serie de sucesos tanto en el
hardware del procesador como en el software.
Proceso de una interrupción
1. El dispositivo emite una señal de interrupción al procesador.
2. El procesador finaliza la ejecución de la instrucción en curso antes de
responder a la interrupción.
3. El procesador pregunta por la interrupción comprueba que hay una y
envía una señal de reconocimiento al dispositivo que generó la
interrupción, de forma que éste suspende su señal de interrupción.
4. El procesador necesita ahora prepararse para transferir el control a la
rutina de interrupción. Para empezar, hace falta salvar la información
necesaria para reanudar la ejecución del programa en curso en el punto
de la interrupción. La mínima información es la palabra de estado del
programa (PSW) y la ubicación de la próxima instrucción a ejecutar.
5. El procesador carga ahora el contador de programa con la ubicación de
entrada del programa de tratamiento de interrupción.
Proceso de una interrupción
6. La rutina de interrupción suele comenzar salvando el contenido de
los registros del procesador porque la rutina puede utilizarlos y se
perdería la información que la ejecución del proceso interrumpido
hubiera dejado en ellos.
7. La rutina de tratamiento de la interrupción procesa la interrupción
realizando las acciones requeridas para atenderla.
8. Tras completar el tratamiento de la interrupción, se recuperan de
la pila los valores de los registros que se salvaron y se restauran en
los correspondientes registros.
9. El paso final es restaurar los valores del la PSW y del contador de
programa también a partir de la pila y continuar con la ejecución
del programa interrumpido. Estas acciones se llevan a cabo como
resultado de ejecutar la instrucción maquina para retorno de
interrupción, que incluyen la mayoría de las computadoras en su
lenguaje máquina.
Reloj
• La velocidad de una computadora está
determinada por la velocidad de su reloj interno,
el dispositivo cronométrico que produce pulsos
eléctricos para sincronizar las operaciones de la
computadora.
• Las computadoras se describen en términos de su
velocidad de reloj, que se mide en megahertz. La
velocidad también está determinada por la
arquitectura del procesador, es decir el diseño
que establece de qué manera están colocados en
el chip los componentes individuales de la CPU.
Velocidad del procesador
• La velocidad del procesador, se puede medir en diferentes unidades
según el tipo de computadora
– MHz (Megahertz): para microcomputadoras. Un oscilador de cristal controla la
ejecución de instrucciones dentro del procesador. La velocidad del procesador
de una micro se mide por su frecuencia de oscilación o por el número de
ciclos de reloj por segundo. El tiempo transcurrido para un ciclo de reloj es
1/frecuencia. Por ejemplo un procesador de 50MHz (o 50 millones de ciclos de
reloj) necesita 20 nanosegundos para concluir un ciclo. Cuanto más breve es el
ciclo de reloj, más veloz es el procesador.
– MIPS (Millones de instrucciones por segundo): Para estaciones de trabajo,
minis y macrocomputadoras. Por ejemplo una computadora de 100 MIPS
puede ejecutar 100 millones de instrucciones por segundo.
– FLOPS (floating point operations per second, operaciones de punto flotante
por segundo): Para las supercomputadoras. Las operaciones de punto flotante
incluyen cifras muy pequeñas o muy altas. Hay supercomputadoras para las
cuales se puede hablar de GFLOPS (Gigaflops, es decir 1.000 millones de
FLOPS).
Jerarquía de memoria
• Su objetivo es conseguir el rendimiento de una memoria de gran
velocidad al coste de una memoria de baja velocidad.
• Los puntos básicos relacionados con la memoria pueden resumirse
en:
– Cantidad
– Velocidad
– Costo
• La cuestión de la cantidad es simple, cuanto más memoria haya
disponible, más podrá utilizarse. La velocidad óptima para la
memoria es la velocidad a la que el procesador puede trabajar, de
modo que no haya tiempos de espera entre cálculo y cálculo,
utilizados para traer operandos o guardar resultados.
Jerarquía de memoria
Jerarquía de memoria
• Registros: memoria integrada en la CPU, que
permite guardar transitoriamente y acceder a
valores muy usados, generalmente en
operaciones matemáticas.
• Caché: usada por la CPU de una computadora
para reducir el tiempo de acceso a la memoria. La
caché es una memoria más pequeña y rápida, la
cual almacena copias de los datos ubicados en la
memoria principal utilizados con más frecuencia.
Jerarquía de memoria
• RAM (principal): dividida en celdas que se
identifican mediante una dirección. Está formada
por bloques de circuitos integrados o chips
capaces de almacenar, retener o "memorizar"
información digital, es decir, valores binarios; a
dichos bloques tiene acceso el CPU.
• Disco duro: es un dispositivo de almacenamiento
de datos no volátil que emplea un sistema de
grabación magnética o electrónica para
almacenar datos digitales.
Memoria virtual
• Es un método mediante el cual, un sistema
operativo simula tener más memoria principal
que la que existe físicamente. Para
implementar la memoria virtual se utiliza un
medio de almacenamiento secundario de alta
velocidad de acceso, generalmente el disco
duro.
Memoria virtual
• Un sistema de memoria virtual se implementa utilizando
paginación como método de administración de memoria
básica y algún mecanismo de intercambio (para descargar
páginas de la memoria principal hacia el disco duro y para
cargar esas páginas de nuevo a la memoria).
• En las tablas de páginas se agrega un campo más a cada
entrada:
– El bit valido/invalido (p), en los procesadores 80386 y
posteriores, que indica si la página a la que se está haciendo
referencia en un momento dado se encuentra en la memoria
principal (valido) o en el disco duro (invalido). Cuando el sistema
operativo haga referencia a una pagina inválida, deberá ir al
disco duro y cargarla a memoria principal para continuar el
procesamiento.
Memoria virtual
• La paginación consiste en considerar el espacio de
direcciones lógicas de cada proceso como un conjunto
de bloques de tamaño consistente llamados páginas.
Cada dirección lógica manejada para un proceso estará
conformada por un par de valores: página-
desplazamiento.
• La memoria física se administra implementando
bloques de tamaño consistente denominados 'marcos'.
El tamaño de un 'marco' debe ser igual al tamaño de
una página.
• Por lo general el tamaño designado para los marcos y
páginas es pequeño.
Memoria virtual
Memoria virtual
• Existen 2 métodos para cargar programas en
memoria:
– Demanda de página. Consiste en iniciar la
ejecución de los procesos sin páginas cargadas,
estas se irán cargando conforme el proceso las
demande.
– Pre-paginación. Consiste en que el sistema
operativo predice cuales páginas se ocuparan
durante la ejecución de un proceso
Arranque de la computadora
• Cuando se acciona el botón de encendido o se presiona
el botón de re-inicio (Reset) la carga eléctrica inicial
hace que arranque la CPU, este obtiene y ejecuta
instrucciones de la BIOS (Basic Input Output System,
donde hay instrucciones permanentes que no se
borran al apagar la computadora):
– El CPU empieza a ejecutar las instrucciones, iniciando con
prueba de arranque POST(Power On Self Test) la cual
verifica la integridad de la memoria, controladores, y
dispositivos del sistema.
– Después obtiene el orden de arranque (de donde cargará
el sistema operativo).
Arranque de la computadora
• Una vez, que la CPU sabe desde donde puede arrancar el
sistema operativo, busca estos dispositivos y carga un
archivo maestro de arranque del dispositivo arrancable. En
este punto, no se sabe sobre las características del disco
duro y otras unidades de almacenamiento, pero siempre
puede buscar los primeros bloques de información en
cualquier dispositivo para averiguar si la unidad es
arrancable. En los discos duros se encuentra un sector
llamado MBR (Master Boot Record) que contiene la primera
etapa del cargador de arranque de un sistema operativo, el
cual es cargado y ejecutado en la memoria principal.
• Después que se inicia la carga del sistema operativo, el
siguiente paso es establecer el tipo de sistema de archivos
usado en la unidad de arranque/almacenamiento.
Arranque de la computadora
• Finalmente se procede a la carga de
configuraciones y variables de entorno, así
como los perfiles configurados para los
usuarios del sistema operativo.
Gestión de procesos
• El concepto central de cualquier Sistema Operativo es el de
proceso: una abstracción de un programa en ejecución
también llamada tarea.
• No hay una definición especifica de proceso, pero sí algunas
definiciones aceptadas: