Cheetos Pandilla
![]() |
![]() |
![]() |
Título del Test:![]() Cheetos Pandilla Descripción: Guia rapida |




Comentarios |
---|
NO HAY REGISTROS |
¿Para qué se usa el comando watch?. a) Para abrir un archivo de formato desconocido. b) Para ver archivos de video. c) Para ejecutar un comando con regularidad y ver su salida. ¿Qué comando puede evitar que otros usuarios que no estén en su grupo escriban en input.dat?. a) chmod g-w input.dat. b) chmod u-w input.dat. c) chmod o-w input.dat. ¿Cómo se llama al administrador de nivel superior (o superusuario) en Linux?. a) Dios. b) Root. c) Gurú. ¿Cómo se puede referenciar al segundo argumento de la línea de comandos en un script al llamar $ ./test.sh arg1 arg2 arg3 ?. a) $2. b) $1. c) $arg1. ¿Con qué carácter comienzan las opciones de la línea de comandos de manera convencional?. a) El signo de guion. b) El signo mayor que. c) El signo de dólar. ¿Qué comando se puede utilizar para añadir texto al nombre de archivo?. a) Comando > fichero. b) Comando >> fichero. c) Comando >>> fichero. ¿En qué archivo de sistema podría encontrar la información de la CPU de una computadora Linux?. a) /sys/cpuinfo. b) /proc/cpuinfo. c) /dev/cpuinfo. ¿Quién puede cambiar el propietario o el grupo de cualquier archivo?. a) Todo en este grupo. b) El dueño de ese archivo. c) El root. ¿Cuál de estas simplificaciones describe mejor la estructura de directorios en un sistema Linux?. a) Todo es un directorio. b) Todo es un archivo. c) Los directorios son archivos y los archivos son directorios. d) Todo lo anterior. ¿Qué hace ln -s /tmp . ?. a) Crea un enlace simbólico del directorio actual en /tmp. b) Imprime una lista de archivos ubicados en /tmp y . c) Crea un enlace simbólico de /tmp en el directorio actual llamado ./tmp. El programa, ¿qué imprime por pantalla?. a) V1=30, v2=20. b) V1=10, v2=20. c) V1=10, v2=50. Queremos que al compilar el programa prog.c se obtenga un fichero ejecutable prog.exe con posibilidad de argumentos en la línea de ordenes de modo que al ejecutar la orden ./prog.exe 1 1 el programa imprima “iguales”. Indicar qué sentencia NO HARÍA lo que el enunciado indica cuando se sustituye por el comentario en el programa prog.c. a) If(¡strcmp(argv[1], argv[2])) printf(“iguales”);. b) If(*argv[1]==*argv[2]) printf (“iguales);. c) If(argv[1][0]==argv[2][0]) printf(“iguales”);. d) If(argv[1]==argv[2]) printf(“iguales”);. Indicar qué sentencias hay que sustituir por el comentario en el código para que se impriman todos los datos del array a. a) printf(“Nombre: %s, Nota: %.2f\n”, *a[i]->nombre, *a[i]->nota);. b) printf(“Nombre: %s, Nota: %.2f\n”, a[i]->nombre, a[i]->nota);. c) printf(“Nombre: %s, Nota: %.2f\n”, a[i].nombre, a[i].nota);. ¿Qué se imprime al ejecutare el siguiente programa?. a) 3 88 6 67 99. b) 3. c) 99 67 6 88 3. d) Ninguna de las anteriores. Con la siguiente declaración: int x[] = {3,2,8,7,5}, *p; *p=x; ¿Cuál de las respuestas es INCORRECTA?. a) La instrucción printf(“%d”, *x+3); imprime 6. b) La instrucción printf(“%d”, (*x)++); imprime 3. c) La instrucción printf(“%d”, *(x+3)); imprime 7. d) La instrucción printf(“%d”, *p++); imprime 3. Una granularidad computacional es fina cuando: a)Se realiza poco trabajo computacional entre eventos de comunicación. b) Se realiza mucho trabajo computacional entre eventos de comunicación. c) Ninguna opción es correcta. Cuando se realizan comunicaciones de datos es mejor tener: a) Baja latencia y gran ancho de banda. b) Alta latencia y gran ancho de banda. c) Alta latencia y bajo ancho de banda. Al realizar un algoritmo paralelo que necesite comunicaciones, se prefiere que: a) Las comunicaciones sean síncronas siempre que sean posibles. b) Las comunicaciones sean asíncronas siempre que sean posibles. c) Las comunicaciones afectan poco a la eficiencia de los algoritmos paralelos, lo importante es la computación que realizan. La ganancia de velocidad observada o speed -up es: a) El tiempo total del mejor programa serie dividido el tiempo del programa paralelo. b) El tiempo de CPU del programa secuencias dividido el tiempo de CPU del programa paralelo. c) El tiempo total del programa paralelo dividido el tiempo total del programa serie. Según la ley de AMHDAL el máximo speed -up que se puede alcanzar si el 10% del código del algoritmo es secuencial es: a) 50%. b) 10. c) 2. ¿Qué arquitectura es la más rara actualmente?. a) MIMD. b) SISD. c) MISD. Los programas realizados en OpenMP y Pthread no puedes correr…. a) En una arquitectura de memoria distribuida, por ejemplo, en varios nodos de un cluster de computadoras. b) En una arquitectura NUMA (Non Memory Uniform Access) donde los procesadores pueden acceder a las memorias de otros procesadores. c) En una arquitectura de memoria compartida, como un PC. Cuando un proceso/tarea accede a un datos.. a) es mejor que esté en L3 que en L1. b) es mejor que esté en L1 que en L2. c) es mejor que esté en L2 que en L1. Muchos de los procesadores actuales se puede categorizar como SIMD. a) No, solo las GPUs se consideran procesadores vectorizados. b) Sí, porque tienen operaciones como las MMX, SSE o AVX que se realizan en registros hardware especializados. c) Ninguna de las otras opciones. Un algoritmo paralelo es escalable cuando…. a) el speed-up se incrementa de forma proporcional al añadir nuevos recursos computacionales y trabajar con más datos. b) cuando no consume la memoria del sistema. c) cuando se puede ejecutar en cualquier número de cores. Cuando se define double mivector[20]; ¿qué es lo que estamos haciendo?. a) Declarando un vector e inicializarlo con los valores del 1 al 20. b) Declarando un vector unidimensional de tipo double y de longitud 20. c) Declarando un vector de 20 dimensiones de forma dinámica. La declaración de un array de enteros de dos dimensiones puede codificarse: a) int array2D[][2] = {{1,2},[3,4}};. b) int array2D[2][2] = {{1,2},{3,4}};. c) Ambas son correctas. ¿Para qué sirve la función printf?. a) Es una función que contiene los prototipos de funciones de c para gestión de memoria dinámica y control de procesos. b) Sirve para controlar la entrada/salida de nuestro programa. c) Es una función de la librería stdio que nos permite imprimir por consola y con formato. Si quiero acceder a todos los elementos del array puedo: a) Crear una estructura while que vaya pasando por todos los elementos del array. b) Crear un bucle for que vaya pasando por todos los elementos del array. c) Ambas opciones son correctas. ¿Qué es el estándar POSIX?. a) Un estándar que describe interfaces que todas las variantes de UNIX necesitan implementar. b) Una propuesta para un nuevo sistema operativo que suceda a UNIX. c) Una distribución UNIX que tuvo que cambiar de nombre debido a reclamaciones legales. ¿A qué se refiere Linux?. a) Una instalación completa del sistema operativo con todas las herramientas y aplicaciones de apoyo. b. Solo el kernel del sistema operativo. c. El núcleo del sistema operativo que incluye las herramientas más básicas del sistema. ¿Qué es una distribución?. a. Un canal de publicación comercial para obtener el kernel de Linux. b. Una colección preconfigurada de kernel de Linux y aplicaciones que lo acompañan. c. Un servidor de archivos público que aloja el kernel de Linux y algunas aplicaciones del sistema. d. Ninguna de las anteriores. ¿Qué significa GNU?. a. GNU no es Unix. b. Geek necesitaba Unix. c. Unix general. d. Ninguna de las anteriores. ¿Cuántos sistemas HPC del Top500 utilizaron alguna forma de Linux en junio de 2020?. a. 80%. b. 95%. c. 100%. ¿Qué se puede utilizar para acceder al historial de comandos de la terminal?. a. Teclas flecha hacia arriba y abajo. b. Teclas de avance y retroceso de página. ¿Qué sucede si se preciona Ctrl + C en la línea de comandos?. a. El comando actual se cancela. b. Un script comienza a ejecutarse en el Shell. c. El texto resaltado se copia al portapapeles. ¿Cuál de estos no es (normalmente) un elemento que forme parte del indicador de la consola?. a. directorio de trabajo. b. nombre de usuario. c. nombre de host. d. hora y fecha. ¿Cómo se puede enumerar todos los comandos disponibles (o autocompletar) si no sabemos el nombre exacto del comando?. a. Presionando la tecla enter. b. Leyendo las páginas del man. c. Presionando la tecla de tabulación. d. Usando la opción –help. ¿Cuál es el directorio superior el Linux?. a. /. b. /home. c. C:\. Si comenzamos en el directorio /var/log/ y ejecutamos cd sin argumentos ¿qué sucede?. a. No ocurre nada. b. Va a su directorio de inicio. c. Va a la raíz del sistema de archivos. d. Un error. ¿Cómo se copia y pega en la terminal de linux?. a. Ctrl-C y Ctrl-V. b. Yy Y pp. c. Botón central del ratón. d. No se puede, es una característica de Windows. ¿Puede copiar el directorio con cp <old_dir> <nex_dir>?. a. Sí. b. No, el argumento -r es necesario para copiar un directorio. ¿Cuál puede ser un comodín adecuado para una lista de los archivos test_01, test_02, test_03 y prod_02 pero NO test_04 y debug_02?. a. * _ *. b. [t,p] *_*. c. [t,p] ???_0[1-3]. d. *_0[1-3]. ¿Cuál de los siguientes no es un permiso de archivo?. a. Write. b. Read. c. Execute. d. Size. ¿Qué significa PID?. a. Identificador de paquete. b. Identificador de proceso. c. Identificador de prtocolo. ¿Cómo se establecen los permisos de un proceso?. a. Por herencia de los permisos del propietario. b. Manualmente por usuario. c. Explícitamente al inicio por parámetros. ¿Qué tiene que agregar al encabezado de un script para convertirlo en un script bash ejecutable?. a. #BASH. b. /bin/bash. c. #!/bin/bash. ¿Cómo se define una variable de entorno VARTEST asignándole el valor 42?. a. VARTEST=42. b. Export VARTEST=42. c. Env VARTEST=42. ¿Cuál es la convención de nomenclatura para las variables de entorno?. a. Utilizar mayúsculas (VARTEST2). b. Utilizar minúsculas (vartest2). c. No existe convención. ¿Qué afirmación es correcta para las variables de entorno?. a. Las variables de entorno se almacenan en una base de datos central en una computadora. b. Una variable de entorno que se definió es válida y accesible en cada sesión del Shell. c. Una variable de entorno es válida en la sesión de Shell en la que se definió y se hereda a todos los programas de Shell que se inician desde la misma sesión. ¿Cuál es el resultado esperado de los siguientes comandos: VARTEST = "bla" ; exportar VARTEST = "BLA" ; VARTEST = "blub" ; env | grep VARTEST. b. VARTEST=”bla”. a. VARTEST=””. c. VARTEST=”blub”. ¿Cómo es posible definir un alias?. a. alias name=`command’. b. alias ‘command’=name. c. ‘command’=alias name. La configuración de la consola es…. b. Siempre permanente. c. Generalmente permanente, pero podría cambiarse a temporal. a. Generalmente temporal, pero podría cambiarse a permanente. ¿Qué contienen las configuraciones regionales?. a. La configuración de privacidad. b. La configuración de red. c. La configuración de idioma. ¿Cuál es la sintaxis correctas para abrir una conexión ssh?. a. ssh [options] <username>@<hostname>. b. ssh <username>:<hostname> [options]. c. ssh [options] <username> <hostname>. ¿Dónde está almacenada la configuración ssh en Linux?. a. sshconfig. b. .config/ssh. c. .ssh. ¿Qué herramientas le ayudan a crear e instalar un par de claves ssh?. a. ssh-keygen para crear los archivos clave y ssh-copy-id para copiarlos a la máquina remota. b. ssh --keygen para crear los archivos clave y ssh --copy-id copiarlos a la máquina remota. ¿Es un problema de seguridad compartir una clave pública SSH con sus amigos?. a. Sí. b. No (si no se comparte la clave privada no hay peligro). ¿Qué autenticación para el inicio de sesión SSH es más segura?. a. Autenticación por contraseña. b. Autenticación por clave pública. Al generar el par de claves SSH pública/privada, ¿es seguro usar una frase de contraseña vacía?. a. Sí. b. No. ¿df muestra el tamaño de un archivo determinado?. a. Sí. b. No (el que muestra el tamaño de un archivo o directorio específico es du). ¿Qué lenguajes puede perfilar Gprof?. a. Python, Java, Julia. b. C/C++, Fortran, Pascal. c. Haskell, Cobol, Whitespace. ¿Qué flag de utiliza en Gprof para instrumentar la aplicación?. a. -pg. b. -pig. c. --profile. ¿Qué compiladores son compatibles con Gprof?. a. Solo los compiladores comerciales de Intel. b. Solo compiladores de código abierto (por ejemplo, de GNU). c. Muchos compiladores diferentes (por ejemplo, de GNU e Intel). ¿Gprof funciona con aplicaciones paralelas?. a. No, Gprof solo funciona con aplicaciones secuenciales. b. Sí, pero Gprof no puede diferenciar entre procesos o subprocesos individuales. c. Sí, el perfil paralelo es el principal caso de uso de Gprof. Dado el programa <código 27> cuyo ejecutable se llamará p: a) Al ejecutarlo con ./p azul verde imprime: Escribimos en AZUL Escribimos en VERDE. b) Al ejecutarlo con ./p verde rojo imprime: Escribimos en VERDE. c) Al ejecutarlo con ./p verde rojo imprime: Escribimos en VERDE Escribimos en ROJO. d) Al ejecutarlo con ./p azul imprime: No seas aburrido, introduce argumentos. ¿Qué imprime el programa <código 8>?. b) Martes Miercoles Jueves Viernes Sabado Domingo Lunes. c) Lunes Miercoles Jueves Viernes Sabado Domingo. d) Munes Nartes Niercoles Kueves Wiernes Tabado Eomingo. a) uunes aartes iiercoles uueves iiernes aabado Lomingo. Suponiendo que el programa ejecutable que se obtiene al compilar el programa <código 23> se llama PROG.EXE: a) Al dar la orden PROG examen 5 imprime c=0. b) Al dar la orden PROG 5 examen imprime c=0. c) Al dar la orden PROG examen 5 imprime c=5. d) Al dar la orden PROG examen 5 imprime c=2. Para que la función rand() me devuelva números distintos en cada ejecución puedo: a) Llamar a random() % RAND_Max;. b) Llamar una sola vez a la función srand();. c)Llamar a la función srand() justo antes de cada llamada a la función rand(). La clausula collapse(2) en el siguiente código hace que: #pragma omp paralell for collapse(2) For(int i=0; i<N: i++) For(int j=0; j<M; j++) A[i][j]=CalculaA(….). a) Que se paralelicen los dos bucles, para i y para j. b) Que se paralelice solo el bucle j. c) Que la matriz A se vea como un vector. Las variables definidas en la cláusula share son compartidas por todas las hebras. a) Solo si se declaran const. b) Verdadero. c) Falso. Si una variable se pone en la clausula private dentro de una construcción, se crea una copia independiente de la misma variable para cada hebra. a) Solo si la variable no es definida como const. b) Falso. c) Verdadero. El código siguiente resulta en una condición de carrera cuando se ejecuta con mas de una hebra: #pragma omp parallel for for (i=1; i<10: i++) { factorial[i] = i * factorial[i-1] }. a) No si el número de hebras es 10. b) Falso. c) Verdadero. ¿Qué significa el false sharing?. a) Que las hebras comparten variables, pero en realidad tienen una copia local privada de las mismas. b) Que varias hebras están accediendo a la misma línea de caché y esa línea tiene que moverse entre esas hebras lo que consume mucho tiempo. c) Que las variables definidas en la clausula share() se inicializan por defecto a false. ¿Cuál de los siguientes errores de programación paralela es imposible en la directiva OpenMP dada?. a) Condiciones de carrera en #pragma omp parallel. b) Interbloqueo en #pragma omp parallel. c) Conflicto de datos en #pragma omp critical. d) Dependencia de datos en #pragma omp for. ¿Cuál de las siguientes directivas OpenMP se usa incorrectamente?. a) #pragma omp for nowait. b) #pragma omp parallel private(threadID). c) #pragma omp atomic(threadID). d) #pragma omp parallel for if (val). La clausula Schedule(static, chunk). a) Las iteraciones se dividen en porciones de tamaño chunk. Cuando una hebra termina su porción, obtiene la siguiente porción sin computar. El chunk por defecto es 1. b) El tamaño del chunk se reduce de manera exponencial conforme se asignan porciones a las hebras. Chunk determina la porción más pequeña. c) Hace que las iteraciones del bucle se dividan en porciones entre las hebras con un número de iteraciones especificado en chunk. Las porciones se asignan estáticamente a las hebras siguiendo una estrategia round-robin. Por defecto, chunk es una porción por hebra. Para evitar condiciones de carrera cuando varias hebras modifican un dato compartido a través de un puntero: a) Las hebras deben esperar en una barrera antes de actualizar el dato. b) Las hebras deben esperar en una barrera y después bloquear un mutex antes de actualizar el dato. c) Las hebras deben bloquear un mutex antes de actualizar el dato y desbloquearlo después. ¿Qué archivo de encabezado se debe utilizar para la programación de pthread?. a) pthreads.h. b) posix.h. c) pthread.h. d) p_thread.h. ¿Cuál es la condición de carrera del siguiente código? Sum=0; #pragma omp parallel for for(i=1; i<N; i++) { Sum = sum + b[i]; } /* end of omp parallel for */. a) La variable sum es por defecto compartida. b) No hay condición de carrera. c) Que la variable b es compartida. La directiva #pragma omp single { <…bloque paralelo…> }. a) Solo permite a la hebra 0 ejecutar el bloque paralelo. b) Solo se usa cuando tenemos un solo core. c) La primera hebra que llegue a la directiva ejecutará ella sola el bloque paralelo. Si el main está esperando en una variable de condición en un bucle y dos hebras hacen un signal antes del siguiente wait…. a) El main se bloquea hasta que todas las hebras hayan hecho un signal. b) El main saldrá de dos wait uno en cada iteración del bucle, porque se han hecho dos signal. c) El main saldrá solo de un wait aunque se hayan hecho dos signal. Cuando se usa pthread_cond_wait()…. a) Ninguna de las anteriores. b) Antes hay que bloquear el mutex asociado. c) No se requieren mutex adicionales. ¿Cuál de las siguientes API se puede utilizar para la sincronización entre hebras?. a) pthread_self. b) pthread_exit. c) pthread_join. Si el main y las NThreads que se han creado tienen que esperar en un barrier, el comando para inicializar el barrier sería…. a) pthread_barrier_init(&barrier, NULL, NThreads+1);. b) pthread_barrier_init(&barrier, NULL, NThreads);. c) pthread_barrier_init(&barrier, NULL, NThreads -1);. Cuál es el problema del siguiente código ?. a) No hay ningún problema. La salida sería: Counter value: 1 Counter value: 2. b) Los printf pueden aparecer desordenados por lo que la salida podría ser: Counter value: 2 Counter value: 1. c) Las hebras pueden acceder a la vez a actualizar el counter y habría que haber usado un mutex. Las hebras…. a) Se ejecutan en un entorno de memoria distribuida y se comunican mediando paso de mensajes. b) Se ejecutan en un entorno de memoria compartida y se comunican mediante el acceso a esa memoria. c) Se ejecutan en un entorno de memoria distribuida y se comunican accediendo a esa memoria. Una hebra…. a) Es una copia exacta del proceso padre. b) Al copiar los recursos del proceso padre su tiempo de creación es igual que el de crear un proceso. c) Duplica solo los recursos necesarios del proceso padre para poder ser manejada de forma independiente. Las variables locales de la función que realizan las hebras son…. a) compartidas por cada hebra y hay que usarlas en exclusión mutua. b) independientes de cada hebra. c) Las variables definidas en la función de la hebra son globales. ¿Cuál es la forma correcta de redirigir stdout y stderr al mismo archivo?. command > filename 2>&1. a. La extensión de los programas codificados en C es: .c. a. Tras compilar, ¿cómo se ejecuta un programa en C?. ./nombredelprograma. a. Los comentarios en C se indican con: Ambas opciones son correctas. a. Si quisiéramos imprimir el primer elemento del array de enteros int array2D[2][2] ={{1,2},{3,4}}; se haría de la siguiente manera: printf (“primer valor del array =%d”, array2D[0][0] ). a. Se dice que un problema es embarazosamente (ideal) paralelo cuando. Se puede descomponer en tareas independientes que no necesitan coordinarse. a. La lista top500. Muestra los supercomputadores actuales que ofrecen mayor número de operaciones en coma flotante por segundo. a. ¿Cuál no es un tipo de sincronización?. Uso de variables independientes en cada hebra/proceso. a. Dadas estas declaraciones: La orden printf("%d",*(p+i)); imprime 30. a. Indicar qué resultado se produce al ejecutar el programa. 2,a,a. a. ¿Qué imprime el programa ?. 11 10 21. a. En C es recomendable. Inicializar las variables antes de usarlas. Inicializar Solamente las constantes. ¿Qué es la función main?. Es la entrada del programa y por donde empieza la ejecución. a. En C, las funciones: Ambas opciones son correctas. a. Los arrays estáticos en C. No se pueden redimensionar. Ambas opciones son correctas. Según la ley de Amhdals, si un algoritmo tiene el 50% del código secuencial, el máximo speed-up que se puede alcanzar: es 2. a. Con las siguientes declaraciones, indique cuál de las instrucción es INCORRECTA. pun=(struct ficha *) malloc(sizeof(struct ficha *));. a. La función: Retorna la posición del mayor elemento del array x. a. a. Argumentos: 3 son lunes martes. a. ¿Cuál es la diferencia entre concurrencia y paralelismo?. Las tareas paralelas se ejecutan en el mismo elemento de procesamiento y las concurrentes en distintos. Las tareas concurrentes se ejecutan en el mismo elemento de procesamiento y las paralelas en distintos. En una distribución de datos 2D del tipo "BLOCK,*". A cada tarea le tocan un número de filas consecutivas. a. Un algoritmo paralelo está muy desbalanceado. Cuando sus tareas/procesos realizan una cantidad de computación muy diferente. a. El hecho de que C sea un lenguaje de tipado estático significa que en nuestros programas debemos: Definir de un tipo cada variable antes de poder utilizarla. a. Cuando se declara una variable de tipo global, esto significa que: Puede ser accedida desde cualquier parte del programa. a. ¿En cuál de las siguientes opciones se está inicializando correctamente una constante?. const double myvar= 24.2;. a. Cuando vamos a trabajar con números enteros, por defecto utilizamos: El tipo int. a. Para qué sirve la función atoi(). Convierte una cadena en un entero. a. |