Comenzar con Linux (III). Localización de comandos, usuarios y llamadas de sistema

Siguiendo con nuestra serie de artículos de “Comenzar con Linux” en los que ya hablamos de Los primeros comandos en Linux y Exportación de variables y distribución de directorios, hoy vamos a hablar de la localicación de comandos, procesos de usuarios y llamadas al sistema.

¿Qué es un comando?

Para definir un comando podríamos especificar que en realidad se trata de un fichero ejecutable que se encuentra en algún lugar del sistema operativo.

Cuando se desea localizar un comando que no se encuentra en la ruta habitual, conviene hacer uso del comando $PATH, la función de este comando consiste en localizar los comandos que se salgan fuera de las rutas habituales, se utilizaría de la siguiente forma.

$ echo $PATH

El comando which se utiliza para conocer la localización exacta de un ejecutable. Ejemplo.

$ which echo

Los procesos de usuario

Para comprender como funcionan y se organizan los procesos en Linux, tenemos que partir de la base de que este sistema operativo es multiusuario y multitarea, por lo que toda la información almacenada en el disco duro puede pertenecer a más de un usuario y los procesos que se llevan a cabo mediante las tareas ejecutadas de igual forma pueden pertenecer a varios usuarios diferentes. El comando id se usa para averiguar la información perteneciente a un usuario. Ejemplo:

$ id

El sistema asigna un número a cada usuario cuyo dato de reconocimiento son el UID y GID, por tanto la formación perteneciente a cada usuario queda almacenada en esos datos. Para averiguar los datos pertenecientes a cada usuario almacenados en el UID y GID, puede emplearse ‘id -un’ o en su defecto el comando ‘whoami’. Ejemplo

$ whoami

Llamadas de sistema

El kernel de Linux es el encargado de realizar las funciones del sistemas que se encargan de controlar cada uno de los procesos, para gestionar dichas funciones se emplean las llamadas de sistema y se establecen normalmente en lenguaje C. Las principales llamadas de sistema son:

La llamada de sistema fork() Arranca un proceso a través de otro para que adopte las tareas del principal.

La llamada de sistema exec() Convierte un proceso en otro mediante un ejecutable

Los procesos se comunican a través de variables de entorno denominadas sockets.


Categorías

Más Linux

edumix

Ingeniero Informático de Profesión y Desarrollador Web de vocación. Amante de las Nuevas Tecnologías e Internet. "Linux Adicto" y en contacto permanente con "La Nube".

Escribe un comentario