Sistemas operativos modernos
8 . E! archivo ntdll.dll exporta 1179 llamadas de función, mientras que ntoskml.exe exporta 1209. ¿Es esto un error? ¿Cuál podría ser la causa de esta discrepancia? 9. Los objetos administrados por el administrador de objetos son de tamaño variable, y diferentes objetos tienen diferente tamaño. ¿Un objeto puede principiar en un byte arbitrario de la reserva no paginada? Sugerencia: No se necesita información acerca de Windows 2000 aparte de la que se dio en el texto. 10. ¿Existe un límite para el número de operaciones distintas que pueden definirse para un objeto del eje cutivo? En tal caso, ¿de dónde proviene ese límite? Si no pueden definirse, ¿por qué no? 11. La llamada WaitForMultipleObjects de la API Win32 permite que un subproceso sea bloqueado por un conjunto de objetos de sincronización cuyos identificadores se pasan como parámetros. Tan pronto como cualquiera de ellos se señaliza, el subproceso invocador se libera. ¿Es posible hacer que el con junto de objetos de sincronización incluya dos semáforos, un mutex y una sección crítica? ¿Por qué sí o por qué no? Sugerencia: No se trata de una pregunta capciosa, pero sí requiere que la analice con detenimiento. 12. Cite tres razones por las que podría terminarse un proceso. 13. Considere la situación de la figura 11-19 en la que el sistema está a punto de calendarizar un sub proceso. Suponiendo que todos los subprocesos están dedicados al cómputo, ¿cuánto tiempo pasa an tes de que un subproceso con prioridad 3 logre ejecutarse en Windows 2000 Professional? 14. Suponga que el cuanto es de 20 ms y que el subproceso actual, con prioridad 24, acaba de iniciar un cuanto. De repente termina una operación de EyS y queda listo un subproceso con prioridad 28. ¿Cuánto tiempo aproximadamente tendrá que esperar antes de ser atendido? 15. En Windows 2000, la prioridad actual siempre es mayor o igual que la prioridad base. ¿Existen cir cunstancias en las que tendría senfido que la prioridad actual fuera más baja que la prioridad base? En tal caso, dé un ejemplo. Si lo tiene, ¿por qué no? 16. Algunos programas de MS-DOS se escribieron en lenguaje ensamblador empleando instrucciones como IN puerto y OUT puerto. ¿Tales programas pueden ejecutarse bajo Windows 2000? Si no pueden ejecutarse, ¿se le ocurre alguna forma en que pudieran manejarse? 17. Cite dos formas de lograr que los procesos importantes puedan tener un mejor fiempo de respuesta. 18. En el texto explicamos en forma breve el código independiente de la posición. Se trata de una técni ca para permitir que dos procesos compartan el mismo procedimiento en direcciones virtuales disfin tas. ¿Este problema puede resolverse con sólo hacer los ajustes apropiados a las tablas de páginas de los dos procesos? Explique su respuesta. 19. En Windows 2000 las bibliotecas compartidas están contenidas en archivos .dll que múldples proce sos pueden hacer corresponder en forma simultánea. Si dos procesos necesitan hacer corresponder la misma biblioteca compartida en direcciones virtuales distintas, se presenta un problema. ¿Cómo po dría resolverse en el Penfium, aprovechando una propiedad de su arquitectura de memoria? Si la so lución requiere cambios aWindows 2000 para poderse implementar, indique los cambios necesarios. 20. Si una región de espacio de direcciones virtual está reservada pero no comprometida, ¿cree usted que se creará un VAD para ella? Defienda su respuesta. 21. ¿Cuáles de las transiciones que se muestran en la figura 11-27 son decisiones de política, no acciones ne cesarias obligadas por sucesos del sistema (por ejemplo, un prcx’eso que termina y libera sus páginas)?
RkJQdWJsaXNoZXIy MjI4NDcx