You are on page 1of 6

1 Considera el siguiente modelo de datos que corresponde a los préstamos de libros de una

biblioteca:

1 N N 1
LIBRO PRÉSTAMO SOCIO

a) Crea el sistema de tablas resultante, sabiendo que cada entidad tiene los siguientes
atributos: (1 Punto)
• Entidad LIBRO: Codigo_libro, ISBN, Titulo, Editorial y Numpaginas.
• Entidad PRESTAMO: Fechaprestamo, Fechadevolucion.
• Entidad SOCIO: DNI y Nombre.
b) Genera las tablas en DDL, teniendo en cuenta: (1,5 Puntos)
a. Que el número total de página no puede ser superior a 2000
b. Que la fecha devolución no puede ser anterior de la fecha de préstamo

);
2 La figura muestra la red de una organización compuesta por 5 redes Ethernet
interconectadas por los encaminadores R1 a R7. También existe una red punto a punto
entre los encaminadores R1 y R7.
Al lado de cada interfaz de comunicaciones aparece la dirección IP que tiene asignada, y en
el caso de las redes Ethernet, el último byte de su dirección Ethernet (en el formato: a2). La
máscara de red en todas las subredes es 255.255.255.0.

a) Modifica las tablas de encaminamiento para que A pueda enviar datagramas IP a F por la
ruta más corta. No debe perderse la conectividad que ofrecen las tablas de la figura. Se
valorará efectuar el menor número posible de cambios. ( 1,25 puntos)
b) Modifica las tablas de encaminamiento para que A pueda enviar datagramas IP a H por
la ruta más corta. No debe perderse la conectividad que ofrecen las tablas de la figura.
Se valorará efectuar el menor número posible de cambios. (1,25 puntos)
3 Considérese un sistema multiproceso con un nivel de multiprogramación igual a 5 en el que
se ejecutan concurrentemente 3 procesos, cuyas trazas de ejecución teóricas en un sistema
monoproceso son las siguientes:

Proceso A

E/S

CPU

Tiempo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Proceso B

E/S

CPU

Tiempo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Proceso C

E/S

CPU

Tiempo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

El planificador del sistema operativo asigna el procesador según el algoritmo de planificación


de turno circular o Round Robin. Además, en caso de que varios procesos necesiten ponerse a
la vez en la cola de procesos listos, el orden de prioridad de mayor a menor según el estado de
procedencia es: proceso nuevo, proceso en ejecución y proceso bloqueado.

El sistema permite que haya varios procesos bloqueados a la vez. Se pide:

a) Utilizando la hoja adjunta, representar las trazas de ejecución de los 3 procesos para
cuantos de tiempo de 3 y 5 unidades, determinando la opción menos óptima.
2,5 puntos:
• 1 punto por algoritmo
• 0,5 puntos por determinar opción menos óptima
a) Cuanto=3
E/S

CPU

E/S

CPU

E/S

CPU

Tiempo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

Cuanto=5

E/S

CPU

E/S

CPU

E/S

CPU

Tiempo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
4 Implementa un Shell-script para BASH que cumpla las especificaciones indicadas a
continuación:

Sintaxis: realiza [-{cbmpe}] fichero

Si se utiliza alguna de las opciones, no se podrán utilizar de forma conjunta. Solo se podrá
elegir una de ellas.

• Si se ejecuta sin ninguna opción se visualizará el fichero pasado por parámetro.


• Opción -c: copiará fichero a un directorio que se pedirá por teclado.
• Opción -b: borrará fichero del directorio donde esté ubicado.
• Opción -m: moverá fichero a un directorio que se pedirá por teclado.
• Opción -p: ejecutará fichero de forma programada. Se pedirá el día, mes, hora y
minuto en el que se deberá ejecutar. La salida la enviará a un fichero situado en el
directorio hogar, denominado log.
• Opción -e: Creará un shell-script, realiza2, y lo llamará. En realiza2 se ejecuta el fichero
pasado a realiza. El resultado de ejecutar fichero se enviará por mail al usuario que
indique la variable de entorno USERDEST="realiza_root" que se ha de crear en el shell-
script realiza y que utiliza realiza2.

• Cada una de las opciones enumeradas anteriormente, así como la visualización del
fichero en ausencia de opciones, se realizarán utilizando funciones.
• Se comprobará la existencia o no de los directorios que se pidan por teclado. Si no
existen se interrumpirá la función correspondiente.
• Se comprobará la existencia o no del fichero pasado por parámetro. Si no existe se
pedirá uno por teclado hasta que este exista. Asumiremos que siempre se introduce
algún nombre de fichero.
• En el directorio hogar, tendremos un fichero denominado nejecs que contendrá el n°
de veces que se ha ejecutado realiza.

5 Implementar las primitivas básicas del TDA Lista, para ello cree la clase CLista con los
siguientes métodos:

int insertar (int n, int pos);

int borrar (int pos);

int buscar (int n);

int listar();

int último();

int primero();
A partir de la clase CLista, anteriormente creada, obtener la clase CPila, con los siguientes
métodos:

int PUSH(int n); int POP(); int fondo();

int tope(); // conocido también por cima de la pila

Por último, a partir de las clases anteriores, obtener la clase CCola con los siguientes métodos:

int poner_en_cola(int n); int

quitar_de_cola();

int frente(); // devuelve el valor del primer elemento de la cola

6 Se dispone de una gran cantidad de objetos de diferente valor y peso y de una mochila con
un peso máximo conocido. Suponiendo que los objetos son fraccionables, determinar que
objetos se deben elegir para maximizar el valor total de los objetos que puede contener la
mochila.

You might also like