Bit pegajoso

En Unix y sistemas operativos tipo Unix, y en general en sistemas POSIX, el bit pegajoso es un permiso especial que se puede asociar con un archivo (típicamente archivos ejecutables) o un directorio.

El sticky bit fue introducido en la quinta edición de UNIX, en 1974, para ser utilizado sólo en archivos ejecutables. Si se activa, obliga al sistema operativo a mantener la imagen del programa en el espacio de intercambio incluso después de que el proceso relacionado haya terminado. Este comportamiento aceleró las ejecuciones posteriores, ya que el espacio de intercambio se manejaba como un archivo contiguo, y por lo tanto más rápido de leer que los archivos ejecutables, que podían almacenarse de manera fragmentada dentro del sistema de archivos. Los programas iniciados con frecuencia, como los editores de texto, ganaron mucho en velocidad de inicio. Entre los problemas causados por el uso del bit pegajoso estaba la sustitución del archivo ejecutable original: para hacer esto era necesario eliminar primero los bits pegajosos del archivo ejecutable, y luego ejecutar el programa y luego salir de él para limpiar la caché, y luego reemplazar el archivo ejecutable, y finalmente restaurar el bit pegajoso. La velocidad ganada en ejecuciones repetidas se perdió cuando Unix fue llevado a los sistemas de hardware con soporte para el acceso directo a la memoria por dispositivos de memoria masiva, y también aquellos que reemplazaron el sistema de intercambio con paginación. A pesar de esto, el sticky bit se mantuvo operativo en muchas variantes de la versión 5 (particularmente en sistemas Solaris y en HP-UX). Versión 4. BSD 4 Lite mantuvo el soporte para el bit pegajoso en su sistema, y luego lo eliminó en la versión de OpenBSD (de la versión 3. 7) y FreeBSD (de la versión 2. 2. 1); permanece en NetBSD. Ninguna versión de Linux ha soportado el comportamiento tradicional de los archivos ejecutables.

Hoy en día, el bit pegajoso se usa comúnmente para el directorio utilizado para contener archivos temporales de la mayoría de los usuarios: si se establece en un directorio, indica que los archivos y subdirectorios contenidos en él pueden ser eliminados o renombrados solo por el propietario o por el propietario del directorio que lo contiene, o desde el usuario root, incluso si tiene todos los demás permisos de escritura necesarios. Este permiso a menudo se establece en los directorios/tmp y / var / tmp para evitar que los usuarios ordinarios eliminen o muevan archivos temporales pertenecientes a otros usuarios, mientras que permite a cualquiera crear nuevos archivos y directorios. Este comportamiento fue introducido en 4. 3BSD (1986) y todavía está presente en muchos sistemas Unix. En Solaris, comenzando con SunOS 2. 5, el administrador (root) puede establecer el bit pegajoso en archivos no ejecutables para decirle al núcleo que no almacene en caché los datos de esos archivos. El uso es típico con los archivos de intercambio, para evitar que las operaciones de acceso a esos archivos terminen ocupando la caché a expensas de otros datos más importantes. Este comportamiento también se utiliza ocasionalmente para realizar pruebas que miden el rendimiento del sistema (benchmark).

El bit pegajoso se puede establecer a través del comando chmod, especificándolo a través de su representación octal 1000 o a través de la representación simbólica t (s ya se usa para el permiso setuid). Por ejemplo, para configurarlo en el directorio / usr / local / tmp, puede usar el comando para asegurarse de que el directorio tiene los otros permisos estándar de los directorios compartidos para archivos temporales, puede usar la notación simbólica de los permisos, la presencia del bit pegajoso se indica con la letra t en el último lugar (que de lo contrario se usaría para indicar el permiso de ejecución para la clase a otros). Por ejemplo, en Solaris 8, el directorio /tmp, que normalmente tiene el bit pegajoso habilitado, se muestra así: en caso de archivos o directorios sin el permiso de ejecución para la otra clase, se usa la letra mayúscula T, por ejemplo:.

UNIX

/ dev / zero

En Unix y sistemas operativos similares a Unix / dev / zero (dispositivo "cero" , dispositivo " cero ") es un archivo virtual (cuyo contenido no se almacena en ...
Esta página se basa en el artículo de Wikipedia: Fuente, Autores, Licencia Creative Commons Reconocimiento-CompartirIgual.
This page is based on the Wikipedia article: Source, Authors, Creative Commons Attribution-ShareAlike License.
contactos
Política de privacidad , Descargos de responsabilidad