¿Qué es la arquitectura del sistema Linux?

  
                

Para entender el sistema Linux, es necesario tener cierta comprensión de la arquitectura de su sistema. Las siguientes series pequeñas le darán una explicación de la arquitectura del sistema Linux. Es posible que los amigos interesados ​​deseen comprenderlo.

Estoy basado en el siguiente diagrama, que ilustra la arquitectura de Linux (arquitectura).
(Consulte la Fig. "Programación avanzada en Unix Medio Ambiente")

es una capa más interna de hardware, la capa más externa es las aplicaciones de usuario comunes, tales como navegadores Firefox, Evolution ver el mensaje, un cálculo del modelo de fluido Espera un minuto El hardware es la base material, y las aplicaciones proporcionan servicios. Pero entre los dos, todavía tiene que pasar por algunos giros y vueltas.

Recordar el arranque de Linux. Linux inicia el núcleo por primera vez. El núcleo es un programa informático que administra directamente el hardware de administración, incluida la CPU, el espacio de memoria, la interfaz del disco duro, la interfaz de red, etc. Todas las operaciones de la computadora se pasan al hardware a través del núcleo.

Para facilitar la llamada del kernel, Linux convierte la interfaz funcional del kernel en una llamada al sistema. La llamada al sistema parece una función del lenguaje C. Puedes llamarlo directamente en el programa. Los sistemas Linux tienen más de doscientas llamadas al sistema. Los usuarios no necesitan entender la estructura compleja del kernel, pueden usar el kernel. La llamada al sistema es la unidad funcional más pequeña del sistema operativo. Es poco probable que un sistema operativo, así como una aplicación basada en un sistema operativo, implemente funciones más allá de las llamadas al sistema. Una función de llamada al sistema es como un trazo de un carácter chino. Cualquier carácter chino debe consistir en trazos básicos (puntos, cruces, platillos, etc.). No puedo hacer golpes.

Ingrese $ man 2 syscalls en la línea de comandos para ver todas las llamadas del sistema. También puede usar $ man 2 read para ver una descripción de la llamada al sistema read (). Dos de estos dos comandos indican que queremos realizar consultas en la clase 2 (clase de llamada al sistema) (específicamente, lo que puede ver cada clase con $ man man).

La funcionalidad proporcionada por la llamada al sistema es muy básica, por lo que es incómodo de usar. Una simple operación para asignar espacio de memoria a una variable requiere múltiples llamadas al sistema. Linux define una rutina de biblioteca para combinar llamadas de sistema en algunas funciones comunes. La operación anterior de asignar memoria se puede definir como una función de biblioteca (una función como malloc ()). Por ejemplo, al leer un archivo, la llamada al sistema nos pide que configuremos el búfer requerido. Puedo usar la función de lectura en la biblioteca de IO estándar. Esta función de lectura es responsable de configurar el búfer y de usar la función de llamada del sistema que se lee. El uso de las funciones de la biblioteca no tiene una ventaja de eficiencia para la máquina, pero puede salvar al programador de los detalles. La función de biblioteca es como la parte radical de un carácter chino. Consiste en trazos, pero es más fácil formar palabras utilizando radicales, como " iron ". Por supuesto, también puede utilizar la función de biblioteca en lugar de la función de biblioteca, al igual que la palabra "gente", sin los radicales.

(En realidad, un sistema operativo debe llamarse sistema UNIX, debe tener algunas funciones de biblioteca, como la biblioteca estándar ISO C, el estándar POSIX, etc.)

El shell es un especial Aplicacion Muchos usuarios lo llaman la línea de comandos. El shell es un intérprete de comandos. Cuando ingresamos " ls -l ", interpreta esta cadena como

1. Busque el archivo en la ruta predeterminada (/bin /ls),

2. Ejecute el archivo con el parámetro " -l ".

Solía ​​indicar reorientación, con

Copyright © Conocimiento de Windows All Rights Reserved