Entradas

Mostrando entradas de 2010

Apuntes de clase 20/05/2010

Tendencias en sistemas operativos Las principales abstracciones de hoy día: procesos, hilos, sockets, y archivos no manejan adecuadamente los problemas de administración de la localidad, disponibilidad y tolerancia a fallos. Los siguientes sistemas operativos distribuidos pueden resolver estos problemas. Cualquier fragmento de código debe poder correr en cualquier parte. El sistema debe manejar localidad, replicación y migración de datos y operaciones. Los sistema operativos del futuro deben estar listos para Internet, comercio electrónico, intranets y extranets, operaciones basadas en Internet, servidores de correo electrónico, web, servicios web, etc. El sistema debe ser: Auto configurable Auto ajustable Auto monitoreable Escalable Confiable Seguro Robusto Escalable (a nivel mundial) Tolerable a fallos Persistente Preparado para la red Favorable a la movilidad Extensible Orientado a objetos Orientado a GUI Mayores longitudes de palabra 64, 128 bits Ambientes multitier (multinivel) Re...

Apuntes de clase 18/05/2010

Asignación de espacio para archivos Contigua Cada archivo ocupa un conjunto de bloques contiguos en el disco. Se asigna un único conjunto de bloques en tiempo de creación. Simple-Solo se requiere la ubicación inicial (numero del bloque) y la longitud(numero de bloques) Problemas: Fragmentación, perdida de espacio en disco. Asignación enlazada/encadenada Cada archivo es una lista enlazada de bloques de disco: los bloques pueden estar dispersos en cualquier parte del disco. En lo que respecta a la administración de espacio libre, no hay desperdicio de espacio. No hay acceso aleatorio. Asignación indexada Un bloque que sirve para los indices de los archivos. Este bloque de indices posee los apuntadores a la memoria física. Para esta opción existe la limitante de que el máximo numero de bloques al que puedo apuntar esta delimitado por el tamaño del bloque, por tanto podemos utilizar paginación o indices multiniveles, es decir, el bloque de direcciones principal apunta solo a otros bloque...

Apuntes 11/05/2010

Imagen
Planificacion del diso El SO es responsable por el uso eficiente del hw- para los discos duros, esto significa tener un tiempo de acceso mas rápido y un mayor ancho de banda para el disco. El tiempo de acceso tiene dos componentes principales: El tiempo de búsqueda es el tiempo en el que el disco debe mover las cabezas hasta el cilindro que contiene el sector deseado. Latencia rotacional es el tiempo adicional de espera para que el disco rote sus cabezas hasta el sector deseado. Minimizando el tiempo de búsqueda El ancho de banda del disco es el numero total de bytes transferidos, dividido por el tiempo total entre la primera solicitud del servicio y el completado de la transferencia. FCFS (First come first serve), en la cola de llagadas de solicitudes se dirige a la que haya llegado primero. SSTS (Shortest seek time first) El planificador escoge el servicio que mas cerca se encuentre en el momento, esto conlleva a problemas de inanición. SCAN, el cabezote del disco recorre el disco de...

Apuntes de clase 4/5/10

Imagen
Politica de recuperacion Determina cuando una pagina se deberia traer a la memoria principal. Con paginacion por demanda (demand paging), una pagina se trae a memoria solo cuando se hace referencia a una posicion en dicha pagina. -Se producen muchos fallos cuando un proceso se arranca inicialmente. Algoritmos de reemplazo de paginas. Las faltas de paginas forza el cambio: Que pagina debe ser removida Establecer espacio para la pagina que entra. Las paginas modificadas deben ser guardadas las otras pueden sobreescribirse. Es aconsejable no reemplazar una pagina usada con frecuencia, seguramente la necesitaremos. Algoritmo optimo de reemplazo de pagina: reemplaza la pagina que se requerira en el punto mas lejano. Optimo pero no lograble. La estimacion se basa en el registro de usos de las corridas anteriores de los procesos, pero los programas siendo dinamicos no hay forma de determinar...

Apuntes de clase 29/04/10

Esquema de traducción de direcciones Las direcciones generadas por la cpu se dividen en: Numero de pagina (p) utilizada en la tabla de paginas que contiene las direcciones base de cada pagina en la memoria física. El desplazamiento de pagina (d) combinado con la dirección base definen la dirección de memoria fisica que es enviada a la unidad de memoria. Traducción: proceso referencia (p,d), se busca en la tabla de correspondencia de paginas para ver la p' (p real), la dirección real es p'+d. Por agilidad tabla de correspondencia en chaché. Si no hay resistencia de la pagina en memoria principal, sucede una falta de pagina. r=0 si pagina no esta en real. Elementos de la tabla de paginas: desactivada chache referencia modificada protección presente/ausente N° de Marco/Swap Otras informaciones: Copia en escritura Edad No pagina (fija en memoria física) Rellenar a ceros Buffer de traducción anticipada (TLB) La tabla de paginas se mantiene en memoria principal. El registro base de ...

Apuntes de clase 27/04/10

Vinculacion de las instrucciones y los datos a la memoria Estadios: Tiempo de compilacion Tiempo de carga Tiempo de ejecución Overlays (superposiciones) Ya no es necesario que el programa sea de menor tamaño al de la memoria, el overlays permite que se cargen instrucciones parciales y secuenciales, pudiendo cargar la mitad de un programa y despues la segunda mitad. Generalmente la memoria principal tiene dos particiones: Para el sistema operativo residente Los procesos de los usurios Sistema de asignacion de multiples particiones fisicas: Este esquema realiza al iniciar el SO donde se reservava el espacio en memoria para el SO y el resto se subdivida en particiones. Si un programa no cabe en una particion al incio se configurarian unas particiones mas grandes. El mas grave problema con este sistema surge cuando se cargan programas pequeños en particiones grandes, considerando una gran ineficiencia. Para la proteccion de memoria se utilizada registro base y registro limite Asignacion co...

Apuntes de clase 22/04/10

Imagen
Planificacion de procesos en Solaris 2 Trabaja con una priorizacion que consiste, en cambiar el tiempo del delay (quantum de tiempo), teniendo varias categorias, tiempo real, sistema, interactivos y tiempos compartidos. Planificacion en POSIX Cada politica de planificacion lleva asociado un rango de al menos 32 niveles de prioridad. El planificador elejira cual debe ser asignado a la CPU de acurdo a esta prioridad escogiendo el de mayor prioridad. Planificacion de procesos en Linux: Trabaja con dos algoritmos: tiempo compartido y tiempo real. Tiempo compartido: prioridad basada en creditos el proceso con mas creditos se despcha. se restan los creditos cuando suceden interrupciones. Planificación en Windows Las prioridades de windows se organizan en dos bandas o clases: tiempo real variable Planificador expropiativo basado en prioridades. Planificacion para multiples procesadores La planificacion es mas compleja cuando se tienen varios procesadores. Escenarios: Asignacion de procesos...

Apuntes de clase 15/04/10

Imagen
Hilos en windows (win 2000) Windows controla sus procesos como una estructura en la cul contiene: ID de proceso Descriptor de seguridad Prioridad base Afinidad de procesador por defecto Limites de cuota Tiempo de ejecucion Contadores E/S Contadores de operaciones de MV Puertos de excepciones de depurados Los hilos también pero con estructura: ID hilo Contexto del hilo prioridad dinámica prioridad base afinidad de procesador de hilo tiempo de ejecución del hilo estado de alerta contador de suspensiones testigo de personificación puerto de finalización estado de salida del hilo Los servicios que presta son: Crear hilo abrir hilo solicitar información de hilo establecer información del hilo hilo actual terminar hilo obtener contexto establecer contexto suspender reanudar alertar hilo chequear estado de alerta registrar puerto de finalizacion Estado de hilos: Planificacion de procesos La planeacion de la cpu, es aquella parte del sistema que se encarga de determinar como se usa el procesad...

Apuntes de clase 8/04/10

Imagen
La CPU cambia de proceso a proceso. en una ejecución para cambiar de un proceso a otro el sistema se interrumpe por llamado del sistema, se guarda el estado del proceso actual y se carga el estado guardado del nuevo. A este cambio se le llama cambio de contexto. (Context switch) Planificadores: El planificador de corto plazo o planificador de CPU que selecciona que proceso debe ser ejecutado enseguida y se le asigna la CPU. El despachador trabaja en un lapso de milisegundos. Planificador de medio plazo: intermedio, se dan para los procesos que se encuentran bloqueados porque requieren mas tiempo para empezar con su ejecución. Planificador de largo plazo, que controla el grado de multiprogramación. Los procesos pueden ser descritos como: Procesos limitados por E/S Procesos limitados por CPU Creación de procesos Los procesos padres crean hijos, los cuales, a su vez crean otros procesos, conformando un arbol de procesos. Recursos compartidos: los procesos hijos e hijos comparten los recur...

Apuntes de clase 6/04/10

Imagen
Estado de los procesos: En la medida que se ejecuta un proceso su estado se modifica: Nuevo: el proceso se esta creando. Corriendo: las instrucciones están ejecutandoce. Esperando/Bloqueado: el proceso esta a espera de la ocurrencia de alguna evento. Listo: el proceso esta esperando a ser asignado al procesador. Terminado: El proceso ha terminado su ejecución. Operaciones sobre los procesos: crear destruir suspender retardar abortar leer atributos reanudar cambiar prioridad bloquear E/S despertar despachar temporizar Descriptor del proceso para SO en tabla de procesos, informacion asociada con cada proceso. PID identificacion de procesador estado del proceso identificacion de usuarios contador de programa apuntador acceso padre apuntador acceso hijos registros visibles de la CPU informacion de planificacion de la CPU informacion de admon de la memoria informacion contable informacion de estado E/S localiza, identifica, estado padre, hijos, prioridad, memoria, estadisticas, recursos de ...

Apuntes de clase 25/03/2010

Imagen
Tipos de SOs de acuerdo al kernel Los sistemas se pueden clasificar de acuerdo al tamaño del kernel, en sus inicios fue un macrokernel un sistema centralizado que a la vez a fue Monokernel, con la modernización de los SO, cada vez estos reducen su consumo de recursos, externizando sus operaciones. Estos son microkernel, nanokernel y exokernel que significa ausencia del kernel. Arquitectura microkernel Proporciona un numero pequeño de servicios Intenta tener un kernel pequeño y escalable Alto grado de modularidad Extensible, portable y escalable Se incrementa el nivel de comunicación entre módulos Puede degradar el rendimiento del sistema Beneficios de una organización micronúcleo: Interfaces uniformes en las peticiones realizadas por un proceso Extensibilidad Flexibilidad Portabilidad Fiabilidad Soporte a sistemas distribuidos Sistema operativo orientado a objetos ...No pueden haber muchos errores en algo pequeño... Arquitectura Exokernel Un SO se interpone entre las aplicaciones y e...

Clase 23/3/10

Imagen
Maquinas virtuales Nace en los años 70's donde apenas empezaba la computación personal. Este concepto fue inventado por la IBM como método de tiempo compartido para los mainframes . Una maquina vitual es una copia aislada y protegida del hardware de la maquina subyacente. El objetivo es simplificar el uso de las capas inferiores tomando el hw y el kernel como si fueran los dos el hw . La maquina virtual lo que pretende es que el nuevo SW vea el hardware con ayuda de otro SW el sistema de HW mas simple. Sobre el HW tenemos el monitor de maquina virtual, después las maquinas virtuales, cada una con su kernel y sobre estos los procesos. Arquitectura VMware En sus inicios virtualizaban bajo MS -DOS para intel 8080 luego obtubieron su sistema operativo bajo Linux donde lograron virtualizar CPU's memorias y dispositivos para montar los SO huéspedes. Otros ejemplos... BOCHS , QEMU , Virtual PC . Para- virtualizacion Concepto creado por Sun Microsystems en su sistema so...

Apuntes de clase 16/03/2010

Imagen
Características de Win32 Define los servicios ofrecidos por los sistemas windows 95/98, NT, 2000, XP No es un estándar API totalmente distinto a POSIX Los recursos se referencian mediante manejadores Nombres de funciones largos y descriptivos Dispone de tipos de datos predefinidos Administración de procesos Un proceso es un programa en ejecución, que para ejecutarce necesita unos recursos de memoria archivo, CPU, y dispositivos I/O. El SO es responsable de las siguientes actividades relacionadas con la administración de procesos. Creación y eliminacion. Suspension y reanudación. Proveer los mecanismos para: Sincronización de procesos Comunicación entre procesos Por ejemplo dos procesos que poseen diferente usuario no pueden modificar el mismo archivo, uno debe trabajar con una copia. Administración de memoria La memoria principal un medio de almacenamiento volátil y la labor del sistema operativo es asignar y liberar esta memoria que esta conformada por un vector unidimensional. Para s...

Apuntes de clase 11/02/10

Operación en modo dual : El SO debe garantizar la independencia de los programas que ejecuta. El SO debe conceder al hardware al menos dos modos de operación: Modo Usuario, con restricciones. Modo Monitor, también llamado modo supervisor o modo sistema (kernel), ejecución que hace el SO. El sistema mantiene un constante cambio entre estos modos para poder llevar a cabo una ejecución. Todas las instrucciones de E/S son privilegiadas , solo el so tiene acceso al medio y controlarlo. También debe de asegurarse que las instrucciones de usuario no se ejecuten con modo privilegiado , el usuario tendría el control sobre el ordenador. Se debe proteger la memoria o al menos al vector de interrupciones y el vector de las rutinas de servicios de interrupción. Para esto se agregan dos registros que determinan el rango de las direcciones validas que un programa puede acceder, un registro base y un registro limite. Proteccion por CPU Temporizador Interrumpe al computador después de un periodo espe...
Imagen
Apuntes de clase 9/3/10 Controlador: Componentes que permiten que la CPU a través de los buses del sistema interactúe con los dispositivos. Los drivers y controladores son componentes de HW y SW que de cierta forma virtualiza el uso de dispositivos. Arranque de un PC La BIOS es un software que instalada desde la fabricacion del PC se programa para que busque en una dirección o entrada especifica el sistema operativo. La ROM carga el sector del boot del SO y le proporciona el control sobre las componentes. shell : estado visual o interpretado a texto que es espectante , en espera de ordenes. Cuando se presenta una interrupción: desactiva las otras interrupciones guarda el estado del sistema (variables) ejecuta la rutina que le indica la interrupción reactivar variables de estado Estructura del Acceso Directo a Memoria (DMA) Utilizando dispositivos de entrada y salida de alta velocidad capaces de transmitir informacion se transfieren bloquen de datos al buffer de almacenamient...

Apuntes de clase 2/3/10

Imagen
APUNTES DE CLASE Sistemas multiprocesador: sistemas con más de una CPU en comunicación muy cercana. Sistemas fuertemente acoplados, los procesadores comparten la memoria y el reloj; la comunicación por lo general se realiza a través de la memoria compartida. Sistemas débilmente acoplados, funcionamiento por módulos, no es necesario que todas las componentes funcionen paralelamente, si alguno falla es posible que el sistema siga funcionando, no con todos los beneficios del sistema completo, permite una reparación rápida y sin interrupción de servicio. La comunicación entre los procesadores se comunican a través de buses de alta velocidad o lineas telefónicas. Ventajas de los sistemas paralelos: Incremento del rendimiento Economía Incrementan la confiabilidad (degradación, sistema para control de fallos a nivel de SW) Estas ventajas se dan gracias a la sinergia natural de cualquier sistema. Multiprocesamietno simétrico (SMP), cada procesador corre una copia del SO, muchos procesos con ...

Apuntes de clase

Imagen
APUNTES DE CLASE 25/02/10 http://www.youtube.com/watch?v=FScddkTMlTc Participación en el mercado de los SO de los teléfonos móviles. La aparicion y el desarrollo de la telefonia movil y el uso de sistemas operativos como plataforma de funcionamiento a roto todas las proyecciones de crecimiento. SO destacados en la participacion en el mercado para smartphones : Symbian OS, Iphones , Palm OS, RIM BlackBerry , Windows Mobile , Linux. Sistemas de tiempo real. Responden de acuerdo al sistema que estén controlando. Ej sistema de administración de medicamentos constante. No necesariamente debe ser rápido, solo lo suficiente para cumplir con el objetivo. Exactitud funcional: se toma el tiempo necesario para hacer las cosas de la mejor manera. Exactitud temporal: realiza las acciones antes de que ya no sea necesario así no sea de la mejor manera. Sistema de tiempo real duros - La memoria secundaria es muy limitada o ausente, los datos son almacenados en memoria de corto plazo, ( e...

Apunted de clase Tipologias

Imagen
APUNTES DE CLASE 23/2/10 Wearable PC (pc para ponerse) procura ser un dispositivo que trata de integrarse al cuerpo. Trata algunas veces de imitar funciones del cuerpo u obtener de ellas un mejor uso con la implementación de la tecnología. Smartbook , una mezcla entre smartphone y netbook. Sistemas embebidos/ computación ubicua. Para los sistemas embebidos el hw y sw casi resulta ser una integración, lo que garantiza un menor tiempo en procesamiento; además porque sus funciones son dedicadas. -SoC (System on a Chip) en los procesadores de este tipo el procesador no solo contiene un circuito que realiza funciones lógicas y matemáticas, hoy estos poseen ya sistemas completos que reducen costos tamaño, e interacción con dispositivos. SO para PC embebidos eCos, Windows XP embedded, FreeRTOS, Linux CE, Embedded Linux, NetBSD, LynxOS, OS-9, IOS. RFID tecnología de identificación por radio frecuencia, dispositivo pasivo con características activas (al recibir ondas electromagnéticas de cie...

Apuntes de clase

APUNTES DE CLASE, Jueves 18/02/2010 Ambiente de computación: Utiliti computing , se debe gracias a la virtualización de los servicios, donde los datos se encuentran dispersos y puedo acceder a ellos, igualmente con las aplicaciones; lo importante es que este produzca resultados, y además que estos se obtienen de forma segura y barata. Computación empotrada (enbebida), es la aplicacion de tecnologías inteligentes dentro de equipos de computación, computación en computación. (automoviles, neveras modernas, microondas). TIPOS DE SISTEMAS OPERATIVOS: -Monoprogramación: programa, datos y ordenes, instrucciones secuenciales (batch). -Interactiva. -Por lotes interactiva. Tipos de sistemas operativos Multiprogramación Multitarea, varios procesos, mas de una tarea a la vez. Monousuario, 1 solo usuario puede acceder a el en el mismo lapso de tiempo. Multiusuario, varios usuarios interactivos. Multiacceso, Un programa en varias terminales. Multiprocesador, Varios procesadores, seudosimultaneida...
http://cid-42f0cdb25577b951.skydrive.live.com/browse.aspx/P%c3%bablico/sistemas%20operativos Bitácora 1 Yesica Herrera-Leonardo Delgado
Fechas de etapa de desarrollo Semana 1, 7-12/Febrero : Inicio del proyecto, se crea la interfaz principal que abra archivos y reconozca archivos con la extensión ". ch "-11/02/2010