jueves, 19 de mayo de 2016

REQUISITOS DE GESTIÓN DE MEMORIA

Reasignación

La gestión de memoria en el sistema operativo debe ser capaz de trasladar los programas en memoria y manejar referencias a la memoria y las direcciones en el código del programa para que siempre apuntan a la ubicación correcta. La unidad de gestión de memoria virtual también debe hacer frente a la concurrencia.

Protección

Los procesos no deberían poder referenciar la memoria de otros procesos sin permiso, para evitarlo existe la protección de memoria, que evita que código malicioso o erróneo de un programa interfiera con la operación de otros programas en ejecución.

Memoria compartida

Aunque la memoria utilizada por diferentes procesos suele estar protegida, algunos procesos puede que sí tengan que compartir información y, para ello, han de acceder la misma sección de memoria. La memoria compartida es una de las técnicas más rápidas para posibilitar la comunicación entre procesos.

Organización lógica

La gestión de memoria es responsable de manejar esta organización lógica, que se contrapone al espacio de direcciones físicas lineales. Una forma de lograrlo es mediante la segmentación de memoria.

Organización física

La memoria suele dividirse en un almacenamiento primario de alta velocidad y uno secundario de menor velocidad. La gestión de memoria del sistema operativo se ocupa de trasladar la información entre estos dos niveles de memoria.

miércoles, 18 de mayo de 2016

Paginación (Técnica actual)


Para solucionar el problema de fragmentación externa dada con particiones variables. Usar particiones fijas en memoria virtual y física

Memoria Virtual



Paginación


Permiten la ubicación no contigua de programas para combatir la fragmentación y la degradación de la memoria. Al poder ubicarse de forma no contigua, un programa ya no necesita un hueco de su tamaño, sino que la cantidad total de memoria libre sea mayor o igual. 
Traduciendo direcciones virtuales

Una dirección virtual tiene dos partes:
Número de página virtual y offset
Número de página virtual es un índice en tabla de páginas
Entrada en tabla de página contiene número de marco de página
Dirección física se traduce a:

 Número Marco de página:offset



Ventajas de la Paginación


Fácil para asignar memoria física
Memoria física se administra usando una lista de marcos de páginas libres
Para asignar un marco de página, se saca de la lista
Fragmentación externa no es un problema
Fácil quitarle páginas a programas
Páginas son del mismo tamaño
Uso de bit válido para saber que páginas ha perdido el proceso
Tamaño de páginas definido como múltiplos de tamaños de bloques de disco

Desventajas de Paginación


Expone Fragmentación interna
Proceso no puede usar memoria de marco de página que le sobra a otro proceso
Referencia a memoria en 2 pasos
Tabla de página y luego Memoria
Solución, usar hardware como cache para acelerar referencias : Memoria requerida para mantener tablas de páginas puede ser grande
Necesita una entrada en tabla de página por número de página virtual

Segmentación


Es un esquema de manejo de memoria mediante el cual la estructura del programa refleja su división lógica, llevándose a cabo una agrupación lógica de la información en bloques de tamaño variable denominados segmentos. Cada uno de ellos tienen información lógica del programa.Luego, cada espacio de direcciones de programa consiste de una colección de segmentos, que generalmente reflejan la división lógica del programa. 

OBJETIVOS: 

Modularidad de programas: Cada rutina del programa puede ser un bloque sujeto a cambios y recopilaciones, sin afectar por ello al resto del programa. 
Estructuras de datos de largo variable: Donde cada estructura tiene su propio tamaño y este puede variar. 
Protección: Se pueden proteger los módulos del segmento contra accesos no autorizados. 
Compartición: Dos o más procesos pueden ser un mismo segmento, bajo reglas de protección; aunque no sean propietarios de los mismos. 
Enlace dinámico entre segmentos: Puede evitarse realizar todo el proceso de enlace antes de comenzar a ejecutar un programa. Los enlaces se establecerán sólo cuando sea necesario.


Ventajas y Desventajas


El programador puede conocer las unidades lógicas de su programa, dándoles un tratamiento particular. 
Es posible compilar módulos separados como segmentos el enlace entre los segmentos puede suponer hasta tanto se haga una referencia entre segmentos. 
Debido a que es posible separar los módulos, se hace más fácil la modificación de los mismos. Cambios dentro de un módulo no afecta al resto de los módulos. 
Es fácil el compartir segmentos. 
Es posible que los segmentos crezcan dinámicamente según las necesidades del programa en ejecución. 
Existe la posibilidad de definir segmentos que aún no existan. Así, no se asignará memoria, sino a partir del momento que sea necesario hacer usos del segmento. Un ejemplo de esto, serían los arreglos cuya dimensión no se conoce hasta tanto no se comienza a ejecutar el programa. En algunos casos, incluso podría retardar la asignación de memoria hasta el momento en el cuál se referencia el arreglo u otra estructura de datos por primera vez.

GESTIÓN DE MEMORIA

La gestión de memoria representa un vínculo delicado entre el rendimiento (tiempo de acceso) y la cantidad (espacio disponible).
Siempre se busca obtener el mayor espacio disponible en la memoria, pero pocas veces existe la predisposición para comprometer el rendimiento.

La gestión de memoria también debe realizar las siguientes funciones:
Permitir que la memoria se comparta (en sistemas de multiprocesos).
Asignar bloques de espacio de memoria a distintas tareas;
Proteger los espacios de memoria utilizados (evitar que un usuario modifique una tarea realizada por otro usuario).
Optimizar la cantidad de memoria disponible, específicamente a través de sistemas de expansión de memoria.

Los mecanismos de distribución de memoria
Segmentación: los programas se dividen en paquetes de longitudes variadas conocidos como "segmentos".
Paginación: consiste en dividir la memoria en bloques y los programas en páginas de longitud fija.


Particiones Fijas


Memoria física se divide en particiones fijas

Todas las particiones son de tamaño fijo y nunca cambian, pero pueden haber particiones de diferentes tamaños

Hardware requerido: registro base y registro límite
Dirección física = dirección virtual + registro base

Registro base es cargado por el SO después de cambio de contexto, y entonces un proceso se va a ejecutar

Ventajas
Sencillo, cambio de contexto rápido
Desventajas
Fragmentación interna
Partición mas grande de lo necesario (sobra memoria que no puede utilizar otro proceso)
Fragmentación externa
Caso en que dos particiones disponibles pero ambas muy pequeñas para contener un proceso mas grande

martes, 17 de mayo de 2016

Objetivos y Criterios de Planificación

Los objetivos del planificador se resumen en:

a) Reparto equitativo del tiempo de procesador
b) Eficiencia en el uso del procesador
c) Menor tiempo de respuesta en uso interactivo
d) Cumplir plazos de ejecución de los sistemas de tiempo real

  • Ser equitativa: debe intentar hacer una planificación justa, esto es, se debe tratar a todos los procesos de la misma forma y no aplazar indefinidamente ningún proceso. 
  • Ser eficiente: debe maximizar el uso de los recursos tales como intentar que la ocupación de la CPU sea máxima. Al mismo tiempo se debe intentar reducir el gasto extra por considerar que es trabajo no productivo. 
  • Lograr un tiempo bueno de respuesta, es decir, que los usuarios interactivos reciban respuesta en tiempos aceptables.
  • Lograr un tiempo de proceso global predecible. Esto quiere decir que un proceso debe ejecutarse aproximadamente en el mismo tiempo y casi al mismo costo con independencia de la carga del sistema.
  • Elevar al máximo la productividad o el rendimiento, esto es, maximizar el número de trabajos procesados por unidad de tiempo.

Planificación Apropiativa y No apropiativa 

MODOS DE DECISIÓN:

PREFERENTE        ----------------------> NO APROPIATIVO

NO PREFERENTE ----------------------> APROPIATIVO


No Apropiativo(Una vez que se le ha otorgado la cpu a un proceso, no le puede ser retirada)

Características
  • Significa que los trabajos “largos” hacen esperar a los trabajos “cortos”.
  • Logra más equidad en el tratamiento de los procesos.
  • Logra hacer más predecibles los tiempos de respuesta puesto que los trabajos nuevos de prioridad alta no pueden desplazar a los trabajos en espera.

Apropiativo(Una vez que se le ha otorgado la cpu a un proceso, le puede ser retirada) El proceso que se está ejecutando actualmente puede ser interrumpido y pasado al estado de listos por el sistema operativo.

Características
  • Es útil cuando los procesos de alta prioridad requieren atención rápida.
  • Es importante para garantizar buenos tiempos de respuesta en sistemas interactivos de tiempo compartido.
  • Tiene su costo en recursos, ya que el intercambio de contexto implica sobrecarga y además requiere mantener muchos procesos en el almacenamiento principal, en espera de la cpu, lo que también implica sobrecarga.
Niveles de Planificación


Conjunto de políticas y mecanismos construidos dentro del sistema operativo
que planifican la forma de conseguir que los procesos a ejecutar lleguen a ejecutarse.


El scheduling está muy relacionado con la gestión de los recursos.

Existen tres niveles de scheduling, estos niveles son:
  • Planificador de la CPU o a corto plazo.
  • Planificador a medio plazo.
  • Planificador a largo plazo
En la planificación de procesos se suelen incluir varios niveles,
en función del periodo temporal que cubren

PLANIFICACIÓN A LARGO PLAZO
La planificación a largo plazo determina cuáles son los programas admitidos en
el sistema. De este modo, se controla el grado de multiprogramación.
Una vez admitido, un proceso es añadido a la cola del planificador a corto plazo.
PLANIFICACIÓN A MEDIANO PLAZO
La planificación a medio plazo forma parte de la función de intercambio.
La decisión de cargar un proceso en memoria principal.Pasar a listo
PLANIFICACIÓN A CORTO PLAZO
Pasar un proceso a Nuveo pasando por la transición admitir. El planificador a
medio plazo se ejecuta con algo más de frecuencia, para tomar la decisión del
intercambio. El planificador a corto plazo, también conocido como distribuidor
(dispatcher), es el de ejecución más frecuente y toma decisiones con un mayor
detalle sobre el proceso que se ejecutará a continuación.
El planificador a corto plazo se ejecuta cuando ocurre un suceso que puede
conducir a la interrupción del proceso actual o que ofrece la oportunidad de
expulsar de la ejecución al proceso actual en favor de otro.



·Interrupciones del reloj
·Interrupciones de E/S
·Llamadas al sistema operativo

·Señales

domingo, 10 de abril de 2016

Ronda (Round Robin)


Ronda (Round Robin)


A cada proceso que esté en la lista de procesos listos lo atenderemos por un sólo quantum  Si un proceso no ha terminado de ejecutar al final de su quantum, será interrumpido y puesto al final de la lista de procesos listos, para que espere a su turno nuevamente. Los procesos que nos entreguen los planificadores a mediano o largo plazo se agregarán también al final de esta lista.




El proceso más corto a continuación (SPN)

Se selecciona para entrar a ejecutarse el proceso de menor duración. Esta planificación es  óptima para los tiempos medios de respuesta, finalización y espera. 






Menor Tiempo restante (SRT)

Este método busca favorecer a los procesos que ya han pasado tiempo ejecutando que a los recién llegados. De hecho, los nuevos procesos no son programados directamente para su ejecución, sino que se les forma en la cola de procesos nuevos, y se avanza únicamente con la cola de procesos aceptados.




Highest Reponse Ratio Next (HRRN)



Políticas de PLanificación

Modos de decisiónPreferente: Es el que puede tener varios procesos en cola
No preferente: No elije prioridad entre procesos, y lo hace en cola y libera el procesador cuando termine el proceso.
CONCEPTOS DE PLANIFICACIÓNTIEMPOSTiempo de llegada: Cuando el proceso es admitido lo establece el usuario o el S.O.
Tiempo de servicio: Lo define el programador cuando diseña el código del programa y su duración.
Tiempo de retorno: EL tiempo total que gasto el proceso en instancia de ejecución.
Tiempo de espera: El proceso ya está en memoria (Admitido) peor no está en ejecución.
Tiempo de latencia: Es el intervalo entre fin de un proceso e inicio de otro B/R guarda un backup del proceso 1 e inicia otro para que recupere los datos cuando el proceso 1 reinicie su ejecución, que se guarda en BCP (Bloque de control de procesos)

Quantum
El tiempo mínimo que se permitirá a un proceso el uso del procesador. En Windows, dependiendo de la clase de proceso que se trate, un quantum durará entre 2 y 12 ticks (esto es, entre 20 y 180 ms), y en Linux, entre 10 y 200 ticks (o milisegundos).


Tiempo de retorno (Turnaround time): Es el intervalo de tiempo desde que un proceso es cargado hasta que este finaliza su ejecución.
Tiempo de espera (Waiting time): Es la suma de los intervalos de tiempo que un proceso estuvo en la cola de procesos listos
Tiempo de respuesta (Response time): Es el intervalo de tiempo desde que un proceso es cargado hasta que brinda su primer respuesta. 

Politica FCFS (FIRST COME FIRST SERVERD)


Este es un mecanismo cooperativo, con la mínima lógica posible: Cada proceso se ejecuta en el órden en que fue llegando, y hasta que suelta el control. El despachador es muy simple, básicamente una cola




Objetivos y Criterios de planificación de porcesos

Objetivo de la Planificación 
El objetivo principal de la planificación es optimizar el rendimiento del sistema y proporcionar un buen servicio a todos los procesos que se encuentren en el, y podemos nombrar los siguientes:
  • Justicia. La planificación debe ser lo mas justa posible con todos los procesos, sin favorecer a unos y perjudicar a otros.
  • Máxima capacidad de ejecución. Debe dar un servicio eficiente para que todos los trabajos se realicen lo mas rápidamente posible. Esto se puede lograr disminuyendo el numero de cambios de proceso.
  • Máximo numero de usuarios interactivos. En los sistemas de tiempo compartido se tratara de que puedan estar trabajando el mayor numero de usuarios al mismo tiempo.
  • Predecibilidad. La planificacion debe realizarse de tal forma que en todo momento pueda saberse como sera su ejecucion.
  • Minimizacion de la sobrecarga. La computadora debe tener poca sobrecarga ya que esta afecta directamente al rendimiento final del sistema: a menor sobrecarga mayor velocidad de proceso.
  • Equilibrio en el uso de recursos. Para obtener un mayor rendimiento en el uso de los recursos y que estos estén ocupados equitativamente el mayor tiempo posible.
  • Seguridad de las prioridades. Si un proceso tiene mayor prioridad que otro, este debe ejecutarse mas rápidamente.
  • Evitar la postergacion indefinida. Esto se logra aumentando la prioridad de un proceso mientras espere por un recurso. La prioridad llegara a ser tan alta que al proceso le sera asignado el recurso que pidió.
Criterios de planificación 
Para realizar los objetivos de la planificación,  debe considerar lo siguiente:
  • La limitación de un proceso a las operaciones de Entrada / Salida: cuando un proceso consigue la cpu, ?la utiliza solo  antes de generar una petición de Entrada / Salida?
  • Si un proceso es por lote (batch) o interactivo: los usuarios interactivos deben recibir inmediato servicio para garantizar buenos tiempos de respuesta.
  • La prioridad de un proceso: a mayor prioridad mejor tratamiento.
  • Frecuentemente un proceso genera fallos (carencias) de pagina:
    • Probablemente los procesos que generan pocos fallos de pagina hayan acumulado sus “conjuntos de trabajo” en el almacenamiento principal.
    • Los procesos que experimentan gran cantidad de fallos de pagina aun no han establecido sus conjuntos de trabajo.
    • Un criterio indica favorecer a los procesos que han establecido sus conjuntos de trabajo.
    • Otro criterio indica favorecer a los procesos con una tasa alta de fallos de pagina ya que rapidamente generaran una peticion de Entrada / Salida.
  • Frecuentemente un proceso ha sido apropiado por otro de mas alta prioridad, lo cual significa lo siguiente:
    • A menudo los procesos apropiados deben recibir un tratamiento menos favorable.
    • Cada vez que el Sistema Operativo asume la sobrecarga para hacer ejecutar este proceso, el corto tiempo de ejecucion antes de la apropiacion no justifica la sobrecarga de hacer ejecutar al proceso en primer lugar.
  • Cuanto tiempo de ejecución real ha recibido el proceso?: un criterio considera que debe ser favorecido un proceso que ha recibido muy poco tiempo de cpu.

jueves, 31 de marzo de 2016

Planificación de Procesos

PLANIFICACIÓN DE PROCESOS

La planificación es una función fundamental del sistema operativo, puesto que casi todos los recursos del ordenador se planifican antes de utilizarlos. Por supuesto, la C.P.U. es uno de los recursos primarios del ordenador. Por tanto, su planificación es algo básico en el diseño de un sistema operativo.



PLANIFICACIÓN A LARGO PLAZO

El sistema rinde cuando el acceso de procesos es moderado. Un sistema funcionará mal si deja pasar a todos los procesos que llegan. La planificación a largo plazo gestionará los procesos que van llegando.

Dispatch  Distribuidor
Zoapping  Intercambio
Login   Admitir




Modelo de 6 y 7 Estados




Modelo 3 y 5 Estados



Estados Y Transiciones de Procesos

Estados Y Transiciones

Contenedor: Objeto capaz de almacenar varios elementos de una misma clase, representan una ubicación

Favorecer un proceso corto hace que el proceso que se está ejecutando salga en no ejecución.
Depende de la capacidad de memoria habrá procesos en ejecución esperando a ser ejecutados.
Taller
Página 114-118 Libro Stalling
Modelos de tres estados                                                
·         Estado Listo                                                                         
·         Estado  Bloqueado                                                             
Estado  Ejecución   

Modelos de cinco estados
·         Estado Listo                                                                         
·         Estado  Bloqueado                                                             
·         Estado  Ejecución     
·         Estado Nuevo
        Estado Terminado   

Modelos de seis estados                                                
·         Estado Listo                                                                         
·         Estado  Bloqueado                                                              
·         Estado  Ejecución                                                               
·         Estado  Nuevo
·         Estado  Terminado
·         Estado  Suspendido   

Modelos de siete estados                                                
·         Estado Listo                                                                         
·         Estado  Bloqueado                                                             
·         Estado  Ejecución                                                               
·         Estado  Nuevo
·         Estado  Terminado
·         Estado  Suspendido – Listo Estado bloqueado           

                                          

lunes, 29 de febrero de 2016

Cronica 1995

El 24 de agosto de 1995, Microsoft lanza al mercado Windows 95, que marca un récord de ventas con 7 millones de copias durante las primeras cinco semanas. Es el lanzamiento más publicitado que Microsoft jamás ha realizado. Windows 95 es un sistema operativo con nterfaz gráfica de usuario híbrido de entre 16 y 32 bits, durante su desarrollo fue conocido como Windows 4. Sustituyó a MS-DOS como sistema operativo y a Windows 3.x como entorno gráfico. Se encuadra dentro de la familia de sistemas operativos de Microsoft denominada Windows 9x. En la versión OSR2 (OEM Service Release 2) incorporó el sistema de archivos FAT32, además del primer atisbo del entonces novedoso USB.
Windows 95 fue el sucesor de los tres sistemas operativos de Microsoft existentes para propósitos generales: Windows 3.1, Windows for Workgroups y MS-DOS. Esta versión incluía el soporte TCP/IP para la conexión a Internet y capacidades plug and play para facilitar a los usuarios la instalación de hardware y software. El sistema operativo también ofrecía capacidades multimedia mejoradas, características más potentes para la informática móvil y conexión de redes integrada.
Windows 95: OS/2 de IBM. En principio fue desarrollado en cooperación entre IBM y Microsoft (como años atrás con el DOS), y como años atrás surgieron diferencias que hicieron que cada empresa presentara su producto.
OS/2 fue un sistema operativo totalmente de 32 bits que muchos expertos consideran mejor, más estable y con mayores prestaciones que Windows 95, pero que (nuevamente) las campañas publicitarias relegaron a un segundo lugar, ya que la gran mayoría de los desarrolladores decidieron hacer sus programas "compatibles" con Windows 95 y no con OS/2.
En Windows 95 aparecen por primera vez el menú Inicio, la barra de tareas y los botones para minimizar, maximizar y cerrar ventanas
Es la era de los fax/módems, del correo electrónico, del nuevo mundo online y de los deslumbrantes juegos multimedia y el software educativo. Windows 95 tiene compatibilidad integrada con Internet, conexión de red por acceso telefónico y nuevas funciones Plug and Play que facilitan la instalación del hardware y software. El sistema operativo de 32 bits ofrece, además, funciones multimedia mejoradas, características más eficaces para equipos informáticos móviles y redes integradas.




La ola de Internet

Por otro lado a principios de la década de los 90, los entendidos del sector tecnológico hablan de Internet (una red de redes con el poder de conectar equipos en todo el mundo). En 1995, Bill Gates publica un memorando titulado "La ola de Internet" y califica a Internet como "el desarrollo más importante desde la llegada de los equipos informáticos".
En el verano de 1995, se publica la primera versión de Internet Explorer. Este navegador se une a los que ya competían por hacerse un lugar en la World Wide Web.

Referencias:  http://crilofer.blogspot.com.co/2011/10/evolucion-de-los-sistemas-operativos.html
http://ciclismoenlasangre.blogspot.com.co/2011/10/esta-entrada-del-blog-la-voy-dedicar.html

Multi-programación y Tiempo Compartido



Multi-programación: es una técnica que Permite que el sistema operativo ejecute uno o más procesos concurrente mente en la memoria principal. Y tomar turnos usando la unidad central de procesamiento, cualquiera que haya usado Windows ®, Unix o Linux ha experimentado un entorno de multi-programación porque estos sistemas pueden ejecutar un largo número de programas de usuario aparentemente de manera simultánea en una sola unidad central de procesamiento.

La sección que permite la multi-programación en un sistema operativo se denomina Kernel, éste software consiste en un numero de procedimientos que llevan a cabo funciones como crear tareas, decidir cual tarea correrá en un momento dado, proveyendo un mecanismo para cambiar al procesador de una tarea a otra y provee formas primitivas de acceso controlado a recursos compartidos. 


TIEMPO COMPARTIDO

Permiten la simulación de que el sistema y sus recursos son todos para cada usuario. El usuario hace una petición a la computadora, esta la procesa tan pronto como le es posible, y la respuesta aparecerá en la terminal del usuario. Los principales recursos del sistema, el procesador, la memoria, dispositivos de E/S, son continuamente utilizados entre los diversos usuarios, dando a cada usuario la ilusión de que tiene el sistema dedicado para sí mismo. Esto trae como consecuencia una gran carga de trabajo al Sistema Operativo, principalmente en la administración de memoria principal y secundaria. 

BLOQUE DE CONTROL DE PROCESOS

Es un registro especial donde el sistema operativo agrupa toda la información que necesita conocer respecto a un proceso particular. Cada vez que se crea un proceso el sistema operativo crea el BCP correspondiente para que sirva como descripción en tiempo de ejecución durante toda la vida del proceso. (BACKUP DE PROCESOS EN CADA INTERRUPCIÓN)


Referencias : http://www.araguaney.loquequierasya.com/papeles/Basicos.pdf

sábado, 27 de febrero de 2016

Funciones del SIstema Operativo


Funciones del sistema Operativo
Comodidad: Un sistema operativo hace que un computador sea más cómoda de utilizar.
Eficiencia: Un sistema operativo permite que los recursos de un sistema informático se aprovechen de una manera más eficiente.
Capacidad de Evolución: Un sistema operativo debe construirse de modo que permita el desarrollo efectivo, la verificación y la introducción de nuevas funciones en el sistema y, a la vez, no interferir en los servicios que brinda. Mantener el ritmo de los avances tecnológicos sin afectar los procesos ejecutados anteriormente.
  • Tasa de error: Se anticipa al error del usuario, posible solución.95%-27%
Máquina Virtual es para el acceso al hardware por seguridad
NIVELES DE SISTEMA INFORMATICO

 Software  (Aplicaciones,Utilidades,S.O)
Firmware
Hardware


Aplicaciones-> Usuario Final
Utilidades->Usuario Programador
S.O-> Usuario Diseñador
Firmware: Software programado físicamente en el hardware como controlador y componente.
Cuadro comparativo SO actuales (Windows, MAC, IOS, LINUX)
Tipo licenciamiento
Tiempo de respuesta
Velocidad de procesamiento

Proceso


Proceso
  • Entidad que puede llegar hacer uso del procesador que ocupa un lugar en la memoria.
  • Programa en ejecución, una instancia ejecutable en memoria.
La Mono-programación evoluciono interrumpiendo los procesos, reiniciándolo en la secuencia que llevaba.
La memoria inicia un proceso al finalizar el proceso este inactivo, por medio de una interrupción. Los Resultados de la interrupción anteriores almacenan en el bloque de control de procesos.

Tiempo de latencia (Backup Restore):
Guardar en el bloque de control de proceso del último resultado, recuperar los datos del bloque de control de procesos del siguiente proceso.


Tiempo de llegada:
Punto donde Inicia de cada proceso.
Nota: No pueden ejecutarse 2 programas al mismo tiempo en un diagrama de tiempos de procesos por lo tanto en el procesador.

Memoria RAM / ROM

Memoria RAM:

RAM proviene de ("Random Access Memory") ó memoria de lectura aleatoria: es un dispositivo electrónico que se encarga de almacenar datos e instrucciones de manera temporal, de ahí el término de memoria de tipo volátil ya que pierde los datos almacenados una vez apagado el equipo; pero a cambio tiene una muy alta velocidad para realizar la transmisión de la información. 

 Memoria ROM

Es memoria no volátil de solo lectura. Igualmente, también hay dos características a destacar en esta definición. La memoria ROM es memoria no volátil: Los programas almacenados en ROM no se pierden al apagar el ordenador, sino que se mantienen impresos en los chips ROM durante toda su existencia además la memoria ROM es, como su nombre indica, memoria de solo lectura; es decir los programas almacenados en los chips ROM son inmodificables. El usuario puede leer ( y ejecutar ) los programas de la memoria ROM, pero nunca puede escribir en la memoria ROM otros programas de los ya existentes.

 

ALU

 ALU

la unidad aritmética lógica o unidad aritmético-lógica, también conocida como ALU es un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (si, y, o, no), entre valores (generalmente uno o dos) EJM Operaciones lógicas de bits (AND, NOT, OR, XOR, XNOR)

Set e Registros

Los registros del procesador se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética.


Los registros internos del procesador se puede clasificar en 6 tipos diferentes

  1. Registros de segmento
  2. Registros de propósito general
  3. Registros de apuntadores
  4. Registros de banderas
  5. Registros de Puntero de instrucción
  6. Registros de Pila 






Componentes Basico


Sistema Operativo = Controlar, interacción gráfica entre el software y el hardware

Tipos de software:

  • Software Aplicativo
  • Software de Desarrollo
  • Software Operativo

Componente Básicos

  1. CPU
  2. Memoria RAM
  3. Memoria ROM
  4. Unidad de entradas y salidas

jueves, 18 de febrero de 2016

Generación 0



GENERACIÓN CERO
INTEGRANTES
   1.       Administrador de tiempos:
a.       Programación de horarios para los programadores
   2.       Administrador de consola:
a.       Grababa los programas en tarjetas perforadas pasando el código en lenguaje hexadecimal luego binario.
   3.       Administrador de Recursos:
a.       Controlaba la biblioteca de recursos de programas ya digitados.
   4.       Administrador de Procesamiento:
a.       Grababa los programas en una cinta secuencial
   5.       Administrador de impresión:
a.       Toma la cinta recolectora de datos, la imprimía y administraba el papel.
Entregaba respectivamente los programas a su programador 

lunes, 15 de febrero de 2016

Introducción a la clase

Introducción a la clase
Definición de fechas parciales:
·         29 Febrero
·         11 Abril
·         16 Mayo
Revisión de actividades:
·         3 Marzo
·         14 Abril
·         19 Mayo
Definición de temáticas por semanas