Sistema Operativo Capítulo 1 - Sección 2: Características del Sistema Operativo

características del sistema operativo

imagen-20220303090311937

simultaneidad

Rey aerotransportado

Concurrencia: se refiere a dos o más eventos que ocurren dentro del mismo intervalo de tiempo . Estos eventos ocurren simultáneamente macroscópicamente, pero alternativamente ocurren microscópicamente.

A menudo, considere el concepto confuso: paralelo: se refiere a dos o más eventos que ocurren al mismo tiempo al mismo tiempo .

La diferencia entre paralelo y concurrente:

Paralelo: realiza dos tareas al mismo tiempo (como si estuvieras chateando y viendo películas mientras memorizas palabras);

Concurrencia: desde una perspectiva macro, el programa realiza dos tareas al mismo tiempo durante todo el ciclo de ejecución del programa . Desde un punto de vista microscópico, en un momento determinado , el programa está realizando como máximo una tarea.

  • Ejemplo: suponga que la escoria pequeña y la escoria vieja tienen dos novias cada una. Tarea 1: Fecha número uno; Tarea 2: Fecha número dos...

    Parallel es dos citas al mismo tiempo;

    La concurrencia consiste en iniciar la tarea de cita del número 2 al mismo tiempo después de que se complete la cita del número 1 .

imagen-20220303124828018

simultaneidad del sistema operativo

Rey aerotransportado

La concurrencia del sistema operativo se refiere a la existencia de múltiples programas en ejecución en el sistema informático al mismo tiempo.
Un procesador de un solo núcleo (CPU) solo puede ejecutar un programa a la vez, por lo que el sistema operativo será responsable de coordinar la ejecución alternativa de múltiples programas, que es la ejecución concurrente que se acaba de mencionar. (Estos programas se ejecutan alternativamente microscópicamente, pero macroscópicamente parece que se ejecutan simultáneamente)

Las computadoras de hoy en día son generalmente CPU multinúcleo, por ejemplo, el procesador i3 de octava generación de Intel es una CPU de 4 núcleos, aunque esto significa que se pueden ejecutar 4 programas en paralelo al mismo tiempo, la concurrencia del sistema operativo sigue siendo esencial. . La gente contemporánea usa computadoras con más de 4 programas que necesitan funcionar al mismo tiempo.

De hecho, el sistema operativo apareció con "tecnología de multiprogramación". Así, los sistemas operativos y la concurrencia de programas nacieron juntos .

compartido

Rey aerotransportado

Compartir, también conocido como compartir recursos, significa que los recursos en el sistema pueden ser compartidos por múltiples procesos que se ejecutan simultáneamente en la memoria.

imagen-20220303132127016

El intercambio (intercambio de recursos) se divide en dos formas: el intercambio exclusivo mutuo y el intercambio simultáneo

  • Modo de uso compartido mutuamente excluyente : aunque algunos recursos en el sistema se pueden proporcionar a múltiples procesos, solo un proceso puede acceder al recurso dentro de un período de tiempo;

    Ejemplo:

    Método de intercambio mutuamente excluyente: use QQ y WeChat video. La cámara solo se puede asignar a uno de los procesos al mismo tiempo. La mayoría de los dispositivos físicos en un sistema informático, así como el espacio de pila, las variables y las tablas utilizadas en algún software, son recursos críticos que solo pueden ser utilizados por un proceso.

    entender:

    El intercambio de exclusión mutua significa que cuando un recurso está ocupado por un proceso A, otro proceso B que quiera usar el recurso solo puede esperar. Solo después de que el proceso A termine de usar el recurso, el proceso B puede usar el recurso. Este método compartido Se llama compartir mutuamente excluyente, y este tipo de recurso se llama recurso crítico o recurso exclusivo. Tales como las impresoras son recursos críticos.

  • Uso compartido simultáneo : Ciertos recursos en el sistema permiten que múltiples procesos accedan a ellos "simultáneamente" dentro de un período de tiempo .

    Ejemplo:

    Método de uso compartido simultáneo: use QQ para enviar el archivo A y use WeChat para enviar el archivo B al mismo tiempo. Desde una perspectiva macro, ambos lados leen y envían archivos al mismo tiempo, lo que indica que ambos procesos acceden a los recursos del disco duro y leen datos de ellos. Desde un punto de vista microscópico, los dos procesos acceden alternativamente al disco duro.

    Los llamados "simultáneos" a menudo se refieren al acceso simultáneo en un nivel macro, mientras que en un nivel micro, estos procesos pueden acceder al recurso de forma alterna (es decir, tiempo compartido) . Pero a veces también está accediendo y ejecutándose al mismo tiempo en un nivel micro. Por ejemplo, cuando está jugando un juego y la música está sonando de fondo, encontrará que el sonido del juego y la música se emiten al mismo tiempo, lo que significa que estos dos procesos están utilizando el dispositivo de altavoz al mismo tiempo, las necesidades específicas deben combinarse con la realidad.

La relación entre concurrencia y compartir

Rey aerotransportado

Concurrencia : hay varios programas en ejecución en un sistema informático al mismo tiempo.
Compartir : los recursos en el sistema pueden ser compartidos por múltiples procesos que se ejecutan simultáneamente en la memoria.

Mire la relación entre concurrencia y uso compartido a través del ejemplo anterior:

Use QQ para enviar el archivo A y use WeChat para enviar el archivo B

  • Dos procesos se ejecutan simultáneamente (concurrencia);

    Si se pierde la concurrencia, solo hay un programa ejecutándose en el sistema y el uso compartido pierde su existencia.

  • Necesidad de compartir el acceso a los recursos del disco duro (compartido);

    Si se pierde el uso compartido, QQ y WeChat no pueden acceder a los recursos del disco duro al mismo tiempo y no pueden enviar archivos al mismo tiempo, por lo que no pueden ser concurrentes.

En resumen, la concurrencia y el compartir son condiciones para la existencia mutua.

imagen-20220303133318391

virtual

Rey aerotransportado

Virtual se refiere a cambiar una entidad física en varias contrapartes lógicas . La entidad física (la primera) es lo que realmente existe, mientras que la contraparte lógica (la segunda) es lo que siente el usuario.

Comprender: el mecanismo de compartición y concurrencia de los recursos de memoria;

imagen-20220303134029222

Multiplexación por división de tiempo

La tecnología de multiplexación por división de tiempo es la tecnología de tiempo compartido, que se puede utilizar para implementar procesadores virtuales, dispositivos virtuales, etc., para mejorar la utilización de recursos.

La tecnología de multiplexación por división de tiempo se divide en dos tecnologías: tecnología de procesador virtual y tecnología de dispositivo virtual

  • Tecnología de procesador virtual: la tecnología de procesador virtual utiliza tecnología de programación múltiple para crear un proceso para cada programa, de modo puedan ejecutar varios programas al mismo tiempo, a fin de lograr el uso de tiempo compartido de una computadora, que puede servir a múltiples usuarios al mismo tiempo. Servicio, para que cada usuario final piense que hay un procesador dedicado a él. Microscópicamente, el procesador sirve alternativamente a cada proceso en cada pequeño período de tiempo.
    • Por ejemplo: una computadora con una CPU de un solo núcleo abre el software 6 al mismo tiempo. En la superficie, el usuario parece tener 6 CPU sirviéndose al mismo tiempo, pero en realidad solo una CPU está funcionando.
  • Tecnología de dispositivo virtual: a través de la tecnología de dispositivo virtual, un dispositivo de E/S físico se puede virtualizar como un dispositivo de E/S lógico polimórfico, y los usuarios pueden ocupar un dispositivo de E/S lógico, lo que permite un período de tiempo. un usuario se convierte en un dispositivo compartido que permite el acceso simultáneo de varios usuarios durante un período de tiempo .
    • Por ejemplo: la impresora en la oficina admite múltiples computadoras para conectarse y operar al mismo tiempo.

Tecnología de multiplexación por división espacial

La tecnología de multiplexación por división espacial se refiere a una forma de lograr la multiplexación mediante el uso de la división espacial. La tecnología de multiplexación por división de espacio se puede utilizar para implementar operaciones como discos virtuales y almacenamiento virtual, a fin de mejorar la utilización de los recursos.

Al mismo tiempo, la tecnología de multiplexación por división de espacio se divide en dos tecnologías: tecnología de disco virtual y tecnología de memoria virtual

  • Tecnología de disco virtual: un disco duro se puede virtualizar en varios discos virtuales a través de la tecnología de disco virtual, que es segura y cómoda de usar.
    • Por ejemplo: dividir un disco duro en discos lógicos como C, D, E y F es tecnología de disco virtual.
  • Tecnología de memoria virtual: utiliza el espacio libre de la memoria para almacenar programas y mejorar la utilización de la memoria. También es posible expandir lógicamente la capacidad de la memoria a través de la tecnología de memoria virtual (esencialmente tecnología de multiplexación por división de tiempo), que permite que un programa se ejecute en un espacio de memoria mucho más pequeño que él a través de la tecnología de multiplexación por división de tiempo .
    • Por ejemplo: una computadora solo tiene memoria 4G, y si GTA5 - consumo de almacenamiento 4G, QQ - consumo de almacenamiento de 256 MB, WeChat - consumo de almacenamiento de 256 MB se ejecutan al mismo tiempo, el sistema en realidad usa tecnología de almacenamiento virtual (memoria virtual) tiempo compartido Cargue y ejecute el programa, transfiera solo una parte del programa de usuario a la memoria para que se ejecute cada vez, intercambie esta parte después de completar la operación e intercambie la otra parte del programa a la memoria. A través de esta función de reemplazo, el se realiza el programa de usuario Cada parte entra en la memoria para ejecutarse en tiempo compartido. En la superficie, el sistema solo tiene espacio de memoria 4G, pero de hecho parece ser mucho más grande que la memoria 4G.

Este contenido se explicará más adelante.

resumen

A través de los ejemplos anteriores, hablamos sobre la memoria virtual y la tecnología de dispositivos virtuales que pueden permitir que los dispositivos y procesos se ejecuten simultáneamente en el mismo período de tiempo en la tecnología de multiplexación de tiempo, y la división del espacio en disco y el intercambio de recursos de memoria en el tecnología de multiplexación por división espacial Tecnología de disco virtual y tecnología de memoria virtual. Todos tienen una característica que permite que los dispositivos y procesos de hardware se ejecuten de manera más eficiente y simultánea.

Obviamente, si el sistema operativo pierde la concurrencia, solo se necesita ejecutar un programa en el sistema dentro de un período de tiempo, y luego se perderá el significado de realizar la virtualidad. Por lo tanto, sin concurrencia no hay virtualidad.

asincrónico

Rey aerotransportado

La asincronía significa que en un entorno de programación múltiple, se permite la ejecución simultánea de varios programas , pero debido a los recursos limitados , la ejecución del proceso no es consistente hasta el final, sino que se detiene y comienza, avanzando a una velocidad impredecible. la asincronía del proceso.

  • Ejemplo: Usemos el ejemplo anterior del viejo cabrón que sale con dos chicas al mismo tiempo .

    Las dos chicas tienen cada una los siguientes comandos:

    • N° 1's order 1: La vieja escoria me acompaña a comer

    • Orden No. 1 2: La vieja escoria dame tu corazón

    • Orden número dos 1: Vieja escoria, dame tu corazón

    • La orden número dos 2: La vieja escoria me acompaña a comer

    El viejo cabrón tiene un solo corazón, así que puede hacer una cita como esta:

    • 8:00 ~ 9:00: cena con el número uno;
    • 9:00 ~ 10:00 - Entrega tu corazón al No. 1; ❤ En este momento, el No. 1 ocupa el corazón de la vieja escoria, y el hilo se bloquea durante la ocupación. Después de devolver este recurso, el corazón del la vieja escoria puede ser ocupada por otros
    • 10:00 ~ 11:00 - Darle el corazón al No. 2 (En este momento, el corazón está ocupado por el No. 1, por lo que en este momento, el No. 2 solo puede bloquear el hilo y esperar hasta que el No. 1 regrese el corazón antes de ejecutar las instrucciones del N° 2;
    • 11:00 ~ 12:00 - Entrega tu corazón al número dos

    todavía puede salir así

    • 8:00 ~ 9:00: cena con el número uno;
    • 9:00 ~ 10:00 - Dale tu corazón al No. 2; ❤ En este momento, el No. 2 ocupa el corazón del viejo cabrón. Durante la ocupación, el hilo está bloqueado. Después de devolver este recurso, el corazón del viejo cabrón puede ser ocupado por otros
    • 10:00 ~ 11:00 - Darle el corazón al No. 1; (El hilo está bloqueado y esperando, y el corazón está ocupado por el No. 2 en este momento, por lo que en este momento, el No. 1 solo puede bloquear el hilo en su lugar y esperar hasta que el No. 2 devuelva el corazón ;)
    • 11:00 ~ 12:00 - cenar con el No. 2;

Resumen asíncrono :

De acuerdo con el ejemplo anterior, podemos encontrar que las tareas de datación con el No. 1 y el No. 2 son equivalentes a dos procesos, y la escoria anterior es equivalente a una CPU que ejecuta las instrucciones de estos dos procesos. Cada proceso tiene sus propias instrucciones. para ser ejecutado. . Al mismo tiempo, el corazón de la vieja escoria es equivalente a recursos limitados del sistema. Debido a los recursos limitados que se pueden asignar, la ejecución del proceso no es consistente hasta el final. En el proceso de avance de estos procesos, encontramos que se detienen y avanzan a una velocidad impredecible.

Obviamente, si se pierde la concurrencia, el sistema solo puede procesar cada proceso en serie, y la ejecución de cada proceso será consistente hasta el final. Solo cuando el sistema tiene concurrencia puede ser posible derivar asincronía.

Resumen de esta sección

Rey aerotransportado

imagen-20220303210048761

Según el estudio anterior:

Aprendimos la diferencia entre concurrencia y paralelismo a través de las diferentes estrategias de las escorias grandes y pequeñas en la datación;

Al mismo tiempo, aprendimos que la concurrencia y el compartir son las condiciones para la existencia mutua a través del ejemplo de enviar archivos al mismo tiempo a través de QQ y WeChat ;

Según el estudio anterior:

Aprendimos la diferencia entre concurrencia y paralelismo a través de las diferentes estrategias de las escorias grandes y pequeñas en la datación;

Al mismo tiempo, aprendimos que la concurrencia y el compartir son las condiciones para la existencia mutua a través del ejemplo de enviar archivos al mismo tiempo a través de QQ y WeChat ;

Más tarde, aprendimos sobre el concepto y la comprensión de lo virtual y lo asincrónico. Sabemos que lo virtual y lo asincrónico no se extenderán sin concurrencia, y la concurrencia y el intercambio son las condiciones para la existencia mutua. Entonces se puede explicar que no hay concurrencia ni intercambio. Virtual y asíncrono, por lo que la concurrencia y el uso compartido son las dos características más básicas del sistema operativo .

Supongo que te gusta

Origin blog.csdn.net/weixin_43654363/article/details/124068792
Recomendado
Clasificación