Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué significa concha?

¿Qué significa concha?

Categoría: Educación/Ciencia gt; Ayuda para el aprendizaje

Descripción del problema:

¿Para qué se utiliza? ¡Usa palabras sencillas y claras!

¡Dime si sabes cómo! Gracias

Análisis:

La interfaz principal entre el sistema operativo y el mundo exterior se llama shell. El shell es la capa más externa del sistema operativo. El shell gestiona su interacción con el sistema operativo: espera su entrada, interpreta su entrada al sistema operativo y procesa varias salidas del sistema operativo.

El shell proporciona una forma de comunicarse con el sistema operativo. Esta comunicación se puede realizar de forma interactiva (ingrese desde el teclado y obtenga una respuesta inmediata) o en un script de shell (no interactivo). Un script de shell es una secuencia de comandos del shell y del sistema operativo colocados en un archivo que se puede reutilizar. Básicamente, un script de shell es una combinación simple de comandos de línea de comandos en un archivo.

Shell es básicamente un intérprete de comandos, similar a mand en DOS. Recibe comandos de usuario (como ls, etc.) y luego llama a la aplicación correspondiente. Los shells más comunes son el shell Bourne estándar (sh) y el shell C (csh).

Shell interactivo y shell no interactivo

En el modo interactivo, el shell espera su entrada y ejecuta los comandos que envía. Este modo se llama interactivo porque el shell interactúa con el usuario. Este modo también es muy familiar para la mayoría de los usuarios: iniciar sesión, ejecutar algunos comandos y cerrar sesión. Cuando cierras sesión, el shell finaliza.

El shell también puede ejecutarse en otro modo: el modo no interactivo. En este modo, el shell no interactúa con usted, sino que lee los comandos almacenados en archivos y los ejecuta. Cuando llega al final del archivo, el shell termina.

Tipos de shells

Hay dos tipos principales de shells en UNIX

Shell Bourne (incluidos sh, ksh y bash)

Shell Bourne ( sh)

Shell Korn ( ksh)

Shell Bourne Again ( bash)

Shell POSIX ( sh)

Shell C (incluidos csh y tcsh)

Shell C (csh)

Shell C TENEX/TOPS (tcsh)

Shell Bourne

El shell UNIX original fue escrito por Stephen R. Bourne en AT&T Bell Labs en Nueva Jersey a mediados de la década de 1970. Este es el shell Bourne. El shell Bourne es un intérprete de comandos interactivo y un lenguaje de programación de comandos. El shell Bourne puede ejecutarse como un shell de inicio de sesión o como un subshell del shell de inicio de sesión. Sólo el comando de inicio de sesión puede invocar el shell Bourne como shell de inicio de sesión. En este momento, el shell primero lee el archivo /etc/profile y el archivo $HOME/.profile. El archivo /etc/profile personaliza el entorno para todos los usuarios y el archivo $HOME/.profile personaliza el entorno para este usuario. Finalmente, el shell espera leer su entrada.

C Shell

Bill Joy desarrolló el C Shell en la Universidad de California, Berkeley, a principios de los años 1980. Su objetivo principal es facilitar a los usuarios el uso de funciones interactivas y cambiar la estructura de sintaxis del estilo ALGOL al estilo del lenguaje C. Agrega nuevas funciones como historial de comandos, alias, reemplazo de nombres de archivos y control de trabajos.

Korn Shell

Durante mucho tiempo, solo había dos tipos de shells entre los que la gente podía elegir: el shell Bourne para programación y el shell C para interacción. Para cambiar esta situación, el laboratorio Bell de AT&T, David Korn, desarrolló el shell Korn. ksh combina todas las características interactivas del shell C e incorpora la sintaxis del shell Bourne. Por lo tanto, el shell Korn es muy popular entre los usuarios. También agrega nuevas funciones como cálculos matemáticos, colaboración de procesos (coproceso) y edición en línea. Korn Shell es un intérprete de comandos interactivo y un lenguaje de programación de comandos. Cumple con POSIX, un estándar internacional para sistemas operativos, POSIX no es un sistema operativo, sino un estándar que apunta a la portabilidad de aplicaciones, en el programa fuente de un nivel en múltiples plataformas.

Bourne Again Shell (bash)

bash es parte del proyecto GNU y se utiliza para reemplazar el shell Bourne. Se usa en sistemas basados ​​​​en GNU como Linux. La mayoría de Linux (Red Hat, Slackware, Caldera) usan bash como shell predeterminado y, cuando se ejecuta sh, en realidad se llama a bash.

Shell POSIX

El shell POSIX es una variante del shell Korn. El mayor proveedor actual de shells POSIX es Hewlett-Packard. En HP-UX 11.0, el shell POSIX es /bin/sh y bsh es /usr/old/bin/sh

El shell predeterminado en cada sistema operativo principal:

. AIX utiliza el shell Korn

El valor predeterminado para Solaris y FreeBSD es el shell Bourne

El valor predeterminado para HP-UX es el shell POSIX

. El valor predeterminado para Linux es Bourne. De nuevo, shell

SUGERENCIA

El propósito de #!/usr/bin/sh

La primera línea del script de shell suele ser. #!/usr/bin /sh o #!/usr/bin/ksh, etc., su propósito es indicar en qué shell está escrito este script y qué shell debe usar el sistema para interpretarlo y ejecutarlo cuando se ejecuta.

Adjunto: El principio del shell del sistema LINUX

El shell del sistema Linux sirve como shell del sistema operativo y proporciona a los usuarios una interfaz para usar el sistema operativo. Es el nombre colectivo del lenguaje de comandos, intérprete de comandos y lenguaje de programación.

El shell es el programa de interfaz entre el usuario y el kernel de Linux. Si imagina el kernel de Linux como el centro de una esfera, el shell es la capa exterior que rodea el kernel. Cuando se pasan comandos a Linux desde un shell u otro programa, el kernel reacciona en consecuencia. El shell es un intérprete de lenguaje de comandos. Tiene su propio conjunto de comandos de shell incorporado. Otras aplicaciones del sistema también pueden llamar al shell. Los comandos ingresados ​​por el usuario en el indicador son primero interpretados por el shell y luego pasados ​​al kernel de Linux.

Algunos comandos, como el comando cd para cambiar el directorio de trabajo, se incluyen dentro del shell. Algunos comandos, como el comando copiar cp y el comando mover rm, son programas separados que existen en un directorio del sistema de archivos. Para los usuarios, no hay necesidad de preocuparse si un comando está integrado dentro del shell o en un programa separado.

El shell primero verifica si el comando es un comando interno y, en caso contrario, verifica si es una aplicación (la aplicación aquí puede ser un programa de utilidad del propio Linux, como ls y rm, o un programa comercial comprado, como xv, o software gratuito, como emacs). Luego, el shell busca estas aplicaciones en la ruta de búsqueda (una ruta de búsqueda es una lista de directorios donde se pueden encontrar programas ejecutables). Si el comando escrito no es un comando interno y el ejecutable no se encuentra en la ruta, se mostrará un mensaje de error. Si el comando se puede encontrar correctamente, el comando interno o la aplicación se dividirá en llamadas al sistema y se pasará al kernel de Linux.

Otra característica importante del shell es que es en sí mismo un lenguaje de programación interpretado. El lenguaje de programación del shell admite la mayoría de los elementos del programa que se pueden ver en lenguajes de alto nivel, como funciones, variables y. matrices y estructuras de control de programas. El lenguaje de programación de shell es fácil de aprender y cualquier comando que se pueda escribir en el indicador se puede colocar en un programa de shell ejecutable.

Cuando un usuario normal inicia sesión correctamente, el sistema ejecutará un programa llamado shell. Es el proceso de shell el que proporciona la línea de comando. Como valor predeterminado (el shell predeterminado del sistema TurboLinux es BASH), "$" se usa como mensaje para los usuarios normales y "#" se usa como mensaje para el superusuario (root).

Una vez que aparece el símbolo del shell, puede escribir el nombre del comando y los parámetros requeridos por el comando. El shell ejecutará estos comandos. Si un comando tarda mucho en ejecutarse o produce muchos resultados en la pantalla, puede interrumpirlo (abortando su ejecución antes de finalizar normalmente) presionando ctrl c desde el teclado para emitir una señal de interrupción.

Cuando el usuario esté listo para finalizar el proceso de diálogo de inicio de sesión, puede escribir el comando de cierre de sesión, el comando de salida o el fin de archivo (EOF) (presione ctrl d para lograrlo) para finalizar el inicio de sesión.

Practiquemos cómo funciona el shell.

$ make work

make: ***No hay regla para hacer que el objetivo "funcione"

$

Notas: make es el nombre de un comando en el sistema, seguido de los parámetros del comando. Después de recibir este comando, el shell lo ejecuta. En este ejemplo, debido a que los parámetros del comando de entrada son incorrectos, el sistema deja de ejecutar el comando después de devolver información.

En el ejemplo, el shell buscará un programa llamado make y lo ejecutará con work como parámetro. Make es un programa que se usa a menudo para compilar programas grandes. Utiliza parámetros como objetivos para compilar. En "make work", el objetivo de la compilación make es el trabajo. Debido a que make no puede encontrar el objetivo llamado trabajo, muestra un mensaje de error que indica que la operación falló y el usuario regresa al indicador del sistema.

Además, después de que el usuario escriba la línea de comando correspondiente, si el shell no puede encontrar el programa nombrado con el nombre del comando, se mostrará un mensaje de error. Por ejemplo, si el usuario escribe:

$ myprog

bash: myprog: mand not found

$

Como puedes ver , el usuario recibe un mensaje de error que indica que no se encontró el comando. Después de que el usuario escribe el comando incorrecto, el sistema generalmente mostrará un mensaje de error como este.