





Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Sistemes Operatius, Profesor: Pere Barlet, Carrera: Enginyeria Informàtica, Universidad: UPC
Tipo: Exámenes
1 / 9
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!






Si tenim: char buffer[]="texte"; int ret; ...... ret=write(1,buffer, strlen(buffer)); No cal comprovar el valor de ret, perquè sempre serà strlen(buffer). Trieu-ne una: ○ Vertader ○ Fals La resposta correcta és 'Fals'. Si utilizamos el siguiente código para escribir en un fichero el número 5: int value = 5; write(1, &value, sizeof(int)); Y el siguiente código para leer el fichero generado char buffer[80]; int ret = read (0, buffer, sizeof(buffer)); Cuál o cuáles de las siguientes afirmaciones es cierta Trieu-ne una o més: ○ a. El read devolverá 0 porque después de ejecutarla ya no quedan más datos en el fichero ○ b. Después del read, la variable buffer contendrá el entero leído convertido a string ○ c. Después del read, la variable buffer contendrá los bytes que codifican el entero guardado en el fichero ○ d. El read devolverá el número de bytes leídos (sizeof(buffer))
¿Cuál de los siguientes comportamientos en una comunicación mediante pipes es correcta? Trieu-ne una: ○ a. Si hay datos y no hay escritor, el lector continua leyendo hasta vaciar la pipe. Una vez vacía, devuelve - 1 al entender que ha habido un error en la siguiente lectura ○ b. Si hay datos y no hay escritor, el lector continua leyendo hasta vaciar la pipe ○ c. Si hay datos y no hay escritor, el lector queda bloqueado en el “read” hasta que vuelva a haber como mínimo un escritor ○ d. Si hay datos y no hay escritor, el lector devuelve error al hacer el siguiente “read” La resposta correcta és: Si hay datos y no hay escritor, el lector continua leyendo hasta vaciar la pipe. Si sustituimos “pipe(fd);” por “mknod(“mi_pipe”, S_IFIFO|0666, 0);”, ¿conseguimos el mismo resultado? Trieu-ne una: ○ a. Sí, porque en ambos casos creamos y abrimos una pipe sin nombre y con nombre, respectivamente ○ b. No, porque la llamada “mknod” crea una pipe con nombre, pero no la abre ○ c. No, porque la llamada “mknod” crea y abre una pipe con nombre, pero no devuelve los canales de lectura y escritura correspondientes de la TC La resposta correcta és: No, porque la llamada “mknod” crea una pipe con nombre, pero no la abre.
La llamada “lseek(fd, 0, SEEK_SET);” devuelve… Trieu-ne una: ○ a. …0, pero sólo en aquellos casos que se haya abierto previamente el fichero con la opción O_TRUNC. ○ b. …el tamaño del fichero si hemos abierto previamente el fichero con la opción O_APPEND. ○ c. …0, ya que es la primera posición posible del desplazamiento. La resposta correcta és: …0, ya que es la primera posición posible del desplazamiento. En un SO Linux, al intentar abrir y acceder a un fichero mediante un soft-link, los permisos de lectura y escritura se consultan… Trieu-ne una: