Sistemas operativos modernos
copia a e n b pero elimina el original. De hecho, cambia de lugar el archivo, en lugar de reali zar una copia en el sentido acostumbrado. Es posible concatenar varios archivos empleando cat, que lee cada uno de los archivos de su entrada y los copia en la salida estándar, uno tras otro. Los archivos pueden eliminarse con el comando rm. El comando chmod permite al due ño de un archivo modificar los bits de derechos para actualizar los permisos de acceso. Pueden crearse directorios con mkdir, y eliminarse con rmdir. Para ver una lista de los archivos conte nidos en un directorio, puede usarse Is. Este comando tiene un gran número de banderas para controlar qué tantos pormenores de cada archivo se exhibirán (por ejemplo, tamaño, dueño, grupo, fecha de creación, etcétera), para determinar el orden en que se mostrarán (por ejemplo, alfabético, por fiempo de última modificación, en orden inverso, etcétera), para especificar la organización en la pantalla, y muchas cosas más. Ya hemos visto varios filtros: grep extrae de la entrada estándar o de uno o más archivos de entrada las líneas que contienen un patrón dado; sort ordena las líneas de su entrada y las escri be en la salida estándar; head extrae las líneas iniciales de su entrada; tail extrae las líneas fina les. Otros filtros definidos por 1003.2 son cut y paste, que permiten cortar columnas de texto y pegarlas en archivos; od, que convierte sus entradas (por lo normal binarias) en texto ASCII, en octal, decimal o hexadecimal; tr, que traduce caracteres (por ejemplo, de minúsculas a mayúscu las) y pr que formatea sahdas para la impresora y cuenta con opciones para incluir encabezados de página, números de página y demás. Entre los compiladores y herramientas de programación están cc, que invoca el compila dor de C, y ar, que reúne procedimientos de biblioteca para formar archivos catalogados (archives). Otra herramienta importante es make, que sirve para dar mantenimiento a programas gran des cuyo código fuente comprende muchos archivos. Por lo regular, algunos son archivos de encabezado, que contienen declaraciones de tipos, variables, macros y otras cosas. Los archi vos fuente por lo regular incluyen esos encabezados empleando la directiva especial include. Así, dos o más archivos fuente pueden compartir las mismas declaraciones. Sin embargo, si un archivo de encabezado se modifica, será necesario localizar todos los archivos fuente que depen den de él y recompilarlos. Lo que hace make es llevar el control de cuál archivo depende de cuál encabezado, y cosas similares, y encargarse de que se efectúen en forma automáfica todas las com pilaciones necesarias. Casi todos los programas UNIX, salvo los más pequeños, se configuran de modo que se compilen con make. En la figura 10-2 se presenta una lista selecta de los programas utilitarios de POSIX, jun to con una breve descripción de cada uno. Todos los sistemas UNIX tienen estos programas, además de muchos otros. 10.2.5 Estructura del/íerne/ En la figura 10-1 vimos la estructura general de un sistema UNIX. Hagamos ahora un acerca miento para estudiar más de cerca el kernel antes de examinar sus distintas partes. Es un poco difícil mostrar la estructura del kemel porque hay muchas versiones distintas de UNIX, pero aunque el diagrama de la figura 10-3 describe 4.4BSD, también es válido para muchas otras versiones, quizá con pequeños cambios por aquí y por allá.
RkJQdWJsaXNoZXIy MjI4NDcx