Conceptos básicos del sistema operativo de la computadora (1) --- Descripción general del sistema operativo

Introducción

La importancia de los conocimientos informáticos básicos es evidente por sí misma. Se puede decir que la tecnología actual se actualiza a una velocidad de un segundo, pero los conceptos básicos no cambiarán cada pocas décadas. Este artículo es el primero, descripción general del sistema operativo, familiarícese con lo que hay en todo el sistema operativo de la computadora, y también es un punto de conocimiento que se aprenderá en profundidad en la siguiente serie de artículos.

1. Tres etapas del desarrollo del sistema operativo informático

1. Sin etapa del sistema operativo

En esta etapa, la computadora se opera manualmente, y cuando está en funcionamiento, cada usuario monopolizará la computadora, y la CPU de la computadora está esperando la operación manual.Cuando el usuario ingresa y emite, la memoria y la CPU están libres. Por lo tanto, en la era de la ausencia de sistema operativo, la utilización de los recursos de las máquinas informáticas es baja.

2. Etapa del sistema de procesamiento por lotes

En esta etapa, la computadora ya no necesita esperar la entrada manual. Porque en este momento, los usuarios importarán tareas en lotes, para que los usuarios puedan salir después de importar las tareas y la computadora pueda ir a trabajar automáticamente. Por lo tanto, en esta etapa se mejora mucho la tasa de utilización de la computadora, al mismo tiempo que se propone un diseño muy importante en esta etapa, llamado multiprogramación . Este diseño afectó posteriormente a todos nuestros sistemas operativos

3. Etapa del sistema de tiempo compartido

En esta etapa, el diseño más importante es el diseño de la interacción humano-computadora , porque en las dos primeras etapas, no hay forma de que los humanos intervengan durante la ejecución del programa. En la etapa del sistema de tiempo compartido, el la computadora puede interactuar. Además, las personas pueden depurar programas en tiempo real. Este sistema de tiempo compartido permite que varios usuarios compartan los recursos de la computadora. Por lo tanto, en esta etapa, la tasa de utilización de los recursos informáticos mejora considerablemente. El sistema de tiempo compartido también es el sistema principal ahora

El concepto de multiprogramación: los primeros sistemas de procesamiento por lotes solo pueden procesar una tarea a la vez. Aunque en este sistema de procesamiento por lotes, podemos ingresar tareas en lotes, pero en este momento la computadora solo puede ejecutar una tarea al mismo tiempo. En otras palabras, aunque las tareas se ingresan en lotes, la computadora solo puede ejecutar una tarea a la vez. Debido al diseño de múltiples programas, el sistema de procesamiento por lotes puede manejar múltiples tareas a la vez

La programación múltiple se refiere al almacenamiento de varios programas en la memoria de la computadora al mismo tiempo, y estos programas múltiples no interfieren entre sí. Los múltiples programas aquí se intercalan y se ejecutan bajo el programa de administración de la computadora para mejorar la utilización de los recursos informáticos.

Por tanto, la gestión de múltiples programas es una función importante del sistema operativo. La gestión del sistema operativo de la computadora de múltiples programas y la gestión de recursos se puede dividir en cinco funciones principales:

  • Gestión de proceso
  • Administración de almacenamiento
  • Gestión de trabajos
  • Gestión de archivos
  • Gestión de equipos

Lo siguiente realmente presentará estos cinco:

Gestión de proceso

  • Entidad de proceso de gestión de procesos
  • Modelo de cinco estados de gestión de procesos
  • Sincronización de procesos de gestión de procesos
  • Gestión de procesos Linux

Gestión de trabajos

  • Programación de procesos de gestión de trabajos
  • Punto muerto en la gestión de trabajos

Administración de almacenamiento

  • Asignación de memoria y recuperación de la gestión del almacenamiento.
  • Gestión de almacenamiento de páginas de segmentos
  • Memoria virtual para la gestión del almacenamiento
  • Gestión de almacenamiento Linux

Gestión de archivos

  • Gestión de archivos del sistema operativo
  • Sistema de archivos de Linux
  • Operación básica de archivos Linux

Gestión de equipos

  • Gestión de dispositivos del sistema operativo

2. Descripción general del sistema operativo

1. ¿Qué es un sistema operativo? Por que usar un sistema operativo

(1) ¿Qué es un sistema operativo?

  • El sistema operativo de la computadora es administrar los recursos de hardware y software de un programa de computadora . En otras palabras, el sistema operativo es en realidad un programa de computadora , la función es administrar los recursos de hardware y software de la computadora.
  • Administre y configure la memoria, determine el orden de oferta y demanda de recursos y controle los dispositivos de entrada y salida.
  • El sistema operativo permite que los usuarios interactúen con la interfaz de usuario del sistema .
  • Hay muchos tipos de sistemas operativos, no limitados a computadoras.
  • Desde teléfonos móviles hasta supercomputadoras, los sistemas operativos pueden ser simples o complejos
  • En diferentes dispositivos, el sistema operativo puede presentar una variedad de métodos operativos al usuario (por ejemplo, en un teléfono móvil, podemos controlar los dispositivos de hardware en el teléfono móvil (como una cámara, sonido) con el toque de un dedo ), y en nuestro lado ordinario de la PC, nosotros (principalmente a través del mouse y el teclado para controlar el hardware)

Sistemas operativos informáticos a los que solemos tener acceso:

a. Por ejemplo, los teléfonos móviles se dividen en Android e IOS. De hecho, lo que llamamos Android pertenece al sistema operativo Android e IOS se refiere al sistema operativo IOS . En Android, a menudo sabemos que MIUI de Xiaomi, colorOS de OPPO / VIVO, Flyme de Meizu, etc., no son estrictamente hablando del sistema operativo, estos se basan en la transformación del sistema operativo Android (puede ser la interfaz de usuario, optimizada, etc., la esencia sigue siendo el sistema operativo Android)

b) Otro ejemplo son las computadoras de las que hablamos a menudo, Windows, Linux, MacOS, etc. Estos son sistemas operativos de computadora comunes en nuestras vidas.Los sistemas Linux incluyen Centos y Ubuntu, que son todos sistemas operativos Linux en esencia.

La siguiente es la definición definitiva de un sistema operativo de computadora: es un sistema de software que administra el hardware y proporciona interacción con el usuario

(2) Por qué utilizar un sistema operativo

  • No podemos operar directamente el hardware de la computadora. Por ejemplo, necesito que mi computadora cuente 1 + 1, es imposible decir solo dime que tenemos que contar la CPU 1 + 1, y necesitamos la ayuda del sistema operativo , permitiendo que el sistema operativo nos diga qué hardware hacer
  • Con el desarrollo de las computadoras hasta el presente, existe una amplia variedad de equipos y una interfaz unificada. El sistema operativo proporciona una interfaz de operación unificada, protegiendo las diferencias entre diferentes dispositivos . Con el sistema operativo, no necesitamos prestar atención a diferentes dispositivos ni a diferentes interfaces.
  • La simplicidad del sistema operativo permite que más personas utilicen la computadora. Más personas pueden usar la computadora significa la liberación y el desarrollo de la productividad, lo que es de gran ayuda para la mejora de la tecnología humana.

2. Las funciones básicas del sistema operativo

Repasemos algunos de los recursos importantes en la computadora que nos preocupan:

(1) Recursos del procesador (es decir, recursos de la CPU)

(2) Recursos de memoria (memoria, disco duro)

(3) Recursos del dispositivo IO (impresora, teclado, pantalla)

(4) Recursos de archivo

El sistema operativo administrará uniformemente los recursos de la computadora

Por ejemplo, si queremos manipular un archivo, no manipulamos directamente la ubicación de almacenamiento del archivo. Usamos el sistema operativo para manipular el archivo. Por ejemplo, cuando almacenamos o leemos un archivo, no controlamos directamente el almacenamiento. Leer y escribir información a través del sistema operativo

Con un sistema operativo, ¿cuál es la diferencia cuando usamos estos recursos informáticos?

Los usuarios no necesitan programar para interfaces de hardware . En otras palabras, no necesitamos hardware como la memoria y los dispositivos IO, solo necesitamos programar para el sistema operativo. Por ejemplo, hay un software de gestión de dispositivos IO en el sistema operativo. Este software proporciona una interfaz de lectura y escritura. Al programar, los usuarios pueden llamar directamente a esta interfaz sin tener que ponerse en contacto con un dispositivo IO específico.

El sistema operativo implementa la abstracción de recursos informáticos . Esta abstracción se logra a través de un software de gestión, que blinda los dispositivos de hardware y proporciona a los usuarios dispositivos lógicos para que cada usuario sea el mismo al usarlo. Esta es la abstracción de los recursos informáticos

El sistema operativo proporciona la interfaz entre el usuario y la computadora . Tales como: formulario de ventana gráfica (mediante clics del mouse en Windows), formulario de comando (en Linux ingresando comandos en el terminal de shell), formulario de llamada al sistema (principalmente durante la programación, como abrir archivos y leer datos, etc.) Todo está hecho a través de llamadas al sistema) Si dibuja un nivel para el hardware, el sistema operativo y los usuarios, la interfaz es equivalente al nivel en la parte roja a continuación:

3. Conceptos relacionados con el sistema operativo

Hay principalmente cuatro conceptos relacionados que deben enfocarse en la comprensión:

  • Concurrencia
  • Compartiendo
  • Virtualidad
  • Asincronía

(1) Simultaneidad

La concurrencia es el requisito previo para las últimas tres características, y solo después de comprender la concurrencia podrá comprender las últimas tres características. Para entender la concurrencia , tenemos que combinar el concepto de paralelo para entender

  • Parallel se refiere a dos o más eventos pueden estar en el mismo momento producido
  • Se refiere a dos o más eventos concurrentes que pueden ocurrir en los mismos intervalos en el momento en que ocurre

Entonces, ¿cómo se reflejan el paralelismo y la concurrencia en la computadora?

Pensemos en el concepto de diseño multiprograma mencionado anteriormente, que es la base de la concurrencia y el paralelismo.

(a) Para un solo procesador , el programa se ejecuta principalmente al mismo tiempo. Suponga que el azul es el programa A y el amarillo es el programa B. En un momento determinado , solo un programa puede ocupar la CPU , luego estos dos programas se ejecutan alternativamente (múltiples programas se ejecutan alternativamente), por lo que se ejecuta al mismo tiempo en un solo procesador

(b) Para los procesadores duales , los programas de cada procesador se ejecutan alternativamente , pero para dos procesadores, en un momento determinado, hay dos programas ejecutándose al mismo tiempo.

Esta es la encarnación de la concurrencia paralela en la computadora.

(2) Compartir

  • Compartir el rendimiento de los recursos del sistema operativo disponibles para el uso común de varios programas simultáneos.
  • Este formulario se denomina uso común de recursos compartidos.

por ejemplo:

Supongamos una memoria del sistema, asumiendo que se usa la parte roja del programa A, se usa el programa verde B, aunque A y B usan una parte diferente de la memoria principal, entonces todavía podemos decir que esta parte de la memoria principal es compartida el, el programa A y el programa B pueden utilizar esta memoria principal

El intercambio de recursos se puede dividir en dos formas según los atributos:

  • Formulario de participación mutuamente exclusiva
  • Formulario de acceso simultáneo

Compartir mutuamente excluyente:

Cuando el recurso está ocupado por el programa A, otros procesos solo pueden usar el recurso si quieren usarlo. Solo después de que el proceso A se agota, otros procesos pueden usar el recurso. Por ejemplo, si la impresora es utilizada por un determinado programa A, otros programas que quieran imprimir solo pueden usar la impresora después de que se imprima el programa A.

Al mismo tiempo visita:

Varios programas acceden simultáneamente a cierto recurso dentro de un período de tiempo . Este "simultáneo" es macroscópico . Desde una perspectiva macro, se puede acceder al recurso simultáneamente. Por ejemplo, cuando estamos usando un disco duro, supongamos que hay un programa A y el programa B. Quiero escribir datos en el disco, porque solo hay un voladizo, por lo que cuando el Programa A está escribiendo, el Programa B no se puede escribir, pero porque la escritura de datos es más rápida, si lo observamos en un período de tiempo, podemos pensar que se puede acceder al mismo tiempo. Si enfatizamos que se usa concurrentemente dentro de un período de tiempo , entonces en realidad es una forma de acceso simultáneo compartido

(3) Virtualidad

La virtualidad se expresa como la transformación de una entidad física en varias entidades lógicas, la entidad física es real (puede ser cierto dispositivo en la computadora), y la entidad lógica es virtual. Tecnología virtual principalmente tecnología de multiplexación por división de tiempo y tecnología de multiplexación por división de espacio

a, tecnología de multiplexación por división de tiempo

Se refiere a la multiplexación de recursos en el tiempo, sin el uso simultáneo de programas, y al tiempo compartido de múltiples programas para usar recursos de hardware de computadora (por ejemplo, múltiples programas usan alternativamente recursos de CPU)

Hay tecnología de procesador virtual y tecnología de dispositivo virtual en la tecnología de multiplexación por división de tiempo

Tecnología de procesador virtual

  • Tecnología multiprograma
  • Establecer un proceso para cada trámite
  • Procesador multiplex de tiempo compartido para múltiples programas

Tecnología de dispositivo virtual

  • El dispositivo físico está virtualizado como varios dispositivos lógicos.
  • Cada programa ocupa un dispositivo lógico
  • Múltiples programas acceden simultáneamente a través de dispositivos lógicos

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

Se utiliza para implementar discos virtuales y memoria virtual para mejorar la utilización de recursos y la eficiencia de la programación.

Tecnología de disco virtual :

Virtualice el disco físico como varios discos lógicos (por ejemplo, nuestro disco duro se puede virtualizar como disco C, disco D, disco E), lo cual es más seguro y conveniente de usar (por ejemplo, cuando destruimos algunos archivos en el disco C , no afectará a otros discos)

Tecnología de memoria virtual :

Amplíe lógicamente la capacidad de almacenamiento del programa, de modo que el programa pueda usar una capacidad mayor que la memoria real, lo que mejora en gran medida la eficiencia de la programación (cuando el proceso está en ejecución, la primera parte se carga en la memoria y la otra parte se almacena temporalmente en el disco. Cuando las instrucciones a ejecutar o los datos a acceder no están en la memoria, el sistema operativo automáticamente completa el trabajo de transferirlos del disco a la memoria)

(4) Asincronía

La asincronía se manifiesta en el entorno multiprograma , lo que permite la ejecución concurrente de múltiples programas, y es posible que el proceso deba esperar o darse por vencido cuando se utilizan recursos. La ejecución del proceso no se realiza de una vez, sino que se avanza en una parada. Situación y listo (suponga que un determinado proceso necesita utilizar un determinado recurso cuando se ejecuta en un determinado momento. Si este recurso está ocupado, el proceso puede detenerse o esperar a que se libere el recurso )

La línea roja de arriba es una línea de tiempo del avance del tiempo. Hay tres programas A, B y C ejecutándose alternativamente. Suponiendo que en un momento determinado, A libera los recursos de la impresora y, al mismo tiempo, B y C necesitan usar el recursos de la impresora, entonces B y C competirán. Suponiendo que C se apropie con éxito de los recursos de la impresora, entonces en la línea de tiempo restante, C se está ejecutando principalmente. Otra posibilidad es que B haya tomado los recursos de la impresora. En este momento, B funcionará durante un rato, y luego se ejecutará en C. Entonces aquí, porque no sabemos si B se apoderó de la impresora o C se apoderó de ella.

Por lo tanto, el proceso avanza a una velocidad impredecible. No se sabe cuándo se ejecuta el programa, cuándo se suspende y cuándo se completa. Tantas cosas impredecibles conducen a la naturaleza asincrónica del programa.

Es la competitividad central de una persona técnica encontrar la constante en la tecnología que cambia rápidamente. Unidad de conocimiento y acción, combinando teoría con práctica

De pie sobre los hombros de gigantes y aprendiendo, rindiendo homenaje a los predecesores

Referencia: https://coding.imooc.com/class/355.html

Supongo que te gusta

Origin blog.csdn.net/self_realian/article/details/106949049
Recomendado
Clasificación