Issuu on Google+

UNIDAD III. ADMINISTRACIÓN DEL ALMACENAMIENTO 3.1. ASIGNACIÓN DE MEMORIA CONTIGUA Esquemas de asignación de memoria. La asignación de memoria es una de las principales responsabilidades de los sistemas operativos, pues esta es la forma que el mismo tiene de destinar y dedicar una cierta cantidad de memoria a los procesos en ejecución. En un esquema de asignación de memoria contigua un proceso se ubica en su totalidad en posiciones consecutivas de memoria. El sistema operativo (s.o.) es el responsable de asignar memoria principal a los procesos para que puedan ser ejecutados. En un modelo de memoria con asignación contigua, todo el espacio lógico de un proceso (Código, Datos, Pila) ha de estar ubicado de forma contigua en memoria principal, es decir en direcciones físicas consecutiva 3.2. SEGMENTACIÓN La segmentación es un esquema de administración de la memoria que soporta la visión que el usuario tiene de la misma. Un espacio de direcciones lógicas es una colección de segmentos. Cada segmento tiene un nombre y una longitud. Las direcciones especifican tanto el nombre del segmento como el desplazamiento dentro del segmento La segmentación permite al programador contemplar la memoria como si constara de varios espacios de direcciones o segmentos. Los segmentos pueden ser de distintos tamaños, incluso de forma dinámica. Esta organización ofrece al programador varias ventajas sobre un espacio de direcciones no segmentado: 1. Simplifica la gestión de estructuras de datos crecientes. 2. Permite modificar y recopilar los programas independientemente, sin que sea necesario recopilar o volver a montar el conjunto de programas por completo. 3. Se presta a la compartición entre procesos. 4. Se presta a la protección. 3.3. SEGMENTACIÓN CON PAGINACIÓN (PAGINACIÓN Y SEGMENTACIÓN COMBINADAS) Tanto la paginación como la segmentación tienen sus ventajas. La paginación elimina la fragmentación externa y de este modo, aprovecha la memoria principal de forma eficiente. En un sistema con paginación y segmentación combinadas, el espacio de direcciones de un usuario se divide en varios segmentos según el criterio del programador. Cada segmento se vuelve a dividir en varias páginas de tamaño fijo, que tienen la misma longitud que un marco de memoria principal. 3.4. MODELO DE MEMORIA VIRTUAL Cada vez que hacemos doble clic sobre un ejecutable (o cualquier otra manera de iniciar un programa), Windows llamará a la función CreateProcess para iniciar un nuevo proceso. Una de las cosas que hace esta función (entre otras muchas) es crear un espacio privado de direcciones virtuales de 4 GB. Esto significa que Windows considera que tenemos una memoria de 4 GB toda para nosotros. Así que disponemos de un rango de direcciones desde 0x00000000 hasta 0xFFFFFFFF, desde 0 hasta 11111111111111111111111111111111 (32 bits) es decir, desde el byte 0 al byte número 4.294.967.295.


En teoría podríamos recorrernos ese rango a través de un puntero y todo funcionaría. A este modo de gestionar la memoria se le denomina “Modelo de memoria plano”. Que tengamos un espacio de direcciones de 4 GB no significa que tengamos 4 GB de memoria RAM instalada, sino que la suma entre la memoria RAM física, y la memoria virtual puede llegar a 4 GB. 3.5. MEMORIA VIRTUAL La memoria virtual es una técnica para proporcionar la simulación de un espacio de memoria mucho mayor que la memoria física de una máquina. Esta "ilusión" permite que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria física. La ilusión de la memoria virtual está soportada por el mecanismo de traducción de memoria, junto con una gran cantidad de almacenamiento rápido en disco duro. Así en cualquier momento el espacio de direcciones virtual hace un seguimiento de tal forma que una pequeña parte de él, está en memoria real y el resto almacenado en el disco, y puede ser referenciado fácilmente. Debido a que sólo la parte de memoria virtual que está almacenada en la memoria principal, es accesible a la CPU, según un programa va ejecutándose, la proximidad de referencias a memoria cambia, necesitando que algunas partes de la memoria virtual se traigan a la memoria principal desde el disco, mientras que otras ya ejecutadas, se pueden volver a depositar en el disco (archivos de paginación). 3.6. SISTEMAS DE ARCHIVOS Aunque los discos rígidos pueden ser muy chicos, aún así contienen millones de bits, y por lo tanto necesitan organizarse para poder ubicar la información. Éste es el propósito del sistema de archivos. Recuerde que un disco rígido se c¿onforma de varios discos circulares que giran en torno a un eje. Las pistas (áreas concéntricas escritas a ambos lados del disco) se dividen en piezas llamadas sectores (cada uno de los cuales contiene 512 bytes). El formateado lógico de un disco permite que se cree un sistema de archivos en el disco, lo cual, a su vez, permitirá que un sistema operativo (DOS, Windows 9x, UNIX, ...) use el espacio disponible en disco para almacenar y utilizar archivos. El sistema de archivos se basa en la administración de clústers, la unidad de disco más chica que el sistema operativo puede administrar. Un clúster consiste en uno o más sectores. Por esta razón, cuanto más grande sea el tamaño del clúster, menores utilidades tendrá que administrar el sistema operativo... Sistema operativo Dos Windows 95 Windows 95 OSR2 Windows 98 Windows NT4 Windows 2000/XP Linux MacOS OS/2 SGIIRIX FreeBSD, OpenBSD Sun Solaris IBM AIX

Tipos de sistemas de archivos admitidos FAT16 FAT16 FAT16, FAT32 FAT16, FAT32 FAT, NTFS (versión 4) FAT, FAT16, FAT32, NTFS (versiones 4 y 5) Ext2, Ext3, ReiserFS, Linux Swap (FAT16, FAT32, NTFS) HFS (Sistema de Archivos Jerárquico), MFS (Sistemas de Archivos Macintosh) HPFS (Sistema de Archivos de Alto Rendimiento) XFS UFS (Sistema de Archivos Unix) UFS (Sistema de Archivos Unix) JFS (Sistema Diario de Archivos)


Coexistencia de varios sistemas de archivos Cuando coexisten varios sistemas operativos en la misma máquina, la elección de un sistema de archivos es un gran problema. Debido a que el sistema de archivos está estrechamente ligado al sistema operativo, cuando existen varios sistemas operativos, usted debe elegir un sistema de archivos para cada uno, teniendo en cuenta que es posible que deba acceder a los datos de un sistema operativo desde otro. Una solución sería la de usar particiones FAT para todos los sistemas, asegurándose de que las particiones no sean mayores a 2 GB. La solución más apropiada sería la de utilizar, para cada SO, una partición cuyo sistema de archivos sea el que mejor se adapte a ésta y utilizar una partición FAT16 dedicada para que los diferentes sistemas operativos compartan datos. ESTRUCTURA DE ALMACENAMIENTO MASIVO El almacenamiento constituye una de las partes principales dentro de los sistemas computacionales, ya que es en dispositivos de gran capacidad donde la información es guardada para luego ser accedida o recuperada. Uno de los mayores dispositivos que se utiliza para este propósito son los conocidos díscos duros (discos rígidos) La estructura física de un disco rígido está compuesta por: • • • •

Cabezas lectoras que recorren la superficie del disco Platos que son pequeños discos que se encuentra uno sobre otro y compuestos por caras. Las pistas que son circunferencias ubicadas en una cara. Y cilindros definidos como la unión de pistas alineadas verticalmente.

Esta es la distribución física de un disco, ahora analizaremos brevemente las distintas planificaciones que se utilizan para acceder a los datos de un disco. Una correcta planificación trae con sigo un aumento en la velocidad de acceso a datos, es decir hace que la cabeza de lectura efectúa un trabajo eficiente en menor tiempo, entre las planificiones se pueden encontrar: Planificación FCFS: Conocido como first-come-fist-served es un algoritmo que atiende las peticiones en orden de llegada sin importar si se encuentran en ragos muy dispersos. No es muy eficiente pues el cabezal de lectura recorre la superficie de una manera irregular. Planificación SSTF: Basada en el principio de short-seek-time-first estable las peticiones de dirección de tal manera que será atendida aquella que se encuentre más cerca de la cabeza de lectura. Este algoritmo reduce considerablemente el tiempo, pero como desventaja puede provocar que inanición por la presencia de solicitudes siempre menores. Planificación SCAN: También conocido como algoritmo del elevador, pues recorre toda la longitud de los platos de un lado a otro buscando en su camino las solicitudes que se encuentren pendientes. Uno de sus inconvenientes es el que las solicitudes de acceso no tienen un tiempo de espera uniforme, es decir, las de un extremo serán atendidas luego de un tiempo mayor. Planificación C-SCAN: Esta planificación es una variación del anterior que resuelve la espera de tiempo para cada solicitud, haciendo un recorrido uniforme en cuanto ha atender pedidos lo que hace que la cabeza lectora recorra el plato de inicio a fin y retorne. Planificación LOOK: En la práctica los dos algoritmos anteriores, que recorren todo el plato no son implementados, si no que se usa más la forma de detectar la última petición y regresar nuevamente al principio, es decir no hay razón de seguir recorriendo si ya no existen solicitudes.


Otro aspecto importante en el almacenamiento masivo: Espacio de Intercambio Este es un concepto importante pues su implementación es conocida como memoria virtual. Y que es lo que hace? pues permite aumentar la cantidad de memoria de tal manera que el SO moverá al disco todo o parte de un proceso sin mucha actividad, permitiendo liberar recursos. Para ubicar el espacio de intercambio existen dos formas, la primera como un fichero de intercambio que puede reducir o ampliar su tamaño pero que puede ser afectado por la paginación y la segunda una Partición de intercambio, que es básicamente especificar una partición del disco para utilizar, y en diferencia a la anterior no puede ser modificado su tamaño. existen algunos otros medios que permiten almacenar información de alguna u otra manera como los discos removibles, los magnéticos, las memorias flash y otros muchos que aún estan en desarrollo. UNIDAD IV LA GESTIÓN DE ENTRADA/SALIDA 4.1 DISPOSITIVOS DE ENTRADA/SALIDA 1.- Los Dispositivos de Entrada: Estos dispositivos permiten al usuario del computador introducir datos, comandos y programas en el CPU. El dispositivo de entrada más común es un teclado. Los datos se leen de los dispositivos de entrada y se almacenan en la memoria central o interna. Los Dispositivos de Entrada, convierten la información en señales eléctricas que se almacenan en la memoria central. Los Tipos de Dispositivos de Entrada Más Comunes Son: a) Teclado: El teclado es un dispositivo eficaz para introducir datos no gráficos como rótulos de imágenes asociados con un despliegue de gráficas. Teclado 101: El teclado pesa 1.1 Lb y mide 11.6 Pulgadas de ancho, 4.3 pulgadas de profundidad y 1.2 de altura. Es pequeño. Sin embargo se siente como un teclado normal. Teclado Ergonómico: su característica principal es el diseño del teclado ya que éste evita lesiones y da mayor comodidad al usuario, ya que las teclas se encuentran separadas de acuerdo al alcance de nuestras manos, lo que permite mayor confort al usuario. Teclado para Internet: El nuevo Internet Keyboard incorpora 10 nuevos botones de acceso directo, integrados en un teclado estándar de ergonómico diseño que incluye un apoya manos. El software incluido, posibilita la personalización de los botones para que sea el teclado el que trabaje como nosotros queramos que lo haga. Teclado Alfanumérico: Es un conjunto de 62 teclas entre las que se encuentran las letras, números, símbolos ortográficos, Enter, alt, etc; se utiliza principalmente para introducir texto. Teclado de Función: Es un conjunto de 13 teclas entre las que se encuentran el ESC, tan utilizado en sistemas informáticos, más 12 teclas de función. Estas teclas suelen ser configurables pero por ejemplo existe un convenio para asignar la ayuda a F1. Teclado Numérico: Se suele encontrar a la derecha del teclado alfanumérico y consta de los números así como de un Enter y los operadores numéricos de suma, resta, etc.


Teclado Especial: Son las flechas de dirección y un conjunto de 9 teclas agrupadas en 2 grupos; uno de 6 (Inicio y fin entre otras) y otro de 3 con la tecla de impresión de pantalla entre ellas. Teclado de Membrana: Fueron los primeros que salieron y como su propio nombre indica presentan una membrana entre la tecla y el circuito que hace que la pulsación sea un poco más dura. Teclado Mecánico: Estos nuevos teclados presentan otro sistema que hace que la pulsación sea menos traumática y más suave para el usuario. b) Ratón ó Mouse: Es un dispositivo electrónico que nos permite dar instrucciones a nuestra

computadora a través de un cursor que aparece en la pantalla y haciendo clic para que se lleve a cabo una acción determinada; a medida que el Mouse rueda sobre el escritorio, el cursor (Puntero) en la pantalla hace lo mismo. Tal procedimiento permitirá controlar, apuntar, sostener y manipular varios objetos gráficos (Y de texto) en un programa. Tipos de Mouse Mecánica: era poco precisa y estaba basada en contactos físicos eléctricos a modo de escobillas que en poco tiempo comenzaban a fallar. Óptica: es la más utilizada en los "ratones" que se fabrican ahora. Opto mecánica: son muy precisos, pero demasiado caros y fallan a menudo. Existen "ratones", como los trackballs, que son dispositivos en los cuales se mueve una bola con la mano, en lugar de estar abajo y arrastrarla por una superficie. Mouse Óptico Mouse Trackball: Es una superficie del tamaño de una tarjeta de visita por la que se desliza el dedo para manejar el cursor, son estáticos e ideales para cuando no se dispone de mucho espacio. c) Micrófono: Los micrófonos son los transductores encargados de transformar energía acústica en energía eléctrica, permitiendo, por lo tanto el registro, almacenamiento, transmisión y procesamiento electrónico de las señales de audio. d) Scanner: Es una unidad de ingreso de información. Permite la introducción de imágenes gráficas al computador mediante un sistema de matrices de puntos, como resultado de un barrido óptico del documento. La información se almacena en archivos en forma de mapas de bits (bit maps), o en otros formatos más eficientes como Jpeg o Gif. e) Cámara Digital: se conecta al ordenador y le transmite las imágenes que capta, pudiendo ser modificada y retocada, o volverla a tomar en caso de que este mal. Puede haber varios tipos: Cámara de Fotos Digital: Toma fotos con calidad digital, casi todas incorporan una pantalla LCD (Liquid Cristal Display) donde se puede visualizar la imagen obtenida. Cámara de Video: Graba videos como si de una cámara normal, pero las ventajas que ofrece en estar en formato digital, que es mucho mejor la imagen, tiene una pantalla LCD por la que ves simultáneamente la imagen mientras grabas. Webcam: Es una cámara de pequeñas dimensiones. Sólo es la cámara, no tiene LCD. Tiene que estar conectada al PC para poder funcionar, y esta transmite las imágenes al ordenador. f)Lector de Código de Barras: Dispositivo que mediante un haz de láser lee dibujos formados por barras y espacios paralelos, que codifica información mediante anchuras relativas de estos elementos.


g)Lápices Ópticos: Es una unidad de ingreso de información que funciona acoplada a una pantalla fotosensible. Es un dispositivo exteriormente semejante a un lápiz, con un mecanismo de resorte en la punta o en un botón lateral, mediante el cual se puede seleccionar información visualizada en la pantalla. h) Palancas de Mando (Joystick): Dispositivo señalador muy conocido, utilizado mayoritariamente para juegos de ordenador o computadora, pero que también se emplea para otras tareas. Un joystick o palanca de juegos tiene normalmente una base de plástico redonda o rectangular, a la que está acoplada una palanca vertical. Es normalmente un dispositivo señalador relativo, que mueve un objeto en la pantalla cuando la palanca se mueve con respecto al centro y que detiene el movimiento cuando se suelta. 2.- Los Dispositivos de Salida: Estos dispositivos permiten al usuario ver los resultados de los cálculos o de las manipulaciones de datos de la computadora. El dispositivo de salida más común es la unidad de visualización (VDU, acrónimo de Video DisplayUnit), que consiste en un monitor que presenta los caracteres y gráficos en una pantalla similar a la del televisor. Los tipos de Dispositivos de Salida más Comunes Son: a) Pantalla o Monitor: Es en donde se ve la información suministrada por el ordenador. En el caso más

habitual se trata de un aparato basado en un tubo de rayos catódicos (CRT) como el de los televisores, mientras que en los portátiles es una pantalla plana de cristal líquido (LCD). b) Impresora: es el periférico que el ordenador utiliza para presentar información impresa en papel. Hay Varios Tipos: Matriciales: Ofrecen mayor rapidez pero una calidad muy baja. Inyección: La tecnología de inyección a tinta es la que ha alcanzado un mayor éxito en las impresoras de uso doméstico o para pequeñas empresas, gracias a su relativa velocidad, calidad y sobre todo precio reducidos, que suele ser la décima parte de una impresora de las mismas características. Láser: Ofrecen rapidez y una mayor calidad que cualquiera, pero tienen un alto costo y solo se suelen utilizar en la mediana y grande empresa. c) Altavoces: Dispositivos por los cuales se emiten sonidos procedentes de la tarjeta de sonido. d) d) Auriculares: Son dispositivos colocados en el oído para poder escuchar los sonidos que la tarjeta de sonido envía. e) Bocinas: Cada vez las usa más la computadora para el manejo de sonidos, para la cual se utiliza como salida algún tipo de bocinas. Algunas bocinas son de mesas, similares a la de cualquier aparato de sonidos y otras son portátiles (audífonos). f) Multimedia: Combinación de Hardware y Software que puede reproducir salidas que emplean diversos medios como texto, gráficos, animación, video, música, voz y efectos de sonido. g) Plotters (Trazador de Gráficos): Es una unidad de salida de información que permite obtener documentos en forma de dibujo. Existen plotters para diferentes tamaños máximos de hojas (A0, A1, A2, A3 y A4); para diferentes calidades de hojas de salida (bond, calco, acetato); para distintos espesores de línea de dibujo (diferentes espesores de rapidógrafos), y para distintos colores de dibujo (distintos colores de tinta en los rapidógrafos).


h) Fax: Dispositivo mediante el cual se imprime una copia de otro impreso, transmitida o bien, vía teléfono, o bien desde el propio fax. i) Data Show (Cañón): Es una unidad de salida de información. Es básicamente una pantalla plana de cristal líquido, transparente e independiente. Acoplado a un retro proyector permite la proyección amplificada de la información existente en la pantalla del operador 4.2 CARACTERÍSTICAS DE LOS DISPOSITIVOS DE ENTRADA/SALIDA Una de las funciones básicas de la computadora es comunicarse con los dispositivos exteriores, es decir, la computadora debe ser capaz de enviar y recibir datos desde este dispositivo. Sin esta función, la computadora no sería operativa porque sus cálculos no serían visibles desde el exterior. Existe una gran variedad de dispositivos que pueden comunicarse con una computadora, desde los dispositivos clásicos (terminales, impresoras, discos, cintas, etc.) hasta convertidores A/D y D/A para aplicaciones de medida y control de procesos. De todos los posibles periféricos, algunos son de lectura, otros de escritura y otros de lectura y escritura (es importante resaltar que este hecho siempre se mira desde el punto de vista del proceso). Por otra parte, existen periféricos de almacenamiento también llamados memorias auxiliares o masivas La mayoría de los periféricos están compuestos por una parte mecánica y otra parte electrónica. Estas partes suelen separarse claramente para dar una mayor modularidad. A la componente electrónica del periférico se le suele denominar controlador del dispositivo o, también, adaptador del dispositivo. Si el dispositivo no tiene parte mecánica (como, por ejemplo, la pantalla de un terminal), el controlador estará formado por la parte digital del circuito. Frecuentemente los controladores de los dispositivos están alojados en una placa de circuito impreso diferenciada del resto del periférico. En este caso es bastante habitual que un mismo controlador pueda dar servicio a dispositivos de características similares. El principal problema planteado por los periféricos es su gran variedad que también afecta a las velocidades de transmisión. Por tanto, el mayor inconveniente que encontramos en los periféricos es la diferencia entre sus velocidades de transmisión y la diferencia entre éstas y la velocidad de operación de la computadora. 4.3 PRINCIPIOS DE ENTRADA/SALIDA SOFTWARE Los principios de software en la entrada/salida se resumen en cuatro puntos: el software debe ofrecer manejadores de interrupciones, manejadores de dispositivos, software que sea independiente de los dispositivos y software para usuarios. Manejadores de Interrupciones: interrupciones consiste en que el programador o el usuario no debe darse cuenta de los manejos de bajo nivel para los casos en que el dispositivo está ocupado y se debe suspender el proceso o sincronizar algunas tareas. Manejadores de Dispositivos: El sistema debe proveer los manejadores de dispositivos necesarios para los periféricos, así como ocultar las peculiaridades del manejo interno de cada uno de ellos, tales como el formato de la información, los medios mecánicos, los niveles de voltaje y otros. Software que sea independiente de los dispositivos: Aquí el sistema operativo debe ser capaz, en lo más posible, de ofrecer un conjunto de utilerías para accesar periféricos o programarlos de una manera consistente.


Software para Usuarios: La mayoría de las rutinas de entrada - salida trabajan en modo privilegiado, o son llamadas al sistema que se ligan a los programas del usuario formando parte de sus aplicaciones y que no le dejan ninguna flexibilidad al usuario en cuanto a la apariencia de los datos. 4.4 GESTORES DE DISPOSITIVOS (DRIVERS DE ENTRADA/SALIDA) Un controlador (instaladores) de dispositivo, llamado normalmente controlador (en inglés, device driver) es un programa informático que permite al sistema operativo interactuar con un periférico, haciendo una abstracción del hardware y proporcionando una interfaz -posiblemente estandarizada- para usarlo. Los controladores de dispositivo (device drivers en inglés) son programas añadidos al núcleo del sistema operativo, concebidos inicialmente para gestionar AUX periféricos y dispositivos especiales. Pueden ser de dos tipos: orientados a caracteres (tales como los dispositivos NUL, AUX, PRN, del sistema) o bien, orientados a bloques, constituyendo las conocidas unidades de disco. La diferencia fundamental entre ambos tipos de controladores es que los primeros reciben o envían la información carácter a carácter; en cambio, los controladores de dispositivo de bloques procesan, como su propio nombre indica, bloques de cierta longitud en bytes (sectores). 4.5 ARQUITECTURA DEL SISTEMA DE ENTRADA/SALIDA El sistema de entrada/salida está construido como un conjunto de manejadores apilados, cada uno de los cuales está asociado a un dispositivo de entrada/salida (archivos, red, etc.). Ofrece a las aplicaciones y entornos de ejecución servicios genéricos que permiten manejar los objetos de entrada/salida del sistema. La arquitectura del sistema de entrada/salida es compleja y está estructurada en capas, cada una de las cuales tiene una funcionalidad bien definida: Interfaz del sistema operativo para entrada/salida: Proporciona servicios de E/S síncrona y asíncrona a las aplicaciones y una interfaz homogénea para poderse comunicar con los manejadores de dispositivo ocultando los detalles de bajo nivel. Sistemas de archivos: Proporcionan una interfaz homogénea, a través del sistema de archivos virtuales, para acceder a todos los sistemas de archivos que proporciona el sistema operativo (FFS, SV, NTFS, FAT, etc.). Gestor de redes: Proporciona una interfaz homogénea para acceder a todos los sistemas de red que proporciona el sistema operativo (TCP/IP, Novell, etc.). Además, permite acceder a los manejadores de cada tipo de red particular de forma transparente. Gestor de bloques: Los sistemas de archivos y otros dispositivos lógicos con acceso a nivel de bloque se suelen limitar a traducir las operaciones del formato del usuario al de bloques que entiende el dispositivo y se las pasan a este gestor de bloques. El gestor de bloques admite únicamente operaciones a nivel de bloque e interacciona con la cache de bloques para optimizar la E/S. Gestor de cache: Optimiza la entrada/salida mediante la gestión de almacenamiento intermedio en memoria para dispositivos de E/S de tipo bloque. Es importante saber que su tamaño varía dinámicamente en función de la memoria RAM disponible y que los bloques se escriben a los dispositivos según una política bien definida, que en UNIX y WINDOWS NT es la de escritura retrasada. Manejadores de dispositivo: Proporcionan operaciones de alto nivel sobre los dispositivos y las traducen en su ámbito interno a operaciones de control de cada dispositivo particular. Como ya se ha dicho, los manejadores se comunican con los dispositivos reales mediante puertos o zonas de memoria especiales.


Estudiar resumido sistemas