Sistema Operativo

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Cuál es el papel principal de un sistema operativo?

Intermediario entre el usuario y el hardware

¿Qué componentes se encuentran en un sistema operativo?

  • Aplicaciones
  • Kernel (correct)
  • Shell (correct)

El kernel es un proceso que se ejecuta en memoria secundaria.

False (B)

¿Cuáles son los objetivos de un sistema operativo? (Selecciona todas las que apliquen)

<p>Eficiencia (A), Evolución (C), Comodidad (D)</p> Signup and view all the answers

¿Qué es un microkernel?

<p>Un enfoque de diseño del kernel que busca estar el menor tiempo posible en modo kernel.</p> Signup and view all the answers

El kernel realiza el manejo de la ______.

<p>memoria</p> Signup and view all the answers

¿Qué problemas debe evitar un sistema operativo?

<p>Que un proceso acceda a memoria fuera de su espacio de direcciones (A), Que un proceso ejecute instrucciones privilegiadas (C)</p> Signup and view all the answers

El modo usuario permite acceder a áreas de memoria fuera del espacio de direcciones del proceso.

<p>False (B)</p> Signup and view all the answers

¿Qué es un sistema operativo?

<p>Intermediario entre el usuario y el hardware.</p> Signup and view all the answers

El kernel es un proceso del sistema operativo.

<p>False (B)</p> Signup and view all the answers

¿Cuáles son los objetivos del sistema operativo? (Selecciona todas las opciones que apliquen)

<p>Eficiencia (A), Comodidad (C), Evolución (D)</p> Signup and view all the answers

El kernel monolítico resuelve toda operación del kernel en modo ______.

<p>kernel</p> Signup and view all the answers

¿Cuál es la función principal del manejo de memoria en un kernel?

<p>Protección de memoria entre programas.</p> Signup and view all the answers

El sistema operativo permite a todos los procesos ejecutar instrucciones privilegiadas.

<p>False (B)</p> Signup and view all the answers

¿Cuáles son los componentes del sistema operativo? (Selecciona todas las opciones que apliquen)

<p>Kernel (B), Herramientas (C), Shell (D)</p> Signup and view all the answers

¿Qué se debe evitar para que un proceso no se apropie de la CPU?

<p>Interrupción de clock.</p> Signup and view all the answers

¿Qué describe un microkernel?

<p>Realiza las tareas mínimas necesarias en modo kernel. (B)</p> Signup and view all the answers

Relaciona las características del kernel con sus descripciones:

<p>Kernel Monolítico = Toda operación del kernel se resuelve en modo kernel. Microkernel = Se busca estar el menor tiempo posible en modo kernel. Planificación de procesos = Administración y control de la ejecución de procesos. Manejo de memoria = Protección de memoria entre programas.</p> Signup and view all the answers

Flashcards are hidden until you start studying

Study Notes

Sistema Operativo

  • Intermediario entre el usuario y el hardware.
  • Es software, por lo que necesita un procesador y memoria.
  • Gestiona el hardware.
  • Controla la ejecución de los procesos.
  • Provee un conjunto de servicios a los usuarios del sistema.
  • Maneja la memoria secundaria y dispositivos I/O.
  • Detecta intentos de ejecución de instrucciones de E/S ilegales.
  • Tiene como objetivos: comodidad, eficiencia y evolución.
    • Capacidad de soportar nuevos tipos de hardware.
    • Brindar nuevos servicios.
    • Ofrecer mejoras y alternativas a problemas existentes.
  • Componentes: Kernel, Shell y Herramientas.
  • Servicios:
    • Administración y planificación de procesos.
    • Administración de memoria.
      • Detecta accesos ilegales a memoria.
    • Administración del sistema de archivos.
    • Administración de dispositivos.
    • Detección de errores y respuestas.
      • Protege el vector de interrupciones y las rutinas de atención a interrupciones.
    • Interacción del usuario.
    • Contabilidad.
  • Problemas que debe evitar:
    • Un proceso se apropie de la CPU.
    • Un proceso ejecute instrucciones privilegiadas.
    • Un proceso acceda a memoria fuera de su espacio de direcciones.

Apoyo del Hardware

  • Modos de ejecución: Definen limitaciones al conjunto de instrucciones que se pueden ejecutar.
  • Interrupción de reloj: Evita que un proceso se apodere de la CPU.
  • Protección de memoria: Define límites de memoria a los que puede acceder cada proceso.

Kernel

  • Código que se encuentra en memoria principal.
  • No es un proceso.
  • Implementa servicios esenciales:
    • Manejo de memoria.
      • Protección de memoria entre programas.
      • Eficiencia.
    • Manejo de CPU.
    • Administración de procesos.
      • Multiplexación.
      • Manejo de prioridades.
      • Evitar bloqueos.
    • Comunicación y concurrencia.
    • Gestión de la E/S.

Kernel Monolítico

  • Toda operación del kernel se resuelve en modo kernel.

Microkernel

  • Busca minimizar el tiempo en modo kernel.
  • Separa el kernel en lo indispensable para ejecutar en modo privilegiado y lo que se puede resolver en modo usuario.

Enfoques de diseño del kernel

Primer Enfoque: Kernel como entidad independiente

  • El kernel tiene su propia región de memoria.
  • Se ejecuta fuera de todo proceso.
  • Cuando ocurre una interrupción o una syscall, se resguarda el contexto del proceso y se pasa el control al kernel.
  • Tiene su propio stack.
  • Finalizada su actividad, le devuelve el control al proceso.

Segundo Enfoque: Kernel “dentro” del proceso

  • El “código” del kernel se encuentra dentro del espacio de direcciones de cada proceso.
  • El kernel se ejecuta en el mismo contexto que el proceso de usuario.
  • Se puede ver al kernel como una colección de rutinas que el proceso utiliza.
  • Dentro de un proceso se encuentra el código del programa de usuario y los módulos que provee el kernel.
  • Cada proceso tiene su propio stack, en modo usuario y en modo kernel.
  • El cambio de modo de ejecución ocurre al utilizar el kernel, que funciona en modo kernel, mientras los procesos se ejecutan en modo usuario.
  • El código del kernel es compartido por todos los procesos.
  • Cada interrupción o syscall se atiende en el contexto del proceso que se encontraba en ejecución, pero en modo kernel.
  • Se pasa a modo usuario cuando termina de atender la interrupción.
    • Más eficiente ya que no hay necesidad de hacer un cambio de contexto completo.
    • Desventaja: parte del espacio de direcciones está ocupado por el kernel y el programa no lo puede usar.

Modos de ejecución

  • El bit en la CPU indica el modo actual.
  • Las instrucciones privilegiadas deben ejecutarse en modo kernel.
    • Necesitan acceder a estructuras del kernel o ejecutar código que no es del proceso.
  • En modo usuario, el proceso sólo puede acceder a su espacio de direcciones propio.
  • El kernel se ejecuta en modo kernel y los demás programas en modo usuario.
  • El sistema arranca en modo kernel.
  • Cada vez que comienza a ejecutarse un proceso de usuario, se debe poner en modo usuario utilizando una instrucción especial.
  • La única forma de pasar a modo kernel es con traps o interrupciones. Esto no lo hace el proceso, sino el hardware.

Modo Kernel

  • Gestión de procesos: Creación, terminación, planificación, swapping, sincronización
  • Gestión de memoria: Swapping, gestión, reserva
  • Gestión de E/...

Sistema Operativo

  • Intermediario: Actúa como un puente entre el usuario y el hardware.
  • Software: Requiere procesador y memoria para funcionar.
  • Gestión: Se encarga de administrar el hardware y controlar la ejecución de procesos.
  • Servicios: Ofrece una serie de servicios para los usuarios del sistema, como manejo de memoria secundaria y dispositivos de entrada/salida (I/O).
  • Objetivos: Facilitar el uso del sistema, maximizar la eficiencia y permitir su evolución.
    • Adaptarse a nuevos tipos de hardware.
    • Brindar nuevos servicios.
    • Mejorar y solucionar problemas existentes.
  • Componentes:
    • Kernel: El núcleo del sistema operativo, responsable de las funciones esenciales.
    • Shell: Interfaz de usuario que interpreta comandos.
    • Herramientas: Programas que ayudan en tareas específicas.
  • Servicios:
    • Administración de Procesos: Creación, terminación, planificación y sincronización de procesos.
    • Administración de Memoria: Gestión de la memoria principal, protección contra accesos ilegales y optimización de su uso.
    • Administración del Sistema de Archivos: Organización y acceso a los archivos del sistema.
    • Administración de Dispositivos: Control y acceso a los dispositivos de entrada/salida.
    • Detección de Errores: Identificación y manejo de errores en el sistema.
    • Interacción del Usuario: Proporciona la interfaz entre el usuario y el sistema.
    • Contabilidad: Registra información sobre el uso del sistema.
  • Problemas a Evitar:
    • Un proceso apoderándose de la CPU.
    • Un proceso ejecutando instrucciones privilegiadas.
    • Un proceso accediendo a memoria fuera de su espacio de direcciones.
  • Apoyo del Hardware:
    • Modos de Ejecución: Definen los límites de las instrucciones que se pueden ejecutar en cada modo (usuario o kernel).
    • Interrupción de Reloj: Evita que un proceso se apodere de la CPU.
    • Protección de Memoria: Establece límites de memoria a los que cada proceso puede acceder.

Kernel

  • Código en Memoria Principal: Se encuentra en la memoria principal y no es un proceso.
  • Servicios Esenciales: Implementa funciones fundamentales del sistema.
    • Manejo de Memoria: Protección entre programas y optimización del uso.
    • Manejo de CPU: Planificación y asignación de la CPU a los procesos.
    • Administración de Procesos: Multiplexación, gestión de prioridades y prevención de bloqueos.
    • Comunicación y Concurrencia: Gestión de la comunicación entre procesos y la ejecución simultánea de tareas.
    • Gestión de E/S: Control y acceso a los dispositivos de entrada/salida.

Tipos de Kernel

  • Kernel Monolítico: Todas las operaciones del kernel se ejecutan en modo kernel.
  • Microkernel: Se busca minimizar el tiempo en modo kernel, separando las funciones esenciales de las que pueden ejecutarse en modo usuario.

Enfoques de Diseño del Kernel

  • Primer Enfoque: Kernel como Entidad Independiente:
    • Tiene su propia región de memoria.
    • Se ejecuta fuera de cualquier proceso.
    • Al ocurrir interrupciones o llamadas al sistema (syscall), se guarda el contexto del proceso y se transfiere el control al kernel.
    • Posee su propio stack.
    • Cuando finaliza su tarea, devuelve el control al proceso.
  • Segundo Enfoque: Kernel "Dentro" del Proceso:
    • El código del kernel se encuentra dentro del espacio de direcciones de cada proceso.
    • Se ejecuta en el mismo contexto que un proceso de usuario.
    • El kernel se puede considerar como una colección de rutinas que utiliza el proceso.
    • Cada proceso tiene su propio stack, uno para modo usuario y otro para modo kernel.
    • El proceso se ejecuta en modo usuario y el kernel en modo kernel, con cambios de modo para acceder a las funciones del kernel.
    • El código del kernel se comparte entre todos los procesos.
    • Cada interrupción o syscall se atiende en el contexto del proceso en ejecución, pero en modo kernel.
    • Mayor eficiencia, ya que no se necesita un cambio de contexto completo.
    • Desventaja: Parte del espacio de direcciones está ocupada por el kernel, limitando la memoria disponible para el programa.

Modos de Ejecución

  • Bit de Modo: Indica el modo actual de ejecución (usuario o kernel).
  • Instrucciones Privilegiadas: Deben ejecutarse en modo kernel.
  • Modo Usuario: El proceso solo puede acceder a su propio espacio de direcciones.
  • Modo Kernel: El kernel se ejecuta en este modo y los demás programas en modo usuario.
  • Inicio del Sistema: Se inicia en modo kernel.
  • Cambio a Modo Usuario: Se realiza al iniciar la ejecución de un proceso de usuario.
  • Cambio a Modo Kernel: Se realiza a través de traps o interrupciones, generados por el hardware.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Use Quizgecko on...
Browser
Browser