Introducción a los Sistemas Operativos
Preguntas de Verdadero o Falso
- La fuente de alimentación del PC se considera un recurso del sistema. Falso
- Un SO esconde la complejidad del software. Verdadero
- La primera generación tenía una velocidad del orden de milisegundos. Verdadero
- Código objeto es el código de un programa que se carga en memoria. Verdadero
- La característica de un sistema de red o distribuido es conseguir un tiempo de respuesta aceptable. Falso
- Las llamadas al sistema son la visión que tiene un usuario de los servicios del SO. Falso
- En una ejecución concurrente, el tiempo que tarda en ejecutarse dos procesos es inferior al de una ejecución secuencial. Verdadero
- Los SO en tiempo real son complejos, así pueden procesar datos del exterior rápidamente. Falso
Preguntas de Respuesta Corta
- Aparece la segunda generación gracias a un componente electrónico llamado transistor.
- El programa que traduce un lenguaje de alto nivel a lenguaje máquina se llama compilador.
- El modo de trabajo donde se solapan operaciones de E/S con ejecuciones de programas se llama buffering.
- El número de programas que están activamente en competencia por los recursos del sistema recibe el nombre de grado de multiprogramación.
- El tiempo que dedica la CPU a la ejecución de un programa se llama quantum.
- Un programa que se encuentra repartido en varias máquinas es de tipo distribuido.
- El almacenamiento de memoria intermedia recibe el nombre de buffering.
- Para la gestión de colas se utiliza la técnica llamada spooling.
Orden de Acciones en la Segunda Generación
- Código fuente
- Compilación
- Programa objeto pasa a memoria
- Ejecución del programa
Motivos para el Cambio de Programa en Multiprogramación
En la multiprogramación, la CPU puede cambiar de un programa a otro por tres motivos:
- Finaliza un programa.
- Un programa realiza una operación de E/S.
- Ha pasado el quantum del tiempo de ejecución.
Preguntas Adicionales
- ¿Mediante qué programa un usuario puede dialogar con el SO? IC (Shell)
- ¿Cuáles son las dos funciones de un SO?
- Gestión de los recursos del sistema.
- Presentar al usuario una máquina virtual.
Gestión de la Memoria
Preguntas de Verdadero o Falso
- El número de particiones me indica el número de procesos que podemos tener cargados en memoria simultáneamente. Verdadero
- En la reubicación estática en tiempo de carga, el ejecutable contiene las direcciones físicas. Falso
- Un programa ejecutable está compuesto por código y los datos no inicializados. Falso
- La reubicación dinámica es más lenta que la reubicación estática. Verdadero
- El espacio lógico del proceso se crea en el momento de ejecución del proceso. Verdadero
- El registro que indica la dirección de memoria a partir de la cual el proceso se puede cargar en memoria se llama registro base. Verdadero
- Las particiones variables minimizan el problema de la fragmentación externa. Falso
- En la reubicación estática en tiempo de compilación/montaje, el ejecutable contiene las direcciones de la memoria principal. Verdadero
- En la reubicación dinámica en tiempo de ejecución, la traducción de las direcciones de memoria a direcciones físicas se hace por software. Falso
- Un segmento de datos puede tener derechos de escritura. Falso
- La medida de una partición determina el espacio lógico máximo que puede ocupar el proceso. Verdadero
- Una partición variable no se destruye una vez que ha sido creada. Falso
- Cada proceso tiene su tabla de descriptores. Verdadero
- Los segmentos de un mismo espacio lógico pueden estar separados en la memoria física. Verdadero
- Si un proceso requiere mucha memoria, la mejor opción es recurrir a particiones fijas. Falso
- El problema de la fragmentación interna se reduce con las particiones fijas. Falso
- El espacio lógico del proceso es mayor que el espacio de direcciones del procesador. Falso
- La paginación evita la fragmentación externa. Verdadero
- La compactación de la memoria está destinada a solucionar la fragmentación interna. Falso
- Las particiones fijas y variables utilizan básicamente el mismo hardware y el mismo software. Falso
Preguntas de Respuesta Corta
- La partición de un proceso en trozos de igual medida se llama paginación.
- La técnica que consiste en sacar un proceso que reside en memoria y llevarlo al disco de manera temporal se llama swapping.
- Cuando no hay espacio de memoria contiguo libre suficientemente grande como para cargar un proceso, tenemos un problema de fragmentación externa.
- En la paginación, la división del espacio lógico se llama páginas.
- ¿Qué componente limita el tamaño de la memoria física? El procesador
- La partición lógica de un proceso se llama segmentación.
- Un programa en ejecución se llama proceso.
- ¿Qué tipo de reubicación permite que un proceso tenga la posibilidad de moverse dentro de la RAM durante su ejecución? Reubicación dinámica en tiempo de ejecución.
- El bit que indica, en la gestión de la memoria virtual, si un proceso está cargado en la memoria se llama bit de presencia.
- En la paginación, la memoria principal se divide en trozos llamados frames.
- En relación con un programa, un segmento puede contener código, datos y pila.
- ¿Cómo podemos saber si un segmento es de lectura, de escritura o de ejecución? Por el bit de la tabla de descriptores.
- ¿Dos procesos que comparten páginas de pila, necesariamente han de ver ubicadas las páginas físicas compartidas en las mismas páginas lógicas? Dos procesos no pueden compartir la pila.
Cálculo de Direcciones Físicas
Según la tabla de segmentos siguientes, ¿cuáles son las direcciones físicas de las direcciones lógicas siguientes?
Segmento | Base | Longitud |
---|---|---|
0 | 500 | 500k |
1 | 1000 | 500k |
2 | 0 | 500k |
- [2,250]: 250
- [0,100]: 600
- [1,200]: 1200
- Si durante la ejecución concurrente de dos procesos, los dos intentan acceder a la misma dirección lógica, ¿quiere decir que están compartiendo memoria? No, porque las mismas direcciones lógicas pueden ir a distintas direcciones físicas.