Notas de estudio del sistema operativo y opiniones personales

Sistema operativo

Notas del curso de sistema operativo de posgrado de Wangdao y algunas opiniones personales

Concepto, función, objetivo

El más básico: bare metal (hardware puro) (es necesario aprender los principios de la composición informática)

Entonces: el sistema operativo bare metal + es nuestra computadora recién comprada

Luego: instala la aplicación

Todos sabemos esto: ¿Qué es un sistema operativo?

Copiar las palabras de otras personas es:

1. Responsable de administrar y coordinar los recursos informáticos, como hardware y software.

2. Brindar servicios simples y fáciles de usar para aplicaciones y usuarios de nivel superior (creemos que Windows es amable).

3. El sistema operativo es software del sistema, no hardware

En la lengua vernácula, la mayoría de las personas solo pueden usar el sistema operativo si lo tienes instalado, puedes jugar y usar la computadora para navegar por Internet. Es un poco como si quisiéramos desarrollar Java, necesitamos tener un entorno JKD JRE.

Definición del sistema operativo

SO (sistema operativo, SO) se refiere al control y la gestión de todos los recursos de hardware y software del medidor de un sistema informático , y la organización racional del trabajo informático de despacho y la asignación de recursos que se proporcionarán para facilitar a los usuarios y otras interfaces y entornos de software. , Es el software de sistema más básico en un sistema informático.

Objetivo funcional

Como administrador de recursos del sistema :

El procesamiento, el almacenamiento, la gestión de archivos y la gestión de equipos son todos sus trabajos.

¿Primero piensa que hay una función para programar el trabajo del proceso , cómo abrir un sistema operativo de proceso?

El programa debe colocarse en la memoria antes de que la CPU pueda procesarlo. También tiene que distribuir nuestro equipo de manera uniforme

Como interfaz entre el usuario y el hardware de la computadora :

Necesita proporcionar una interfaz de comando (interfaz de comando en línea e interfaz de comando fuera de línea), interfaz de programa, GUI

Entonces, ¿qué es la interfaz de comandos en línea ? ===> cmd este tipo de interactivo

¿Qué es la interfaz de comando fuera de línea ? ====> el archivo bat es nuestra interfaz de comando por lotes , hay un montón de instrucciones

Interfaz del programa : como C: \ Windows \ System32 \ user32 **. Dll ** El programador puede llamar a user32. Dll en el programa (el proceso de llamada es la
llamada al sistema) para realizar funciones como la creación de ventanas. Solo se puede utilizar indirectamente a través del programa de usuario.

Características del sistema operativo

Cuatro características del sistema operativo

Concurrencia, compartir, virtual, asincrónico , concurrencia, compartir son las características más básicas, las dos son condiciones mutuamente existentes.

Concurrente

No hace falta decir que hagamos una introducción PPT

Simultaneidad : se refiere a dos o más eventos que ocurren en el mismo intervalo de tiempo . Estos eventos ocurrieron al mismo tiempo en un nivel macro, pero alternativamente ocurrieron en un nivel micro.
Paralelo : dos o más eventos ocurren al mismo tiempo al mismo tiempo.

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 (los programas se ejecutan alternativamente en el
nivel micro, pero parece que se ejecutan al mismo tiempo a nivel macro)

compartido

Compartir es compartir recursos, lo que significa que los recursos del sistema pueden ser utilizados por varios procesos que se ejecutan simultáneamente en la memoria .

Dividido en compartición mutuamente excluyente , compartición simultánea , literalmente

Oye, ¿huele así? ¿Has visto esto antes? Esta oración es muy familiar. Parece que esta es la diferencia entre la memoria de trabajo y la memoria principal. La memoria principal se puede compartir, pero la memoria de trabajo solo puede ser utilizada por este proceso e instancia.

Cual es la relacion entre ellos?

Si en el mismo período de tiempo, los dos programas usan memoria, datos del disco duro, su producto y su producto. Si falta una determinada condición, no pueden ser concurrentes : entonces comparte un pedo, falta de compartir : ¿cómo pueden los dos enviar el mismo archivo durante el mismo período de tiempo

virtual

La virtualidad se refiere a la transformación de una entidad física en miles de contrapartes lógicas . La entidad física (la primera) existe realmente, mientras que
el usuario siente la contraparte lógica (la última).

Este es un producto emmm, no es bueno dar un ejemplo, simplemente copie el ejemplo de alguien

Conocimientos previos: es necesario guardar un programa en la memoria y asignarle una CPU para ejecutar

Si LOL necesita 4 GB de memoria en funcionamiento, QQ necesita 256 MB de memoria, Thunder necesita 256 MB de memoria y NetEase Cloud Music necesita 256 MB de memoria interna ... Mi computadora: 4 GB de memoria.
Problema: estos programas requieren mucho más de 4 GB de memoria para ejecutarse al mismo tiempo , entonces , ¿por qué pueden ejecutarse en mi computadora al mismo tiempo?

Utilice la " tecnología de multiplexación por división espacial " en la tecnología virtual

En una computadora con una CPU de un solo núcleo , el usuario ha abierto el siguiente software. …… LOL QQ Douyu.com Yiyun Music

¿Por qué se pueden utilizar al mismo tiempo?

De hecho, solo funciona una CPU de un solo núcleo, ¿cómo puede pretender ser 4 CPU?

Tecnología de multiplexación por división de tiempo : microscópicamente, el procesador sirve alternativamente a cada proceso en cada pequeño período de tiempo

Estas tecnologías se mencionarán en detalle más adelante.

Si la computadora no puede ser concurrente, ¿qué más hace la tecnología virtual? Lo necesitas?

asincrónico

¿Nos encontramos con frecuencia en el desarrollo asincrónico? Solicitud asincrónica e interacción asincrónica. ¿Es la asincronía aquí la misma que las características asincrónicas de nuestro sistema operativo informático?

Sigo copiando una definición

La asincronía significa que en un entorno multiprograma , se permite que varios programas se ejecuten simultáneamente , pero debido a los recursos limitados, la ejecución del proceso no es consistente hasta el final, pero se detiene y avanza a una velocidad impredecible. Este es el proceso La naturaleza asincrónica . emmm es diferente, es un poco como bloquear

Desarrollo y clasificación de SO

Copia la imagen para ver

Inserte la descripción de la imagen aquí

Etapa de operación manual

Sin sistema operativo, solo código de máquina

Principales desventajas : los usuarios monopolizan toda la máquina y la contradicción entre la velocidad humana y la velocidad de la máquina conduce a una utilización de recursos extremadamente baja.

Sistema de procesamiento por lotes de una sola pasada

Introducir tecnología de entrada / salida fuera de línea (completada con cinta) y supervisar el programa responsable de controlar la entrada y salida del trabajo.

Este programa de supervisión es el prototipo del sistema operativo. La
principal ventaja : alivia un cierto grado de contradicción de velocidad entre humanos y máquinas, y se ha mejorado la tasa de utilización de recursos.
Principales desventajas : solo se puede ejecutar un programa en la memoria, y el siguiente programa se puede cargar solo después de que el programa haya terminado de ejecutarse. La CPU tiene una gran cantidad de tiempo en espera de inactividad para I / 0 para completar . La utilización de recursos sigue siendo muy baja.

Sistema de procesamiento por lotes de múltiples pasadas

Es decir, cada vez que se ingresan múltiples programas a la memoria, el sistema operativo nace oficialmente y se introduce la tecnología de interrupción, y el sistema operativo es responsable de administrar
el funcionamiento de estos programas . Ejecución concurrente de varios programas

Las principales ventajas : programas multicanal al mismo tiempo , intercambio de recursos informáticos . La utilización de recursos se ha mejorado enormemente, la CPU y otros recursos permanecen "ocupados"
y el rendimiento del sistema ha aumentado .

Principales desventajas : tiempo de respuesta prolongado del usuario y sin función de interacción persona-computadora (después de que el usuario envía su propio trabajo, solo puede esperar a que la computadora complete el procesamiento y
no puede controlar la ejecución de su propio trabajo en el medio)

¿Por qué el sistema de procesamiento de Duotopi puede aumentar en gran medida la tasa de utilización de los recursos? ?

Toma el ejemplo del video.

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Sistema operativo de tiempo compartido

La computadora atiende a cada usuario / trabajo a su vez en unidades de intervalos de tiempo , y cada usuario puede interactuar con la computadora a través de la terminal.

Oye, esto no te resulta familiar. ¿Existe un método de rotación de intervalos de tiempo para nuestro trabajo de subprocesos?

Principales deficiencias : No se puede dar prioridad a algunas tareas urgentes. El sistema operativo es completamente justo para cada usuario /
trabajo , sirve cíclicamente un intervalo de tiempo para cada usuario / trabajo y no distingue la urgencia de la tarea .

Sistema operativo en tiempo real

Ventajas principales : puede responder primero a algunas tareas urgentes, y algunas tareas urgentes no necesitan intervalos de tiempo para hacer cola . ¿No es solo poder saltar en la línea?

Bajo el control del sistema operativo en tiempo real, el sistema informático procesa la señal externa de manera oportuna después de recibir la señal externa, y debe procesar el evento dentro de un límite de tiempo estricto. Las principales características de los sistemas operativos en tiempo real son la puntualidad y la fiabilidad.

Los sistemas operativos en tiempo real se dividen en sistemas duros en tiempo real (que deben procesarse dentro de un tiempo estipulado absolutamente estricto) y sistemas blandos en tiempo real (pueden aceptar infracciones ocasionales de las regulaciones de tiempo)

Otros sistemas operativos

Sistema operativo de red : nació con el desarrollo de redes de computadoras. Puede combinar orgánicamente computadoras en la red para realizar la transmisión de datos y otras funciones , y realizar el intercambio de varios recursos en la red (como el intercambio de archivos) y la relación entre cada computadora Intercomunicación . (Por ejemplo: Windows NT es
un sistema operativo de red típico y se puede utilizar el servidor del sitio web)

Sistema operativo distribuido : la característica principal es la distribución y el paralelismo . Cada computadora en el sistema tiene el mismo estado, y cualquier trabajo se puede distribuir en estas computadoras, y pueden completar esta tarea en paralelo y de manera cooperativa.

Mecanismo operativo, estructura del sistema.

Dos instrucciones

Instrucciones privilegiadas : como instrucciones para borrar la memoria (los usuarios no pueden usar)

Instrucciones no privilegiadas : como las instrucciones aritméticas ordinarias

¿Cómo juzga la CPU si puede ejecutar instrucciones privilegiadas?

El estado de los dos procesadores

Modo de usuario : también conocido como modo de cabeza

Estado del núcleo : también conocido como estado de tubo

Utilice una determinada bandera en el registro de palabras de estado del programa (PSW) para identificar en qué estado se encuentra el procesador actual. Por ejemplo, 0 es el modo de usuario, 1 es el modo principal

¿Hemos escuchado estas dos palabras allí también?

Dos procedimientos

Programa kernel : El programa kernel del sistema operativo es el administrador del sistema, puede ejecutar instrucciones privilegiadas o no privilegiadas y ejecutarse en el estado central.

Programa de aplicación : para garantizar el funcionamiento seguro del sistema, los programas de aplicación ordinarios solo pueden ejecutar instrucciones sin privilegios y ejecutarse en modo de usuario.

Kernel del sistema operativo

La parte del sistema operativo más cercana a la capa inferior se llama kernel.

Copié una foto

Inserte la descripción de la imagen aquí

El kernel se puede dividir en administración de tiempo , procesamiento de interrupciones , primitivas (controlador de equipo, conmutación de CPU, etc.)

Gestión del reloj : descubra la función del temporizador, qué procesos de conmutación usamos habitualmente y la programación de procesos basada en la gestión del reloj

Primitivo : Primitivo es un programa especial. Es la parte más cercana al hardware y el funcionamiento de este tipo de programa es atómico . Tiempo de ejecución corto y llamadas frecuentes.

Algunos sistemas operativos no clasifican estas funciones ( gestión de procesos, gestión de memoria, gestión de dispositivos, etc.) como "funciones del kernel". En otras palabras, diferentes sistemas operativos pueden tener diferentes divisiones de funciones del kernel.

Arquitectura

Copié una foto

Inserte la descripción de la imagen aquí

Gran kernel : los módulos de funciones principales del sistema operativo se consideran el kernel del sistema, que se ejecuta en el estado del núcleo

Ventajas : alto rendimiento
Desventajas : el código del kernel es enorme, la estructura es caótica y es difícil de mantener

El microkernel solo mantiene las funciones más básicas en el kernel.
Ventajas : menos funciones del kernel, estructura clara, fácil de mantener
Desventajas : necesidad de cambiar con frecuencia entre el modo de núcleo y el modo de usuario, bajo rendimiento

Supongo que te gusta

Origin blog.csdn.net/qq_22155255/article/details/111998490
Recomendado
Clasificación