Anda di halaman 1dari 9

SISTEMAS OPERATIVOS CORRECCIN DE LA PRUEBA 2 NOMBRE: Adriana amo 1.

- A la memoria que se encuentra en la primera capa (L0) de la jerarqua de memoria, se le denomina _________. Respuesta: Registros Razn: Porque segn la pirmide de jerarqua de almacenamiento los registros estn en la capa L0. 2.- Cuales afirmaciones son falsas respecto a las funciones de un S.O.: Seleccione al menos una respuesta. a) Provee mecanismos de accesos simples y uniformes al HW heterogneo, a travs de abstracciones creadas. b) Permite que un programador de aplicaciones tenga acceso privilegiado directo a todos los recursos del sistema. c) Todo intento de un programa para manipular el HW debe pasar a travs del S.O. d) Implementa rutinas para el manejo de cambio de contexto entre varios procesos. Respuesta: Opcin b Razn: Porque respecto a las funciones del S.O. es verdad que este provee los mecanismos necesarios simples y uniformes al HW heterogneo, a travs de abstracciones creadas entre las cuales estn: el proceso, la memoria virtual, los archivos. Tambin es verdad que cualquier aplicacin o programa que desea interactuar con el hardware debe obligatoriamente hacerlo pasando por el sistema operativo. Adems el S.O. es quien implementa las rutinas para el cambio de contexto entre varios procesos. Pero no permite que un programador de aplicaciones tenga acceso privilegiado, quien tiene este acceso privilegiado es en Linux el llamado Linux-Linus Torvals. 3.- La accin que se lleva a cabo luego de ingresar el comando "gcc -o concurrencia programaconcurrente.c" es: Seleccione al menos una respuesta: a) Se carga en memoria principal el ejecutable programaconcurrente.c", que estaba almacenado en el dispositivo de almacenamiento permanente (disco duro). b) Un programa llamado compilador convierte el cdigo del programa "concurrencia" en un lenguaje de alto nivel. c) Un programa llamado compilador convierte el cdigo del programa "programaconcurrente.c" en un lenguaje de maquina d) Se carga en memoria principal el ejecutable "concurrencia", que estaba almacenado en el dispositivo de almacenamiento permanente (disco duro). Respuesta: Opcin c.

Razn: Porque cuando tipeamos el comando "gcc -o concurrencia programaconcurrente.c" significa que un programa llamado compilador convierte el cdigo del programa programaconcurrente.c en un lenguaje maquina o lenguaje de bajo nivel. 4.- Considere la asignacin de memoria y el cdigo de la parte inferior. #include<stdio.h> main(){ int x=10, y=20; int *px, *py; py=&y; px=py; printf ("%d",*px); }

FIGURA 1 Cul ser la salida? (Digite 0 en caso de error) Respuesta: 20 Razn: Porque declaramos punteros *px y *py y en la direccin de py asignamos la direccin del valor de y que es 20, luego en la direccin de px asignamos la direccin de py, por lo tanto en el contenido de la direccin de px est el nmero 20. Al final imprimimos el contenido de la direccin de px que es 20.

5.- Respecto al uso del fork() es correcto afirmar que: Seleccione al menos una respuesta. a) Es una funcin que permite crear una abstraccin llamada "proceso" provista por el S.O. b) C rea una proceso hijo similar al proceso padre que lo creo. c) Re torna un identificador del proceso: -1 para identificar al proceso hijo y 0 en caso de error. d) Es una funcin que permite crear una abstraccin llamada "memoria virtual" provista por el S.O. Respuesta: Opciones a y b. Razn: Porque cuando usamos el fork() en nuestro cdigo se crea un proceso hijo similar al proceso padre que lo cre es decir hay dos procesos y tambin nos permite crear una abstraccin proceso provista por el sistema operativo porque el S.O. es quien crea las abstracciones para facilitar la ejecucin de los programas. 6.- Considere la asignacin de memoria y el cdigo de la parte inferior. #include<stdio.h> main(){ int x=10, y=20; int *px, *py; px=&x; py=&y; x++; y+=x; printf ("%d",*py); }

FIGURA 1 Cul ser la salida? (Digite 0 en caso de error) Respuesta: 31 Razn: Porque en los punteros *px y *py ubicamos las direcciones de los valores de x y y respectivamente, es decir que el contenido de la direccin de px es 10 y de py es 20. Despus x se aumenta en 1, es decir que ahora es 11, y el valor de y se altera en su mismo valor sumado con x, como en y estaba 20 y sumado el 11 sera 31, y este es el valor que se imprime con *py porque el * especifica el contenido de la direccin de py. 7.- Considere la asignacin de memoria y el cdigo de la parte inferior. #include<stdio.h> main(){ int x=10, y=20; int *px, *py; printf ("%d",*px); }

FIGURA 1 Cul ser la salida? (Digite 0 en caso de error) Respuesta: 0 Razn: Porque declaramos los punteros *px y *py, adems declaramos las variables x, y con sus respectivos valores, pero no asignamos ningn valor en el contenido de las direcciones de px y py. Despus imprimimos el contenido de la direccin de px, en la cual nunca asignamos nada, es por esto que se imprime error. 8.- Una mquina DELL tiene un procesador que maneja un tamao de palabra de 32 bits (registro). En esta mquina, la memoria mxima, en bytes, con la puede trabajar el procesador es: Nota: Utilice la calculadora de Windows, en caso de ser necesario Respuesta: 4294967296 Razn: Porque sabemos que los bits son quienes permiten identificar una memoria y los bytes son cada una de las celdas de la memoria. Entonces para saber cuntos bytes lo que hacemos es elevar el nmero 2 al nmero de bits y ese resultado ser el nmero de bytes de la memoria. En este caso seria 2^32 lo cual es igual a 4294967296. 9.- Respecto a los procesos que intervienen al ingresar la siguiente sentencia sobre el shell de Linux, es correcto afirmar: root@epn-host:~# ls | grep holamundo.c

Seleccione al menos una respuesta. a) I ntervienen 2 procesos, en donde la salida del proceso que ejecuta el comando "grep holamundo.c" sirve como entrada para el proceso que ejecuta el comando ls. b) Interviene un solo proceso que ejecuta todo el comando. c) ls" sirve como entrada para el proceso que ejecuta el comando "grep holamundo.c d) Intervienen 2 procesos: un proceso para ejecutar el comando "ls" y el otro proceso para ejecutar el comando "grep holamundo.c. e) No es necesario ningn proceso para ejecutar la sentencia. Respuesta: El ls sirve como entrada para el proceso que ejecuta el comando grep holamundo.c porque la tubera | permite que sobre la salida del comando de la izquierda se ejecute el comando de la derecha y el grep ser quien busque coincidencias con el comando a quien precede en este caso a holamundo.c. Tambin intervienen 2 procesos uno que para el ls y otro para el grep holamundo.c. 10.- Considere la asignacin de memoria y el cdigo de la parte inferior. #include<stdio.h> main(){ int x=10, y=20; int *px, *py; px=&x; printf ("%p",&px); }

FIGURA 1 Cul ser la salida? (Digite 0 en caso de error)

Respuesta: AC Razn: Porque como declaramos los punteros *px y *py, adems las varibles x, y con valores de 10 y 20 respectivamente, Luego en la direccin de px asignamos la direccin del valor de x que es 10, al final imprimimos la direccin de px con el cdigo &, lo cual nos imprimir una direccin, sta ser la direccin del primer byte del puntero la cual es AC. 11.- Considere la asignacin de memoria y el cdigo de la parte inferior. #include<stdio.h> main(){ int x=10, y=20; int *px, *py; py=&y; px=py; printf ("%p",px); }

FIGURA 1 Cul ser la salida? (Digite 0 en caso de error) Respuesta: A8 Razn: Porque declaramos las variables x, y con sus valores 10 y 20 respectivamente y tambin declaramos los punteros *px y *py. Luego en el contenido de py asignamos la

direccin del valor de y que es 20, despus en el contenido de px asignamos el contenido de py, es decir estaramos asignando el valor de 20 en el contenido de la direccin de px. Al final imprimimos el contenido de px, el cual es una direccin y es la direccin de py porque asignamos al contenido de px el contenido de py. La direccin a la que apunta es a la del primer byte que es A8. 12.- Cuales afirmaciones son verdaderas respecto al procesador (de un solo ncleo): Seleccione al menos una respuesta. a) Contiene un registro llamado PC, que apunta a alguna instruccin en lenguaje de alto nivel que se encuentra en memoria principal. b) Pueden ejecutar varios procesos al mismo tiempo, dado que cuenta con tantos registros PC (Program Counter) como procesos existan. c) El acceso, por parte del procesador, a una memoria cach es ms lento que el acceso a la memoria principal. d) Puede ejecutar un proceso a la vez, dado que cuenta con un solo registro PC. Respuesta: Opcin d. Razn: El procesador solo ejecuta un proceso a la vez porque solo tiene un program counter o PC y este solo ejecuta un proceso a la vez. 13.- Cuales de las siguientes afirmaciones son correctas respecto al cambio de contexto: Seleccione al menos una respuesta. a) En el cambio de contexto, el S.O. entre otra informacin almacena el PC del nuevo proceso a ejectarse. b) En el cambio de contexto, el S.O. entre otra informacin almacena el PC del proceso actual. c) El cambio de contexto es ejecutada por el S.O. d) El cambio de contexto lo realizan los procesos intervinientes en dicho cambio. Respuesta: Opciones b y c. Razn: En el cambio de contexto, el S.O. debe guardar el PC del proceso actual porque si va a pasar al siguiente proceso y lo ejecuta hasta cierta lnea de comando, cuando vuelva al proceso anterior tendr que continuar desde la lnea en que la dej y como sabe en donde qued? Pues por la informacin que se guard antes de hacer el cambio de contexto. Tambin el cambio de contexto es ejecutado por el S.O. porque es quien dirige la ejecucin de las aplicaciones. 14.- Le delegan la implementacin de una aplicacin sobre un dispositivo con recursos limitados. Dicho dispositivo cuenta con 256 bytes de memoria. Cuntos bits son necesarios para asignar una direccin a cada celda de dicha memoria? Respuesta: 8 Razn: Como bien sabemos cada byte es una celda de la memoria por lo tanto en este caso tendramos 256 celdas de memoria, para poder identificarlos necesitamos un

numero de bits, el cual se obtiene como el nmero al cual esta elevado el 2 y que nos da como resultado el 256. Este nmero es el 8 porque 2^8 es 256.

Anda mungkin juga menyukai