Professional Documents
Culture Documents
SISTEMAS OPERATIVOS
Semestre: 2011 I Ciclo: III (TERCERO) PROFESOR: CARLOS JARA ALVA
Segmentacion
Cual es la vision que el usuario tiene de la memoria? Como piensa usted en un programa cuando lo esta escribiendo? Piensa en el como un programa principal con un conjunto de subrutinas, procedimientos, funciones o modulos? Se habla de las funciones por ejemplo de una hoja de calculo, pero podria preocuparse de que direcciones en la memoria ocupan estos elementos.
Segmentacion
Es un esquema de administracion de memoria que soporta esta vision del usuario. Un espacio de direcciones logicas es un conjunto de segmentos. Cada segmento tiene un nombre y una longitud. Las direcciones especifican tanto el nombre del segmento como el desplazamiento dentro del mismo. Por lo tanto, el usuario especifica cada direccion mediante dos cantidades: un nombre de segmento y un desplazamiento. Para simplificar la implementacion, los segmentos se enumeran y se hace referencia a ellos por un numero de segmento, en lugar de un nombre de segmento. Por lo tanto una direccion logica consta de un duplo: <numero-de-segmento, desplazamiento>
Ejemplo de segmentacion
Tenemos cinco segmentos numerado del 0 al 4. Los segmentos se almacenan en la memoria fisica. La tabla de segmentos tiene una entrada distinta para cada segmento, dando la direccion inicial del segmento en la memoria fisica (la base) y la longitud de dicho segmento (el limite). Por ejemplo, el segmento 2 tiene 400 bytes de longitud y comienza en la localidad 4300. De esta forma, una referencia al byte 53 del segmento 2 se mapea en la localidad 4300 + 53 = 4353. Una referencia al segmento 3, el byte 852 se mapea en 3200 (la base del segmento) + 852 = 4052.
Ejemplo de segmentacion
1400
pila Subrutina
Segmento 3 Segmento 0 2400
Segmento 0
Segmento 3
4300
Segmento 2
6300 Segmento 2
Segmento 1
Espacio de direcciones lgicas
6700
Memoria Fisica
Proteccion y compartimiento
El compartimiento ocurre a nivel de segmentos. Asi, cualquier informacion puede ser compartida si se define que sea un segmento. Varios segmentos puede ser compartidos, por lo que un programa compuesto de varios segmentos puede serlo. Por ejemplo se considera un editor de texto en un sistema de tiempo compartido. Un editor completo es bastante grande y esta compuesto de muchos segmentos. Estos segmentos puede ser compartidos por todos los usuarios, limitando la memoria fisica necesaria para soportar las tareas de edicion. En lugar de n copias del editor, solo necesitamos una copia. Para cad usuario, si se necesitan segmentos distintos y unicos para almacenar variables locales.
Editor Datos 1
0 Datos 1
Segmento 1
25286 4425
90003
Editor 0
Segmento 0
Datos 2
Datos 2
Segmento 1
Administracin de paquetes Vienen a ser como los archivos de instalacin de los servicios y paquetes que utiliza el sistema operativo Linux. La gran mayora de distros usan RPM. Desarrollado por Red Hat para su distribucin de GNU/LINUX. RPM utiliza una base de datos que se almacena en /var/lib/rpm, la cual contiene todas la informacin de todos los paquetes que son instalados en el sistema Formato de un rpm:
Nombre de paquete versin subversin plataforma extensin.
Opciones RPM
Para consultar aquellos componentes que forman parte del paquete a buscar se usa el parmetro ql. #rpm ql nombre_paquete. Consultar sobre el paquete instalado: #rpm q nombre_paquete Borrar el paquete instalado: #rpm e nombre_paquete Mostrar informacin completa del paquete: #rpm qi nombre_paquete Para obtener informacin del rpm: #man rpm