Parcial I de Sistema de Operación – Semestre 201415

225 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
225
On SlideShare
0
From Embeds
0
Number of Embeds
66
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Parcial I de Sistema de Operación – Semestre 201415

  1. 1. Universidad Católica Andrés Bello Facultad de Ingeniería Escuela de Ingeniería Informática Sistemas de Operación Prof. Viviana Trujillo Parcial I 1. (2pts. c/u – total: 10pts) Responda con brevedad y precisión a las siguientes preguntas : (a) Mencione 4 variables internas de Shell y explique para qué sirven. (b) ¿Qué es un makefile y cómo se invoca? (c) ¿Qué diferencia hay entre las llamadas al sistema y las funciones de librerías? (d) ¿Qué es un sistema operativo? 2. (3pts.) Estudia el siguiente código y escribe la jerarquía de procesos resultante. Después, compila y ejecuta el código para comprobarlo (deberás añadir llamadas al sistema getpid, getppid y wait para conseguirlo). #include #include #include #include #include <sys/types.h> <sys/wait.h> <unistd.h> <stdio.h> <stdlib.h> #define L1 2 #define L2 3 int main (int argc, char *argv[]) { int cont1, cont2; pid t pid; 1
  2. 2. for (cont2= 0; cont2< L2; cont2++) { for (cont1= 0; cont1< L1; cont1++) { pid= fork(); if (pid== 0) break; } if (pid!= 0) break; } return 0; } 3. (1pto. c/u – total: 2pts)Para cada uno de los siguientes comandos deberá proveer la lista de acciones tomadas por el shell para ejecutar las operaciones de cada comando. Por ejemplo: [2 ptos.] $ date > out P: H: H: H: P: id = fork() close(1) fd = open(outfile) execl(date) waitpid(id) (a) ls > sort (b) ps –ax | grep vtrujillo 4. (3pts.) Escribir un script denominado factorial que reciba como parámetro un número y calcule su factorial. Este script puede ser programado recursivamente o iterativamente. ./factorial 5 120 5. (2pts.) Dibuje el gráfico de invocación de gcc paso a paso. 2

×