Cuestiones
ayuda
option
Mi Daypo

TEST BORRADO, QUIZÁS LE INTERESEPCTR TIPO 1 - 1ºParte

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del test:
PCTR TIPO 1 - 1ºParte

Descripción:
Test sobre el examen ordinario de tipo uno de PCTR

Autor:
MiguelGomezDev
(Otros tests del mismo autor)

Fecha de Creación:
22/06/2022

Categoría:
Universidad

Número preguntas: 15
Comparte el test:
Facebook
Twitter
Whatsapp
Comparte el test:
Facebook
Twitter
Whatsapp
Últimos Comentarios
No hay ningún comentario sobre este test.
Temario:
¿Es correcta la siguiente línea de código? (1) mq_receive(qHandler, buffer, sizeof(buffer), &priority) Suponga que qHandler es un descriptor de buzón de mensajes previamente obtenido mediante mq_open(), priority es una variable previamente definida con el tipo unsigned int y que buffer está definida como char buffer[1024]. Sí es correcto, aunque generará un warning al compilarse porque buffer no es del tipo esperado Sí es correcto Se puede decir que es incompleto porque falta un parámetro que es el tipo de mensaje a recibir No, no es correcto porque buffer deber ir antepuesto de & No, no es correcto porque priority siempre debería ser 0.
Si se pretende que una implementación de las primitivas de manipulación de semáforos garanticen que los procesos bloqueados no sufran inanición, ¿Cómo debería gestionarse la cola de procesos bloqueados? Mediante una espera activa Mediante una cola FIFO Mediante espera bloqueada Mediante una cola LIFO No se puede garantizar.
Tomemos como referencia el problema cásico del Barbero Dormilón con la siguiente aclaración: los procesos clientes, cuando llegan a la barbería, se sientan en una silla libre de la sala de espera hasta ser llamados para ser atendidos. Si no hay sillas libres, se marchan. ¿Cómo sería la forma más adecuada de representar el número de sillas libres de la barbería? Mediante exclusión mutua categórica Mediante una variable contador a la que se accede en términos de exclusión mutua Mediante un semáforo contador inicializado al número de sillas libres de la barbería Con un patrón rendezvous Con un patrón barrera.
Si se necesita modelar, mediante semáforos, una solución de sincronización consistente en que dos eventos necesariamente ocurran uno a continuación del otro. ¿Cuál de las siguientes opciones debe adoptarse? Un semáforo inicializado a 0 Un semáforo inicializado a n, siendo n el número de procesos que lo van a utilizar Dos semáforos inicializados a 0 Un semáforo inicializado a 1 Dos semáforos que se inicializarían a 0 y 1 respectivamente.
Dada la siguiente función, empleada en prácticas, para la finalización de procesos indique qué línea de código es incorrecta. No hay errores en el código if(signal(g_process_table[i].pid, SIGINT) == -1) for(i=0; i<g_nProcesses; i++) if(g_process_table[i].pid != 0) for(i = 0; i <g_nProcesses; i++).
El siguiente fragmento de código sirve para que el proceso manager sepa cuándo los procesos auxiliares han terminado las tareas previamente asignadas. n_task Un valor igual al número de procesos auxiliares creados por el proceso manager 0 n_task_processed Es irrelevante, ya que, por definición, una solución basada en semáforos siempre funcionará de manera independiente al valor con el que se inicialice.
En POSIX, cuando se emplean colas de mensajes y se produce algún tipo de error al abrir una cola de mensajes, se puede obtener información del tipo de producido mediante El valor de mode al llamar a mq_open() El valor de oflag al llamara mq_open() El valor de la variable status La variable entera errno El contenido de una estructura de tipo mq_attr devuelta por la función mq_getattr().
Utilizando colas de mensajes POSIX pretendemos implementar una solución al problema del bloqueo basándonos en el esquema beeper. La solución debe contemplar que los procesos implicados deben ser capaces de gestionar o atender n tipos de tareas diferentes. ¿Cuál es el número mínimo de colas de mensajes que deben emplearse? 2, uno para el buzón beeper y otro los demás tipos de tareas 1 más el número de procesos implicados. 1, ya que POSIX permite la recuperación selectiva de mensajes n+1, uno para el buzón beeper y uno para cada tipo de tarea n, uno para cada tipo de tarea.
Uno de los objetivos de la filosofía de diseño de Ada es la creación de programas altamente legibles ¿Qué se pretende lograr con ello? Aumentar la eficiencia, de forma que el compilador genere código efectivo gracias a la legibilidad del lenguaje Reducir al máximo el número de errores en tiempo de ejecución Facilitar el uso de herramientas de sincronización de alto nivel, como los objetos protegidos. Incrementar la mantenibilidad, aun cuando los programas creados sean excesivamente verbosos Potenciar la portabilidad entre diferentes sistemas operativos.
El patrón interruptor (lightswicht) permite controlar una sección crítica a la que pueden acceder varios procesos al mismo tiempo, pero con la siguiente matización: Requiere emplearse conjuntamente con el patrón Barrera (barrier) para evitar condiciones de carrera Si pueden acceder varios procesos, entonces no se podrá garantizar la condición de exclusión mutua El primer proceso que accede a ella es el que adquiere el semáforo y el último que la abandona es quien lo libera Siempre provoca una exclusión mutua por categorías El último proceso que accede a ella es el que adquiere el semáforo y el primero que la abandona es quien lo libera.
Queremos plantear un modelo colas de mensajes que permita la recuperación selectiva de mensajes utilizando POSIX ¿Cómo podemos implementarlo? Mediante mq_getattr() No es posible Dando los valores adecuados a los campos de struct mq_attr Utilizando el parámetro priority de la primitiva mq_receive() Utilizando mq_notify().
Cuando se implementan retardos, tanto absolutos como relativos, el tiempo de retardo puede ser sobrepasado y este problema se denomina: Deriva acumulativa Timeout Deriva local La afirmación es falsa porque eso sólo sucede con retardos relativos La afirmación es falsa porque eso sólo sucede con retardos absolutos.
Con repecto a la función execl(), cuya definición es: int execl(const char *pathname, const char *arg, ... /* (char *) NULL */); ¿Qué afirmación es correcta? Tiene tres parámetros unicamente Sirve para reemplazar la actual imagen del proceso por una nueva imagen Siempre retornan con un valor distinto a -1 si todo ha ido bien No pertenece a POSIX Solo se puede usar tras una llamada explícita a fork() por parte del desarrollador.
Se plantea la necesidad de utilizar un mecanismo de sincronización a bajo nivel, y accesible mediante servicios del sistema operativo, en un sistema que solo dispone de memoria distribuida. De entre los siguientes, ¿Cuál utilizaría? Semáforos Threads Mensajes Monitores Procesos.
Sabemos que anteriormente se ha creado una cola de mensajes denominada buzon. Ahora otro proceso quiere abrirla para usarla para recepción de mensajes. ¿Cuál de las sentencias siguiente sería la más apropiada para ello? mq_open("/buzon',, O_READ) mq_open("buzon", O_RDONLY) mq_open("/buzon", O_WRONLY) mq_open("buzon", O_RDONLY | NOT_CREAT) mq_open("/buzon", O_RDONLY).
Denunciar test Consentimiento Condiciones de uso