Está en la página 1de 14
ee peed TEMA 15, SIST. OPERATIVOS. COMP. FUNC. Y TIPOS Pag Tema 15.- SO. Componentes. Estructuras. Funciones. Tipos. INTRODUCCION. CONCEPTOS FUNDAMENTALES SOBRE SO. ESTRUCTURA DE LOS SISTEMAS OPERATIVOS. COMPONENTES DE LOS SISTEMAS OPERATIVOS, 4.1 GESTION DE PROCESOS. 4.2 GESTION DE MEMORIA.. 43 GESTION DE PERIFERICOS. 44 GESTION DE ARCHIVOS. 1 44,1 LOS FICHEROS DESDE EL PUNTO DE VISTA DEL USUARIO. 1 44.2 LOS FICHEROS DESDE EL PUNTO DE VISTA DEL DISENADOR DE SISTEMAS OPERATIVOS. Aw OR BRe awn aun 2 J. Balmaseda / F.J. Ramirez TEMA 15. SIST. OPERATIVOS. COMP. FUNC. ¥ TIPOS Pég 2 1_INTRODUCCIO! B1 objetivo basico de este tema es ofrecer una descripeién, lo més detallada posible, de los conceptos fundamentales de los $o S0_es el software sncargado de gestionar los.xecuraga hardware. \y_software del ordenador intertaz cOmoda, “aie sewrea™ procesaaor, Ti spibaranas.piedan accéder y utilizar Los, arae dela geatisn a [80 como wha méquina esta perspectiva se puede ver a Por ejemplo, para operar directamente con el controlador de disco hay que manejar del orden de 16 érdenes cada una de ellas con bastantes pardmetros. Estas érdenes van desde la comprobacién de si el motor esta funcicnando, sino est4 arrancarlo, esperar a que gire a la velocidad adecuada, dar las érdenes de posicionamiente del brazo en el sector y pista adecuado, ordenar la lectura o escritura, etc. El usuario © el programador no desea enfrentarse a toda esta problendtica sino que desea una abstraccién del dispositive y ver al disco como un conjunto de archivos que se pueden leer o escribir tre objetivo del $0. es el de gestor de los elementos que componen el sistema, es decir, proporcionar a los programas que compiten por ellos una asignacién ordenada y controlada de los mismos. J. Balmaseda/ F.J. Ramirez TEMA 15. SIST. OPERATIVOS. COMP. FUNC. Y TIPOS Pag 3 @ 2_CONCEPTOS FUNDAMENTALES. SOBRE SO. Evidentemente, 1a complejidad de los SO ha ido pareja a la evolucién de los propios ordenadores. En un principio tnicamente se encargaban de ejecutar de forma cecuencial los trabajos de los usuarios, organizando los trabajos como lotes. Un trabajo en ejecucién tenfa el control total de la m4quina y no comonzaba otro hasta que acababa u ocurr{a un error en el que se estaba ejecutando Cuando _empezaron __a_existix diferencias..notables. entre...las velecidades de los dispositivos de. E/S y el procesadcr surge un concepta clave sear jes 60: 1a multiprogranacién. Un programa que realizaba una peticién de wa operacién de #/8, y que no podia continuar hasta que ésta terminase, dejaba al procesador (el recurso mas valioso del sistema) desocupado durante todo el tiempo de espera. Con_la_multiprogramacién, varios programas residen en la memoria _y i procesador es. deforma” altérnada a eatos progranas zando una eperacién de / Hay que aclarar el concepto de tiempo compartido. Hoy en dia los sistenas de multiprogramacién y los sistemas de tiempo conpartide son Jo mismo. En un principio, la miltiprogranacién hacia referencia a la aicernancia de progranas mientras uno de ellos hacia ha opesacién de B/S, pero en ia actualidad esta alternancia os forzada, estableciéndose un tiempo o quantum de asignacién del procesador a un prograria 6 bien porque sé prodiice una interrupeiéa que obliga a este gambio. confundir a LES tiene. : ‘@lstepa” Los 80 multiprocesoguelen ser de dos i ¥"Gon procesamiento simétrico y con procesamiénto asimétrico. Los 80 de multiprocesamiento asinétrico, ejecutan e1 cédigo del GO en el Rion procesadcr, y los dends. procesadores -eJecutan procexoe da Usuario. Los sistemas de miiltiprocesanience simétrico permiten que el $0 se ejecute en cualquier procesader libre o inciuss en ode los procesedores eimulténeamente Padomes Atendiendo a lo visto anteriormente, podriamos clasificar los sistenas oe nonousuario/muletusiario, monotarea/AULtTEavea” honopECésador /maltiprocesador rox, ejemle * Monousuario: un solo usuario da érdenes al, SO a la ver us-D9S * multiusuario: vazios usuarias soliciten servicis al. mismo tiempo, por ejemplo Unix, Linux y Minix. * gnotarea: “el So sélo puede gestionar ejemplo _Ms-pog. * wultitarea o multiprogramacién: el $0 puede gestionar_m4s_de proceso. = * Monoprocesador: sélo_un_proceso instante, va que solo existe un puede. soportar la mltiprograiiactsy. + Multinxocesader: se elecutan. varios procesos simuténeamente ye que el ordenador dispons..de.varios procesadores. Sobre cada’ procesade Se puade sonsitar s si ver ia mils ipfogeanselén, z. Por puede _ejecutarse a avez en un ‘procesador en el “évdenador aundile J. Balmaseda / F.J. Ramirez TEMA 15. SIST. OPERATIVOS. COMP. FUNC. Y TIPOS Pig 4 3_ESTRUCTURA DE LOS SISTEMAS Los sistemas operatives han ido creciendo alcanzando un gran nivel de complejidad. Una de las primeras estructuras que se consideraron fue la de hacer sistemas monoliticos, uno de los cuales es MS-DOS que se diseflé sin pensar remotamente en la popularidad que alcanzaria ni en las capacidades del hardware en el que llegarfa a ejecutarse. En una estructura de este tipo, el SO se puede construir compilando por separado los diferentes procedimientos que lo constituyen y enlazéndolos después en un nico archivo. La_estructura jerdrguica de un S0_moderno_con cientos de miles.o millones de lineas de codig wi ‘una ‘estruccuracién modular, es decir, r Moen Componentes mde’ pequelics me a. Ge forme jerazquica’é ea aiveles. encargado_de las__int a proporci ona: superieres un_modelo. de “procesos independientes, en general, uno por cada tipo da dispositive de-#+3—o— En el siguiente nivel se tienen los procesos que darén servicios a los procesos de usuario: * El sistema de ficheros controla los recursos de memoria secundaria y tiene funciones come: reservar espacio para 109s ficheros, administrar el espacio libre, controlar el acceso a los mismos Los procesos interaccionan con el sistema de ficheros a través de llamadas al sistema espec{ficas como OPEN, READ, WRITE, ETC. El sistema de ficheros se comunica con los dispositives de almacenamiento secundario a través de los drivers o controladores de dispositive. * El sistema de control de procesos es el responsable de la planificacién de los procesos, su sincronizacién, comunicacién entre los miemos, etc. * El médulo de gestién de memoria se encarga de controlar qué procesos estén cargados en la memoria en cada momento asi como de controlar los mecanismos de swapping y de memoria virtual. * mm el sistema existird un planificador © scheduler que se encargaré de gestionar el tiempo de CPU que tiene cada proceso. Aqui: dibujo sobre estructura de un so J. Balmaseda / F.J. Ramirez TEMA 15. SIST. OPERATIVOS. COMP. FUNC. Y TIPOS Pag 5 4 COMPONENTES DE LOS SISTEMAS OPERATIVOS. Debido a la evolucién de 1a informética se han impueste so que soportan la multiprocramacién @ incluso el multiprocesamiento dejaido totalmente obsoletos $0's monol{ticos como MS-DOS. Por esta razén y por la propia orientacién del temario de oposicién, que dedica temas especificos a cada uno de estos componentes, se centraré el tema en realizar una descripcién de los mismos. 4.1_.GESTION DE PROCESOS, Bn un sistema con multiprogramacién, en cada instante 1 procesador 6sté ejecutaido un solo programa pero a lo” largo de un segundo se han podido ejecutar partes de diversos programas, dando al uguarié "una sénacién do paralelismo. fete pseudoparalelismo se ha eonséguido desarrollando el modelo de procesos Todos les programas que se ejecutan en un ordenador se van a organizar como un conjunto de proceses secuenciales. La diferencia entre programas y procesos, aunque sutil, es importante. Vedmasla con un ejemplo: considerenos a una persona que esté montando una mesa de madera que ha comprado y que viene con una instrucciones de montase Bn esta analogia las instrucciones son el programa (o algoritms expresado en una notacién adecuada), la persona el procesador y las piezas los datos de entrada. El proceso es la actividad de esa persona de leer las instruccicnes, ensamblar las piezas y montar la mesa. Imaginemos ahora que el hijo de esa persona se quema en la chimenea. Entonces sefiala por donde va el montaje (salva el estado del proceso actual}, coge un libro de primeros auxilios y comienza a seguir las instrucciones 0 indicaciones referentes a quemaduras. Ee decir, el procesador, pasa de un proceso (montaje) a otro de més alta prioridad (curar al nifio). Después de realizar la cura la persona continua montando la mesa. Se_puede puss compartir w ssador_entre varies procesos simulsanganonte, utilizando un aigdritno de planificacion due decide cuando interrumpir la la fa otro diferente Todos los programas que se ejecutan en el ordenador, incluso a veces el SO se organizan como un conjunto de procesos. En un proceso no sélo hay una copia del programa, sino que ademds el micleo le afiade informacién adicional para poder ejecutarlo. Se tienen tres bloques o Segmentos distintos: segmento de texto (instrucciones o copia de las mismas del programa que se ejecuta), segmente da datos (contione los datos necesarios para arrancar el proceso como variables globales y estéticas) y el segmento de pila (gestionado directamente por el nucleo, es utilizado para el manejo de funciones y contiene los | parémetros, las variables locales y la informacién necesaria para | retornar la funcién al punto de la llamada, es decir, el contador de | programa y el puntero de pila anteriores a la llamada a la funcién) . Un proceso puede encontrarse en alguno de los siguientes estados, tal y como muestra le siguiente figura. La transicién 1 ocurre cuando un proceso no puede continuar (est& esperando datos de entrada que nos estén disponibles, por ejemplo) por lo que pasa a estado de BLOQUEO. La transicién 2 ocurre cuando el planificader de procesos considera que el proceso en ejecucién ya ha dispueste del procesador durante suficiente tiempo y decide que es el momento de asignarlo a otro proceso. El proceso que sale entra, pues, en el estado de LISTO. J. Balmaseda/ FJ, Ramirez TEMA 15. SIST. OPERATIVOS. COMP. FUNC. Y TIPOS Pig 6 Sin embargo, el proceso al que se le asigna el procesador pasa del estado LISTO al estado EJECUCION (transicién 3), Cuando la razén por la que un proceso ha quedado bloqueade se resuelve, el proceso pasa el estado de LISTO (transicién 4). Aqui: transiciones de procesos. El_procesador conmuta el proceeader unis pata jusgar ios algonitnes do pIaaT Jos distintes procesos que comparten Los eriterios ELGaeion Boi * Equidad: que se asigne el procesador a cada proceso de forma equitativa. * Eficiencia: que se mantenga ocupado el procesador, a ser posible, el 100 & del tiempo * Tiempo de respuesta: que se minimgce el tiempo de respuesta para usuarios interactivos. * Tiempo de proceso global: que se minimice el tiempo que han de esperar los usuarios de trabajos por lotes para obtener resultados de salida. * Rendimiento: que se maximice el ntimero de trabajos procesados por unidad de tiempo. Algunos de estos algoritmos son: taly como. + PoE sumne eotatorio: cada procese_ge.leasigna un intervale de TS hay que tener una cola para colocar los procesos. #1 \inico pardmecro a considerar os el valor del quantum, Sives my pequefio, aunenta mucho 1 nimero de cambios de proceso, disminuyendo la eficiencia del procesador, por el contrario, si el valor es muy grande se enpobrecen los tiempos de respuesta de las pticiones interactives. + Por_prioridad: Deriva de le necesidad de tomar en consideracién factores externos propios de los procesos que se estén tratando. A. cada. procesoae_1e_eaigne, ior @ -> 4 -> 2 Archivo B: 5 -> 9 -> 12 Archivo C: 10 -> 3 -> 13 Ce A ‘poi feat [At [Reser | Tramp] tobe [biogas [se | yado La FAT 32 de Windows 95 se consigue simplemente dedicando 4 bits a ia indicacién del bloque. Asi se puede dividir 01 disco en mds bloques de menor tamafio. La VFAT (extension de la FAT que permite los nombres de hasta 255 caracteres en Windows 95 se consigue dedicando los bytes necesarios en la parte correspondiente al nombre). Gestion del sistema de ficheros UNIX. En asociacién con cada archivo de UNIX hay una pequofia tabla en disco, llamada nodoi © inodo que contiene entre otras las siguientes ‘informaciones: + Identificador del propietaric del fichero y del grupo. (UID ¥ @zD). = Tipo de fichero: ordinario, directoric, especial de dispositivo, (modo bloque © cardcter) o tuberia. - Tipo de acceso al fichero: mdscara de proteceién - Tiempos de acceso al fichero: fecha de la Witima modificacién, del ‘timo acceso y de 1a Ultima vez que se modificaron los datos de su inode. = Tamafio del fichero + Blogues de direcciones para localizar dénde estén los datos del fichero en el disco, Existen los eiguientes: + 10 bloques dixectos. + 1 puntore indirecto individual. 1 puntero indirect doble + 4 puntero indixecto triple Para archivos de menos de 10 bloques de longitud, todas las irecciones se conservan en el nodoi en los bloques directos siendo muy fdciles de acceder. J. Balmaseda/ F.J, Ramirez ‘TEMA 15. SIST. OPERATIVOS, COMP. FUNC. Y TIPOS Pag 14 Cuando un archive crece hasta ms de 10 bloques de disco, se utiliza el apuntador indirecto individual, que apunta a un bloque de disco, que contiene direcciones de otros bloques. Suponiendo el tamafio de bloque de 1 k y direcciones de disco de 32 bits (4 bytes), en un bloque se pueden tener Ikbyte/dbytes = 256 direcciones a bloques de disco. Este esquema es suficiente para archivos de hasta 266 bloques, 10 en el nodoi + 256 en el bloque indirecto individual, Para archivos de m4s de 266 bloques en disco se utiliza el apuntador doble indirecto, que utiliza un blogue donde se almacenan las direcciones de 256 bloques de tipo individual indirecto. Eeto permite 10+2564256*256 = 65802 bloques. Para archivos de mas de 64 Mbytes se utiliza el apuntador triple indirecto que apunta a un bloque que conticne la direccién de 256 bloques do tipo doble intermedio J. Balmaseda /F.J. Ramirez

También podría gustarte