InglésFrancésEspañol

Ad


icono de página de OnWorks

with-lock-ex - Online en la nube

Ejecute with-lock-ex en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando with-lock-ex que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


with-lock-ex - casillero de archivos

SINOPSIS


con-cerradura-ex -w|-q|-f archivo de bloqueo comando args ...

DESCRIPCIÓN


with-lock-ex abrirá y bloqueará el archivo de bloqueo para escritura y luego alimentará el resto de
sus argumentos para ejecutivo(2); cuando ese proceso termine, el fd se cerrará y el archivo
desbloqueado automáticamente por el kernel.

Si el archivo no existe se crea, con permisos rw para cada clase de usuario para
que tiene la umask w.

CAMPUS


-w Espere a que la cerradura esté disponible.

-f Falla (imprimiendo un mensaje a stderr y saliendo de 255) si no se puede adquirir el bloqueo
inmediatamente porque otro proceso lo tiene.

-q Silenciosamente no haga nada (es decir, salga de 0 en lugar de ejecutar el proceso especificado) si el
el bloqueo no se puede adquirir inmediatamente porque otro proceso lo tiene.

DURO CABELLOS


El protocolo de bloqueo utilizado no sufre bloqueos obsoletos. Si la cerradura no se puede
adquirido, uno o más procesos en ejecución deben mantener actualmente el bloqueo; si la cerradura necesita
ser liberados esos procesos deben ser eliminados.

Bajo ninguna circunstancia deben instituirse trabajos cron de "limpiador de cerraduras obsoletas" o similares.
En sistemas donde pueden existir una gran cantidad de bloqueos, los archivos de bloqueo antiguos pueden eliminarse de cron pero
solo si cada bloqueo se adquiere antes de que se elimine el archivo de bloqueo, por ejemplo con

con-cerradura-ex -q archivo de bloqueo rm archivo de bloqueo

PUNTOS MUERTOS


No hay detección de interbloqueo. En un sistema con varias cerraduras, una jerarquía de cerraduras debe
establecerse, de modo que por cada par de cerraduras A y B que un proceso podría bloquear
simultáneamente, ya sea A>B or B>A donde la relación> es transitiva y no cíclica.

Entonces, para dos cerraduras cualesquiera X y Y X>Y esta prohibido adquirir X mientras lo esté agarrando Y.
En cambio, adquiere X primero, o suelte Y antes de (re) adquirir X y Y en ese orden.

(Hay formas más complicadas de evitar interbloqueos, pero una jerarquía de bloqueos es simple de
comprender e implementar. Si no satisface sus necesidades, consulte la literatura).

BLOQUEO PROTOCOLO


El protocolo de bloqueo utilizado por con-cerradura-ex es el siguiente:

El bloqueo lo mantiene un proceso (o grupo de procesos) que tiene un bloqueo exclusivo de fcntl
en el primer byte del archivo sin formato que tiene el nombre especificado. Un titular de la cerradura
(y solo un poseedor del candado) puede eliminar el archivo o cambiar el inodo al que el nombre
refiere, y tan pronto como lo hace deja de mantener la cerradura.

Cualquier proceso puede crear el archivo si no existe. No es necesario que el archivo
contener cualquier dato real. De hecho, utilizar el archivo para el almacenamiento de datos es muy importante.
desaconsejado, ya que esto excluirá la mayoría de las estrategias para una actualización confiable. Utilizar una
archivo de bloqueo separado en su lugar.

La posibilidad de obtener el bloqueo corresponde al permiso de escritura en el archivo (y, por supuesto,
permiso para crear el archivo, si aún no existe). Sin embargo, los procesos con
solo el permiso de lectura en el archivo puede evitar que se adquiera el bloqueo; por lo tanto
Por lo general, los archivos de bloqueo no deberían ser legibles por todo el mundo.

Cuando un (grupo de) procesos desea adquirir el bloqueo, debe abrir el archivo (con
O_CREAR) y bloquearlo con fcntl(2) F_RWLCK, operación F_SETLK or F_SETLKW. Si esto
si tiene éxito, debería fstat el descriptor de archivo que tiene y el archivo por su ruta. Si el
dispositivo e inodo coinciden, entonces el bloqueo se ha adquirido y permanece adquirido hasta que
grupo de procesos cambia a qué archivo se refiere el nombre, elimina el archivo o libera
el bloqueo fcntl. Si no lo hacen, otro proceso adquirió el bloqueo y eliminó el
archivar mientras tanto; ahora debe cerrar su descriptor de archivos y comenzar de nuevo. con-cerradura-
ex sigue esta especificación.

Tenga en cuenta que rebaño(2) es un tipo diferente de bloqueo para fcntl(2). con-cerradura-ex usos fcntl.

Use with-lock-ex en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad