Diferencia entre revisiones de «Práctica Administración de la Información (Sistemas Operativos)»

De Cuba-Wiki
(Mismo formato que el de la p.3 Igual, me parece que hay fruta... hoy consulto y corrijo.)
 
 
(No se muestran 18 ediciones intermedias de 4 usuarios)
Línea 1: Línea 1:
{{Back|Sistemas Operativos}}
===Ejercicio 1===
===Ejercicio 1===
'''NOTA - CREAR nombre, numero_de_paquete, numero_de_pistas, codigos_de_acceso.'''
'''NOTA - CREAR nombre, numero_de_paquete, numero_de_pistas, codigos_de_acceso.'''
Línea 12: Línea 14:


b.
b.
No entiendo.  
No entiendo. <math>\gets</math> Preguntar el Jueves


===Ejercicio 2*===
===Ejercicio 2*===
No entiendo.  
Con 'por paquete' se refiere a 'por paquete de discos'(unidades de disco rígido). La respuesta es que sí, sería necesario un catálogo ordenado por disco, ya que es necesario para poder afrontar una falla física en un disco (saber qué se perdió para poder recurperarlo).


===Ejercicio 3*===
===Ejercicio 3*===
Ver Pags 3 en adelante
Este programa FORTRAN (corrido por el usuario LPR) va a requerir lectura de archivos al tomar el código fuente, al ejecutar el vinculador, al ejecutar el cargador, y recién una vez que se corre el programa, los READ(11,3) serán los que lean el archivo ARCH del paquete PAQUETE (notar que en la línea de parámetro lo indica al decir ARCHIVO 11, PAQUETE, ARCH).


===Ejercicio 4===
===Ejercicio 4===
El nombre del directorio del trabajo actual (Que puede ser el que tenga el nombre igual al usuario activo en el sistema).
Se puede utilizar el sistema LCU. En este sistema, se podría implementar que los archivos propios puedan ser accedidos directamente por su nombre (sin anteponer el nombre de usuario adelante).


===Ejercicio 5===
===Ejercicio 5===
En el libro dice que la ventaja que ofrece LCU sobre LCA es que se puede tener referenciado un mismo archivo con varios nombres en uno o mas usuarios (proveyendo mayor privacidad y seguridad). La desventaja sería que para darle un permiso generico a un archivo, habría que recorrer uno por uno todos los usuarios y darles el permiso. Lo mismo sucedería al querer borrar, ya que habría que recorrer las LCU de cada usuario, ver si el archivo está referenciado y borrar la referencia.  
LCU ofrece varias ventajas sobre LCA. Una ventaja importante es que en LCU un usuario sólo puede ver (saber que existen) sus propios archivos, y los ajenos sobre los cuales se les hallan dado permisos. En LCA se puede restringir el acceso de los usuarios a todos los archivos que se quiera, pero el usuario aun sabe que están ahí. Además de esto, en LCU a los archivos ajenos se los puede ver con un nombre diferente en cada usuario.


===Ejercicio 6*===
===Ejercicio 6*===
Agregar permisos de ejecución y/o eliminación.  
====Ejercicio 6. a.====
NO SE A QUE SE REFIERE CON LA PARTE DE PODER ALMACENAR ARCHIVOS.<BR>
Habria que agregar instrucciones al lenguaje de control para reemplazar archivos, borrarlos y una para poder dar/quitar permisos de ejecucion sobre los archivos propios a otros usuarios.
 
====Ejercicio 6. b.====
Habría que agregar un flag nuevo que identifique a estos archivos como ejecutables, y un nuevo permiso a agregar a los de lectura/escritura que sea el de ejecución.<BR>
Tambien habria que agregar una nueva instruccion al lenguaje de control, de "Ejecutar".


===Ejercicio 7===
===Ejercicio 7===
a.
====Ejercicio 7. a.====
Habría que agregar a los pedidos de apertura un nuevo flag que podría ser '''X''' (exclusivo)  o '''C''' (concurrente).


b.
====Ejercicio 7. b.====
Podria ser que dos programas modifiquen un archivo, en forma simultanea, de forma de dejarlo en un estado corrupto o inconsistente (Es decir que si el archivo tiene un formato, el cual tiene cierto invariante, se puede llegar a romper el mismo por hacer dos modificaciones validas al mismo tiempo, y que resulten combinadas en una modificacion no valida).<BR>


c.
====Ejercicio 7. c.====
Para permitir a mas de un proceso escribir sobre el archivo al mismo tiempo, se debe conocer la organizacion interna el mismo, para saber que acciones se pueden permitir en simultaneo sin correr riesgo de corromper el archivo.


d.
====Ejercicio 7. d.====
Los efectuaria dentro de la rutina del VCA, ya que este es quien se encarga de verificar que los accesos son validos, y de coordinar la concurrencia que existe sobre los archivos.


===Ejercicio 8===
===Ejercicio 8===
a. Puede estar en una posicion fija, o su direccion puede estar en el boot sector o en una direccion fija puede haber un puntero a el.
====Ejercicio 8. a. ====
b. ¿Decir que ya existe un archivo con ese mismo nombre? (Salvo que este en otra carpeta y no hay problema).
Se pone el catálogo (o un puntero a él) en una parte prefijada del disco, usualmente el sector 0 o pista 0.
c. La informacion que contiene el DAB de los archivos activos. Ademas agrega un campo para controlar la concurrencia.
 
d. Ni idea.  
====Ejercicio 8. b. ====
Esto es un problema solamente si existe un archivo con el mismo nombre, en la misma ruta para el usuario actual (Si el sistema trabaja con LCU es posible que exista un archivo en la misma ruta y con el mismo nombre pero para otro usuario, por lo que no habria problema alguno). Si ocurre esto, se le informa al usuario del problema para que éste tome una decisión al respecto (pisar/cambiar el nombre/Cancelar la operacion).
 
====Ejercicio 8. c. ====
La informacion que contiene el DAB de los archivos activos. Además tiene un contador de concurrencia y una lista de los procesos que lo están utilizando en ese momento.
 
====Ejercicio 8. d. ====
'''Asignacion:''' Es la lectura de la LCA o LCU para verificar si la acción pedida puede ser realizada por el usuario.<BR>
'''Open:''' Es el recorrido por los niveles, SAS, SAB, VCA...<BR>
'''Close:''' Verificación de si el archivo fue modificado, en ese caso se baja lo que se tiene en memoria al disco y luego se cambia el directorio básico con la información nueva de la TAA. Si no sólo se baja a disco la TAA en caso de que haya cambiado algo. SI hay otros programas utlizando el archivo concurrentemente, no se borra de la TAA, pero se decrementa su concurrencia.


===Ejercicio 9===
===Ejercicio 9===
a.
====Ejercicio 9. a====
El SAF se encargará de administrar la E/S física, y hará una por cada bloque físico (Ya que como la lectura es secuencial, los ultimos 9 registros logicos de cada bloque se hallaran en memoria en un buffer interno al ser pedidos). Así que a pesar de que realizaré 12330 pedidos de E/S lógicos, tendré 1233 lecturas físicas de disco.


b.
====Ejercicio 9. b====
En este caso al decir 'acceso directo' me refiero al hecho de que voy a leer sectores aleatorios del archivo, así que en el peor casos todos corresponderán a bloques físicos distintos. En tal caso, requeriré de 650 operaciones de E/S física.


===Ejercicio 10*===
===Ejercicio 10*===
a.
a.
<br>A: el archivo es un directorio.
<br>A: Flag 'Es un Directorio?'.
<br>B: Tiene la direccion de donde se encuentra el directorio primero.
<br>B: Aquí iría toda la metainformación (nombre, tamaños de bloques físicos/lógicos...)
<br>C: Esta en blanco puede ir alguna informacion relevante al directorio.
<br>C: --
<br>D: Puntero al paquete (paquete).
<br>D: Puntero al contenido.
<br>E: Permisos de los usuarios. LCA.
<br>E: Permisos de los usuarios. LCA.


b. LCU pero cada archivo tiene la opcion de Todos L y/o Todos G.
b. LCA (Los permisos están establecidos por archivo).


c. Son los "punteros" a donde se guarda la informacion de donde estan los archivos.
c. Allí estaría la información (o puntero a la información) de los archivos características del direcorio básico (tamaño, longitud de registros físicos/lógicos, fechas de modificación...)


d. Si tiene hard links, y que usuarios tienen permisos sobre el para poder borrarlos.
d. Tiene que verificar ownership o permiso de borrado.


e. Cambiar-Permiso nombrearchivo, permisos , directorio
e. PERMISO USUARIO ARCHIVO [PERMISOS]


f. Busca en directorio la tabla de archivos, busca nomber_archivo y agrega permisos en su entrada.  
f. En primer lugar, verifica que el usuario corriendo el comando tenga el propio permiso de asignar permisos (algo que usualmente sólo puede hacer el dueño). Si está permitido, entonces va a la tabla de permisos del archivo ARCHIVO (pues es LCA) y agrega/modifica el permiso [PERMISOS] para el usuario USUARIO.


===Ejercicio 11===
===Ejercicio 11===
a. LCA, ya que solo se necesita poner todos en la misma. (Siempre y cuando todos deban ver el archivo con el mismo nombre).
====Ejercicio 11. a====
LCU puede brindar una mayor seguridad haciendo que los usuarios vean el archivo con distintos nombres, y cada uno con permisos diferentes. Pero para lograr esto se debe agregar un permiso en la LCU de cada usuario, lo que puede desperdiciar una gran cantidad de espacio, y dificultar acciones de borrado sobre el archivo. Si la mayoria de los usuarios va a tener el mismo tipo de permisos sobre el archivo, se puede solucionar este problema de forma más eficiente con LCA, poniendole un permiso generico al archivo, y luego dandoles permisos adicionales a los pocos usuarios que tengan mas permisos que el permiso generico.


b. Se borra la LCA del archivo, que se encuentra junto al mismo y se borra el archivo.  
====Ejercicio 11. b====
Se borra la LCA del archivo, que se encuentra junto al mismo y luego se borra el archivo.
También se borra el archivo del catálogo del propietario.


===Ejercicio 12===
===Ejercicio 12===
a.
'''Sin hacer''' (No entra para el parcial)
 
b.


===Ejercicio 13*===
===Ejercicio 13*===
a. Dibujar la tabla del DAB con las tablas de usuarios y lcu segun aparece en la practica.
a. Dibujar la tabla del DAB con las tablas de usuarios y lcu según aparece en la práctica.


b. DAR_PERMISO nombreusuario , nombrearchivo , permiso. busca la lcu del nombre usuario y agrega en la LCU nombre, archivo y premiso.
b. Se puede utilizar exactamente el mismo comando que el creado en el punto 10.e.


c. DELETE nombrearchivo, Ver pag 10.
c. BORRAR ARCHIVO. Lo que hace el comando es verificar primero que se tengan permisos como para borrar el archivo, y luego recorre las LCU de todos los usuarios para quitarlo de ellas. Se borra la entrada de ese archivo en el catálogo del owner. Finalmente, se libera el espacio correspondiente al archivo (DAB) y se borra su entrada en el DAS.


d. usr/$Dar Permiso JOSE PROC Read/Write; jose/$DELETE proc
d.
La explicación que dio Graciela en la clase de consulta parece ser FORTRAN. Cómo no sé FORTRAN, pongo la sintaxis más o menos.


lo que hicimos fue loguearnos primero como usr y luego como José. Cuando el ejercicio se refiere a Job Completo a que se refiere?
*TRABAJO PERM,OWN
*PERMISO JOSE PROC L|G NOMBRE=XYZ
*END
 
*TRABAJO DEL,JOSE
*BORRAR XYZ
*END


===Ejercicio 14*===
===Ejercicio 14*===
Línea 93: Línea 124:
b. Verdadero.
b. Verdadero.


c. Verdadero.
c. Verdadero. El SAS ya no es requerido porque se tiene un puntero al archivo en el BCP. Ver 10.h.


d. Verdadero.
d. Verdadero. Notar que estoy preguntando por ''datos del archivo'' (no considera información de la TAA).


e. Verdadero.
e. Verdadero.
Línea 103: Línea 134:
g. Verdadero.
g. Verdadero.


h. Falso.
h. Verdadero.


i. Verdadero.  
i. Verdadero.  
Línea 110: Línea 141:
a. Verdadero.
a. Verdadero.


b. Falso.
b. Falso. Sólo se encuentra en su tabla de archivos propios.


c. Verdadero (Aunque no tiene nada que ver con LCU vs LCA).
c. Verdadero. Puede tener nombres distintos para usuarios distintos.


d. Falso. Ninguna es mas segura que la otra en pricipio. Salvo que consideremos el caso de que se borra un archivo, no se borran los permisos de la LCU, y se crea otro con el mismo nombre o inodo.
d. Verdadero. La posibilidad de rentringir qué archivos vé cada usuario y con qué nombre da a LCU un mayor grado de seguridad que LCA.


e. Falso.
e. Falso. Por el contrario, hay que modificar la lista de permisos de todos los usuarios.


===Ejercicio 16*===
===Ejercicio 16*===
uid, gid, fecha de ultima modif, contador de hard links, tipo de archivo  
uid, gid, fecha de ultima modificación, contador de hard links, tipo de archivo
(y los punteros)


===Ejercicio 17*===
===Ejercicio 17*===
Ídem 13
Es exactamente igual al 13.
a.
 
b.
 
c.


===Ejercicio 18*===
===Ejercicio 18*===
Línea 133: Línea 160:
Los primeros 12 apuntan a Bloques de 4k.
Los primeros 12 apuntan a Bloques de 4k.
Los otros 3 apuntan Indirecto, Doble Indirecto, y Triple Indirecto (o sea, apuntan a otras tablas de bloques).
Los otros 3 apuntan Indirecto, Doble Indirecto, y Triple Indirecto (o sea, apuntan a otras tablas de bloques).
[[Category:Prácticas]]

Revisión actual - 14:24 16 oct 2009

Plantilla:Back

Ejercicio 1[editar]

NOTA - CREAR nombre, numero_de_paquete, numero_de_pistas, codigos_de_acceso.

NOTA - ARCHIVO codigo_a_asignar_al_archivo, numero_de_paquete, (codigo_de_usario)/nombre_del_archivo, [l/g].

NOTA - BORRAR nombre_del_archivo, numero_de_paquete.

a.

  1. CREAR "ARCH1", "PAQ1", 50, NINGUNO.
  2. CREAR "ARCH2", "ABCD", 100, TODOS / L.
  3. CREAR "ARCH3", "ABCD", 100, TODOS / L, INSPEC / {L | G}.

b. No entiendo. Preguntar el Jueves

Ejercicio 2*[editar]

Con 'por paquete' se refiere a 'por paquete de discos'(unidades de disco rígido). La respuesta es que sí, sería necesario un catálogo ordenado por disco, ya que es necesario para poder afrontar una falla física en un disco (saber qué se perdió para poder recurperarlo).

Ejercicio 3*[editar]

Este programa FORTRAN (corrido por el usuario LPR) va a requerir lectura de archivos al tomar el código fuente, al ejecutar el vinculador, al ejecutar el cargador, y recién una vez que se corre el programa, los READ(11,3) serán los que lean el archivo ARCH del paquete PAQUETE (notar que en la línea de parámetro lo indica al decir ARCHIVO 11, PAQUETE, ARCH).

Ejercicio 4[editar]

Se puede utilizar el sistema LCU. En este sistema, se podría implementar que los archivos propios puedan ser accedidos directamente por su nombre (sin anteponer el nombre de usuario adelante).

Ejercicio 5[editar]

LCU ofrece varias ventajas sobre LCA. Una ventaja importante es que en LCU un usuario sólo puede ver (saber que existen) sus propios archivos, y los ajenos sobre los cuales se les hallan dado permisos. En LCA se puede restringir el acceso de los usuarios a todos los archivos que se quiera, pero el usuario aun sabe que están ahí. Además de esto, en LCU a los archivos ajenos se los puede ver con un nombre diferente en cada usuario.

Ejercicio 6*[editar]

Ejercicio 6. a.[editar]

NO SE A QUE SE REFIERE CON LA PARTE DE PODER ALMACENAR ARCHIVOS.
Habria que agregar instrucciones al lenguaje de control para reemplazar archivos, borrarlos y una para poder dar/quitar permisos de ejecucion sobre los archivos propios a otros usuarios.

Ejercicio 6. b.[editar]

Habría que agregar un flag nuevo que identifique a estos archivos como ejecutables, y un nuevo permiso a agregar a los de lectura/escritura que sea el de ejecución.
Tambien habria que agregar una nueva instruccion al lenguaje de control, de "Ejecutar".

Ejercicio 7[editar]

Ejercicio 7. a.[editar]

Habría que agregar a los pedidos de apertura un nuevo flag que podría ser X (exclusivo) o C (concurrente).

Ejercicio 7. b.[editar]

Podria ser que dos programas modifiquen un archivo, en forma simultanea, de forma de dejarlo en un estado corrupto o inconsistente (Es decir que si el archivo tiene un formato, el cual tiene cierto invariante, se puede llegar a romper el mismo por hacer dos modificaciones validas al mismo tiempo, y que resulten combinadas en una modificacion no valida).

Ejercicio 7. c.[editar]

Para permitir a mas de un proceso escribir sobre el archivo al mismo tiempo, se debe conocer la organizacion interna el mismo, para saber que acciones se pueden permitir en simultaneo sin correr riesgo de corromper el archivo.

Ejercicio 7. d.[editar]

Los efectuaria dentro de la rutina del VCA, ya que este es quien se encarga de verificar que los accesos son validos, y de coordinar la concurrencia que existe sobre los archivos.

Ejercicio 8[editar]

Ejercicio 8. a.[editar]

Se pone el catálogo (o un puntero a él) en una parte prefijada del disco, usualmente el sector 0 o pista 0.

Ejercicio 8. b.[editar]

Esto es un problema solamente si existe un archivo con el mismo nombre, en la misma ruta para el usuario actual (Si el sistema trabaja con LCU es posible que exista un archivo en la misma ruta y con el mismo nombre pero para otro usuario, por lo que no habria problema alguno). Si ocurre esto, se le informa al usuario del problema para que éste tome una decisión al respecto (pisar/cambiar el nombre/Cancelar la operacion).

Ejercicio 8. c.[editar]

La informacion que contiene el DAB de los archivos activos. Además tiene un contador de concurrencia y una lista de los procesos que lo están utilizando en ese momento.

Ejercicio 8. d.[editar]

Asignacion: Es la lectura de la LCA o LCU para verificar si la acción pedida puede ser realizada por el usuario.
Open: Es el recorrido por los niveles, SAS, SAB, VCA...
Close: Verificación de si el archivo fue modificado, en ese caso se baja lo que se tiene en memoria al disco y luego se cambia el directorio básico con la información nueva de la TAA. Si no sólo se baja a disco la TAA en caso de que haya cambiado algo. SI hay otros programas utlizando el archivo concurrentemente, no se borra de la TAA, pero se decrementa su concurrencia.

Ejercicio 9[editar]

Ejercicio 9. a[editar]

El SAF se encargará de administrar la E/S física, y hará una por cada bloque físico (Ya que como la lectura es secuencial, los ultimos 9 registros logicos de cada bloque se hallaran en memoria en un buffer interno al ser pedidos). Así que a pesar de que realizaré 12330 pedidos de E/S lógicos, tendré 1233 lecturas físicas de disco.

Ejercicio 9. b[editar]

En este caso al decir 'acceso directo' me refiero al hecho de que voy a leer sectores aleatorios del archivo, así que en el peor casos todos corresponderán a bloques físicos distintos. En tal caso, requeriré de 650 operaciones de E/S física.

Ejercicio 10*[editar]

a.
A: Flag 'Es un Directorio?'.
B: Aquí iría toda la metainformación (nombre, tamaños de bloques físicos/lógicos...)
C: --
D: Puntero al contenido.
E: Permisos de los usuarios. LCA.

b. LCA (Los permisos están establecidos por archivo).

c. Allí estaría la información (o puntero a la información) de los archivos características del direcorio básico (tamaño, longitud de registros físicos/lógicos, fechas de modificación...)

d. Tiene que verificar ownership o permiso de borrado.

e. PERMISO USUARIO ARCHIVO [PERMISOS]

f. En primer lugar, verifica que el usuario corriendo el comando tenga el propio permiso de asignar permisos (algo que usualmente sólo puede hacer el dueño). Si está permitido, entonces va a la tabla de permisos del archivo ARCHIVO (pues es LCA) y agrega/modifica el permiso [PERMISOS] para el usuario USUARIO.

Ejercicio 11[editar]

Ejercicio 11. a[editar]

LCU puede brindar una mayor seguridad haciendo que los usuarios vean el archivo con distintos nombres, y cada uno con permisos diferentes. Pero para lograr esto se debe agregar un permiso en la LCU de cada usuario, lo que puede desperdiciar una gran cantidad de espacio, y dificultar acciones de borrado sobre el archivo. Si la mayoria de los usuarios va a tener el mismo tipo de permisos sobre el archivo, se puede solucionar este problema de forma más eficiente con LCA, poniendole un permiso generico al archivo, y luego dandoles permisos adicionales a los pocos usuarios que tengan mas permisos que el permiso generico.

Ejercicio 11. b[editar]

Se borra la LCA del archivo, que se encuentra junto al mismo y luego se borra el archivo. También se borra el archivo del catálogo del propietario.

Ejercicio 12[editar]

Sin hacer (No entra para el parcial)

Ejercicio 13*[editar]

a. Dibujar la tabla del DAB con las tablas de usuarios y lcu según aparece en la práctica.

b. Se puede utilizar exactamente el mismo comando que el creado en el punto 10.e.

c. BORRAR ARCHIVO. Lo que hace el comando es verificar primero que se tengan permisos como para borrar el archivo, y luego recorre las LCU de todos los usuarios para quitarlo de ellas. Se borra la entrada de ese archivo en el catálogo del owner. Finalmente, se libera el espacio correspondiente al archivo (DAB) y se borra su entrada en el DAS.

d. La explicación que dio Graciela en la clase de consulta parece ser FORTRAN. Cómo no sé FORTRAN, pongo la sintaxis más o menos.

  • TRABAJO PERM,OWN
  • PERMISO JOSE PROC L|G NOMBRE=XYZ
  • END
  • TRABAJO DEL,JOSE
  • BORRAR XYZ
  • END

Ejercicio 14*[editar]

a. Verdadero.

b. Verdadero.

c. Verdadero. El SAS ya no es requerido porque se tiene un puntero al archivo en el BCP. Ver 10.h.

d. Verdadero. Notar que estoy preguntando por datos del archivo (no considera información de la TAA).

e. Verdadero.

f. Verdadero.

g. Verdadero.

h. Verdadero.

i. Verdadero.

Ejercicio 15*[editar]

a. Verdadero.

b. Falso. Sólo se encuentra en su tabla de archivos propios.

c. Verdadero. Puede tener nombres distintos para usuarios distintos.

d. Verdadero. La posibilidad de rentringir qué archivos vé cada usuario y con qué nombre da a LCU un mayor grado de seguridad que LCA.

e. Falso. Por el contrario, hay que modificar la lista de permisos de todos los usuarios.

Ejercicio 16*[editar]

uid, gid, fecha de ultima modificación, contador de hard links, tipo de archivo (y los punteros)

Ejercicio 17*[editar]

Es exactamente igual al 13.

Ejercicio 18*[editar]

Tiene 15 punteros. Los primeros 12 apuntan a Bloques de 4k. Los otros 3 apuntan Indirecto, Doble Indirecto, y Triple Indirecto (o sea, apuntan a otras tablas de bloques).