En Posix cómo es el tipo de dev_t acostumbrarse?
Pregunta
Lo que busco es el significado de este tipo y lo que la interfaz puede utilizar.
Esto se explica en Posix las especificaciones que dev_t
se utiliza para el Id de dispositivo.Sin embargo, ¿qué id de dispositivo de medios para cualquier objeto descrito por un camino, que puede ser un archivo, un directamete, un sistema o un dispositivo físico?
Por ejemplo, llamar a stat()
daré un struct, incluyendo un miembro de tal tipo;y usted puede iniciar a cualquier tipo de objeto en el sistema de archivos.El id de dispositivo deben tener diferentes significados para diferentes tipos de archivo, a continuación,.
Solución
El único uso de la dev_t
en la gran mayoría de los programas (que son portátiles y no está conectado a un único sistema operativo) es para determinar que dos nombres de archivo o archivo de los descriptores se refieren a la misma de archivos subyacente.Esto es cierto si y sólo si el st_ino
y st_dev
las entradas para los dos archivos' stat
estructuras coinciden uno con el otro.
Básicamente, st_dev
dice que "el dispositivo" (por ejemplo,la partición montada, recurso compartido de red, etc.) el archivo se encuentra en, y st_ino
es un identificador único del archivo dentro del contexto de un único dispositivo.
Otros consejos
En realidad, hay dos dev_t
escrito campos en struct stat
:
st_dev
es el "[d]dispositivo de IDENTIFICACIÓN de dispositivo que contiene el archivo", así que si dos archivos tienen el mismost_dev
, están en el mismo sistema de archivos.st_rdev
es el ID del dispositivo el dispositivo se denota por un carácter o bloque de archivo especial, es decir,los archivos que se encuentran comúnmente en/dev
.No tiene ningún significado para otros tipos de archivos.
Dentro del núcleo, el dev_t tipo que se define en se utiliza para mantener los números de dispositivo (mayor/menor).dev_t es de 32 bits, la cantidad con 12 bits reservado para el número mayor y el 20 por el número menor de edad.