¿Se puede bloquear solo una parte de una etiqueta?
Sí, en casi todas las familias de chip. Existen dos clases de bits de bloqueo: un conjunto que cubre las primeras páginas de memoria, y otro que cubre el resto por bloques. Eso permite congelar parte de una etiqueta de forma permanente y dejar el resto escribible, que de vez en cuando es justo lo que un despliegue necesita.
Dos clases de bits de bloqueo
El primer conjunto es pequeño y fijo, y cubre las primeras páginas de memoria. Son los bits que pone una herramienta cuando marcas una opción de bloqueo, y son la razón de que una etiqueta bloqueada quede congelada del todo.
El segundo conjunto cubre la memoria restante por bloques en lugar de por páginas, y existe precisamente para que las regiones puedan congelarse por separado.
Los dos van en un solo sentido. Ninguno de los dos conjuntos puede borrarse, y los dos se guardan a su vez en memoria que pasa a ser de solo lectura una vez usada, así que un bit de bloqueo no puede desbloquearse bloqueando otra cosa.
Hasta qué punto es fino el control
Más grueso de lo que te gustaría. El segundo conjunto cubre normalmente varias páginas a la vez, así que no puedes congelar un byte concreto ni un solo registro.
La granularidad práctica es por tanto una región y no un campo, y el tamaño exacto del bloque difiere según la familia de chip. La ficha técnica es la única autoridad para una referencia dada.
Esto significa que el bloqueo parcial funciona bien con una disposición diseñada para él, y mal como ocurrencia posterior sobre un contenido dispuesto sin pensar en las fronteras de bloque.
Cuándo el bloqueo parcial es útil
Un identificador que no debe cambiar nunca junto a un contenido que sí debe. Una etiqueta de activo con el número de serie congelado mientras se actualizan sus datos de mantenimiento es el ejemplo más claro.
Una cabecera de la que depende tu propio software, protegida contra un compañero bienintencionado que reescriba la etiqueta con una herramienta genérica.
Y un despliegue en dos etapas, donde un fabricante escribe y congela parte de una etiqueta antes de que un cliente escriba el resto.
Lo que comparten es una disposición diseñada. El bloqueo parcial es una técnica de producción y no algo a lo que recurrir a la ligera.
Dónde sale mal
Congelar una región que incluya la estructura. Si el contenedor de capacidad cae dentro del rango bloqueado, la etiqueta no podrá formatearse nunca más, lo que convierte cualquier daño estructural en una etiqueta muerta.
Dar por hecho que una herramienta entiende tu intención. Casi todas exponen el bloqueo como una casilla que pone los primeros bits y lo congela todo. El bloqueo selectivo suele exigir direccionar las páginas de configuración directamente, con la ficha técnica abierta.
Y olvidar que la frontera es permanente. Si tu contenido crece luego más allá de la región sin bloquear, no hay manera de recuperar la parte congelada.
Preguntas frecuentes
¿La casilla de bloqueo de mi herramienta lo bloquea todo?
Casi siempre sí. El bloqueo selectivo exige normalmente escribir las páginas de configuración directamente en lugar de usar una sola opción, así que da por hecho que una casilla significa toda la etiqueta.
¿Puedo bloquear solo el identificador?
El identificador ya es de solo lectura de fábrica, así que no hay nada que bloquear. Lo que la gente suele querer decir es congelar su propio número de serie escrito en el contenido, que es justo para lo que sirve el bloqueo parcial.
¿De qué tamaño es cada bloque bloqueable?
Varía según la familia de chip y está documentado en la ficha técnica. Da por hecho varias páginas y no un solo byte, y diseña la disposición de la memoria en torno a las fronteras.
¿Puedo desbloquear una región y mantener otra bloqueada?
No. Todo bit de bloqueo va en un solo sentido, así que la única dirección disponible es bloquear más etiqueta, nunca menos.