Podcast
Questions and Answers
Si un proceso está en estado Listo/Suspendido, ¿qué significa?
Si un proceso está en estado Listo/Suspendido, ¿qué significa?
- El proceso está en almacenamiento secundario, pero listo para ser ejecutado cuando se le cargue en memoria principal. (correct)
- El proceso está en memoria principal, pero esperando un evento para continuar.
- El proceso está en almacenamiento secundario y esperando un evento para continuar.
- El proceso está en memoria principal y listo para ser ejecutado.
¿Qué componente de un proceso es único para cada hilo?
¿Qué componente de un proceso es único para cada hilo?
- Zona de código.
- Contexto o BCP. (correct)
- Montículo.
- Zona de datos estáticos.
¿Cuál de las siguientes afirmaciones es FALSA sobre los hilos?
¿Cuál de las siguientes afirmaciones es FALSA sobre los hilos?
- Cada hilo tiene su propia pila de ejecución.
- Los hilos de un proceso comparten el mismo montículo.
- Los hilos de un proceso comparten la misma zona de código.
- Los hilos de un proceso tienen diferentes espacios de direcciones en RAM. (correct)
¿Cuál es el propósito de mover procesos al estado Suspendido?
¿Cuál es el propósito de mover procesos al estado Suspendido?
Si un hilo desea devolver información al proceso padre, ¿dónde debe reservarla?
Si un hilo desea devolver información al proceso padre, ¿dónde debe reservarla?
¿Cuál es la función del bit en la palabra de estado del programa?
¿Cuál es la función del bit en la palabra de estado del programa?
¿Qué es una llamada nativa al sistema?
¿Qué es una llamada nativa al sistema?
¿Qué gestión realiza el sistema operativo en relación a la memoria virtual?
¿Qué gestión realiza el sistema operativo en relación a la memoria virtual?
¿Cuál de las siguientes opciones describe mejor la gestión de E/S?
¿Cuál de las siguientes opciones describe mejor la gestión de E/S?
¿Qué función cumplen las APIs en relación con las llamadas nativas al sistema?
¿Qué función cumplen las APIs en relación con las llamadas nativas al sistema?
¿Qué ocurre si un programa de usuario intenta ejecutar una instrucción privilegiada del núcleo?
¿Qué ocurre si un programa de usuario intenta ejecutar una instrucción privilegiada del núcleo?
¿Qué tipo de ficheros son ejemplos de sistemas de ficheros manejados por el sistema operativo?
¿Qué tipo de ficheros son ejemplos de sistemas de ficheros manejados por el sistema operativo?
¿Qué tarea omite el sistema en un proceso para prevenir la inanición?
¿Qué tarea omite el sistema en un proceso para prevenir la inanición?
¿Qué información se almacena en un registro de activación dentro de la pila?
¿Qué información se almacena en un registro de activación dentro de la pila?
¿Cómo se describe la estructura de una pila en programación?
¿Cómo se describe la estructura de una pila en programación?
¿Qué se conoce como el Puntero de Pila (SP)?
¿Qué se conoce como el Puntero de Pila (SP)?
En el esquema de ejecución, ¿qué proceso se ejecuta después de que A finaliza una serie de instrucciones?
En el esquema de ejecución, ¿qué proceso se ejecuta después de que A finaliza una serie de instrucciones?
¿Cuál es la función principal de la pila en llamadas a funciones?
¿Cuál es la función principal de la pila en llamadas a funciones?
El puntero de base (FP) indica:
El puntero de base (FP) indica:
Después de ejecutar el proceso B, ¿qué se realiza a continuación?
Después de ejecutar el proceso B, ¿qué se realiza a continuación?
¿Qué se almacena como parte del estado de la máquina en la pila?
¿Qué se almacena como parte del estado de la máquina en la pila?
¿Cuál es una de las primeras acciones que realiza el gestor de arranque al iniciar el sistema operativo?
¿Cuál es una de las primeras acciones que realiza el gestor de arranque al iniciar el sistema operativo?
¿Qué evento puede provocar la creación de un proceso en un sistema operativo Linux?
¿Qué evento puede provocar la creación de un proceso en un sistema operativo Linux?
¿Qué tipo de salida provoca que un proceso termine de manera controlada por el programador?
¿Qué tipo de salida provoca que un proceso termine de manera controlada por el programador?
¿Cuál de los siguientes no es un posible evento que provoca la creación de procesos?
¿Cuál de los siguientes no es un posible evento que provoca la creación de procesos?
¿Qué ocurre cuando un proceso finaliza por error fatal?
¿Qué ocurre cuando un proceso finaliza por error fatal?
¿Cuál es una de las tareas que realiza el núcleo del sistema operativo tras su carga?
¿Cuál es una de las tareas que realiza el núcleo del sistema operativo tras su carga?
¿Qué significado tiene la invocación de exit() en un proceso?
¿Qué significado tiene la invocación de exit() en un proceso?
¿Cuál de las siguientes opciones es un ejemplo de un cargador de arranque en Linux?
¿Cuál de las siguientes opciones es un ejemplo de un cargador de arranque en Linux?
¿En qué situación se produce una salida controlada por error en un proceso?
¿En qué situación se produce una salida controlada por error en un proceso?
¿Qué función cumple el manejo de interrupciones en el núcleo del sistema operativo?
¿Qué función cumple el manejo de interrupciones en el núcleo del sistema operativo?
¿Qué acción realiza un proceso cuando se encuentra en estado 'Nuevo'?
¿Qué acción realiza un proceso cuando se encuentra en estado 'Nuevo'?
¿Cuál de las siguientes excepciones se lanza cuando no hay suficiente memoria disponible en C++?
¿Cuál de las siguientes excepciones se lanza cuando no hay suficiente memoria disponible en C++?
¿Cuál es la función del planificador a corto plazo?
¿Cuál es la función del planificador a corto plazo?
¿En qué estado se encuentra un proceso que está a la espera de que se cumpla un evento determinado?
¿En qué estado se encuentra un proceso que está a la espera de que se cumpla un evento determinado?
¿Qué significa el estado 'Saliente' para un proceso?
¿Qué significa el estado 'Saliente' para un proceso?
¿Cuál es la transición que ocurre cuando un proceso pasa de 'Nuevo' a 'Listo'?
¿Cuál es la transición que ocurre cuando un proceso pasa de 'Nuevo' a 'Listo'?
¿Qué sucede cuando un terminal se cierra en relación con sus procesos hijos?
¿Qué sucede cuando un terminal se cierra en relación con sus procesos hijos?
¿Qué ocurre al ejecutar la instrucción kill() en relación con un proceso?
¿Qué ocurre al ejecutar la instrucción kill() en relación con un proceso?
¿Qué papel tiene la memoria principal en el control de procesos por parte del SO?
¿Qué papel tiene la memoria principal en el control de procesos por parte del SO?
¿Qué se debe hacer en la fase de captura de excepciones en C++ cuando se lanza bad_alloc?
¿Qué se debe hacer en la fase de captura de excepciones en C++ cuando se lanza bad_alloc?
Flashcards
Memoria Suspendida
Memoria Suspendida
Estado donde un proceso está en almacenamiento secundario y no en ejecución.
Hilos (Hebras)
Hilos (Hebras)
Unidad básica de utilización de la CPU que permite realizar múltiples tareas.
Estado Listo/Suspendido
Estado Listo/Suspendido
Un proceso en almacenamiento secundario, listo para ejecutar cuando se carga en memoria.
Estado Bloqueado/Suspendido
Estado Bloqueado/Suspendido
Signup and view all the flashcards
Zona de Código
Zona de Código
Signup and view all the flashcards
Sincronización de procesos
Sincronización de procesos
Signup and view all the flashcards
Bloques de control de procesos (BCP)
Bloques de control de procesos (BCP)
Signup and view all the flashcards
Memoria virtual
Memoria virtual
Signup and view all the flashcards
Llamadas nativas al sistema
Llamadas nativas al sistema
Signup and view all the flashcards
API (Interfaz de Programación de Aplicaciones)
API (Interfaz de Programación de Aplicaciones)
Signup and view all the flashcards
Interrupciones de reloj
Interrupciones de reloj
Signup and view all the flashcards
Excepciones
Excepciones
Signup and view all the flashcards
Inanición en procesos
Inanición en procesos
Signup and view all the flashcards
Rutina ISR
Rutina ISR
Signup and view all the flashcards
Ejecución del planificador
Ejecución del planificador
Signup and view all the flashcards
Pila
Pila
Signup and view all the flashcards
Registro de activación
Registro de activación
Signup and view all the flashcards
Dirección de retorno
Dirección de retorno
Signup and view all the flashcards
Puntero de pila (SP)
Puntero de pila (SP)
Signup and view all the flashcards
Puntero de base (FP)
Puntero de base (FP)
Signup and view all the flashcards
Zona de memoria variable
Zona de memoria variable
Signup and view all the flashcards
Gestor de arranque
Gestor de arranque
Signup and view all the flashcards
Kernel
Kernel
Signup and view all the flashcards
Espacio de usuario
Espacio de usuario
Signup and view all the flashcards
Creación de procesos
Creación de procesos
Signup and view all the flashcards
Salida normal
Salida normal
Signup and view all the flashcards
Salida controlada por error
Salida controlada por error
Signup and view all the flashcards
Error fatal
Error fatal
Signup and view all the flashcards
Montaje de sistema de archivos
Montaje de sistema de archivos
Signup and view all the flashcards
E/S
E/S
Signup and view all the flashcards
Cargadores de arranque
Cargadores de arranque
Signup and view all the flashcards
Manejo de errores
Manejo de errores
Signup and view all the flashcards
Excepción bad_alloc
Excepción bad_alloc
Signup and view all the flashcards
Bloque try
Bloque try
Signup and view all the flashcards
Instrucción catch()
Instrucción catch()
Signup and view all the flashcards
Estado Nuevo
Estado Nuevo
Signup and view all the flashcards
Estado Ejecutando
Estado Ejecutando
Signup and view all the flashcards
Estado Listo
Estado Listo
Signup and view all the flashcards
Estado Bloqueado
Estado Bloqueado
Signup and view all the flashcards
Estado Saliente
Estado Saliente
Signup and view all the flashcards
Transiciones entre estados
Transiciones entre estados
Signup and view all the flashcards
Study Notes
Introducción a los Sistemas Operativos
- Un sistema operativo es un conjunto de programas que gestiona el hardware de una computadora y permite que otros programas se ejecuten.
- Un proceso es un programa en ejecución.
- Los SO gestionan los recursos del hardware y proporcionan una interfaz entre el hardware y los usuarios.
- Las funciones y objetivos del SO incluyen administrar recursos, planificar procesos, gestionar hardware y proporcionar interfase con el usuario.
- La equitatividad, respuesta diferencial y eficiencia son factores a tener en cuenta al asignar recursos en un SO.
- El planificador es responsable de la planificación de procesos y la asignación de recursos en sistemas multiprogramados.
- El manejador de interrupciones gestiona las interrupciones generadas por dispositivos de E/S.
El Sistema Operativo como Gestor-Asignador de Recursos
- El SO debe decidir cómo asignar recursos a los procesos ante solicitudes conflictivas.
- Factores importantes en la asignación de recursos son:
- Equitatividad: Procesos similares deben tener acceso equitativo a los recursos.
- Respuesta diferencial: Diferentes procesos con prioridades diferentes requieren una asignación dinámica de recursos.
- Eficiencia: El SO debe maximizar el rendimiento y minimizar los tiempos de respuesta.
- Elementos principales del SO para gestionar los tres factores son:
- Planificador: gestiona la planificación y asignación de recursos en entornos multiprogramados.
- Manejador de llamadas nativas al sistema: se encarga de optimizar el flujo de peticiones del usuario.
Diseño Modular en Niveles
- El diseño modular permite una mayor libertad de cambio, mantenimiento, correlación de errores y depuración.
- Organización de niveles separando las características del sistema.
Transformación de un programa en instrucciones de máquina
- Las máquinas interpretan señales binarias (0 y 1).
- Las instrucciones son colecciones de bits que se representan como números.
- Compiladores traducen lenguajes de alto nivel a ensamblador y a lenguaje máquina.
- El ensamblador traduce el lenguaje ensamblador a lenguaje máquina.
- El lenguaje máquina es el lenguaje binario que entiende la máquina.
Elementos básicos y organización de un computador
- Unidad de procesamiento (CPU): controla el funcionamiento y procesa datos.
- ALU (Unidad Aritmética Lógica)
- IR (Registro de Instrucciones)
- PC (Contador de Programa)
- Registros auxiliares
- Memoria Principal: almacena las instrucciones y datos que se usan en las operaciones.
- Módulos de E/S: transferencia de datos entre el computador y el entorno externo.
El procesador y sus registros
- Los registros son ubicaciones de almacenamiento dentro de la CPU que se utilizan para almacenar temporalmente datos e instrucciones.
- Registro de dirección de memoria (RDIM): almacena la dirección de memoria.
- Registro de datos de memoria (RDAM): almacena los datos que se reciben de la memoria.
- Registro de dirección de E/S: almacena direcciones de memoria de buffers de E/S.
- Registro de datos de E/S: almacena información de búfers de E/S.
- Registro de instrucción (IR): contiene la última instrucción leída y que hay que ejecutar.
- Contador de programa (PC): contiene la dirección de la siguiente instrucción a ejecutar.
- Palabra de estado del programa (PSW): contiene información sobre el estado del programa.
- Registros auxiliares.
Interacción de la CPU con la memoria principal
- Los programas deben estar en la memoria principal para ejecutarse.
- Secuencias de carga y almacenamiento entre memoria y CPU usando registros.
Búsqueda y ejecución de instrucciones
- Un ciclo de instrucción consta de fase de búsqueda y ejecución.
- Incluye buscar (obtener) la siguiente instrucción de la memoria, decodificarla y ejecutarla en la ALU.
Interrupciones y manejador de interrupciones
- Interrupciones por dispositivos de E/S, por fallos de hardware y por temporizadores.
- Se usa una tabla de vectores que contienen direcciones de las rutinas de manejo de interrupciones.
Adición de la fase de interrupción
- El procesador comprueba si hay interrupciones pendientes.
- Si hay interrupciones, se ejecuta la rutina de manejo de interrupciones correspondiente.
- Se restaura el contexto del proceso interrumpido.
Procesos múltiples
- Cada proceso tiene su propio bloque de control de proceso (PCB), que almacena información sobre el proceso.
- Los sistemas operativos tienen que gestionar múltiples procesos.
- Posibles estados de los procesos: nuevo, listo, en ejecución, bloqueado, terminado.
- El planificador selecciona procesos para la ejecución en la CPU.
Sistemas de un solo procesador
- Hay un solo procesador que gestiona los diferentes procesos en ejecución.
Sistemas multiprocesador
- Hay múltiples procesadores trabajando simultáneamente en la ejecución de múltiples procesos.
- Sistemas simétricos y asimétricos dependiendo de la partición de tareas entre los procesadores.
Multiprogramación
- El SO maneja simultáneamente varios procesos, dividiendo el tiempo del procesador entre ellos.
- Se evita el tiempo ocioso del procesador.
Multiprocesamiento
- Permite que varios procesos se ejecuten simultáneamente en varios procesadores.
Modo dual (usuario y kernel)
- El modo kernel otorga acceso preferencial a recursos del sistema operativo.
- El modo usuario limita privilegios a un programa para evitar accesos inadecuados a recursos del sistema.
Llamadas nativas al sistema y paso de parámetros
- Las llamadas al sistema son llamadas de un programa de usuario al sistema operativo.
- Se indica al sistema operativo las instrucciones a llevar a cabo.
- El kernel controla este intercambio, paso de parámetros y return.
Comunicación entre procesos, problemas de concurrencia
- Pseudoparalelismo o concurrencia: procesos intercalados.
- Paralelismo o concurrencia real: procesos al mismo tiempo.
- Problemas de concurrencia: secciones críticas, inanición, interbloqueo.
- Soluciones: semáforos, monitores, mutex...
El problema de los lectores-escritores
- Un recurso compartido por lectores y escritores.
- Priorizar los lectores sobre los escritores, o viceversa.
- Implementación de semáforos.
Problema del productor-consumidor
- Un recurso compartido productor/consumidor.
- Soluciones con semáforos.
Señales como método IPC
- Mensajes entre procesos, usando llamadas al sistema.
Planificación
- Objetivo: eficiencia, justicia, tiempo de respuesta aceptable.
- Tipos de planificación: FCFS, Round Robin, prioridades, SRT
- Planificación a largo plazo, a medio plazo, a corto plazo.
Otros temas:
- Multiprocesamiento simétrico y asimétrico.
- Planificación con colas de prioridades.
- Colas de prioridad multinivel retroalimentada (feedback).
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.