Anda di halaman 1dari 29

UNIDAD 1:

INTRODUCCION A LOS SISTEMAS OPERATIVOS

Sistemas Operativos Concepto. Funciones de los Sistemas Operativos: adecuada interfaz usuario/mquina, administrador de recursos y facilidad de evolucin. Caractersticas de los Sistemas Operativos modernos: arquitectura micro n!cleo, multi"ilos, multiproceso sim#trico, sistemas operativos distri$uidos, dise%o orientado a o$&etos. '&emplo: (indo)s *+++ '&emplo: ,ni'&emplo: .inu1. Co !epto "e Sistema Operativo: 's un pro/rama que controla la e&ecucin de los pro/ramas de aplicacin y que act!a como interfaz entre las aplicaciones del usuario y el "ard)are de una computadora. 0iene tres o$&etivos: Como"i"a": el SO "ace que una computadora sea ms fcil de usar. E#i!ie !ia: permite que los recursos de un sistema informtico sean aprovec"ados de manera eficiente. Capa!i"a" "e evo$%!i& : el SO de$e construirse de modo que permita el desarrollo efectivo, verificacin e introduccin de nuevas funciones, sin interferir en los servicios $rindados. '. E$ SO !omo a"e!%a"a i ter#a( %s%ario)ma*%i a 'l SO es el pro/rama de sistemas ms importante, ya que oculta al pro/ramador los detalles del "ard)are y le proporciona una cmoda interfaz para utilizar el sistema. 'l SO es un mediador que facilita al pro/ramador y a los pro/ramas de aplicacin el uso de sus servicios y caractersticas. ,n SO ofrece los si/uientes servicios: Crea!i& "e pro+ramas: Ofrece editores y depuradores para ayudar al pro/ramador en la creacin de pro/ramas. E,e!%!i& "e pro+ramas: 'l SO administra todas las tareas 1car/a de datos a la memoria, iniciar arc"ivos y dispositivos de '/S2 para que el usuario e&ecute un pro/rama. A!!eso a $os "ispositivos "e E)S: 'stos dispositivos requieren instrucciones 1con&unto de instrucciones, se%ales de control2 que el SO oculta para que el pro/ramador acceda a los dispositivos con lecturas y escrituras simples. A!!eso !o tro$a"o a $os ar!-ivos : 3roporciona mecanismos de proteccin para controlar el acceso a los arc"ivos. A!!eso a$ sistema: 'n un sistema compartido, el SO controla el acceso al sistema como un todo y a los recursos especficos del sistema. Dete!!i& . resp%esta a errores: 4a respuestas eliminando la condicin de error con el menor impacto posi$le so$re las aplicaciones que se estn e&ecutando. 'sta respuesta puede ser terminar el pro/rama que produ&o el error, reintentar la operacin o i/norar el error. Co ta/i$i"a": realiza estadstica de utilizacin de recursos y supervisa parmetros de rendimiento. 'sta informacin es !til para la evolucin del SO. 0. E$ SO !omo a"mi istra"or "e re!%rsos 4esde cierto punto de vista, el SO es el que controla y administra los recursos del computador. Con frecuencia, el SO a$andona el control y de$e depender del procesador para recuperarlo. 'l SO es, de "ec"o, un con&unto de pro/ramas, y como todo pro/rama proporciona instrucciones al procesador. .a diferencia esta en el propsito del pro/rama. E$ SO "iri+e a$ pro!esa"or e e$ %so "e re!%rsos "e$ sistema . e e$ !o tro$ "e$ tiempo "e e,e!%!i& "e $os pro+ramas. Para *%e e$ pro!esa"or p%e"a -a!er estas !osas1 "e/e !esar $a e,e!%!i& "e$ SO . e,e!%tar otros pro+ramas. As21 e$ SO "a e$ !o tro$ "e$ pro!esa"or1 para -a!er a$+3 tra/a,o 3ti$1 . $%e+o $o re!%pera para preparar $a si+%ie te tarea. 4. 5Por *%6 evo$%!io a % SO7 5ctualizaciones de "ard)are y nuevos tipos de "ard)are. 6uevos servicios como respuesta a la demanda de los usuarios. Correcciones de los fallos encontrados en el SO 1estas correcciones pueden introducir nuevos fallos, y as sucesivamente2. 8. Evo$%!i& "e $os SO 7

Pro!eso e serie: 5qu no "a$a SO, el pro/ramador interactua$a directamente con el "ard)are. 4esventa&as, la planificacin y el tiempo de preparacin. Se denomina en serie porque el usuario acceda a la computadora en serie. Pro!eso por $otes: 5parece el SO. Se utiliza un elemento de soft)are fundamental, el 8monitor9. .a computadora a/rupa !nicamente los tra$a&os por lotes y u$ica$a los lotes enteros en un dispositivo de entrada para su empleo por lote del monitor. Cada pro/rama volva al monitor al terminar su e&ecucin, y el monitor car/a$a el si/uiente pro/rama. Sistema por $otes !o m%$tipro+rama!i& : Cuando un tra$a&o necesita esperar una '/S 1esto es lento comparado con el procesador2 el procesador puede cam$iar a otro tra$a&o que no est# e&ecutando una '/S. 'sto es la multipro/ramacin o multitarea. Si "ay varios tra$a&os listos para e&ecutarse, el procesador decide cul de ellos e&ecutar mediante un al/oritmo de planificacin. Sistema "e tiempo !omparti"o: :!ltiples usuarios acceden simultneamente al sistema por medio de terminales, donde el SO intercala la e&ecucin de cada pro/rama. 5qu tam$i#n se utiliza la multipro/ramacin. 9. Cara!ter2sti!as "e $os SO mo"er os Ar*%ite!t%ra mi!ro 3!$eo: 5si/na unas pocas funciones esenciales al n!cleo. Otros servicios del SO los proporcionan los procesos, que se e&ecutan en modo usuario y que el micron!cleo trata como a cualquier otra aplicacin. 'l enfoque del micron!cleo simplifica la implementacin, proporciona fle-i$ilidad, y se adapta $ien para entornos distri$uidos. M%$ti-i$o: ,n proceso se divide en "ilos que pueden e&ecutarse concurrentemente; son interrumpi$les, para que procesador e&ecute otro "ilo. Se "ace la si/uiente distincin: :i$o: unidad de tra$a&o que se puede e-pedir para su e&ecucin. Con&unto de instrucciones que pertenecen a un proceso. Se les suele llamar procesos li/eros o conte-tos de e&ecucin. Pro!eso: un con&unto de uno o mas "ilos y los recursos del sistema asociados 1cdi/o y datos, arc"ivos a$iertos y dispositivos2. 5l dividir una aplicacin en m!ltiples "ilos, el pro/ramador tiene un /ran control so$re la modularidad de la aplicacin y la coordinacin de los sucesos relativos al sistema. .os multi"ilos son muy !tiles para las aplicaciones que e&ecutan un n!mero de tareas esencialmente independientes que no necesitan ser consecutivas. M%$tipro!eso sim6tri!o: 's un t#rmino que se refiere a una arquitectura "ard)are y el comportamiento de la misma. .as caractersticas principales son que tiene m!ltiples procesadores que comparten la misma memoria principal y dispositivos de '/S, y que todos los procesadores pueden e&ecutar las mismas funciones 1por eso es sim#trico2. 3lanifica procesos e "ilos por todos los procesadores. <enta&as: Re "imie to: con multiprocesamiento, puede e&ecutarse ms de un proceso simultneamente, cada uno en un procesador distinto. Dispo i/i$i"a": en un multiprocesador sim#trico, el fallo de un procesador no detiene la maquina, y esta si/ue con un rendimiento reducido. Cre!imie to i !reme ta$: un usuario puede aumentar el rendimiento a/re/ando un procesador adicional. Es!a$a/i$i"a": variedad de productos con diferentes precios y caractersticas de rendimiento $asados en el n!mero de procesadores del sistema. SO "istri/%i"o: 3roporciona la idea de un !nico espacio de memoria principal y secundaria, adems de otros mecanismos de acceso unificado. Dise;o orie ta"o a o/,etos: 3osi$ilita a%adir e-tensiones modulares a un peque%o n!cleo. 3ermite a los pro/ramadores personalizar el SO sin romper la inte/ridad del mismo, y tam$i#n facilita el desarrollo de "erramientas distri$uidas y sistemas operativos distri$uidos a$iertos. *

<. =i "o>s '??? @Sta$$i +sA DOS 1.0 .a "istoria de (indo)s *+++ comienza con SO3 muy diferente, el :S = 4OS 14is> Operatin/ System, desarrollado para el primer computador personal de ?@:2. .a versin inicial, el 4OS 7.+ se lanzo en a/osto del AB7, e&ecutada en B C$ de memoria utilizando el microprocesador ?ntel B+BD. DOS 2.0 Cuando ?@: desarrollo un computador personal $asado en disco duro 1el 3C E02, :icrosoft desarrollo el 4OS *.+, lanzado en el ABF. 0ena soporte para disco duro y ofrecia directorios &erarquicos, esto es, directorios con su$directorios y arc"ivos. 0am$i#n se a%adieron al/unas caractersticas de ,6?E, como el redireccionamiento de '/S 1capacidad de cam$iar la identidad de la entrada o salida de una aplicacin2 y la impresin su$ordinada 1$ac>/round2. .a memoria creci "asta *G C$. DOS 3.0 Cuando ?@: anuncio el 3C 50 en 7HBG, :icrosoft introdu&o el 4OS F.+. 'l 50 incorporo el procesador ?ntel B+*BD, previsto de direccionamiento e-tendido y recursos de proteccin de memoria. 3ero 4OS no los utilizo, sino que uso el B+*BD como un 8B+BD rapido9. 'l SO3 ofrecia soporte para nuevos teclados y discos ri/idos. .os requisitos de memoria crecieron "asta un minimo de GD C$. WINDOWS 3.0 'l 4OS esta$a siendo utilizado en un entorno que i$a ms alla de sus capacidades. :icrosft comienza el desarrollo de una ?nterfaz Irafica de ,suario 1I,?2 que podra e&ecutarse entre el usuario y el 4OS. 'n 7HH+, :icrosoft presenta una versin de la I,?, el (indo)s F.+, la cual se/ua maniatada por la necesidad de e&ecutarse so$re 4OS. WINDOWS NT .ue/o de una tentativa fallida por :icrosoft de desarrollar &unto a ?@: un SO3 de nueva /eneracin que aprovec"ara las caractersticas de los actuales microprocesadores, ?@: desarroolla OS/* y :icrosoft lanza (indo)s 60. 5m$as son multitarea y multi"ilo. WINDOWS NT 4.0 4espu#s de varias versiones 60 F.E, :icrosoft desarrolla la versin G.+, que proporciona la misma interfaz de (indo)s HB. 'l mayor cam$io consiste en que varios de los componentes /raficos que se e&ecuta$an tanto en modo usuario como formando parte del su$sistema (in F* en F.E, "an sido trasladados al e&ecutor de (indo)s 60, que e&ecuta en modo n!cleo, lo que implica una aceleracin en tales e&ecuciones. 'l inconveniente es que servicios del su$sistema tienen acceso a funciones /raficas de $a&o nivel. WINDOWS 2000 'n el a%o *+++, :icrosoft introdu&o la si/uiente /ran actualizacin: (indo)s *+++. 6uevamente el e&ecutor y la arquitectura micron!cleo son fundamentalmente los mismos que en 60 G.+. Se "an a%adido nuevas caractersticas, como el soporte al procesamiento distri$uido. 'l directorio activo es un servicio del directorio distri$uido capaz de traducir los nom$res de o$&etos ar$itrarios a cualquier tipo de informacin acerca de los mismos. ,na consideracin final so$re (indo)s *+++ es la distri$ucin entre (indo)s *+++ Server y 3rofessional, en donde la versin Server incluye servicios para su uso como servidor de red. B. =i "o>s '??? @Ta em/a%m C ver $i/roA 's un SO3 $asado en una tecnolo/a confia$le de F* $its pero con la popular interfaz de usuario de (indo)s HB. Ja que (indo)s *+++ es en realidad 60 K.+, "ereda muc"as propiedades de 60 G.+. 's un sistema multipro/ramado de F* $its con procesos prote/idos de manera individual. 'l SO3 se e&ecuta en modo de usuario 1eliminando los defectos de proteccin de (indo)s HB2. .os procesos pueden tener uno o ms su$procesos que el sistema puede ver. 0iene soporte completo para e&ecutarse en multiprocesadores sim#tricos con "asta F* procesadores. 0am$i#n soporta dispositivos 3lu/ L 3lay, $us ,S@, ?r45 1enlace infrarro&o2, administracin de ener/a, etc. 3osee tam$i#n otros aspectos que no posea nin/!n SO3 de :icrosoft, como un servicio de directorios de arc"ivos, mane&o de tar&etas inteli/entes, "erramientas para vi/ilar el desempe%o, etc. 'l principal sistema de arc"ivos, el 60FS, se e-tendi arc"ivos cifrados, arc"ivos enlazados, etc. (indo)s *+++ tiene un solo $inario, que se e&ecuta en cualquier lu/ar del mundo, donde el usuario eli/e el idioma que usara en el momento de e&ecucin. 5l/o que no tiene (indo)s *+++ es :S = 4OS, pero tiene una interfaz de lnea de comandos como un pro/rama de F* $its que incluye la funcionalidad de 4OS y un numero de funciones nuevas. F

Solo se e&ecuta en dos plataformas, 3entium e ?ntel ?5DG. Se desarrollaron tam$i#n unos >its de "erramientas como el Cit de 4esarrollo de Soft)are 1S4C2, el Cit de 4esarrollo de Controladores 144C2 y el Cit de Mecursos. D. Sistemas U iE C$Fsi!os @!omp$etar tema C ver $i/roA ,ni- se desarrollo en los la$oratorios 4ell y lle/o a su operativo en una 343 = N, en 7HN+. 'l primer avance nota$le fue llevar a ,ni- de la 343 = N a una 343 = 77, lo que dio la se%al de que este podia ser un SO para todos los computadores. 'l si/uiente avance fue la reescritura de ,ni- en el len/ua&e de pro/ramacin C. Descripcin de un Sistema Unix 'l O( $sico esta rodeado por el soft)are del SO. 'ste !ltimo es llamado a menudo n!cleo del sistema, o >ernel. ,ni- esta equipado con servicios e interfaces de usuario considerados parte del sistema, los cuales pueden a/ruparse en un interprete de ordenes 1s"ell2.

UNIDAD ':

ADMINISTRACION G HESTION DE ARC:IVOS

Archivos 6om$re, estructura, tipos. :#todos de acceso. 5tri$utos. Operaciones con arc"ivos. 4irectorios. Perarqua y rutas de acceso. Operaciones con directorios. Implementacin de Sistemas de Archivos Or/anizacin del Sistema de 5rc"ivos. ?mplantacin de arc"ivos: 5si/nacin por lista enlazada y un ndice. 6odos i. ?mplantacin de directorios. ?mplementacin del Sistema de 5rc"ivos en (indo)s *+++. 60FS. 'structura del sistema de arc"ivos. 5rc"ivos compartidos: tipos de enlaces 1duro y sim$lico2. 5dministracin del espacio en disco: tama%o del $loque, re/istro de $loques li$res, administracin de cuotas de disco.

ARC:IVOS
1. Nom/re "e $os ar!-ivos .os arc"ivos son un mecanismo de a$straccin. Son una forma de almacenar informacin en un disco y volver a leerlas mas adelante. Cuando un proceso crea un arc"ivo, le asi/na nom$re. Cuando el proceso termina, el arc"ivo si/ue e-istiendo y otros procesos pueden tener acceso a el mediante su nom$re. .as re/las e-actas para nom$rar a los arc"ivos varan un poco de sistema a sistema. 5l/unos sistemas distin/uen letras may!sculas de min!sculas, mientras que otros no. :uc"os SO utilizan nom$res de arc"ivos con dos partes, separadas por un punto. .a parte posterior al punto es la eEte si& "e$ ar!-ivo e indica por lo /eneral al/o relativo al arc"ivo. Concluyendo, el nom$re de un arc"ivo tiene mas la intencin de servir de recordatorio al propietario que de dar informacin especifica a la computadora. '. Estr%!t%ra "e ar!-ivos Se pueden estructurar de F maneras: S%!esi& "e /.tes. 5l SO no le interesa qu# contiene el arc"ivo, solo ve $ytes, lo que ofrece el m-imo de fle-i$ilidad. S%!esi& "e re+istros "e $o +it%" #i,a . Cada re/istro tiene una estructura interna. Cuando se lee un arc"ivo, se lee el re/istro correspondiente, y al escri$ir se ane-a el re/istro. Ir/o$ "e re+istros. .os re/istros pueden tener distinta lon/itud y cada uno contiene un campo clave en una porcin fi&a del re/istro. 'l r$ol esta ordenado se/!n el campo clave, para "allar con rapidez una clave particular. 0. Tipos "e ar!-ivo Ar!-ivos orma$es o re+%$ares : Contienen informacin del usuario y son en /eneral arc"ivos 5SC?? o $inarios. .os arc"ivos 5SC?? constan de lneas de te-to, por lo que se pueden e-"i$ir e imprimir tal cual son. .os arc"ivos $inarios solo constan de unos y ceros. Dire!torios: Son arc"ivos de sistema que sirven para mantener la estructura del sistema de arc"ivos. Ar!-ivos espe!ia$es: Oay dos tipos: De caracteres: tiene que ver con '/S y sirven para modelar dispositivos de '/S en serie. De bl !ues: sirven para modelar discos. E,e!%ta/$es: .os /enera el usuario para que se e&ecuten cuando los invoca, contienen instrucciones o comandos en lu/ar de datos. 0odo SO de$e reconocer un tipo de arc"ivo, su propio arc"ivo e&ecuta$le. 4. A!!eso a ar!-ivos Se!%e !ia$: ,n proceso lee todos los $ytes o re/istros de un arc"ivo en orden, comenzando por el principio, sin poder realizar saltos 1F?FO2. A$eatorio: Se puede leer los $ytes o re/istros de un arc"ivo sin un orden especfico. Se tiene acceso a los re/istros por clave o ndice, no por posicin. A$eatorio J se!%e !ia$: Com$ina los dos anteriores. Se esta$lece la posicin actual 1puede ser cualquiera2 y a partir de all es secuencial el acceso. .os SO modernos no "acen esta distincin, todos sus arc"ivos son de acceso aleatorio. 8. Atri/%tos "e ar!-ivos K

Cada arc"ivo tiene su nom$re y datos. 5dems, todos los SO asocian informacin adicional a cada arc"ivo; por e&emplo, fec"a y "ora de creacin, tama%o. 'stos elementos adicionales se llaman atri$utos y varan de sistema en sistema. 'ntre los atri$utos ms comunes se encuentran: Prote!!i& : quien de$e tener acceso y de que forma Co trase;a: contrase%a necesaria para acceder al arc"ivo Crea"or: identificador de la persona que creo el arc"ivo Propietario: propietario actual

Otros atri$utos son las $anderas, que son $its o campos peque%os que controlan cierta propiedad. 5l/unos e&emplos de estos atri$utos son: Ka Ka Ka Ka Ka Ka Ka Ka "era eE!$%siva para $e!t%ra: + lectura/escritura, 7 para lectura e-clusivamente "era "e o!%$tamie to: + normal, 7 para no e-"i$irse en listas "era "e sistema: + normal, 7 arc"ivo del sistema "era "e /i/$iote!a: + ya se "a respaldado, 7 necesita respaldo "era "e ASCII)/i ario: + arc"ivo en 5SC??, 7 arc"ivo en $inario "era "e a!!eso a$eatorio: + solo acceso secuencial, 7 acceso aleatorio "era tempora$: + normal, 7 eliminar al salir del proceso "eras "e !erra"%ra: + no $loqueado, distinto de cero $loqueado

'-isten otros atri$utos que estn presentes en los arc"ivos en cuyos re/istros se puede "acer una $!squeda mediante una llave. 'stos campos proporcionan la informacin necesaria para encontrar las llaves. '&emplos: Lo +it%" "e$ re+istro 1en $ytes2 Posi!i& "e $a $$ave: dentro de cada re/istro Lo +it%" "e $a $$ave 1en $ytes2 5tri$utos relacionados con tiempos especficos del arc"ivo: Tiempo "e !rea!i& : fec"a y "ora de creacin del arc"ivo Tiempo "e %$timo a!!eso: fec"a y "ora del ultimo acceso al arc"ivo Tiempo "e %$tima mo"i#i!a!i& : fec"a y "ora de la ultima modificacin del arc"ivo Otros atri$utos Tama;o a!t%a$ Tama;o mFEimo: se utiliza /eneralmente para que el SO se reserve de antemano la cantidad m-ima de espacio de almacenamiento 9. Opera!io es !o ar!-ivos .os SO proporcionan distintas operaciones para el almacenamiento y la recuperacin. .as $sicas son: CREATE @CREARA: el propsito es anunciar que el arc"ivo esta por lle/ar y esta$lecer al/unos de sus atri$utos. DELETE @KORRARA: si el arc"ivo ya no es necesario, se de$e $orrar para li$erar espacio en el disco. OPEN @AKRIRA: permite que el sistema traslade los atri$utos y la lista de direcciones en disco a la memoria principal para un rpido acceso en llamadas posteriores. CLOSE @CERRARA: cuando concluyen los accesos, los atri$utos y direcciones del disco ya no son necesarios, por lo que el arc"ivo de$e cerrarse para li$erar la ta$la de espacio interno. READ @LEERA: los datos se leen del arc"ivo. 3or lo /eneral, los $ytes provienen de la posicin actual. Quien "ace la llamada de$e especificar la cantidad de datos necesarios y proporcionar un $uffer para colocarlos. =RITE @ESCRIKIRA: los datos se escri$en a partir de la posicin actual. Si esta es al final del arc"ivo, el tama%o del mismo aumenta. Si la posicin es a mitad del arc"ivo, se escri$en encima de los datos e-istentes y estos se pierden para siempre. APPEND @ALADIRA: forma restrin/ida de (M?0'. Solo se puede a%adir datos al final del arc"ivo. SEEM @KUSCARA: para los arc"ivos de acceso aleatorio, se necesita un m#todo para especificar el punto de donde tomar los datos. HET ATTRIKUTES @OKTENER ATRIKUTOSA: los procesos de$en leer los atri$utos para realizar su tra$a&o. SET ATTRIKUTES @ESTAKLECER ATRIKUTOSA: al/unos de los atri$utos pueden ser determinados por el usuario y modificarse despu#s de la creacin del arc"ivo. D

RENAME @CAMKIAR DE NOMKREA: permite "acer una modificacin al nom$re de un arc"ivo ya e-istente. <. Dire!torios Son arc"ivos que contienen otros arc"ivos. B. Nerar*%2a "e "ire!torios 5l a$rir un arc"ivo, el SO $usca en su directorio "asta encontrar el nom$re del arc"ivo por a$rir. '-trae entonces los atri$utos y las direcciones en disco, ya sea en forma directa de los datos del directorio o de la estructura de datos a la que apunta y los coloca en una ta$la dentro de la memoria principal. .a &erarqua puede ser: De % so$o ive$: un directorio, llamado directorio raz. Contiene todos los arc"ivos. De "os ive$es: un directorio raz, el si/uiente nivel tiene un directorio por cada usuario y lue/o se encuentran los arc"ivos. 'ste dise%o elimina los conflictos de los nom$res entre los usuarios, aunque no es muy satisfactorio para los usuarios que poseen muc"os arc"ivos. NerFr*%i!os: se forma un r$ol de directorios con muc"os niveles. D. R%tas "e a!!eso 4os m#todos: A/so$%to: contiene el camino que de$e se/uirse para lle/ar del directorio raz "asta el arc"ivo. Re$ativo: se si/ue el camino desde el directorio de tra$a&o 1directorio actual2 "asta el arc"ivo. Oay dos entradas especiales en cada directorio: 8.9 1punto2 Se refiere al directorio actual 8..9 1punto = punto 2 Se refiere a su padre 1?. Opera!io es !o "ire!torios CREATE @CREARA: se crea un directorio vaco, e-cepto por punto y punto punto, los que se colocan en el en forma automtica. DELETE @ELIMINARA : se elimina un directorio. Solo se puede eliminar un directorio vaco. ,n directorio que solo conten/a punto y punto punto se considera vaco. OPENDIR @AKRIR DIRECTORIOA: se pueden leer los directorios para e-"i$ir un listado de todos los arc"ivos del mismo. 5ntes de leer un directorio, este de$e ser a$ierto. CLOSEDIR @CERRAR DIRECTORIOA: cuando se "a ledo un directorio, este de$e cerrarse para li$erar el espacio de la ta$la interna. READDIR @LEER DIRECTORIOA: esta llamada re/resa la si/uiente entrada en un directorio a$ierto. M'544?M siempre re/resa una llamada en formato normal, sin importar el tipo de estructura que se utilice. RENAME @RENOMKRARA : se les puede cam$iar el nom$re al i/ual que los arc"ivos. LINM @LIHARA : es una t#cnica que permite que un arc"ivo aparezca en ms de un directorio. 'sta llamada al sistema especifica un arc"ivo e-istente y el nom$re de una ruta de acceso, adems de crear un enlace del arc"ivo ya e-istente con el nom$re especificado en la ruta de acceso. 4e esta forma, el mismo arc"ivo puede aparecer en varios directorios. UNLINM @DESLIHARA : se elimina una entrada del directorio. Si el arc"ivo que se quiere eliminar aparece solo en un directorio 1caso normal2, se elimina del sistema de arc"ivos. Si esta presente en varios directorios, solo se elimina la ruta de acceso especificada, los dems permanecen.

IMPLEMENTACION DE SISTEMA DE ARC:IVOS


.os sistemas de arc"ivos se almacenan en discos. .os discos pueden tener particiones, con sistemas de arc"ivos independientes en cada particin. 'l sector + del disco se llama re/istro maestro de arranque y sirve para arrancar la computadora, es el :@M. 5l final del :@M est la ta$la de particiones, que contiene las direcciones inicial y final de cada particin. ,na particin estar marcada como activa. 'l 7R $loque de la particin es el $loque de arranque, que car/a el SO contenida en esa particin. ,no de los elementos del sistema de arc"ivos es el 8super$loque9, que contiene todos los parmetros clave acerca del sistema de arc"ivo y se transfiere del disco a la memoria cuando se arranca la computadora. 1. Or+a i(a!i& "e$ Sistema "e Ar!-ivos .os implantadores se interesan en la forma de almacenamiento de los arc"ivos y directorios, la administracin del espacio en disco y la forma de que todo esto sea eficiente y confia$le. '. Imp$a ta!i& "e ar!-ivos N

Asi+ a!i& !o ti+%a: Se almacena cada arc"ivo en una serie conti/ua de $loques de disco. Cada arc"ivo se inicia al principio de un $loque nuevo. "enta#as$ Fcil implantacin: el re/istro de la localizacin de los $loques del arc"ivo se reduce a recordar solo la direccin en disco del primer $loque. @uen rendimiento: todo el arc"ivo se puede leer en una sola operacin. Des%enta#as$ 6o realiza$le, a menos que se conozca el tama%o m-imo del arc"ivo al momento de su creacin. Sin esa informacin, el SO no sa$e cuanto espacio en disco de$e reservar. Fra/mentacin de disco: se desperdicia el espacio que se podra utilizar de otra manera. Asi+ a!i& por $ista e $a(a"a : Consiste en mantener cada arc"ivo como una lista enlazada de $loques de disco. .a primera pala$ra de cada $loque se usa para apuntar al si/uiente, el resto es para datos. "enta#a$ Con este m#todo se usa cada $loque de disco, por lo que no se pierde espacio por fra/mentacin del disco. Des%enta#as$ 5cceso aleatorio lento. 'l tama%o de $loque para los datos es relativo y no potencia de dos como de$era ser, ya que el apuntador ocupa unos cuantos $ytes. Asi+ a!i& por $ista e $a(a"a !o % a ta/$a e memoria : Se eliminan las desventa&as de la asi/nacin por lista enlazada ya que se saca el apuntador de cada $loque de disco y se lo coloca en una ta$la en la memoria denominada 8ta$la de asi/nacin de arc"ivo9 1F502. 4e esta forma, todo el $loque esta disponi$le para los datos. 'l acceso aleatorio es muc"o ms fcil. 5l estar toda la cadena car/ada en memoria, se si/ue sin "acer referencia al disco. .a desventa&a es que la ta$la de$e estar en la memoria todo el tiempo. No"os I: 5socia a cada arc"ivo una estructura de datos llamada nodo i 1nodo ndice2 que contiene los atri$utos y direcciones en disco de los $loques del arc"ivo. 'l nodo i solo de$e estar en memoria cuando el arc"ivo est a$ierto. 3ara arc"ivos peque%os, las primeras direcciones en disco se almacenan en el propio nodo = i, de forma que toda la informacin necesaria est# contenida en el nodo = i. 3ara arc"ivos ms /randes, una de las direcciones en el nodo = i es la direccin de un $loque en el disco llamado /$o*%e simp$eme te i "ire!to, el cual contiene direcciones en disco adicionales. Si con esto no es suficiente, otra direccin del nodo = i, el /$o*%e "o/$eme te i "ire!to contiene la direccin de un $loque que tiene una lista de $loques simplemente indirectos, donde cada uno de estos apunta a unos centenares de $loques de datos. Si aun esto no $asta, se puede utilizar un /$o*%e trip$eme te i "ire!to. 0. Imp$a ta!i& "e "ire!torios .a funcin principal del sistema de directorios es transformar el nom$re 5SC?? del arc"ivo en la informacin necesaria para localizar los datos. Dire!torios e CP)M @Dire!torio 3 i!oA: 's uno de los ms anti/uos. Se lo usa en el SO C3:. 'n este sistema, slo "ay un directorio, por lo que lo !nico que el sistema de arc"ivos tiene que "acer para consultar un nom$re de arc"ivo es $uscarlo en el directorio. ,na vez que encuentra la entrada, tam$i#n tiene los n!meros de $loque en el disco, ya que estn almacenados a" mismo, en la entrada, lo mismo que todos los atri$utos. Dire!torios e MS C DOS @Dire!torio ,erFr*%i!oA : ,na entrada de directorio de :S 4OS tiene F* $ytes de lon/itud y contiene el nom$re de arc"ivo, los atri$utos y el n!mero del primer $loque de disco, que se usa como ndice de una ta$la contenida en memoria 1asi/nacin por lista enlazada con una ta$la en memoria2. Si/uiendo la cadena, se pueden encontrar todos los $loques. Dire!torios e UNIP @No"osQIA: Cada entrada de directorio contiene slo un nom$re de arc"ivo y su n!mero de nodo i. 0oda la informacin acerca del tipo, tama%o, tiempos, propietario y $loques de disco est contenida en el nodo i. Cuando se a$re un arc"ivo, el sistema de arc"ivos de$e tomar el nom$re que se le proporciona y localizar sus $loques de disco. .o primero que "ace el sistema de arc"ivos es localizar directorio raz. 'n ,6?E su nodo i est situado en un lu/ar fi&o del disco. .a localizacin de un nodo i una vez que se tiene su n!mero es directa, ya que cada uno tiene una posicin fi&a en el disco. '&emplo:

@!squeda de /usr/ast/m$o- en ,6?E 3ara los nom$res de ruta relativos el punto de partida es el directorio de tra$a&o en lu/ar del directorio raz. Cada directorio tiene entradas para 8.9 y 8..9, que se colocan a" cuando se crea el directorio. .a entrada 8 .9 tiene el n!mero de nodo i del directorio actual, y la entrada 8 ..9 tiene el n!mero de nodo i del directorio padre. 4. Ar!-ivos !omparti"os ,n arc"ivo puede aparecer al mismo tiempo en diferentes directorios de usuarios distintos. Si un arc"ivo de un usuario 5 aparece en al/!n directorio de un usuario @, el arc"ivo compartido se llama e $a!e @$i RA. Oay dos formas de enlazar un arc"ivo: E $a!e "%ro: los directorios que comparten un arc"ivo, no poseen los $loques de disco, sino que apuntan al mismo nodo i que corresponde al arc"ivo. 'ste es el esquema de ,6?E. Des%enta#as$ Si el propietario elimina el arc"ivo y se limpia el nodo = i, al/!n directorio con un enlace a ese arc"ivo, apuntara a un nodo = i no valido. Si el nodo = i se reasi/na a otro arc"ivo, el enlace apuntara a un arc"ivo incorrecto. E $a!e sim/&$i!o: cuando un directorio quiere compartir un arc"ivo, se /enera un arc"ivo de tipo lin> que solo contiene el nom$re de ruta del arc"ivo. Cada arc"ivo compartido va a/re/ando un re/istro de tipo lin>. Des%enta#as$ 0ienen un costo e-cesivo, ya que leer el arc"ivo, la ruta de acceso del mismo, analizarla y se/uirla "asta el nodo = i requiere varios accesos al disco. Se necesita un nodo = i adicional para cada enlace Si el nom$re de la ruta de acceso es lar/o, se necesita otro $loque adicional para almacenarla. 8. A"mi istra!i& "e espa!io e "is!o Oay dos estrate/ias /enerales para almacenar un arc"ivo: asi/nar n $ytes consecutivos de espacio en disco, o dividir el arc"ivo en varios $loques conti/uos o no. 'l almacenamiento de un arc"ivo como secuencia conti/ua de $ytes tiene el pro$lema de que, si el arc"ivo crece, pro$a$lemente tendr que pasarse a otro lu/ar del disco. 3or esta razn, casi todos los sistemas de arc"ivos dividen los arc"ivos en $loques de tama%o fi&o que no necesitan estar adyacentes. Tama;o "e /$o*%e: ,na vez que se "a decidido almacenar arc"ivos en $loques de tama%o fi&o, se de$e decidir qu# tama%o de$en tener los $loques. 4ada la forma como estn or/anizados los discos, el sector, la pista y el cilindro son candidatos para utilizarse como unidad de asi/nacin. 0ener una unidad de asi/nacin /rande, como un cilindro, implica que cada arc"ivo, incluso un arc"ivo de un $yte, ocupar todo un cilindro. 3or otro lado, el empleo de una unidad de asi/nacin peque%a implica que cada arc"ivo consistir en muc"os $loques. .a lectura de cada $loque normalmente requiere una $!squeda y un retardo rotacional, as que la lectura de un arc"ivo que consta de muc"os $loques peque%os ser lenta. 'l tiempo en milise/undos requerido para leer un $loque de > $ytes es la suma de los tiempos de $!squeda, retardo rotacional y transferencia H

,na $uena utilizacin del espacio 1tama%o de $loque S *C2 implica tasas de datos $a&as y viceversa. .a eficiencia de tiempo y la eficiencia de espacio estn in"erentemente en conflicto. 'l t#rmino medio usual es esco/er un tama%o de $loque de K7*, 7C o *C $ytes. Co tro$ "e /$o*%es $i/res: ,na vez que se "a esco/ido el tama%o de $loque, se de$e decidir cmo administrar a los $loques li$res. Se usan dos t#cnicas para este control: ,sar una lista enlazada de $loque de disco, en la que cada $loque /uarda tantos n!meros de $loques de disco como quepan en #l. ,sar un mapa de $its. ,n disco con /$o*%es requiere un mapa de $its con /its. .os $loques li$res se representan con uno en el mapa y los $loques asi/nados con ceros 1o viceversa2. 'l mapa de $its requiere menos espacio, ya que usa un $it por $loque y no F* como en el modelo de lista enlazada. Slo si el disco est casi lleno el m#todo de la lista enlazada requerir menos $loques que el mapa de $its. Si "ay suficiente memoria principal para contener el mapa de $its, este m#todo es preferi$le. 'n cam$io, si slo se puede dedicar un $loque de memoria para se/uir la pista a los $loques li$res, y el disco est casi lleno, la lista enlazada puede ser me&or. C%ota "e "is!o: 'l administrador del sistema asi/na a cada usuario una porcin m-ima 1lmites2 de arc"ivos y $loques y el SO cuida que los usuarios no e-cedan su cuota. Cuando se a$re un arc"ivo, sus atri$utos y direcciones de disco se colocan en una 8ta$la de arc"ivos a$iertos9 en la memoria principal. Cada arc"ivo tiene una entrada que indica quien es el due%o del arc"ivo, por lo que cualquier aumento en el tama%o del arc"ivo se car/a automticamente a la cuota del due%o. ,na se/unda ta$la contiene los re/istros de cuota de los usuarios que tiene al/!n arc"ivo a$ierto en ese momento, para poder localizar los distintos lmites. Cada vez que se a%ade un $loque a un arc"ivo, se incrementa el total de $loques car/ados al usuario y se verifica este valor contra los lmites estricto y fle-i$le. Se puede e-ceder el lmite fle-i$le, pero no el estricto. Cuando un usuario desea iniciar su sesin, el SO verifica el arc"ivo de cuotas para ver si este se "a e-cedido su limite fle-i$le 1ya sea en numero de arc"ivos o $loques2. Si se "a e-cedido, se le advierte 1mediante un mensa&e2 y el contador de advertencias se reduce en uno. Si este lle/a a cero, no se le permite iniciar sesin nuevamente. 9. Imp$eme ta!i& "e$ Sistema "e Ar!-ivos C =i "o>s '??? 60FS es un sistema de arc"ivos /rande y comple&o. Se dise%o desde cero, en vez de intentar me&orar el anti/uo sistema de arc"ivos e :S = 4OS. Estructura del sistema de archivos Cada volumen 60FS 1por e&., particin de disco2 contiene arc"ivos, directorios, mapa de $its u otras estructuras de datos. Cada volumen esta or/anizado como una sucesin lineal de $loques 1cl!steres2 de tama%o fi&o que pueden variar entre K7* $ytes y DG C@, dependiendo del tama%o del volumen. 'l termino medio entre $loques /randes y peque%os es de G C@. Ca"a vo$%me !o tie e % a estr%!t%ra $$ama"a ta/$a maestra "e ar!-ivos @MST: Master Si$e Ta/$eA *%e es % a s%!esi& $i ea$ "e re+istros "e tama;o #i,o @1MKA . Cada re/istro de :F0 descri$e un arc"ivo o directorio, o sea, contiene atri$utos y lista de direcciones de disco donde estn sus $loques. Si el arc"ivo es muy /rande se usan dos o mas re/istros :F0, donde el primero 1re/istro $ase2 apunta a los dems. ,n mapa de $its controla las entradas li$res de la :F0. .a :F0 es en si un arc"ivo, por lo que puede colocarse en cualquier lu/ar del volumen. 5dems el arc"ivo puede crecer "asta un m-imo de *GB re/istros. Cada re/istro es una secuencia de pares 1atri$uto, valor2. Cada atri$uto se enca$eza indicando de que atri$uto se trata y que lon/itud tiene, ya que al/unos son varia$les, como el nom$re del arc"ivo y los datos. Si el nom$re es corto se coloca en la :F0, sino se coloca en otro lu/ar del disco y un puntero al mismo en la :F0. .os primeros 7D re/istros de la :F0 estn reservados para metadatos de 60FS. 'l nom$re de cada uno de estos arc"ivos comienza con un si/no dlar, lo que indica que es un arc"ivo de metadatos. Re+. + 7 * F G K D Des!rip!i& 5rc"ivo :F0 mismo Copia espe&o 5rc"ivo de re/istro p/ recuperacin ?nformacin del volumen 4efinicin de atri$utos 4irectorio raz :apa de $its de $loques usados Re+. B H 7+ 77 7* 7F 7G Des!rip!i& .ista $loques defectuosos ?nformacin de se/uridad 0a$la de conversin de may!sculas a min!sculas '-tensiones Meservado para uso futuro Meservado para uso futuro Meservado para uso futuro 7+

Car/ador de autoarranque

7K

Meservado para uso futuro

Me/istro 7: copia espe&o por si uno de los primeros $loques se arruina al/una vez. Me/istro *: ac se asienta la informacin antes de realizar un cam$io estructural, como a/re/ar o eliminar un directorio, en caso de que falle. Me/istro B: contiene una lista de $loques defectuosos para ase/urarse de que nunca formen parte de un arc"ivo. Me/istro 77: arc"ivos diversos, como cuotas de disco, identificadores de o$&etos, ptos de reanlisis, etc. Cada re/istro de :F0 consiste en un enca$ezado de re/istro se/uido de una secuencia de pares 1enca$ezado de atri$uto, valor2. 'l enca$ezado de re/istro contiene varios datos referidos al re/istro 1numero de validez, contador de referencias al arc"ivo, numero real de $ytes ocupados por el arc"ivo, etc.2. 4espu#s del enca$ezado de re/istro viene el enca$ezado del primer atri$uto se/uido del valor del mismo, lue/o el enca$ezado del se/undo se/uido del valor del mismo, y as sucesivamente. 60FS define 7F atri$utos que pueden estar en un re/istro :F0. Si un atri$uto es demasiado lar/o y no ca$e en el re/istro :F0, se lo coloca en otra parte del disco. 5 este tipo de atri$uto se le llama atri/%to o resi"e te. .a i #orma!i& estF "ar contiene $its indicadores, marcas de "ora, due%o del arc"ivo, informacin de se/uridad. 'l om/re "e ar!-ivo esta en ,nicode y es de lon/itud varia$le. 'l "es!riptor "e se+%ri"a" es o$soleto. 'sta info se coloca en un arc"ivo que es compartido por varios otros. .a $ista "e atri/%tos se usa en caso de que los atri$utos no entren en el re/istro actual. 'l i "e ti#i!a"or "e o/,eto da un nom$re !nico al arc"ivo 1para mantenimiento interno2. 'l p% to "e rea F$isis sirve para monta&es y enlaces sim$licos. 'l om/re "e$ vo$%me indica el nom$re de este volumen. I #orma!i& "e$ vo$%me indica la informacin de este volumen. .a ra2( 2 "i!e se usa para directorios. .a asi+ a!i& "e 2 "i!e y el mapa "e /its se usan para directorios muy /randes. 'l #$%,o %ti$itario "e re+istro se usa en el sistema de arc"ivos cifrador 1T.o/File2. Sin duda el atri$uto "atos es el ms importante. 4espu#s del enca$ezado viene una lista de direcciones de disco que indica los $loques contenidos en el arc"ivo, o en el caso de arc"ivos, unos cuantos cientos de $ytes. 3ara controlar los $loques de disco, siempre *%e sea posi/$e se asi+ a series "e /$o*%es !o se!%tivos . 3or e&emplo si el primer /$o*%e $&+i!o se coloca en el /$o*%e '? "e$ "is!o, el sistema tratara de colocar el se+% "o /$o*%e $&+i!o en el /$o*%e '1 "e$ "is!o, y as sucesivamente. .os $loques de un arc"ivo se descri$en mediante una secuencia de re/istros, los cuales descri$en una serie de $loques l/icamente conti/uos. 'n un arc"ivo sin "uecos "a$r uno solo de estos re/istros. Cada re/istro se enca$eza con el desplazamiento del primer $loque dentro del arc"ivo. Cada enca$ezado de re/istro va se/uido de uno mas pares 1direccin de disco, lon/itud2. .a direccin en disco es el desplazamiento del $loque de disco a partir del principio de su particin y la lon/itud es el n!mero de $loques que "ay en la serie. Se pueden tener tantos pares como sea necesario.

'n el caso de un arc"ivo de n $loques, el numero de de series puede variar de 7 a n incluyendo a este ultimo. 6o e-iste un limite superior para el tama%o de los arc"ivos que pueden representase de esta manera. Si el arc"ivo es demasiado /rande o esta demasiado fra/mentado y no ca$e en un re/istro :F0, se usan dos o ms re/istros :F0. Si la cantidad de re/istros :F0 para un arc"ivo es inmensamente /rande de manera que todos sus ndices no ca$en en el re/istro $ase, la lista de re/istros :F0 de e-tensin se "ace o resi"e te 1se almacena en disco y no en el re/istro2. 5s podr crecer "asta el tama%o necesario. UNIDAD 0: PROCESOS

1. Pro!eso 's un pro/rama e&ecutndose, el pro/rama est en la memoria principal al e&ecutarlo, sino esta en el disco. 77

'l modelo ms sencillo que puede construirse tiene en cuenta que, en un momento dado, un proceso puede estar e&ecutndose en el procesador o no. 5s pues, un proceso puede estar en uno de dos estados: '&ecucin o 6o '&ecucin. '. Crea!i& . termi a!i& "e pro!eso 3ara la !rea!i& "ay cuatro sucesos comunes: 1. nuevo tra$a&o por lote: el proceso se crea para dar respuesta a una emisin de tra$a&o. '. cone-in interactiva: se crea un proceso cuando un usuario quiere conectarse. 0. creado por el SO: el proceso es creado para llevar a ca$o una funcin de parte de un pro/rama de usuario 4. creado por otro proceso: se "ace esto para modular o aprovec"ar el paralelismo. 'l proceso /enerador es padre y el /enerado es "i&o. 3ara la termi a!i& de proceso; en un tra$a&o por lotes se incluye la instruccin de detencin o se "ace una llamada al SO. 'n una aplicacin interactiva, es la accin del usuario la que indica cuando termina el proceso. ,n proceso puede ser eliminado por un proceso padre o cuando #ste termine. 0am$i#n se puede terminar por una serie de fallos o errores. 0. Esta"os *%e p%e"e te er % pro!eso @Mo"e$o "e 8 . < esta"osA K estadosU E,e!%!i& : el proceso que est actualmente en e&ecucin. Listo: proceso que est preparado para e&ecutarse, en cuanto ten/a la oportunidad. K$o*%ea"o: proceso que no se puede e&ecutar "asta que se produzca cierto suceso, como la terminacin de una operacin de '/S. N%evo: proceso que se aca$a de crear pero que a!n no "a sido admitido por el SO. ,n proceso nuevo aun no est car/ado en memoria principal. Termi a"o: un proceso que "a sido e-cluido por el SO del /rupo de e&ecuta$les. < esta"os: a los cinco anteriores se a/re/anU K$o*%ea"o . s%spe "i"o: el proceso est en memoria secundaria 1el disco2 esperando un suceso. Listo . s%spe "i"o: el proceso est en memoria secundaria pero est disponi$le para su e&ecucin tan pronto como se car/ue en memoria principal. 4. Tra si!io es @Mo"e$o "e 8 esta"osA N%$o V N%evo: Se crea un nuevo proceso para e&ecutar un pro/rama. N%evo V Listo: 'l sistema operativo pasar un proceso del estado 6uevo al estado .isto cuando est# preparado para aceptar un proceso ms. Listo V E,e!%!i& : Cuando es "ora de seleccionar un nuevo proceso para e&ecutar, el sistema operativo eli/e a uno de los pro!esos del estado .isto. E,e!%!i& V 0erminado: 'l proceso que se est e&ecutando es finalizado por el sistema operativo si indica que termin o si se a$andona. E,e!%!i& V Listo: .a razn ms com!n de esta transicin es que el proceso que est en e&ecucin "a alcanzado el tiempo m-imo permitido de e&ecucin interrumpida. Otras causas: la asi/nacin de diferentes niveles de prioridad a los diferentes procesos o que un proceso ceda voluntariamente el control del procesador. E,e!%!i& V K$o*%ea"o: ,n proceso se pone en el estado @loqueado si solicita al/o por lo que de$e esperar. K$o*%ea"o V Listo: ,n proceso que est en el estado @loqueado pasar al estado .isto cuando se produzca el suceso que esta$a esperando. Listo V Termi a"o: 'n al/unos sistemas, un padre puede terminar con un proceso "i&o en cualquier momento. 5dems, si el padre termina, todos los procesos "i&os asociados con #l pueden ser finalizados. K$o*%ea"o V Termi a"o: Se aplica el mismo comentario que en el caso anterior. 8. Pro!esos S%spe "i"os .as actividades de '/S son muc"o ms lentas que las de clculo y, por tanto, el procesador en un sistema de mono pro/ramacin est parado la mayor parte del tiempo. 5dems, el procesador es tan rpido comparado con la '/S que es "a$itual que todos los procesos de memoria est#n esperando por '/S. 5s pues, incluso con multipro/ramacin, el procesador podra estar desocupado la mayor parte del tiempo. ,na solucin es el i ter!am/io, lo que si/nifica mover % a parte "e$ pro!eso o to"o e$ pro!eso "e $a memoria pri !ipa$ a "is!o. Cuando nin/uno de los procesos en memoria principal est en estado Listo, el sistema operativo e-pulsa a disco a uno de los procesos que est# K$o*%ea"o y lo pasa a una cola de S%spe "i"os. 'sta es una cola de procesos e-istentes que "an sido sacados temporalmente de la memoria principal o suspendidos. 'l sistema operativo trae entonces otro proceso de la cola de Suspendidos o atiende la demanda de crear un nuevo proceso. .a e&ecucin contin!a entonces con el nuevo proceso que "a lle/ado. 7*

'l intercam$io, no o$stante, es una operacin de '/S y, por tanto, "ay una posi$ilidad de que el pro$lema empeore en vez de me&orar. 3ero como la '/S con el disco es, en /eneral, la '/S ms rpida de un sistema 1en comparacin, por e&emplo, con una cinta o una impresora2, el intercam$io suele me&orar el rendimiento. 9. Tra si!io es !o e$ Mo"e$o "e < esta"os K$o*%ea"o V K$o*%ea"o . s%spe "i"o K$o*%ea"o . S%spe "i"o V Listo . S%spe "i"o: ,n proceso en estado @loqueado y Suspendido se pasa al estado .isto y Suspendido cuando ocurre el suceso que esta$a esperando. Listo . S%spe "i"o V Listo: puede que un proceso en estado .isto y Suspendido ten/a una prioridad mayor que la de un proceso en estado .isto. 3uede ser ms importante tomar el proceso de mayor prioridad que minimizar el intercam$io. Listo V Listo . S%spe "i"o: puede ser necesario suspender un proceso .isto si #sta es la !nica forma de li$erar un $loque lo suficientemente /rande de memoria principal. 3or !ltimo, el sistema operativo puede suspender un proceso .isto de ms $a&a prioridad en lu/ar de uno @loqueado de prioridad ms alta si cree que el proceso @loqueado pronto estar listo. DESCRIPCION DE PROCESOS <. Estr%!t%ra "e !o tro$ "e SO 'l SO se encar/a de controlar los procesos y administrar sus recursos. 3ara ello, el SO construye y mantiene ta$las de informacin so$re cada entidad que est# administrando: Ta/$as "e memoria Se utiliza para se/uir la pista de la memoria principal 1real2 y secundaria 1virtual2. 3arte de la memoria principal esta reserva para uso del SO, el resto es para los procesos. ?ncluyen informacin como asi/nacin de memoria principal y secundaria a los procesos, informacin de proteccin de re/iones compartidas 1por los procesos2 de memoria. Ta/$as "e E)S Sirve para administrar los dispositivos y canales de '/S, los cuales pueden estar disponi$les o asi/nados a un proceso en particular. Ta/$as "e ar!-ivos 0oda la informacin referida a los arc"ivos, su posicin en la memoria principal, su estado actual, y otros atri$utos se almacenan en estas ta$las. Ta/$as "e pro!esos Sirve para administrar los procesos. Se /enera un n!mero para cada proceso, para poder identificarlo. 'stas ta$las estn enlazadas o relacionadas, disponen de referencias cruzadas. ESTRUCTURA DE CONTROL DE PROCESOS Estr%!t%ra "e !o tro$ "e pro!esos ,n proceso consta de un con&unto de pro/ramas, que contienen datos, tam$i#n e-iste una pila para llevar la cuenta de los procedimientos; adems cada proceso tiene una serie de atri$utos llamados $loque de control de procesos 13C@2. 'ste con&unto de pro/ramas, datos, pilas, 3C@ se llama 8ima/en de proceso9. .a u$icacin de la ima/en del proceso depende del esquema de /estin de memoria utilizado. 'sta ima/en puede ser un $loque que se encuentra en el disco, pero al menos una parte de$e estar en memoria principal para que el SO pueda administrar el proceso. Si el proceso se e&ecuta, toda la ima/en va a la memoria principal. .os $loques de la ima/en pueden ser varia$les 1se/mentos2 o fi&os 1p/inas2. .as ta$las de procesos muestran la u$icacin de cada se/mento y cada p/ina. La importa !ia "e$ PCK Cada 3C@ contiene toda la informacin de un proceso necesaria para un SO. 'l con&unto de los 3C@ define el estado del SO. La i #orma!i& *%e ma e,a e$ PCK se p%e"e a+r%par e tres !ate+or2as ?dentificacin del proceso: cada proceso tiene un n!mero identificador. ?nformacin del estado del procesador: est formada por el contenido de los re/istros del procesador. ?nformacin del control de proceso: informacin adicional para que el SO controle los procesos. Mo"os "e e,e!%!i& Mo"o privi$e+ia"o: tam$i#n llamado modo del sistema, modo de control, o modo del n!cleo. Se refiere al n!cleo del SO que lleva a ca$o las funciones importantes del sistema.

7F

Mo"o "e %s%ario: los pro/ramas del usuario se e&ecutan en este modo. '-iste un $it en la pala$ra del estado del pro/rama 13S(2 que indica al procesador el modo de e&ecucin. 3ara cam$iar el modo de e&ecucin se cam$ia el $it. Crea!i& "e pro!esos: incluye los si/uientes pasos. 5si/nar un !nico identificador al nuevo proceso; se a%ade una nueva entrada a la ta$la principal de procesos, que contiene una entrada por proceso. 5si/nar espacio al proceso; incluye todos los elementos de la ima/en del proceso. 5si/nar el 3C@ 1$loque de control del proceso2. 'sta$lece los enlaces apropiados. Crear o ampliar otras estructuras de datos. Cam/io "e pro!eso Se puede producir en cualquier momento en que el SO "aya tomado el control a partir del proceso que se est e&ecutando. 3ara los cam$ios de proceso se tiene en cuenta las interrupciones que pueden ser interrupciones ordinarias o cepos. .a primera es asi/nada por al/!n suceso e-terno al proceso y la se/unda por al/!n error dentro del proceso. ?nterrupcin del relo&: el SO determina si el proceso "a consumido el tiempo m-imo permitido. ?nterrupcin de '/S: el SO determina que accin de '/S se "a producido. Fallo de memoria: por e&emplo, fallo en la direccin de memoria principal. 'n los cepos el error puede ser fatal o no. Si lo es el proceso se termina. Si no lo es se lo puede recuperar o notificar al usuario. .lamado del supervisor: el pro/rama en e&ecucin llama al SO para que este realice el cam$io de proceso que conven/a se/!n la situacin. :i$os @t-rea"sA Son un con&unto de instrucciones que pertenecen a un proceso. Mo o-i$o: un solo "ilo de e&ecucin por proceso, es decir, no e-iste el concepto de "ilo. M%$ti-i$o: varios "ilos de e&ecucin dentro de un solo proceso. 'n un entorno multi"ilo contin!a e-istiendo un solo 3C@ y un espacio de direccin de usuario asociado al proceso, pero a"ora "ay pilas separadas por cada "ilo, as como diferentes 3C@ para cada "ilo. 0odos los "ilos de un proceso comparten el estado y los recursos del proceso y tienen el mismo acceso a los datos. Ke e#i!ios !$ave "e $os -i$os Se tarda muc"o menos tiempo en crear un "ilo que en crear un proceso. Se tarda muc"o menos tiempo en terminar un "ilo que un proceso. Se tarda muc"o menos tiempo en cam$iar entre dos "ilos de un mismo proceso. 5umenta la eficiencia de comunicacin entre pro/ramas en e&ecucin. .os "ilos de un mismo proceso comparten memoria y arc"ivos. 3ueden comunicarse entre s sin invocar al n!cleo. Se pueden procesar en diferentes procesadores 1paralelismo2. Esta"os "e % -i$o '&ecucin, listo y $loqueado. 6o "ay estados de suspensin. :i$os a ive$ "e %s%ario @ULTA 0odo el tra$a&o de /estin de "ilos los realiza la aplicacin y el n!cleo no es consciente de la e-istencia de "ilos. 0odas las operaciones se llevan a ca$o en el espacio de usuario y dentro de un mismo proceso. 4esventa&a de ,.0 Cuando un ,.0 e&ecuta una llamada al sistema, no solo se $loque ese "ilo, sino todos los "ilos del proceso. .os multi"ilos ,.0 no aprovec"an la venta&a de los multiprocesadores. Se asi/na un proceso a un solo procesador cada vez. :i$os a ive$ "e 3!$eo @MLTA 0odo el tra$a&o de /estin de "ilos la realiza el n!cleo. 'l n!cleo puede planificar simultneamente m!ltiples "ilos del mismo proceso en m!ltiples procesadores. Si se $loquea un "ilo de un proceso, el n!cleo puede planificar otro "ilo del mismo proceso. Desve ta,a "e MLT 'l paso de control de un "ilo a otro dentro de un mismo proceso necesita un cam$io de modo a modo de n!cleo. Se necesita permanentemente la intervencin del n!cleo. 7G

Ve ta,as "e %sar ULT e $%+ar "e MLT 'l intercam$io de "ilos no necesita los privile/ios del modo de n!cleo. .o puede realizar una planificacin especfica. .os ,.0 pueden e&ecutar en cualquier SO. Ve ta,as "e %sar MLT e $%+ar "e ULT .a principal venta&a del C.0 es que si se $loquea un "ilo no se $loque todo el proceso como sucede en ,.0. Se p%e"e !om/i ar ULT . MLT1 a%me ta "o $as ve ta,as . "ismi %.e "o $os i !o ve ie tes. M%$tipro!eso sim6tri!o @SMPA Ofrece paralelismo mediante la duplicacin de procesadores. 3ara la arquitectura de S:3 "ay cuatro cate/oras: S$%,o "e i str%!!i& simp$e)"ato simp$e @SISDA : un !nico procesador e&ecuta un !nico flu&o de instrucciones con datos en una !nica memoria. S$%,o "e i str%!!i& simp$e)"atos m3$tip$es @SIMDA : una !nica instruccin que se e&ecute so$re un con&unto de datos diferentes por medio de distintos procesadores. S$%,o "e i str%!!io es m3$tip$es)"atos simp$es @MISDA : no se "a implementado nunca. S$%,o "e i str%!!io es m3$tip$es)"atos m3$tip$es @MIMDA : un con&unto de procesadores e&ecuta simultneamente varias instrucciones so$re distintos con&untos de datos. 'n los :?:4, si cada procesador tiene una memoria cada elemento del proceso es un computador auto contenido, esto se llama a/rupacin. C$3ster o m%$ti!omp%ta"or 5qu el n!cleo se e&ecuta en un solo procesador y usa ms procesadores como clientes. Si los procesadores comparten una memoria com!n, se comunican entre s por medio de esta memoria, esto se llama multiprocesadores con memoria compartida. 'n un S:3, el n!cleo puede e&ecutarse en cualquier procesador y estar construido por m!ltiples procesos o "ilos, esto permite que "aya parte del mismo que se e&ecute en paralelo. Se llama sim#trico porque todos los procesadores tienen las mismas funciones. .os que no comparten memoria son d#$ilmente acoplados, los que s comparten son fuertemente acoplados 1as son casi todos los S:32. Mi!ro 3!$eo 's un peque%o n!cleo del SO que proporciona las $ases para ampliaciones. 5qu solo las funciones a$solutamente esenciales de$en permanecer en el n!cleo. Ve ta,as "e a+r%pa!i& Mi!ro 3!$eo ?nterfaz uniforme '-tensi$ilidad 1a%adir servicios2 Fle-i$ilidad 1ms confia$le2 3orta$ilidad 1cam$iar de procesador2 Fia$ilidad 1ms confia$le2 Soporte a sistemas distri$uidos Soporte a SO orientados a o$&etos Com% i!a!i& e tre pro!esos Condiciones de competencia: cuando dos o ms procesos estn leyendo o escri$iendo datos compartidos y el resultado final depende de qui#n se e&ecuta y cuando lo "ace. Me/iones crticas: es la parte del pro/rama en que se tiene acceso a la memoria compartida. '-clusin mutua: dos o ms procesos no pueden leer o escri$ir datos compartidos al mismo tiempo. Para evitar $as !o "i!io es "e !ompete !ia se e!esita !%mp$ir $o si+%ie te 4os procesos no pueden estar al mismo tiempo dentro de sus re/iones crticas. 6o pueden "acerse suposiciones so$re las velocidades ni el n!mero de las C3,s. 6in/!n proceso que se e&ecute fuera de su re/in crtica puede lle/ar a otro proceso. 6in/!n proceso de$er tener que esperar de manera indefinida para entrar en su re/in crtica. SemF#oro 3uede tener valor cero, que indica que no se /uardaron llamada (a>e ,p, o al/!n valor positivo si "ay llamadas pendientes. Oay dos operaciones: "o> . %p. 4o)n determina si un semforo tiene un valor mayor a cero, en este caso decrementa el valor y continua; si el semforo tenia cero, el proceso se desactiva sin terminar la operacin 7K

do)n. <erificar el valor, modificarlo y desactivarse se efect!an como una sola accin atmica 1indivisi$le2. .a operacin up incrementa el valor del semforo. ,na vez iniciada una operacin de semforo, nin/!n otro proceso podr tener acceso al semforo antes de que la operacin "aya terminado o se "aya $loqueado. Me sa,es 's un m#todo de comunicacin entre procesos que utiliza dos llamadas: send y receive; al i/ual que los semforos y a diferencia de los monitores, son llamados al sistema, no construcciones del len/ua&e. P$a i#i!a!i& "e pro!esos Ca$e "ari(a!i& por t%r o !ir!%$ar @ro% "Qro/i A: a cada proceso se le asi/na un intervalo de tiempo llamado 8cuanto9, durante el que se le permitir e&ecutarse. Si al t#rmino del cuanto el proceso se si/ue e&ecutando, se le e-propia la C3, para drsela a otro proceso. Si el proceso se $loquea o termina antes que el cuanto, la conmutacin de la C3, se e&ecutar en ese momento. .a cuestin importante es la ma/nitud del cuanto; un cuanto demasiado corto causa demasiadas conmutaciones de proceso, pero uno demasiado lar/o puede reducir la rapidez de respuesta a solicitudes interactivas cortas. ,n cuanto de entre *+ K+ ms es un t#rmino razona$le. Ca$e "ari(a!i& por priori"a"es: 5 cada proceso se le asi/na una prioridad, el proceso que est# listo de prioridad ms alta es el que se e&ecuta. .a asi/nacin puede ser: W 'sttica: asi/nada por el usuario. W 4inmica: asi/nada por el SO en $ase al so$rante de tiempo de cada cuanto. 5c tam$i#n se asi/nan cuantos, para evitar que un proceso con alta prioridad se e&ecute independientemente. Co$as m3$tip$es: Se esta$lecen clases de prioridad. .os procesos de la clase mas alta se e&ecuta$an en un cuanto, los de la si/uiente clase ms alta en dos cuantos, y as sucesivamente. Cada vez que un proceso se /asta$a todos los cuantos asi/nados, se le $a&a$a inmediatamente inferior. P$a i#i!a!i& "e ' ive$es: 1no lo encontr# en el li$ro, esta solo lo que ten/o en carpeta2 7er nivel: 3roceso en M5:. *do nivel: 3roceso en 4?SCO. Re!%rsos 3uede ser un dispositivo de "ard)are o de informacin. Solo pueden ser utilizados por un proceso a la vez. .os recursos pueden ser e-propia$les 1se le puede quitar el recurso al proceso sin causar da%o2 o no e-propia$les 1no se le puede quitar el recurso al proceso que lo tiene2. @loqueo irreversi$le: un con&unto de proceso cae en un $loqueo irreversi$le si cada proceso del con&unto est esperando un suceso que solo otro proceso del con&unto puede causar. Co "i!io es para e$ /$o*%eo irreversi/$e EE!$%si& m%t%a: cada recurso est asi/nado solo a un proceso, o est disponi$le. Rete !i& . espera: los procesos que tienen recursos pueden solicitar otros recursos. No eEpropia!i& : los recursos ya otor/ados no pueden arre$atarse al proceso que lo tiene. Espera !ir!%$ar: de$e "a$er una cadena de dos o ms procesos, cada uno de los cuales est esperando un recurso que est en manos del si/uiente miem$ro de la cadena. Mo"e$a"o "e /$o*%eos irreversi/$es Se emplean /rafos diri/idos. Oay dos nodos, los crculos son procesos, y los cuadrados son recursos. ,n arco desde un recurso a un proceso quiere decir que el recurso fue solicitado primero por ese proceso y se lo concedi 172. ,n arco desde un proceso "asta un recurso, si/nifica que el proceso est $loqueado esperando ese recurso 1*2.

Irficos de $loqueos irreversi$les

Dete!!i& "e /$o*%eos irreversi/$es: se utilizan al/oritmosU Co % so$o re!%rso "e !a"a tipo : el al/oritmo toma de cada nodo, por turno, como raz de lo que espera que sea un r$ol, y realiza una $!squeda de profundidad. Si re/resa a un nodo ya visitado encontr un ciclo. Si a/ota todos los arcos que salen de un nodo, retrocede al nodo anterior. Si as lle/a "asta la raz, quiere decir que el su$/rafo accesi$le desde el actual nodo no contiene ciclos. Si se cumple esto para todos los nodos, no "a$r ciclos por lo tanto no "a$r $loqueos irreversi$les. 7D

Co m3$tip$es re!%rsos "e !a"a tipo: utiliza matrices y comparacin entre vectores para detectar $loqueos irreversi$les. 5 medida que al/oritmo avanza, se van marcando los procesos que no "an cado en un $loqueo irreversi$le. 0odos los procesos no marcados caen en un $loqueo irreversi$le, cuando el al/oritmo termina. C&mo re!%perarse "e % /$o*%eo irreversi/$e: se puede realizarU Me"ia te eEpropia!i& : arre$atarle de manera temporal un recurso a su actual poseedor y drselo a otro proceso. 4epende de la naturaleza del recurso y del proceso que ten/a un recurso fcil de quitar. Me"ia te reversi& : los procesos pasan por puntos de verificacin peridicamente. 'n estos puntos se /ra$a en un arc"ivo el estado de un proceso 1la ima/en de memoria y el estado de los recursos, es decir, si estn asi/nados o no a dic"o proceso2. Cada punto se va /ra$ando en un nuevo arc"ivo. Cuando se detecta un $loqueo irreversi$le un proceso que tiene recurso solicitado inicia en un punto previo a la adquisicin del recuso, y el recurso se asi/na a un proceso que "a cado en un $loqueo irreversi$le. Por e$imi a!i& "e pro!esos: se puede eliminar un proceso del ciclo de $loqueo o un proceso que no pertenezca al ciclo, a fin de li$erar sus recursos. Se de$e tener muc"o cuidado de eliminar un proceso, eli/iendo un proceso que pueda volver a e&ecutarse desde el principio sin efectos per&udiciales. ?nanicin 1no est en el apunte2: si/nifica de$ilidad.

7N

UNIDAD 4:

ADMINISTRACION DE MEMORIA

.a parte del SO que administra todo lo referido a la memoria se conoce como a"mi istra"or "e memoria. Su o$li/acin es mantenerse al tanto de que partes de la memoria estn uso y que otras no, asi/nar memoria a procesos cuando la necesiten y li$erar la misma cuando estos terminen, y administrar el intercam$io entre la memoria principal y el disco duro cuando la primera es muy c"ica para contener todos los procesos.

ESTRATEHIAS DE ADMINISTRACION
1. Mo opro+rama!i& si i ter!am/io i pa+i a!i& Consiste en e&ecutar solo un pro/rama a la vez, repartiendo la memoria entre ese pro/rama y el SO. Si el sistema esta or/anizado de esta manera, solo puede e&ecutar un proceso a la vez. '. M%$tipro+rama!i& !o parti!io es #i,as .a multipro/ramacin aumenta el aprovec"amiento de la C3,. '-isten varias formas de lo/rar multipro/ramacin. .a forma mas fcil es "ivi"ir $a memoria e n parti!io es 1desi/uales o no2, !a"a % a !o % a !o$a "e e tra"a. Cuando lle/a un tra$a&o, se lo pone en la cola de la particin ms peque%a en la que ca$e. 5l/unas "esventajas$ al ser particiones fi&as, cualquier espacio de una particin no ocupada se desperdicia, y si la cola de una particin peque%a esta llena y la de una /rande vaca, los tra$a&os peque%os de$en esperar aunque "aya muc"a memoria desocupada. Otra alternativa seria mantener % a so$a !o$a para to"as $as parti!io es . Cada vez que se desocupe una particin, el tra$a&o ms cercano al frente, y que quepa en esa particin, se car/ar y e&ecutar. .a !nica desventaja seria desperdiciar una particin /rande en un tra$a&o peque%o. 3ara eliminar la desventa&a anterior una estrate/ia distinta seria eEami ar to"a $a !o$a !a"a ve( *%e se "eso!%pe % a parti!i& . e$e+ir e$ tra/a,o mas +ra "e *%e e tre e e$$a . 'ste enfoque "is!rimi a $os tra/a,os pe*%e;os @*%e s%e$e ser i tera!tivosA 1desperdiciar una particin /rande en un tra$a&o peque%o2 cuando es me&or darle a estos el me&or servicio y no el peor. ,na so$%!i& a lo anterior seria te er por $o me os % a parti!i& pe*%e;a , para e&ecutar tra$a&os peque%os. Otra estrate/ia se $asa en la re/la de que un tra$a&o ele/i$le para e&ecutarse no puede pasarse por alto ms de & veces. Cada vez que se lo saltea, se le suma un punto. Cuando tiene & puntos, no se le puede i/norar. 0. Mo"e$a"o "e $a m%$tipro+rama!i& Se ve el aprovec"amiento de la C3, desde el punto de vista pro$a$ilstico. Se supone que un proceso pasa una fraccin p de su tiempo esperando que terminen operaciones de '/S. si "ay n procesos en memoria, la pro$a$ilidad de que todos est#n esperando '/S es pn. 5si, el aprovec"amiento del C3, esta dado por la formula:

5provec"amiento de C3, X 7 pn
'ste modelo pro$a$ilstico es una apro-imacin que se $asa en que los n proceso son independientes, lo que implica que es acepta$le que un sistema con cinco procesos en memoria ten/a tres en e&ecucin y dos esperando. Con una sola C3,, no es posi$le tener tres procesos e&ecutndose al mismo tiempo, por lo que los procesos no son independientes. .o que interesa destacar es que la multipro/ramacin permite a los procesos usar la C3, cuando de otra manera estara inactiva. Reasi+ a!i& @Re%/i!a!i& . prote!!i& A 4istintos tra$a&os se e&ecutan en distintas direcciones. Cuando se enlaza un pro/rama 1se com$ina el pro/rama principal, los procedimientos del usuario y los procedimientos de $i$lioteca en un solo espacio de direcciones2, el enlazador necesita sa$er en qu# direccin de memoria arrancar el pro/rama. 'sto es el pro$lema de la reu$icacin. ,na posi$le solucin es modificar la instruccin en el momento en que el pro/rama se car/a en la memoria, ac el enlazador de$er incluir en el pro/rama $inario, una lista o mapa de $its que indique cules pala$ras del pro/rama son direcciones a reu$icar y cules no lo son. 'sto no resuelve el pro$lema de la proteccin. ,n pro/rama mal intencionado siempre puede construir una instruccin nueva y saltar a ella. .a solucin de ?@: fue dividir la memoria en $loques de *>$ y asi/narle un cdi/o de proteccin de G $its a cada $loque. .a pala$ra de estado del pro/rama 13S(: pr 'ram status ( rd2 contena una clave de G $its. Si un proceso intenta$a acceder a memoria cuyo cdi/o de proteccin difiriera de la clave en la 3S(, se lo atrapa$a. Otra solucin es darle a la maquina * re/istros: 8$ase9 y 8limite9. 'l re/istro $ase se car/a con la direccin donde comienza su particin y el lmite con la lon/itud de la particin. Cuando se /enera una direccin de memoria, se le suma el contenido del re/istro $ase antes de enviarse a memoria. 0am$i#n se comparan las direcciones con el re/istro lmite para que no ten/an acceso a memoria fuera de la particin 7B

actual. ,na de las desventa&as es que se de$e realizar una suma y una comparacin cada vez que se "ace referencia a memoria. .as comparaciones pueden ser rpidas, pero las sumas son lentas de$ido al tiempo de propa/acin del acarreo.

I ter!am/io 5 veces no "ay espacio suficiente en memoria para contener todos los procesos activos. 'ste enfoque trae a la memoria un proceso entero, se lo e&ecuta durante un rato y se lo vuelve a /uardar en el disco. Parti!io es varia/$es: el n!mero, u$icacin y tama%o de las particiones varan en forma dinmica conforme los procesos lle/an y se van. 'sto me&ora el aprovec"amiento de la memoria pero complica la asi/nacin y li$eracin, y su control. A"mi istra!i& "e memoria !o mapa "e /its: la memoria se divide en unidades de asi/nacin. 5 cada unidad de asi/nacin corresponde un $it del mapa de $its. 5 menor tama%o de la unidad 1es decir, a mayor cantidad de unidades de asi/nacin2, mayor es el mapa de $its. 3ro$lemas: cuando se lleva un proceso de 8>9 unidades a la memoria, el administrador de memoria de$e $uscar en el mapa 8>9 $its consecutivos que indiquen unidades vacas para poder asi/nar el proceso en dic"as unidades 1esto es un tra$a&o muy lento2. A"mi istra!i& "e memoria !o $istas e $a(a"as o $i+a"as : es una lista de se/mentos de memoria asi/nados y li$res, un se/mento es un "ueco 1O2 o un proceso 132, cada entrada de la lista es un O o un 3, con la direccin donde comienza, la lon/itud y un apuntador a la si/uiente entrada. '-isten varios al/oritmos para asi/nar memoria a un proceso reci#n creado: T Primer a,%ste: el administrador de memoria $usca en la lista "asta "allar un O lo $astante /rande. 'ste O se divide en dos partes: una para el proceso y otra para la memoria desocupada. T Si+%ie te a,%ste: el al/oritmo recuerda en qu# punto de la lista se quedo la !ltima vez que encontr un O apropiado, y la si/uiente vez inicia su $!squeda desde all. 's ms lento que el anterior. T Me,or A,%ste: se $usca en toda la lista y se eli/e el O ms peque%o que alcance. 's ms lento que el primer a&uste. 0iende a saturar la memoria de peque%os O que no sirven de nada. T Peor a,%ste: siempre se eli/e el O ms /rande disponi$le. T A,%ste rFpi"o: mantiene listas individuales para al/unos de los tama%os que se solicitan en forma ms com!n. 5c, para localizar un O del tama%o requerido es muy rpido, pero la desventa&a es que cuando un 3 termina o se va al disco, es difcil localizar a sus vecinos, para sa$er si puede "a$er fusin o no. Si no se puede la memoria se fra/mentara en muc"os O peque%os en los que no ca$e nin/!n 3. 3ara todos estos al/oritmos: se puede tener listas distintas para los 3 y para los O, as se inspeccionan solo O y no 3. Memoria virt%a$ 3ermite que los pro/ramas se e&ecuten, aunque solo una parte de ellos este en la memoria principal PF+i a!i& : e-iste un con&unto de direcciones de memoria que los pro/ramas pueden producir. Se denominan direcciones virtuales y constituyen el espacio de direcciones virtuales. Cuando se usa memoria virtual, las direcciones virtuales no se envan de manera directa al $us de memoria, sino a una unidad de administracin de memoria 1::, X memory mana/ement unit2 que esta$lece una correspondencia entre las direcciones virtuales y fsicas de la memoria. 'l espacio de direcciones virtual se divide en unidades llamadas p/inas. .as unidades correspondientes en la memoria fsica se denominan marcos de p/ina. .as p/inas y los marcos de p/ina siempre tienen el mismo tama%o. .as transferencias entre M5: y disco siempre se efect!an en unidades de p/ina. Cuando un pro/rama trata de usar una p/ina que no tiene correspondencia, se produce una interrupcin de sistema que se denomina fallo de p/ina. 'l SO esco/e un marco de p/ina que no se est# usando muc"o, y vuelve a escri$ir su contenido en el disco, despu#s de lo cual, trae la p/ina a la que se aca$a de "acer referencia y la coloca en el marco reci#n desocupado, modifica el mapa y reinicia la instruccin interrumpida.

7H

Ta/$as "e pF+i a: el n!mero de p/ina se usa como ndice para consultar la ta$la de p/inas, y as o$tener el n!mero del marco de p/ina que corresponde. .a correspondencia entre las direcciones virtuales y fsicas, se efect!a dividiendo la direccin virtual en un n!mero de p/inas virtuales y un desplazamiento. .as distintas divisiones implican diferentes tama%os de p/ina. 'l n!mero de marco se ane-a al e-tremo de orden alto del desplazamiento sustituyendo al n!mero de p/ina virtual para formar una direccin fsica que puede enviarse a la memoria. 'l propsito de la ta$la de p/inas es esta$lecer una correspondencia entre las p/inas virtuales y los marcos de p/ina.

T Ta/$a "e pF+i a "e varios ive$es : aqu no es necesario tener todas las ta$las de p/inas en la memoria todo el tiempo. Cuando se presenta una direccin virtual a la ::, esta e-trae un valor que usa como ndice para consultar la ta$la de p/inas de primer nivel. .a entrada a la que se lle/a al consultar la ta$la de p/inas de primer nivel, contiene la direccin del n!mero de marcos de p/ina donde est almacenada una ta$la de p/inas de se/undo nivel. 'sto es en el caso de ta$las de dos niveles. 0ener ms niveles aumenta la fle-i$ilidad, pero no vale la pena la comple&idad adicional que sur/e cuando se tienen ms de F niveles. Memoria aso!iativa 1$uffer de consulta para traduccin o 0.@2: est en el interior de la ::,. Consiste en un n!mero peque%o de entradas, cada una contiene informacin so$re una p/ina incluido el n!mero de p/ina virtual, un $it que se esta$lece cuando la p/ina se modifica, el cdi/o de proteccin 1permisos para leer/escri$ir/e&ecutar2 y el marco de p/ina fsico en el que esta la p/ina. 'stos campos tienen una correspondencia 7 a 7 con los campos de la ta$la de p/inas. Otro $it indica si la entrada se est usando o no. Cuando se presenta una direccin virtual a la ::, para que la traduzca, el "ard)are verifica primero si su n!mero de p/ina virtual est presente en el 0.@. Si encuentra el n!mero y el acceso no vio los $its de proteccin, el n!mero de marco de p/ina se toma directo del 0.@. Si el n!mero de p/ina virtual est presente en el 0.@ pero la instruccin est tratando de escri$ir en una p/ina de solo lectura, se /enerar un fallo de proteccin. Cuando el n!mero de p/ina virtual no est en el 0.@, la ::, detecta esto y realiza una consulta ordinaria de la ta$la de p/inas, lue/o desalo&a una de las entradas del 0.@ y la sustituye por la entrada de ta$la de p/inas que aca$a de $uscar. Cuando una entrada se desalo&a del 0.@, el $it modificado se copia de nuevo en la entrada correspondiente de la ta$la de p/inas en la memoria. .os dems valores ya estn a". Cuando el 0.@ se car/a de la ta$la de p/inas, todos los campos se toman de la memoria. A$+oritmos para reemp$a(o "e pF+i as Cuando se presenta un fallo de p/inas, el SO tiene que esco/er la p/ina que desalo&ara de la memoria para "acer espacio para colocar la p/ina que traer del disco. *+

A$+oritmo optimo "e reemp$a(o "e pF+i as : cada p/ina puede rotularse con el n!mero de instrucciones que se e&ecutaran antes de que se "a/a la primera referencia a esa p/ina. 'ste al/oritmo dice que de$e desalo&arse la p/ina con el rotulo mas /rande. 'ste al/oritmo no puede ponerse en prctica. A$+oritmo "e reemp$a(o "e pF+i as o %sa"as re!ie teme te @NRUA : se asocia a cada p/ina * $its de estado, el $it M se enciende cada vez que se "ace referencia a la p/ina 1para leer o escri$ir2. 'l $it : se enciende cada vez que se escri$e en la p/ina 1es decir se modifica2. Cuando se presenta un fallo de p/ina, el SO e-amina todas las p/inas y las divide en G cate/oras con $ase en los valores actuales de sus $its M y :: T C$ase ?: o so$i!ita"a1 o mo"i#i!a"a T C$ase 1: o so$i!ita"a1 mo"i#i!a"a T C$ase ': so$i!ita"a1 o mo"i#i!a"a T C$ase 0: so$i!ita"a1 mo"i#i!a"a 'ste al/oritmo desalo&a al azar una p/ina de la clase de n!mero ms $a&o que no est# vaca. Se $asa en la suposicin de que es me&or desalo&ar una p/ina modificada a la que no se "a "ec"o referencia en por lo menos un tic del relo&, en vez de una p/ina limpia que se est usando muc"o A$+oritmo "e reemp$a(o "e pF+i as "e primero e e trar1 primero e sa$ir @SISOA : el SO mantiene una lista de todas las p/inas que estn actualmente en la memoria con la ms anti/ua al principio de la lista, y la ms nueva la final. 5l presentarse un fallo de p/ina, se desalo&a la p/ina que esta al principio de la lista y la nueva se ane-a al final. A$+oritmo "e reemp$a(o "e pF+i as "e se+% "a oport% i"a" : es una modificacin del F?FO, se e-amina el $it M de la p/ina ms anti/ua. Si es +, la p/ina no se usa muc"o, por lo tanto es reemplazada de inmediato. Si es 7, se apa/a, la p/ina se coloca al final de la lista de p/inas y su tiempo de car/a se actualiza como si aca$ara de lle/ar a la memoria. A$+oritmo "e reemp$a(o "e pF+i a me os re!ie teme te %sa"a @LRUA : cuando se presenta un fallo de p/ina, se desalo&a la p/ina que tiene ms tiempo sin usarse. Po$2ti!as "e asi+ a!i& $o!a$ . +$o/a$ Se refiere a cmo de$e repartirse la memoria entre los procesos e&ecuta$les que compiten por ella. .os al/oritmos locales asi/nan una fraccin fi&a de la memoria a cada proceso. .os al/oritmos /lo$ales asi/nan en forma dinmica los marcos de p/ina entre los procesos. Si el tama%o del con&unto de tra$a&o puede variar, son me&ores los al/oritmos /lo$ales. Si se usa un al/oritmo local, y el con&unto de tra$a&o crece, "a$r "iperp/inacin, si decrece, se desperdicia memoria. Con los al/oritmos /lo$ales, el sistema de$e decidir de manera continua cuantos marcos de p/ina asi/nara a cada proceso. ,na forma de administrar la asi/nacin, es usando el al/oritmo de frecuencia de fallos de p/ina 13FF2, que indica cundo "ay que aumentar o reducir el n!mero de p/inas asi/nadas al proceso, pero no dice que p/ina reemplazar si "ay un fallo. Se+me ta!i& 3roporciona a la maquina varios espacios de direcciones independientes por completo, llamados se/mentos. ,n se/mento es una entidad l/ica de la cual tiene conocimiento el pro/ramador. Cada uno consta de una sucesin lineal de direcciones, 3ueden tener lon/itudes distintas, que pueden variar durante la e&ecucin. 3ueden crecer o decrecer de forma independiente, sin afectarse unos a otros. <enta&as de las memorias se/mentadas: Simplifican el mane&o de estructuras de datos que crecen o decrecen. Simplifica el enlace de procedimientos que se compilan por separado. Si se modifica el procedimiento de un se/mento, no "ace falta modificar nin/!n otro procedimiento 1porque no cam$ia la direccin de inicio2. Facilita el compartimiento de procedimientos y datos entre varios procesos.

*7

UNIDAD 8: Dispositivos "e e tra"a sa$i"a .os dispositivos e-ternos pueden clasificarse en tres cate/oras. Dispositivos legibles por los humanos : apropiados para la comunicacin con el usuario. 3or e&emplo se pueden incluir los terminales de video, que constan de un teclado, pantalla, etc. Dispositivos legibles por la mquina: adecuados para comunicarse con equipos electrnicos, como discos, unidades de cinta, entre otros. Dispositivos de comunicaciones: apropiados para comunicarse con dispositivos le&anos. 3or e&emplo un modem. Tipos "e E)S: E)S pro+rama"a: el procesador emite una orden de '/S de parte de un proceso a un mdulo de '/S; el proceso espera entonces a que termine la operacin, antes de se/uir. E)S "iri+i"a por i terr%p!io es : el procesador emite una orden de '/S de parte de un proceso, contin!a la e&ecucin de las instrucciones si/uiente y el mdulo de '/S lo interrumpe cuando completa su tra$a&o. .as instrucciones si/uientes pueden ser del mismo proceso, si no es necesario para #ste esperar la terminacin de la '/S, en otro caso, el proceso se suspende a la espera de la interrupcin, mientras se realiza otro tra$a&o. A!!eso "ire!to a $a memoria @DMAA : el mdulo de 4:5 controla el intercam$io de datos entre la memoria principal y un mdulo de '/S. 'l procesador enva una peticin de transferencia de un $loque de datos al mdulo de 4:5 y se interrumpe slo cuando se "a transferido el $loque entero. Evo$%!i& "e $as #% !io es E)S: 5 medida que los sistemas informticos "an evolucionado, se "a producido una tendencia creciente en la comple&idad y sofisticacin de cada componente individual. .as etapas de evolucin pueden resumirse como si/ue: 7. 'l procesador controla directamente los dispositivos perif#ricos. 'sto se puede ver en dispositivos simple controlados por microprocesadores. *. Se a%ade un controlador o mdulo de '/S. 'l procesador utiliza '/S pro/ramada sin interrupciones. 'n este punto, el procesador parece aislarse de los detalles especficos de las interfaces con dispositivos e-ternos. F. Se considera la misma confi/uracin que el punto *, pero emplendole interrupciones. 5"ora el procesador no tiene que desperdiciar tiempo a que se realice una operacin de '/S, incrementando la eficiencia. G. 'l mdulo de '/S reci$e el control directo de la memoria a trav#s del 4:5. 5"ora puede mover un $loque de datos a la memoria o desde la misma sin que interven/a el procesador e-cepto al principio y al final de la transferencia. K. Se me&ora el mdulo de '/S "asta lle/ar a ser un procesador separado con un con&unto de instrucciones especializadas para '/S. .a unidad central de proceso ordena al procesador de '/S la e&ecucin de un pro/rama de '/S en la misma memoria principal. D. 'l mdulo de '/S posee su propia memoria local y es, de "ec"o un computador independiente. Con esta arquitectura se pueden controlar un /ran n!mero de dispositivos de '/S, con una participacin mnima del procesador. 5 medida que la evolucin contin!a, el procesador central se va li$erando cada vez ms de las tareas relacionadas con la '/S, me&orando as el rendimiento. Aspe!to "e$ "ise;o Oay dos o$&etivos primordiales en el dise%o del servicio de '/S: eficiencia y /eneralidad. .a e#i!ie !ia es importante porque operaciones de '/S constituyen, a menudo, un cuello en los sistemas informticos. .a mayora de los dispositivos de '/S son e-tremadamente lentos en comparacin con la memoria principal y el procesador. ,na manera de a$ordar este pro$lema es el uso de la multipro/ramacin, que, como se "a visto, permite que al/unos procesos esperen en operaciones de '/S mientas otro proceso se est e&ecutando. 'l se/undo /ran o$&etivo es la +e era$i"a". 'n inter#s de la simplicidad y la e-encin de errores, ser desea$le /estionar todos los dispositivos de una manera uniforme. 4e$ido a la diversidad de caractersticas de los dispositivos, en la prctica es difcil conse/uir una aut#ntica /eneralidad. .o que puede "acerse es emplear un enfoque &errquico y modular para el dise%o las funciones de '/S. A$ma!e amie to i terme"io "e $a E)S Como ya sa$emos, la lectura o escritura en dispositivo de '/S es lento, por lo que si un pro/rama de usuario necesita leer datos de una entrada o escri$irlos en una salida y de$iera, por e&emplo, leer los datos directamente del dispositivo de entrada, esto producira que el pro/rama quede col/ado esperando que la lenta operacin de lectura termine. 3ara evitar este pro$lema lo que se "ace es que se lea de los dispositivos de entrada y esos datos ledos se vallan almacenando en $loques en un almacenamiento intermedio, para que lue/o el pro/rama de usuario lea los datos de ese almacenamiento intermedio o $uffer. **

'ste almacenamiento intermedio ofrecido por los sistemas operativos se utiliza para me&orar el rendimiento del sistema. 3ara estudiarlo me&or es importante "acer una distincin entre dos tipos de dispositivos: dispositivos orientados a bloque; son los que almacenan la informacin en $loques, normalmente de tama%o fi&o, "aciendo las transferencias de un $loque cada vez. ,n e&emplo son los discos y cintas. .os dispositivos orientados a flujo transfieren los datos como una serie de $ytes. 6o poseen estructura de $loques. 3or e&emplo: :O4':, terminales, impresoras, puertos de comunicacin, mouse. Memoria i terme"ia se !i$$a: Cuando un proceso de usuario realiza una solicitud de '/S, el S.O. le asi/na a la operacin un espacio en la parte del sistema de la memoria principal. 3ara los dispositivos orientados a $loque, las transferencias de entrada se realizan en el espacio del sistema. Cuando se "a completado la transferencia, el proceso mueve el $loque al espacio del usuario y solicita otro $loque inmediatamente. 'sta t#cnica se llama lectura por adelantado o entrada anticipada. 3ara la '/S con dispositivos orientados a flu&o, el esquema de memoria intermedia sencilla puede aplicarse por lneas o por $ytes. .a operacin lnea a lnea es adecuada para terminales simples de desplazamientos 1scroll mode2 Memoria i terme"ia "o/$e: Se puede realizar una me&ora so$re la memoria intermedia sencilla asi/nando a la operacin dos almacenes intermedios del sistema. 4e esta forma, un proceso puede transferir datos "acia 1o desde2 una memoria intermedia mientras que el S.O. vaca 1o rellena2 el otro. Memoria i terme"ia !ir!%$ar: .a memoria intermedia do$le puede ser inapropiada si el proceso lleva a ca$o rpidas rfa/as de '/S. 'n este caso, el pro$lema puede miti/arse usando ms de dos memorias intermedias. Cuando se emplean ms de dos, el con&unto de memorias intermedias se conoce con el nom$re de memoria intermedia circular. Cada memoria individual constituye una unidad de memoria circular. 'ste es, sencillamente el modelo del productor/consumidor con una memoria intermedia limitada. P$a i#i!a!i& "e "is!os Q ParFmetros "e$ re "imie to "e$ "is!o: Tiempo bsqueda: es el tiempo necesario para mover el $razo del disco "asta la pista solicitada. 'sta cantidad resulta difcil de concretar. 'l tiempo de $!squeda consta de dos componentes clave: el tiempo de arranque inicial, y el tiempo que se tarda en recorrer las pistas. Retardo de giro: los discos ma/n#ticos 1e-cepto los discos fle-i$les2 tienen una velocidad de rotacin que est en un ran/o de K.G++ a 7+.+++ rpm.; esta !ltima equivale a una revolucin cada Dms. Tiempo de transferencia: el tiempo de transferencia depende del n!mero de $ytes a transferir, el n!mero de $ytes por pista y la velocidad de rotacin en revoluciones por se/undo Po$2ti!as "e p$a i#i!a!i& "e "is!os: Aleatoria: considerando una situacin normal de un entorno de multipro/ramacin, en el que el sistema operativo mantiene una cola de solicitudes para cada dispositivo de '/S. de este modo, para un disco sencillo, en la cola "a$r un n!mero de solicitudes de '/S 1lecturas/escrituras2 procedentes de varios procesos en la cola. Si se eli/en los elementos de la cola en un orden aleatorio, se puede esperar que las pistas recorridas si/an tam$i#n un orden aleatorio, o$teni#ndose el peor rendimiento posi$le. Primero en entrar, primero en salir !"!#$ $ es la manera ms sencilla de planificacin, lo que si/nifica que los elementos se procesan de la cola en un orden secuencial. 'sta estrate/ia tiene la venta&a de ser &usta porque las solicitudes son servidas en el orden en que lle/aron. Prioridad: con un sistema $asado en prioridades 13M?2, el control de la planificacin queda aislado del control del soft)are /estor de disco. 'ste enfoque no persi/ue la optimizacin del uso del disco, sino cumplir con otros o$&etivos del sistema operativo. .os tra$a&os por lotes que sean cortos y los tra$a&os interactivos reci$en frecuentemente una prioridad ms alta que tra$a&os mayores que realizan lar/as operaciones. 'sta prctica permite que el sistema "a/a salir ms rpidamente a muc"os tra$a&os cortos y pueda proporcionar un $uen tiempo de respuesta interactiva. Sin em$ar/o, los tra$a&os mayores pueden tener que esperar e-cesivamente. 'ste tipo de poltica tiende a ser poco favora$le para sistemas de $ases de datos. %ltimo en entrar, primero en salir &"!#$$ en los sistemas de proceso de transacciones, conceder el dispositivo al !ltimo usuario acarrea pocos o nulos movimientos del $razo al recorrer un arc"ivo secuencial. 'l provec"o de esta cercana me&ora la productividad y reduce la lon/itud de las colas. 5 medida que un tra$a&o utiliza de forma activa el sistema de arc"ivos, va procesndose tan rpido como es posi$le. Sin em$ar/o, si el disco est ocupado con una car/a de tra$a&o lar/a, e-iste la clara posi$ilidad de inanicin. '(A): con la e-cepcin del F?FO, todas las polticas descritas "asta a"ora pueden de&ar al/una solicitud incumplida "asta que se vace la cola entera. 's decir, pueden lle/ar siempre nuevas solicitudes que se ele/irn antes que una solicitud e-istente. ,na alternativa simple que previene este tipo de inanicin es el al/oritmo SC56. Con el SC56, el $razo solo se puede mover en un sentido, resolviendo todas las solicitudes pendientes de su ruta, "asta que alcance la !ltima pista o "asta que no "aya ms solicitudes en esa direccin. 'sta !ltima *F

me&ora se conoce a veces como poltica de .OOC. Se cam$ia entonces la direccin de servicio y el rastreo si/ue en sentido opuesto, volviendo a reco/er todas las solicitudes en orden. 6o es difcil compro$ar que la poltica del SC56 favorece a los tra$a&os con solicitudes de pistas cercanas a los cilindros ms interiores y e-teriores, as como a los !ltimos tra$a&os en lle/ar. RAID o !o ,% to re"% "a te "e "is!os i "epe "ie tes Oace referencia a un sistema de almacenamiento informtico que usa m!ltiples discos duros entre los que distri$uir o replicar los datos y son vistas por el SO como una sola. 4ependiendo de su confi/uracin 1a la que suele llamarse nivel2, los $eneficios de un M5?4 respecto a un !nico disco son uno o varios de los si/uientes: mayor inte/ridad, me&or tolerancia a fallos, ms rendimiento y ms capacidad. 'n sus implementaciones ori/inales, su venta&a clave era la "a$ilidad de com$inar varios dispositivos de $a&o coste y tecnolo/a ms anti/ua en un con&unto que ofreca mayor capacidad, fia$ilidad, velocidad o una com$inacin de #stas que un solo dispositivo de !ltima /eneracin y coste ms alto. ,n RAID ? 1tam$i#n llamado !o ,% to "ivi"i"o o vo$%me "ivi"i"o2 distri$uye los datos equitativamente entre dos o ms discos sin informacin de paridad para proporcionar redundancia. ,n RAID 1 crea una copia e-acta 1o espe,o2 de un con&unto de datos en dos o ms discos. 'sto resulta !til cuando el rendimiento en lectura es ms importante que la capacidad. ,n RAID ' divide los datos a nivel de $its en lu/ar de a nivel de $loques y usa un cdi/o para la correccin de errores. ,n RAID 0 usa divisin a nivel de $ytes con un disco de paridad dedicado. ,n RAID 4 usa divisin a nivel de $loques con un disco de paridad dedicado. 'l M5?4 G es parecido al M5?4 F e-cepto porque divide a nivel de $loques en lu/ar de a nivel de $ytes. ,n RAID 8 usa divisin de datos a nivel de $loques distri$uyendo la informacin de paridad entre todos los discos miem$ros del con&unto. 'l M5?4 K "a lo/rado popularidad /racias a su $a&o coste de redundancia. ,n RAID 9 ampla el nivel M5?4 K a%adiendo otro $loque de paridad, por lo que divide los datos a nivel de $loques y distri$uye los dos $loques de paridad entre todos los miem$ros del con&unto.

*G

UNIDAD 9: Ame a(as a $a Se+%ri"a" .a se/uridad de computadoras y redes a$orda las si/uientes G cosas: Se!reto: e-i/e que la informacin sea accesi$le para lectura solamente por partes autorizadas. I te+ri"a": e-i/e que los elementos de un sistema puedan ser modificados solo por partes autorizadas. Dispo i/i$i"a": e-i/e que los elementos de un sistema est#n disponi$les para las partes autorizadas. A%te ti!i"a": requiere que un sistema sea capaz de verificar la identidad de un usuario. Tipos "e ame a(as I terr%p!i& : se destruye un elemento del sistema o se "ace inaccesi$le o in!til. 'ste es un ataque de disponi$ilidad. I ter!epta!i& : una parte no autorizada consi/ue acceder a un elemento. 'ste es un ataque al secreto. Mo"i#i!a!i& : una parte no autorizada no solo consi/ue acceder, sino que falsifica un elemento. 'ste es un ataque a la inte/ridad. I ve !i& : una parte no autorizada inserta o$&etos falsos en el sistema. 'ste es tam$i#n un ataque a la autenticidad. E$eme tos "e % sistema "e !omp%ta"oras .os elementos de un sistema se enfrentan a diferentes tipos de amenazas. :ar">are: .a amenaza principal a un "ard)are se produce en el campo de la disponi$ilidad. .as amenazas comprenden da%os accidentales y deli$erados a los equipos, as como el "urto. Oacen falta medidas de se/uridad fsicas y administrativas para "acer frente a estas amenazas. So#t>are: .a amenaza principal al soft)are es la disponi$ilidad. .os pro$lemas a los que se enfrenta son su eliminacin, alteracin o da%o, y copias no autorizadas. 5l alterar el mismo se puede provocar que de&e de funcionar, o $ien, que si/a funcionando pero que se comporte de una manera diferente. Datos: 'n este apartado entran en &ue/o los arc"ivos. 'l inter#s por la se/uridad con respecto a los datos es amplio, a$arcando la disponi$ilidad, el secreto y la inte/ridad. 'n el caso de la disponi$ilidad la preocupacin es la destruccin de los arc"ivos. . a preocupacin o$via del secreto es la lectura no autorizada de arc"ivos o $ases de datos. Finalmente, la inte/ridad de los datos es una preocupacin fundamental, ya que la modificacin de arc"ivos puede tener consecuencias desde poco transcendentes "asta desastrosas. Re"es . $2 eas "e !om% i!a!i& : Con las amenazas pasivas, el o$&etivo del a/resor es o$tener informacin que se est# transmitiendo. 'ntran en &ue/o aqu dos tipos de amenazas: la revelacin del contenido de los mensa&es y el anlisis del trfico. .as amenazas pasivas son muy difciles de detectar porque no acarrean alteracin al/una de los datos, por lo tanto, la importancia de "acer frente a las amenazas pasivas est en la prevencin y no en la deteccin. 'n la se/unda clase principal de amenazas se encuentran las amenazas activas, que suponen la alteracin del flu&o de datos o la creacin de un flu&o falso. 'stas amenazas se pueden dividir en cuatro su$cate/oras: T S%p$a ta!i& : tiene lu/ar cuando una entidad fin/e ser una entidad diferente T Repeti!i& : incluye la captura previa de un dato !nico y la su$si/uiente retransmisin para producir un efecto no autorizado. T Mo"i#i!a!i& de mensa&es: si/nifica que se modifica una porcin de un mensa&e le/timo o que los mensa&es se retrasan o se desordenan para conse/uir un efecto no autorizado. T Priva!i& "e servi!io: impide o in"i$e el uso normal o la /estin de servicios de comunicaciones. 'sta a/resin puede tener como o$&etivo suprimir mensa&es a un destinatario en particular o interrumpir toda una red. .as amenazas activas presentan las caractersticas opuestas a las pasivas. 'l o$&etivo con respecto a los ataques pasivos es detectarlos y recuperase de cualquier interrupcin o retardo causado. Prote!!i& .a capacidad de compartir recursos introdu&o la necesidad de proteccin. Prote!!i& "e $a memoria 'n un entorno de multipro/ramacin, la proteccin de la memoria principal es fundamental. 'l inter#s no es solo la se/uridad, sino tam$i#n el funcionamiento correcto de todos los procesos que est#n activos. Si un proceso puede escri$ir inadvertidamente en el espacio de memoria de otro proceso, este !ltimo puede que no se e&ecute correctamente. Co tro$ "e a!!eso orie ta"o a$ %s%ario *K

5l control de acceso al usuario se lo conoce a veces como autenticacin. .a t#cnica ms usual de control de acceso al usuario en un sistema de tiempo compartido o en un servidor es la cone-in del usuario, que requiere un identificador de usuario y una contrase%a. 3ero este es un m#todo poco fia$le ya que los usuarios pueden olvidar sus contrase%as o pueden revelarlas accidental o deli$eradamente. Co tro$ "e a!!eso orie ta"o a $os "atos 4espu#s de una cone-in con #-ito, al usuario se le "a$r concedido el acceso a uno o ms servidores y aplicaciones, lo cual no suele ser suficiente en un sistema que incluya datos sensi$les en su $ase de datos. 5sociado a cada usuario, puede "a$er un perfil de usuario que especifique las operaciones y los accesos a arc"ivos permitidos. 'l sistema operativo puede "acer valer unas re/las en funcin del perfil del usuario. Sin em$ar/o, el sistema /estor de la $ase de datos de$e controlar el acceso a re/istros especficos o incluso partes de un re/istro. ,n modelo /eneral de control de acceso e&ercido por un sistema /estor de arc"ivos o $ase de datos es el de una matriz de acceso. .os elementos $sicos de este modelo son los si/uientes: S%,eto: una entidad capaz de acceder a los o$&etos. ,suario o aplicacin. O/,eto: cualquier cosa cuyo acceso de$e controlarse. Como los arc"ivos, pro/ramas y se/mentos de memoria. Dere!-o "e a!!eso: la manera en que un su&eto accede a un o$&eto. Como leer, escri$ir y e&ecutar. 'sta matriz se puede descomponer por columnas para o$tener la lista de control de acceso que enumera los usuarios y sus derec"os de acceso permitidos, por cada o$&eto. Con la descomposicin por filas se o$tienen etiquetas de capacidades de acceso, que especifica los o$&etos y las operaciones autorizadas para un usuario. I tr%sos ,na de las dos amenazas a la se/uridad ms conocida son los intrusos 1la otra son los virus2, conocido en /eneral como pirata informtico. Se identifican tres tipos de intrusos: Suplantador: un individuo que no est autorizado a usar la computadora y que penetra en un sistema de control de acceso para e-plotar una le/tima entrada de usuario. 5$usador: un usuario le/timo que accede a datos, pro/ramas o recursos a los que no est autorizado, o que est autorizado pero "ace mal uso de sus privile/ios. ,suario clandestino: un individuo que est a car/o del control de supervisin del sistema y utiliza este control para evadir la auditoria y el control de acceso o para suprimir la recopilacin de datos auditados. Prote!!i& "e !o trase;as .a lnea de van/uardia de defensa ante los intrusos es el sistema de contrase%as. Casi todos los servidores y sistemas multiusuario requieren que el usuario suministre no slo un nom$re o identificador, sino tam$i#n una contrase%a. 'l pro$lema con las contrase%as es el "ec"o de que las mismas pueden ser adivinadas, por lo /eneral con un adivinador de contrase%as, pro/rama capaz de pro$ar miles de com$inaciones en $usca de la contrase%a correcta. Estrate+ias "e e$e!!i& "e !o trase;as 'l o$&etivo es eliminar las contrase%as adivina$les y al mismo tiempo permitir a los usuarios ele/ir una contrase%a recorda$le. 3ara ello se pueden emplear cuatro t#cnicas $sicas: Formacin del usuario: informar al usuario la importancia de ele/ir contrase%as difciles de adivinar y darle pautas para ele/ir contrase%as fuertes. Contrase%as /eneradas por el computador: se presenta un pro$lema si las contrase%as son de naturaleza $astante aleatoria, ya que los usuarios pueden no recordarla. ?nspeccin reactiva de contrase%as: el sistema e&ecuta peridicamente su propio averi/uador de contrase%as para encontrar contrase%as adivina$les, y cancela todas las contrase%as adivina$les notificndoselo al usuario. ?nspeccin proactiva de contrase%as: al usuario se le permite ele/ir su propia contrase%a, pero en el momento de la eleccin el sistema comprue$a si la contrase%a es permisi$le, caso contrario la rec"aza. Otro procedimiento posi$le consiste en recopilar un diccionario de posi$les contrase%as 8malas9. Cuando un usuario eli/e una contrase%a, el sistema comprue$a que no est en la lista desapro$ada. Con esta apro-imacin se dan dos pro$lemas, el espacio 1el diccionario tiene que ser muy /rande para ser efectivo2 y el tiempo 1el tiempo empleado para $uscar en un diccionario puede ser /rande2. So#t>are Ma$i+ o 'stas amenazas pueden dividirse en dos cate/oras: aquellas que necesitan un pro/rama anfitrin y las que son independientes. .as primeras son fra/mentos de pro/ramas que no tienen e-istencia independiente y las se/undas son pro/ramas que por s mismos pueden ser planificados y e&ecutados por el sistema operativo. Se distin/uen entre las amenazas que no se reproducen y las que s lo "acen. Trampi$$as ,na trampilla es un punto de entrada secreto a un pro/rama que permite a al/uien que lo conoce conse/uir el acceso sin pasar por los procedimientos usuales de se/uridad de acceso. *D

Kom/as $&+i!as .a $om$a l/ica es un cdi/o incrustado en al/!n pro/rama le/timo que e-plota cuando se cumplen ciertas condiciones Ca/a$$os "e Tro.a ,n ca$allo de 0roya es un pro/rama o procedimiento !til que contiene un cdi/o oculto que, cuando se lo invoca, lleva a ca$o al/una funcin da%ina o no deseada. 'l autor del pro/rama podra invitar a los usuarios a e&ecutar el pro/rama situndolo en un directorio com!n y dndole un nom$re de forma que pareciese una utilidad provec"osa. H%sa os .os pro/ramas de /usanos de la red emplean las cone-iones de la red para e-tenderse de un sistema a otro. ,na vez activo en un sistema, un /usano de red puede comportarse como un virus o $ien puede implantar ca$allos de 0roya o realizar cualquier n!mero de acciones destructoras. Uom/ies ,n zom$ie es un pro/rama que secretamente toma posesin de otro computador conectado ?nternet y lo usa para lanzar ataques que "acen difcil detectar a su creador. .os zom$ies se usan /eneralmente en ataques de dene/acin de servicios, normalmente contra sitios (e$. Vir%s ,n virus es un pro/rama que puede infectar a otros pro/ramas, alterndolos. .a alteracin incluye una copia del pro/rama de virus, que puede entonces se/uir infectando a otros pro/ramas

Sases "e $os vir%s 4urante su vida un virus pasa por las si/uientes etapas: 72 Sase $ate te: el virus est inactivo. Se activar finalmente por un suceso. 6o todos los virus pasan por esta etapa. *2 Sase "e propa+a!i& : el virus "ace copias id#nticas a #l en otros pro/ramas o en ciertas reas del sistema del disco. Cada pro/rama infectado contendr a"ora un clon del virus, que entrar a su vez en la fase de propa/acin. F2 Sase "e a!tiva!i& : el virus se activa para llevar a ca$o la funcin para la que est pensado. Como en la fase latente, la fase de activacin puede producirse por m!ltiples sucesos del sistema. G2 Sase "e e,e!%!i& : se lleva a ca$o la funcin, la cual puede ser no da%ina o puede eliminar arc"ivos de pro/ramas y datos.

*N

UNIDAD <:

SISTEMAS DISTRIKUIDOS

Oace unos a%os, las computadoras eran /randes y caras, por lo que las or/anizaciones tenan pocas de ellas que tra$a&a$an de forma independiente entre s. 5 mitad de la d#cada del B+, dos avances tecnol/icos cam$iaron esta situacin. 'n primer lu/ar el desarrollo de poderosos microprocesadores que tenan el mismo poder de clculo de una computadora de /ran tama%o pero eran muc"o ms econmicos y peque%os. 'l se/undo desarrollo fue la invencin de redes de rea local o .56 que permitieron conectar muc"as maquinas de forma tal que se pudiese transferir informacin entre ellas en muy poco tiempo. 'l resultado de estas dos tecnolo/as, es que "oy en da es muy fcil reunir sistemas de cmputos compuestos por un /ran n!mero de C3, conectados mediante una red de alta velocidad. 5 esto se le llama sistemas distri$uidos en contraste con los sistemas centralizados que constan de un !nico C3,, sus perif#ricos de memoria y al/unas terminales. Ve ta,as "e $os sistemas "istri/%i"os !o respe!to a $os !e tra$i(a"os: Ooy en da, es muc"o ms conveniente tener un /ran n!mero de C3, $aratos reunidos en un mismo sistema ya que la relacin precio/desempe%o es muc"o me&or y el rendimiento que se puede o$tener es muy superior que la de un !nico sistema centralizado a cualquier precio. 3oseen mayor confia$ilidad. 3orque al distri$uir el tra$a&o en muc"as computadoras, si se da%a una de ellas, el tra$a&o se si/ue realizando pero con menos rendimiento, en cam$io en el caso de un mainframe o sistema centralizado el tra$a&o queda sin poder realizarse. 3ermiten el crecimiento por incrementos. 'sto es, si la car/a de tra$a&o aumenta, en un sistema distri$uido, se a/re/a otra computadora al sistema, en cam$io en el caso de un mainframe la computadora que realiza todo el tra$a&o de$er reemplazarse por una ms /rande 1si e-iste2. 3oseen una distri$ucin in"erente. 5l/unas aplicaciones usan maquinas que estn separadas a cierta distancia entonces tiene sentido darle a cada mquina su propia computadora para que la controle. Ve ta,as "e $os sistemas "istri/%i"os !o respe!to a PCs i "epe "ie tes para !a"a %s%ario 3ermite que varios usuarios ten/an acceso a una $ase de datos com!n. 3ermite que varios usuarios compartan perif#ricos caros. Facilita la comunicacin de persona a persona 1por e&emplo mediante e mail2. 4ifunde la car/a de tra$a&o entre las computadoras disponi$les en la forma ms eficaz en cuanto a los costos. Desve ta,as "e $os sistemas "istri/%i"os '-iste poco soft)are para los sistemas distri$uidos en la actualidad. .a implementacin de una red puede ser cara y tra$a&osa. .a red se puede saturar o causar otros pro$lemas. 5l compartirse los datos, la se/uridad es un pro$lema. NSS .a idea de 6FS 1net)or> file system2 es permitir que una coleccin ar$itraria de clientes y servidores, compartan un sistema de arc"ivos com!n. 'n la mayora de los casos todos los clientes y servidores estn en la misma .56 aunque no es necesario. Oa$laremos de clientes y servidores como si fueran maquinas distintas, aunque 6FS permite que cada mquina sea cliente y servidor al mismo tiempo. Cada servidor e-porta uno o varios de sus directorios para el acceso por parte de clientes remotos. 5l e-portarse un directorio tam$i#n se e-portan automticamente sus su$directorios. .os clientes tienen acceso a los directorios e-portados mediante el monta&e. Cuando un cliente monta un directorio 1remoto2, este se convierte en parte de su &erarqua de directorios. .a caracterstica $sica de la arquitectura 6FS es que los servidores e-portan directorios y los clientes los montan de manera remota. .os arc"ivos compartidos estn a", en la &erarqua de directorios de varias maquinas, y se pueden leer o escri$ir en ellos de manera usual. 3rotocolos de 6FS: 4ado que los o$&etivos de 6FS es soportar un sistema donde los clientes y servidores puedan e&ecutar distintos SO en "ard)are diverso se definieron dos protocolos cliente servidor que permitan esto. ,n protocolo es un con&unto de solicitudes que envan los clientes a los servidores &unto con las respuestas correspondientes enviadas por los servidores de re/reso a los clientes. :ientras las solicitudes y respuestas est#n en el mismo len/ua&e 1protocolo2 los clientes y los servidores se van a entender entre si, sin importar su "ard)are o soft)are. *B

'l primer protocolo de 6FS mane&a el monta&e. ,n cliente puede enviar el nom$re de una ruta de acceso a un servidor y solicitar permiso para montar ese directorio en al/una parte de su &erarqua de directorios. Si el nom$re de la ruta de acceso es vlido y el directorio "a sido e-portado, el servidor re/resa un 8file "andle9 al cliente que contiene campos que identifican de manera !nica el disco, numero de nodo i del directorio y la informacin relativa a la se/uridad. .as llamadas posteriores de lectura o escritura en este directorio montado, usan ese file "andle. 'l se/undo protocolo de 6FS es para el acceso a los directorios y arc"ivos. .os clientes pueden enviar mensa&es a los servidores para el mane&o de directorios y la lectura o escritura de arc"ivos. ?mplantacin de 6FS: para la implantacin de un sistema 6FS se crea un sistema de arc"ivos virtual 1<FS2 que va a contener una ta$la con una entrada por cada arc"ivo a$ierto. 'sa ta$la es anlo/a a la ta$la de nodos i, solo que cada entrada de la ta$la va a contener un nodo v 1nodo virtual2 que dentro de s, va a contener un apuntador "acia un nodo i en caso de que el arc"ivo sea local, o de lo contrario contendr un apuntador "acia un nodo r 1nodo remoto2 en caso de que el arc"ivo remoto. 5s, es posi$le acceder desde el nodo v a un arc"ivo, as sea local o remoto. Estrate+ia o aspe!tos "e "ise;o Tra spare !ia: se intenta lo/rara la ima/en de un !nico sistema. .a transparencia se puede aplicar a varios aspectos de un sistema distri$uido: T Tra spare !ia "e $a $o!a$i(a!i& : se refiere al "ec"o de que en un verdadero sistema distri$uido los usuarios no pueden indicar la localizacin de los recursos de "ard)are y soft)are. T Tra spare !ia "e mi+ra!i& : si/nifica que los recursos de$en poder moverse entre una posicin a otra sin tener que cam$iar sus nom$res. T Tra spare !ia "e rep$i!a: el SO es li$re de fa$ricar por su cuenta copias adicionales de los arc"ivos y otros recursos sin que lo noten los usuarios. T Tra spare !ia !o respe!to a $a !o !%rre !ia : los usuarios no notaran la e-istencia de otros usuarios. T Tra spare !ia !o respe!to a$ para$e$ismo : se de$era poder aprovec"ar los procesadores del sistema distri$uido para "acerlos tra$a&ar en paralelo en operaciones, aunque esto se de$e pro/ramar en forma e-plcita. S$eEi/i$i"a": como los sistemas distri$uidos son relativamente nuevos, es importante que el sistema sea fle-i$le. Sin em$ar/o, las cosas no son tan simples, e-isten dos escuelas de pensamiento en cuanto a la estructura de los sistemas distri$uidos. ,na 1n!cleo monoltico2 mantiene que cada mquina de$e e&ecutar un n!cleo tradicional que proporcione la mayora de los servicios, y la otra 1micro n!cleo2 sostiene que el n!cleo de$e proporcionar lo menos posi$le y que el /rueso de los servicios del SO de$e se o$ten/a a partir de los servidores a nivel de usuario. 'l micro n!cleo, en comparacin con el n!cleo monoltico, es ms fle-i$le, ya que casi no "ace nada. 'n t#rminos $sicos, solo proporciona G servicios mnimos: un mecanismo de comunicacin entre procesos, cierta administracin de memoria, una cantidad limitada de planificacin y administracin de procesos de $a&o nivel y entrada/salida de $a&o nivel. Co #ia/i$i"a": la idea es que si una maquina del sistema falla, al/una otra mquina se encar/ue del tra$a&o, as el sistema ser ms confia$le. ,na clave en esto, es duplicar piezas claves del sistema, como "ard)are y soft)are, de modo que si una de ellas falla, las otras pueden llevar a ca$o su tra$a&o. Otro aspecto importante de la confia$ilidad es la se/uridad. .os arc"ivos y otros recursos de$en estar prote/idos contra el uso no autorizado. Desempe;o: es la capacidad de tra$a&o. 'n /eneral cuando se e&ecuta una aplicacin en un Sistema distri$uido, su e&ecucin no de$e ser ms lenta que en un !nico procesador, pero por des/racia esto es difcil de lo/rar ya que son muc"os factores a tener en cuenta a la "ora de medir el desempe%o como el tiempo de respuesta, el uso del sistema, la cantidad consumida de la capacidad de la red, etc. Es!a$a/i$i"a": se de$e permitir que el sistema vaya siendo ms /rande a medida que se lo requiera y se puedan ir a/re/ando terminales al sistema distri$uido para ir me&orando los diferentes aspectos como por e&emplo, el poder de procesamiento.

*H

Anda mungkin juga menyukai