Andrew S. Tanenbaum - Sistemas Operativos Modernos 2º Edición Solucionario

March 13, 2017 | Author: havel999 | Category: N/A
Share Embed Donate


Short Description

Download Andrew S. Tanenbaum - Sistemas Operativos Modernos 2º Edición Solucionario...

Description

MODERNO SISTEMAS OPERATIVO S SEGUNDA EDICIÓN

SOLUCIONES DE PROBLEMA

ANDREW S. TANENBAUM Vrije Universiteit Amsterdam, los Países Bajos

PRENTICE HALL RÍO DE SILLA SUPERIOR, NJ 07458

SOLUCIONES CON PROBLEMAS DEL CAPÍTULO 1 1. Un sistema operativo debe proveer a los usuarios de un ampliado (es decir, virtual) máquina, y esto debe manejar los dispositivos de entrada - salida y otros recursos de sistema. 2. La multiprogramación es la conmutación rápida de la CPU entre procesos múltiples en la memoria. Esto comúnmente es usado para guardar la CPU ocupada mientras un o más procesos hacen la entrada - salida. 3. La bobinación de entrada es la técnica de lectura en empleos, por ejemplo, de naipes, en el disco, de modo que cuando los procesos que ejecutan actualmente son terminados, haya trabajo que espera la CPU. La bobinación de salida consiste en primeros archivos imprimibles que copian al disco antes de imprimirlos, más bien que imprimir directamente cuando la salida es generada. La bobinación de entrada en un ordenador personal no es muy probable, pero la bobinación de salida es. 4. La razón principal de la multiprogramación es dar la CPU algo para hacer esperando entrada - salida a completar. Si no hay ningún DMA, la CPU es totalmente occu-de varios colores haciendo la entrada - salida, así no hay nada para ser ganado (al menos en términos de CPU utili-zation) multiprogramando. No importa cuanto entrada - salida un programa hace, la CPU estará el 100 por ciento ocupada. Este por supuesto asume que la tardanza principal es esperar mientras los datos son copiados. Una CPU podría hacer otro trabajo si la entrada - salida fuera lenta por otros motivos (llegando en una línea consecutiva, por ejemplo). 5. Los segundos ordenadores de generación no tenían el hardware necesario para proteger el sistema operativo de programas de usuario malévolos. 6. Está todavía vivo. Por eje mplo , Intel hace el Pentium I, II, e III, y 4 CPUs con una variedad de propiedades diferentes incluso consumo de poder y velocidad. Todas estas máquinas son arquitectónicamente compatibles. Ellos se diferencian sólo en precio e interpretación, que es la esencia de la idea de familia. 7. 25 ´80 carácter pantalla de texto monocroma requieren un parachoques de 2000 bytes. El 1024 ´768 mapa de bit de color de 24 trozos de pixel requieren 2,359,296 bytes. En 1980 estas dos opciones habrían costado 10 dólares y 11,520 dólares, respectivamente. Para precios corrientes, compruebe en cuanta RAM actualmente cuesta, probablemente menos que 1 $/MB. 8. Las opciones (a), (c), (y d) deberían ser restringidas al modo de grano. 9. Los sistemas de ordenador personal son siempre interactivos, a menudo con sólo un usuario solo. Los sistemas de ordenador central casi siempre enfatizan la hornada o el tiempo compartido con muchos usuarios. La protección es mucho más de una cuestión en sistemas de ordenador central, como es el uso eficiente de todos los recursos. 10. Cada nanosegundo una instrucción surge de la tubería. Este significa que la máquina ejecuta 1 mil millones de instrucciones por segundo. Esto no importa en todos cuántos las etapas la tubería tienen. Una tubería de 10 etapas con 1 nsec por

la etapa también ejecutaría 1 mil millones de instrucciones por segundo. Todo que importa es con que frecuencia unas instrucciones terminadas hacen reventar el final de la tubería. 11. El manuscrito contiene 80 ´50 ´700 = 2.8 millones de caracteres. Este es, por supuesto, imposible de caber en los registros de cualquier CPU actualmente disponible y es demasiado grande para un escondite de 1 MB, pero si tal hardware estuviera disponible, el manuscrito podría ser explorado en 2.8 msec de los registros o 5.8 msec del escondite. Hay aproximadamente 2700 bloques de 1024 bytes de datos, entonces la exploración - ning del disco requeriría aproximadamente 27 segundos, y de la cinta 2 minutos 7 segundos. Por supuesto, estos tiempos deben leer sólo los datos. El procesamiento y volver a escribir los datos aumentaría el tiempo. 12. Lógicamente, esto no importa si el registro de límite usa una dirección virtual o una dirección física. Sin embargo, la interpretación del antiguo es mejor. Si las direcciones virtuales son usadas, la adición de la dirección virtual y el registro bajo puede comenzar simultáneamente con la comparación y luego puede correr en la paralela. Si las direcciones físicas son usadas, la comparación no puede comenzar hasta que la adición sea completa, aumentando el tiempo de acceso. 13. Tal vez. Si el visitante recupera el control e inmediatamente superpone los datos, cuando escribir finalmente ocurre, los datos incorrectos serán escritos. Sin embargo, si el conductor primeras copias los datos a un parachoques privado antes de devolver, entonces al visitante pueden permitirle seguir inmediatamente. Otra posibilidad es permitir que el visitante siga y le dé una señal cuando el parachoques puede ser reutilizado, pero este es complicado y susceptible de errores. 14. Una trampa es causada por el programa y es sincrónica con ello. Si el programa es dirigido una y otra vez, la trampa siempre ocurrirá en exactamente la misma posición en la corriente de instrucción. Interrumpir es causado por un acontecimiento externo y su cronometraje no es reproductivo. 15. Base = 40,000 y límite = 10,000. Una respuesta de límite = 50,000 es incorrecta para el modo que el sistema fue descrito en este libro. Esto podría haber sido imple-mented aquel camino, pero haciendo tan habría requerido la espera hasta la dirección + el cálculo bajo fue completado antes de comenzar el control de límite, así reducir la marcha - ing abajo el ordenador. 16. La mesa de proceso es necesaria para almacenar el estado de un proceso que es suspendido actualmente, listo o bloqueado. No es necesario en un proceso solo sys-tem porque el proceso solo nunca es suspendido. 17. El montaje de un sistema de archivo hace cualquier archivo ya en el directorio de punto de montaje inaccesible, entonces los puntos de montaje son normalmente vacíos. Sin embargo, un administrador de sistema podría querer copiar algunos archivos má s i mp or t a nt e s normalmente localizados en el directorio montado al punto de montaje entonces ellos podrían ser encontrados en su camino normal en una emergencia cuando el dispositivo montado estaba siendo comprobado o reparado.

SOLUCIONES DE PROBLEMA PARA CAPÍTULO 3

3

18. El tenedor puede fallar si no hay ningunas ranuras libres dejadas en la mesa de proceso (y posiblemente si no hay ningún espacio de cambio o memoria dejado). El Exec puede fallar si el nombre de archivo dado no existe o no es un archivo ejecutable válido. Desate puede fallar si el archivo para ser desatado no existe o el proceso de vocación no tiene las autoridades para desatarlo. 19. Si la llamada falla, p or e j e mpl o porque fd es incorrecto, esto puede devolver -1. Esto también puede fallar porque el disco es lleno y no es posible escribir el número de bytes solicitados. En una terminación correcta, esto siempre devuelve nbytes. 20. Esto contiene los bytes: 1, 5, 9, 2. 21. Obstrúyase los archivos especiales consisten en bloques numerados, cada uno de los cuales puede ser leído o escrito independientemente de todos los otros. Es posible buscar a cualquier bloque y comenzar a leer o escribir. Este no es posible con el carácter archivos especiales. 22. Las llamadas de sistema realmente no tienen nombres, ade má s de en un sentido de documentación. Cuando el procedimiento de biblioteca leyó trampas al grano, esto pone el número de la llamada de sistema en un registro o en la pila. Este número está acostumbrado al índice en una mesa. No hay realmente ningún nombre usado en ninguna parte. Por otra parte , el nombre de la biblioteca el procedimiento es muyimportante, ya que es lo que aparece en el programa. 23. Sí esto puede, sobre todo si el grano es un sistema que pasa mensaje. 24. Por lo que la lógica de programa está preocupada esto no importa si una llamada a un procedimiento de biblioteca causa una llamada de sistema. Pero si la interpretación es una cuestión, si una tarea puede ser llevada a cabo sin una llamada de sistema el programa correrá más rápido. Cada llamada de sistema implica el tiempo elevado en la conmutación del contexto de usuario al contexto de grano. Además, en un sistema multiusuario el funcionamiento sys-tem puede programar otro proceso para correr cuando una llamada de sistema completa, adelante reduciendo la marcha del progreso en tiempo real de un proceso de vocación. 25. Varias llamadas de UNIX no tienen a ningún homólogo en el Win32 API: Eslabón: un programa Win32 no puede referirse a un archivo por un nombre alterno o verlo en más de un directorio. También, el intento de crear un eslabón es un camino conveniente probar para y crear una cerradura en un archivo. Montaje y umount: un programa de Windows no puede hacer asunciones sobre nombres de camino estándares porque en sistemas c o n u n i d a d e s d e d i s c o múltiples la parte de nombre de paseo del camino puede ser diferente. Chmod: los programadores de Windows tienen que asumir que cada usuario puede tener acceso a cada archivo. Matanza: los programadores de Windows no pueden matar un programa de mal comportamiento que no coopera.

26. Las conversiones son francas: (a) Un año micro es 10-6 ´365 ´24 ´3600 31.536 segundos =. (b) 1000 metros o 1 kilómetro. (c) Hay 240 bytes, que es 1,099,511,627,776 bytes. (d) Ello es 6 1024 kg ´.

SOLUCIONES CON PROBLEMAS DEL CAPÍTULO 2 1. La transición de bloqueado al correr es concebible. Suponga que un proc-ess es bloqueado en la entrada - salida y los fines de entrada - salida. Si la CPU es por otra parte ociosa, el proceso podría ir directamente de bloqueado al correr. La otra ausencia transi-tion, de listo a bloqueado, es imposible. Un proceso listo no puede hacer la entrada - salida o algo más que podría bloquearlo. Sólo un proceso de correr puede obstruirse. 2. Usted podría tener un registro que contiene una aguja de la entrada de mesa de proceso corriente. Cuando la entrada - salida completó, la CPU almacenaría el estado de máquina corriente en la entrada de mesa de proceso corriente. Entonces esto iría al vector interrumpir para el dispositivo que interrumpe y traería una aguja de otra entrada de mesa de proceso (el procedimiento de servicio). Este proceso sería arrancado entonces. 3. Generalmente, las lenguas de alto nivel no permiten a un la clase de acceso a la CPU el hardware que es requerido. Por ejemplo, pueden requerir a un tratante interrumpir permitir e incapacitar la revisión interrumpiré de un dispositivo particular, o a manipu-datos tardíos dentro del área de pila de un proceso. También, interrumpa las rutinas de servicio deben ejecutar tan rápidamente como posible. 4. Hay varios motivos de usar una pila separada para el grano. Dos de ellos son como sigue. Primero, usted no quiere que el sistema operativo se estrelle porque un programa de usuario mal escrito no tiene bastante espacio de pila en cuenta. Segundo, si los datos de pila de hojas de grano en el espacio de memoria del programa de usuario sobre la vuelta de una llamada de sistema, un usuario malévolo podría ser capaz de usar estos datos averiguar información sobre otros procesos. 5. Sería difícil, si no imposible, guardar el sistema de archivo consecuente. Suponga que un proceso de cliente envía una petición al proceso de servidor 1 para actualizar un archivo. Este proceso actualiza la entrada de escondite en su memoria. Dentro de poco a partir de entonces, otro proceso de cliente envía una petición al servidor 2 para leer aquel archivo. El Unfor-tunately, si el archivo está también cached allí, servidor 2, en su inocencia, devolverá datos obsoletos. Si el primer proceso escribe el archivo por al disco después cach-ing ello, y servidor 2 controles el disco en cada leído para ver si su copia de cached es actualizado, el sistema puede ser hecho para trabajar, pero es exactamente todo éstos el disco tiene acceso a esto el sistema caching trata de evitar.

6. Cuando un hilo es parado, esto tiene valores en los registros. Ellos deben ser salvados, como cuando el proceso es parado los registros deben ser salvados. Los hilos de tiempo compartido son no diferentes que procesos de tiempo compartido, entonces cada hilo necesita su propio registro salvar el área. 7. No Si un proceso del modo solo enhebrado es bloqueado en el teclado, esto no puede bifurcarse. 8. Un hilo de trabajador se obstruirá cuando esto tiene que leer una Página Web del disco. Si los hilos de nivel del usuario están siendo usados, esta acción bloqueará el proceso entero, destruyendo el valor de multiensartamiento. Así es esencial que los hilos de grano sean usados para permitir a algunos hilos obstruirse sin afectar los demás. 9. Los hilos en un proceso cooperan. Ellos no son hostiles el uno al otro. Si la producción - ing es necesaria para la bien de la aplicación, entonces un hilo cederá. Después de todo, esto es por lo general el mismo programador que escribe el código para todos ellos. 10. Los hilos de nivel del usuario no pueden ser adelantados por el reloj uless el quántum del proceso entero ha sido consumido. Los hilos de nivel del grano pueden ser adelantados aliado individu-. En el caso último, si un hilo corre demasiado mucho tiempo , el reloj interrumpirá el proceso corriente y así el hilo corriente. El grano es libre de escoger un dif-ferent hilo del mismo proceso para correr después si esto así desea. 11. En el caso del modo solo enhebrado, los golpes de escondite toman 15 msec y escondite que señoritas toman 90 msec. El promedio ponderado es 2 / 3 ´15 +1 / 3 ´90. Así la petición media toma 40 msec y el servidor puede hacer 25 por segundo. Para un multithreaded servidor, toda la espera del disco es traslapada, entonces cada petición toma 15 msec, y el servidor puede manejar 66 peticiones de 2/3 por segundo. 12. Sí. Si el servidor es completamente la CPU ligada, no hay ninguna necesidad de tener hilos múltiples. Esto sólo añade la complejidad innecesaria. Como un ejemplo, considere un número de ayuda de directorio de teléfono de tele(como 555-1212) para un área con las 1 millón de personas. Si cada uno (nombre, número de teléfono) el registro es, supongamos, 64 caracteres, la base de datos entera toma 64 megabytes, y puede ser fácilmente guardada en la memoria del servidor para proporcionar la consulta rápida. 13. Las agujas son realmente necesarias porque el tamaño de la variable global es desconocido. Podría ser algo de un carácter a una serie de números de punto flotante. Si el valor fuera almacenado, uno tendría que dar el tamaño para crear 3 global, que es tá bi en , pero que tipo debería el segundo parámetro ¿del juego 3 global ser, y qué el tipo debería el valor de 3 leídos globales ser? 14. Podría resultar que el sistema de tiempo de ejecución está exactamente en el punto de bloqueo o desbloqueo de un hilo, y es la manipulación ocupada de las colas de programación. Este sería un momento muy inoportuno para el reloj interrumpen al tratante para comenzar a inspeccionar aquellas colas para ver si esto era el tiempo para hacer la conmutación de hilo, ya que ellos podrían estar en un estado inconsecuente. Una solución es poner una bandera cuando el tiempo de ejecución - el sistema es entrado. El tratante de reloj vería este y pondría su propia bandera,

entonces vuelta. Cuando el sistema de tiempo de ejecución terminó, esto comprobaría la bandera de reloj, ver que un reloj interrumpa ocurrió, y ahora dirigió al tratante de reloj. 15. Sí es posible, pero ineficaz. Un hilo que quiere hacer un sistema llama primeros juegos un temporizador despertador, luego hace la llamada. Si la llamada se obstruye, el control de vueltas de temporizador al paquete de hilos. Por supuesto, la mayor parte del tiempo que la llamada no bloqueará, y el temporizador tiene que ser limpiado. Así cada llamada de sistema que podría obstruirse tiene que ser ejecutada como tres llamadas de sistema. Si los temporizadores se marchan prematuramente, todas las clases de problemas pueden desarrollarse. Este no es un modo atractivo de construir un paquete de hilos. 16. El problema de inversión de prioridad ocurre cuando un proceso de prioridad baja está en su región crítica y de repente un proceso prioritario se hace listo y es programado. Si esto usa la espera ocupada, esto correrá para siempre. Con hilos de nivel del usuario, no puede resultar que un hilo de prioridad baja sea de repente adelantado para permitir un hilo prioritario dirigido. No hay ninguna prioridad de compra. Con los hilos de nivel del grano este problema puede levantarse. 17. Cada hilo llama procedimientos solo, entonces esto debe tener su propia pila para las variables locales, direcciones de vuelta, etcétera. Este es igualmente verdadero para hilos de nivel del usuario en cuanto a hilos de nivel del grano. 18. Una condición de raza es una situación en la cual dos (o más) los procesos están a punto de realizar un poco de acción. Según el cronometraje exacto, un o el otro va primero. Si uno de los procesos va primero, todo trabaja, pero si e l o t r o va primero, un error fatal ocurre. 19. Sí. El ordenador simulado podría ser multiprogramado. Por ejemplo, mientras el proceso A corre, esto lee en voz alta alguna variable compartida. Entonces un simu-lated reloj hace tictac pasa y proceso B carreras. Esto también lee en voz alta el mismo vari-capaz. Entonces esto añade 1 a la variable. Cuando tratan unas carreras, si esto también añade el que a la variable, tenemos una condición de raza. 20. Sí, esto todavía trabaja, pero esto todavía es la espera ocupada, por supuesto. 21. Esto seguramente trabaja con la programación de prioridad. De hecho, fue diseñado para aquel caso. Cuando la programación es no prioridad, esto podría fallar. Considere el caso en el cual la vuelta es al principio 0, pero proceso 1 carreras primero. Esto va a sólo el lazo para siempre - y nunca liberar la CPU. 22. Sí esto puede. La palabra de memoria es usada como una bandera, con 0 sentido que nadie usa las variables críticas y 1 sentido que alguien los usa. A puesto 1 en el registro, y cambia la palabra de memoria y el registro. Si el registro contiene 0 después de que el cambio, el acceso ha sido concedido. Si esto contiene 1, el acceso ha sido negado. Cuando un proceso es hecho, esto almacena a 0 en la bandera en memoria.

SOLUCIONES DE PROBLEMA PARA CAPÍTULO 7

3

23. Para hacer una operación de semáforo, el sistema operativo primero incapacita interrumpe. Entonces esto lee el valor del semáforo. Si esto hace un abajo y el sema-el phore es igual al cero, esto pone el proceso de vocación a una lista de procesos bloqueados asociados con el semáforo. Si esto hace un, esto debe comprobar para ver si proceso es bloqueado en el semáforo. Si uno o varios procesos son bloqueados, uno de entonces es quitado de la lista de procesos bloqueados y hecho runnable. Cuando todas estas operaciones han sido completadas, interrumpe puede ser permitido otra vez. 24. Asociado con cada semáforo que cuenta son dos semáforos binarios, M, usado para la exclusión mutua, y B, usado para el bloqueo. También asociado con cada semáforo que cuenta es un contador que sostiene el número de ups menos el número de colinas, y una lista de procesos bloqueados en aquel semáforo. Poner en práctica abajo, un proceso primeras ganancias acceso exclusivo a los semáforos, contador, y lista por hacer un abajo en M. Ello entonces decrementos el contador. Si ello es el cero o más, esto sólo hace un en M y salidas. Si el M es negativo, el process es puesto a la lista de procesos bloqueados. Entonces es hecho en el M y abajo es hecho en B para bloquear el proceso. Para poner en práctica, el primer M es derribado para conseguir la exclusión mutua, y luego el contador es incrementado. Si es más que el cero, n a d i e fue bloqueado, entonces todo que tiene que ser hecho es a en lo alto del M. Si, sin embargo, el contador es negativo ahora o cero, un poco de proceso debe ser quitado de la lista. Finalmente, es hecho en B y M en aquella orden. 25. Si el programa funciona en fases y ningún proceso puede entrar en la siguiente fase hasta que ambos sean terminados con la fase corriente, hace el sentido perfecto de usar una barrera. 26. Con retorno al punto de origen que lo programa trabajos. Tarde o temprano el L correrá, y aliado eventu-esto dejará su región crítica. El punto es, con la programación de prioridad, L nunca consigue correr en absoluto; con el retorno al punto de origen, esto consigue una rebanada de tiempo normal periodi-cally, entonces esto tiene la posibilidad para dejar su región crítica. 27. Con hilos de grano, un hilo puede obstruirse en un semáforo y el grano puede dirigir algún otro hilo en el mismo proceso. Por consiguiente, no hay ningún problema usando semáforos. Con hilos de nivel del usuario, cuando bloques de hilo en un semáforo, el grano piensa el proceso entero es bloqueado y no lo dirige alguna vez otra vez. Por consiguiente, el proceso falla. 28. Es mu y c a r o poner en práctica. Cada vez cualquier variable que aparece en un predicado en el cual un poco de proceso espera cambios, el sistema de tiempo de ejecución debe revalue el predicado para ver si el proceso puede ser desbloqueado. Con el Hoare y monitores de Brinch Hansen, los procesos sólo pueden ser despertados en un sig-nal primitivo.

8

SOLUCIONES DE PROBLEMA PARA EL CAPÍTULO 2

29. Los empleados se comunican pasando mensajes: órdenes, comida, y bolsos en este caso. En términos de UNIX, los cuatro procesos están relacionados por tubos. 30. Esto no conduce a competir con condiciones (nada es perdido alguna vez), pero esto es la espera con eficacia ocupada. 31. Si un filósofo se obstruye, los vecinos pueden ver más tarde que él tiene hambre comprobando su estado, en la prueba, entonces él puede ser despertado cuando los tenedores están disponibles. 32. El cambio significaría que después de que un filósofo dejó de comer, ninguno de sus vecinos podría ser elegido después. De he c ho , ellos nunca serían elegidos. El sorbo - postura que el filósofo 2 terminó de comer. Él dirigiría la prueba para filósofos 1 y 3, y ninguno sería comenzado, a unque tanto tuvieran hambre como ambos tenedores estaban disponibles. El Similary, si el filósofo 4 terminara de comer, filósofo 3 no sería comenzado. Nada le comenzaría. 33. Variación 1: los lectores tienen la prioridad. Ningún escritor puede comenzar cuando un lector es activo. Cuando un nuevo lector aparece, esto puede comenzar inmediatamente a menos que un escritor sea activo actualmente. Cuando un escritor termina, si los lectores esperan, ellos son todos comenzados, sin tener en cuenta la presencia de escritores que esperan. Variación 2: los Escritores tienen la prioridad. Ningún lector puede comenzar cuando un escritor espera. Cuando el último proceso activo termina, un escritor es comenzado, si hay el que; por otra parte, todos los lectores (si alguno) son comenzados. Variación 3: versión simétrica. Cuando un lector es activo, los nuevos lectores pueden comenzar inmediatamente. Cuando un escritor termina, un nuevo escritor tiene la prioridad, si uno espera. En otras palabras, una vez que hemos comenzado a leer, seguimos leyendo hasta que no haya ningunos lectores abandonados. Del mismo modo, una vez que hemos comenzado a escribir, a todos los escritores pendientes les permiten correr. 34. Esto necesitará el segundo nT. 35. Si un proceso ocurre tiempos múltiples en la lista, esto conseguirá quántums múltiples por ciclo. Este acercamiento podría ser usado para dar a procesos más importantes una parte más grande de la CPU. Pero cuando el proceso se obstruye, todas las entradas deberían ser quitadas de la lista de procesos de runnable. 36. En casos simples puede ser posible determinar si la entrada - salida será restrictiva mirando código fuente. Por ejemplo un programa que lee todos sus archivos de entrada en parachoques en el principio no será probablemente la entrada - salida ligada, pero un problema que lee y escribe incrementalmente a varios archivos diferentes (como un com-piler) probablemente será la entrada - salida ligada. Si el sistema operativo proporciona una instalación como el UNIX ps orden que puede decirle la cantidad del tiempo de CPU usado por un programa, usted puede comparar este con el tiempo total para completar la ejecución de el programa. Este es, por supuesto, el más significativo en un sistema donde usted es el único usuario. 37. Para procesos múltiples en una tubería, el padre común podría pasar a la información de sistema operativo sobre el flujo de datos. Con esta información

SOLUCIONES DE PROBLEMA PARA CAPÍTULO 9

3

el OS podría determinar, por ejemplo, qué proceso podría suministrar la salida a un proceso que se obstruye en una llamada a la entrada. 38. La eficacia de CPU es el tiempo de CPU útil dividido en el tiempo de CPU total. Cuando Q ³T, el ciclo básico es para el proceso para correr a T y someterse a un interruptor de proceso para S. Así (a) (y b) tienen una eficacia d e T / (S +T). Cuando el quántum es más corto que T, cada dirigido de T requerirá T / Q interruptores de proceso, gastando un tiempo SAN / Q. La eficacia aquí es entonces 33333T3333 T +SAN / Q que reduce a Q / (Q +S), que es la respuesta (a c). Para (d), nosotros sólo sub stitute Q para S y hallazgo que la eficacia es e l 5 0 p or c i e nt o . Finalmente, para (e), como Q ®0 la eficacia va a 0. 39. El trabajo más corto primero es el modo de minimizar el tiempo de respuesta medio. 0
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF